/*
 * mobile.css — OWC 2026  v5
 * Applied ONLY via <link media="(max-width:767px)"> — desktop is 100% untouched.
 */

/* ═══════════════════════════
   0. NORMALIZE — CONSISTENT SPACING
   ═══════════════════════════ */

/* Uniform horizontal content margin — every page, every section */
.container,
.container-fluid {
  padding-left: 20px !important;
  padding-right: 20px !important;
  max-width: 100% !important;
}

/* Bootstrap row gutters scaled to match container */
.row {
  margin-left: -10px !important;
  margin-right: -10px !important;
}
.row > [class*="col-"] {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

/* #about.about-area on index.html gets crushed to 36px by an ID rule in
   responsive.css — bring it in line with all other sections */
#about.about-area {
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

/* Uniform vertical rhythm for ALL sections */
section,
.team-area,
.about-area,
.event.fix,
.owc-gallery-section,
.owc-faq-section {
  padding-top: 52px !important;
  padding-bottom: 52px !important;
}

/* Breadcrumb hero — shorter */
.slider-area.breadcrumb-area {
  padding-top: 52px !important;
  padding-bottom: 36px !important;
}

/* responsive.css has #team.team-area (specificity 1,1,0) forcing 40px — match and beat it */
#team.team-area {
  padding-top: 52px !important;
  padding-bottom: 52px !important;
}

/* responsive.css has .event.fix.pt-120.pb-120 (specificity 0,3,0) forcing 48px */
.event.fix,
.event.fix.pt-120,
.event.fix.pt-120.pb-120,
.event.fix.pt-120.pb-80 {
  padding-top: 52px !important;
  padding-bottom: 52px !important;
}

/* ── About-page inline-padded elements ─────────────────────────────
   These divs have large padding values in their style="" attribute.
   !important in a stylesheet overrides a normal inline style.        */

/* Scripture/theme dark card: style="...padding:52px 44px..." */
[style*="padding:52px 44px"],
[style*="padding: 52px 44px"] {
  padding: 26px 20px !important;
}

/* Theme-points column: style="padding-left:40px;" */
[style*="padding-left:40px"],
[style*="padding-left: 40px"] {
  padding-left: 0 !important;
}

/* ════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════
   1. GLOBAL
   ═══════════════════════════ */
html, body { overflow-x: hidden !important; max-width: 100% !important; }

/* Disable WOW.js hiding — show all content immediately on mobile */
.wow, .wow.animated {
  visibility: visible !important;
  opacity: 1 !important;
  animation: none !important;
  -webkit-animation: none !important;
}

/* Section vertical rhythm */
.pt-120 { padding-top: 56px !important; }
.pt-100 { padding-top: 44px !important; }
.pt-80  { padding-top: 36px !important; }
.pb-120 { padding-bottom: 56px !important; }
.pb-100 { padding-bottom: 44px !important; }
.pb-80  { padding-bottom: 36px !important; }
.mb-70  { margin-bottom: 32px !important; }
.mb-60  { margin-bottom: 24px !important; }
.mt-60  { margin-top: 24px !important; }
.mt-20  { margin-top: 14px !important; }

/* Section headings */
.section-title h2 { font-size: 28px !important; line-height: 1.2 !important; }
.section-title p   { font-size: 14px !important; line-height: 1.7 !important; }
.section-title.mb-60 { margin-bottom: 24px !important; }

/* Headings on dark backgrounds — ensure white */
.team-area .section-title h2,
.team-area .section-title span,
[style*="background:#0f0f2e"] h2,
[style*="background:linear-gradient(135deg,#0f0f2e"] h2,
[style*="background:linear-gradient(160deg,#0f0f2e"] h2 {
  color: #fff !important;
}

/* Touch-friendly base button */
.btn {
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 14px !important;
  padding: 11px 22px !important;
  white-space: normal !important;
  text-align: center !important;
  word-break: break-word !important;
}

/* Breadcrumb heroes */
.breadcrumb-area { min-height: 160px !important; }
.breadcrumb-title h2 { font-size: 22px !important; line-height: 1.25 !important; }

/* Decorative circles — always hide on mobile */
.crical,
.circal1, .circal2, .circal3, .circal4 { display: none !important; }


/* ═══════════════════════════
   2. STICKY REGISTER BAR — REMOVED
   ═══════════════════════════ */
.owc-mobile-register { display: none !important; }
body { padding-bottom: 0 !important; }


/* ═══════════════════════════
   3. HEADER / NAV
   ═══════════════════════════ */
.header-area .logo a span,
.logo a span { font-size: 15px !important; letter-spacing: 0.5px !important; }


/* ═══════════════════════════
   4. HOMEPAGE — HERO
   ═══════════════════════════ */
.owc-hero__title {
  font-size: clamp(1.8rem, 9vw, 2.6rem) !important;
  line-height: 1.15 !important;
}
.owc-hero__theme {
  font-size: 11px !important;
  letter-spacing: 2px !important;
}
.owc-hero__cta {
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 12px !important;
}
.owc-btn-primary,
.owc-btn-ghost {
  width: 100% !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 14px 20px !important;
  font-size: 14px !important;
}


/* ═══════════════════════════
   5. HOMEPAGE — COUNTDOWN
   ═══════════════════════════ */
.owc-float-countdown {
  margin-top: -24px !important;
  padding: 0 16px !important;
}
.owc-float-countdown .container {
  padding: 18px 16px !important;
  border-radius: 16px !important;
  /* override the 20px normalize rule for this specific container */
  padding-left: 16px !important;
  padding-right: 16px !important;
}
/* 4-column grid — one block per column, no overflow */
.owc-countdown {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 6px !important;
}
/* Hide the colon separators — grid handles spacing */
.owc-cd-sep { display: none !important; }
.owc-cd-block {
  min-width: 0 !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
.owc-cd-number {
  font-size: clamp(1.3rem, 6.5vw, 1.7rem) !important;
  padding: 8px 4px !important;
  border-radius: 10px !important;
  width: 100% !important;
  text-align: center !important;
  display: block !important;
  box-sizing: border-box !important;
}
.owc-cd-label {
  display: block !important;
  width: 100% !important;
  font-size: 7px !important;
  margin-top: 5px !important;
  letter-spacing: 0.5px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}


/* ═══════════════════════════
   6. HOMEPAGE — MINI SPEAKER CARDS
   ═══════════════════════════ */
.owc-min-card {
  display: flex !important;
  flex-direction: column !important;
  border-radius: 20px !important;
  overflow: hidden !important;
}
.owc-min-photo { width: 100% !important; flex-shrink: 0 !important; }
.owc-min-photo img {
  height: 260px !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
}
.owc-min-photo--music { height: 200px !important; }

/* Taller photo — shows face AND upper body, not just face */
.owc-min-photo img {
  height: 340px !important;
  object-position: top center !important;
}

/* Hide badge — stops text covering faces */
.owc-min-badge { display: none !important; }

.owc-min-body  { padding: 20px 20px 24px !important; }
.owc-min-name  { font-size: 18px !important; font-weight: 800 !important; margin-bottom: 4px !important; }
.owc-min-role  { font-size: 11px !important; margin-bottom: 14px !important; }
.owc-min-social { gap: 10px !important; margin-bottom: 16px !important; }
.owc-min-social a { width: 34px !important; height: 34px !important; font-size: 13px !important; }
.owc-min-cta {
  display: flex !important;
  width: 100% !important;
  justify-content: center !important;
  padding: 12px !important;
  font-size: 13px !important;
  border-radius: 50px !important;
}


/* ═══════════════════════════
   7. HOMEPAGE — SCHEDULE (tabs removed, timeline stacked)
   ═══════════════════════════ */

/* Kill the tab nav entirely on mobile */
.event .nav,
.event .nav.nav-tabs,
.event .nav-tabs,
.event .nav-fill,
.event .nav-item,
.event .nav-link {
  display: none !important;
}

/* Show ALL tab panes stacked */
.event .tab-content .tab-pane {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: static !important;
}

/* Separator + time label before each block */
.event .tab-content .tab-pane {
  padding-top: 12px !important;
  border-top: 1px solid rgba(0,0,0,0.08) !important;
  margin-top: 0 !important;
}
.event .tab-content .tab-pane:first-child {
  border-top: none !important;
  padding-top: 0 !important;
}
/* Inline time-of-day label via pseudo-element */
#one::before   { content: "— Morning —"; }
#two::before   { content: "— Afternoon —"; }
#three::before { content: "— Evening —"; }
#four::before  { content: "— Night —"; }
.event .tab-content .tab-pane::before {
  display: block !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #e91e8c !important;
  text-align: center !important;
  padding: 14px 0 16px !important;
}
.event .tab-content .tab-pane:first-child::before {
  padding-top: 0 !important;
}

/* Session card */
.event-list-content,
.event-list-content.fix {
  padding: 16px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(0,0,0,0.06) !important;
}
.event-list-content:last-child { border-bottom: none !important; }
.event-list-content h2 { font-size: 16px !important; margin-bottom: 4px !important; line-height: 1.3 !important; }
.event-list-content .nav-content strong { font-size: 11px !important; }

/* Section heading */
.event .section-title h2 { font-size: 26px !important; }
.event .section-title p   { font-size: 14px !important; }


/* ═══════════════════════════
   8. HOMEPAGE — EXPECT CARDS
   ═══════════════════════════ */
.owc-expect-card {
  padding: 24px 20px !important;
  border-radius: 16px !important;
  margin-bottom: 4px !important;
}
.owc-expect-card h5 { font-size: 16px !important; margin-bottom: 8px !important; }
.owc-expect-card p  { font-size: 14px !important; line-height: 1.65 !important; }


/* ═══════════════════════════
   9. SPEAKERS PAGE — SECTION TITLE
   ═══════════════════════════ */
#team .section-title h2 {
  color: #fff !important;
  font-size: 32px !important;
  font-weight: 900 !important;
}
#team .section-title span { color: #e91e8c !important; font-size: 11px !important; }
#team .section-title p {
  color: rgba(255,255,255,0.78) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}
/* Suppress the giant Ministers watermark text on mobile */
#team .section-t { display: none !important; }


/* ═══════════════════════════
   10. SPEAKERS PAGE — MINISTER CARDS
   ═══════════════════════════ */
.owc-ps {
  margin-bottom: 28px !important;
  border-radius: 20px !important;
  box-shadow: 0 16px 60px rgba(0,0,0,0.55) !important;
}

/* Stack photo on top, bio below */
.owc-ps-main { flex-direction: column !important; }
.owc-ps--flip .owc-ps-main { flex-direction: column !important; }

/* Photo: square frame — shows face + upper body / hands naturally */
.owc-ps-photo { width: 100% !important; }
.owc-ps-frame { aspect-ratio: 3/4 !important; max-height: 420px !important; }
.owc-ps-frame img { object-position: top center !important; }

/* Badge — keep visible but smaller */
.owc-ps-badge {
  font-size: 8px !important;
  padding: 5px 12px !important;
  top: 12px !important;
  left: 12px !important;
}
.owc-ps--flip .owc-ps-badge { left: 12px !important; right: auto !important; }

/* Number watermark — hide on mobile */
.owc-ps-num { display: none !important; }

/* Accent bar */
.owc-ps-accentbar { height: 3px !important; }

/* Bio section — readable, bold, generous padding */
.owc-ps-bio {
  padding: 28px 22px 32px !important;
  color: #fff !important;
}

.owc-ps-eyebrow {
  font-size: 9px !important;
  letter-spacing: 2.5px !important;
  margin-bottom: 10px !important;
}

/* Speaker NAME — large, unmissable */
.owc-ps-name {
  font-size: 28px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  margin-bottom: 12px !important;
  color: #fff !important;
}

/* Quote */
.owc-ps-quote {
  font-size: 14px !important;
  line-height: 1.7 !important;
  margin-bottom: 16px !important;
  color: rgba(255,255,255,0.82) !important;
}

/* Divider */
.owc-ps-divider { margin: 14px 0 !important; opacity: 0.3; }

/* Credentials — each on its own line, readable */
.owc-ps-creds {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin-bottom: 20px !important;
}
.owc-ps-creds span {
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: rgba(255,255,255,0.75) !important;
  display: flex !important;
  gap: 8px !important;
  align-items: flex-start !important;
}
.owc-ps-creds span i {
  color: var(--ac, #e91e8c) !important;
  margin-top: 2px !important;
  flex-shrink: 0 !important;
}

/* Read Bio toggle — full-width, prominent */
.owc-ps-toggle {
  width: 100% !important;
  padding: 14px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: #fff !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

/* Expanded bio text */
.owc-ps-collapse { padding: 0 22px 32px !important; }
.owc-ps-text {
  font-size: 14px !important;
  line-height: 1.8 !important;
  color: rgba(255,255,255,0.78) !important;
  margin-bottom: 14px !important;
}

/* Social icons in bio */
.owc-ps-social { gap: 10px !important; flex-wrap: wrap !important; padding-top: 16px !important; }
.owc-ps-social a {
  width: 38px !important;
  height: 38px !important;
  font-size: 14px !important;
}

/* Envoy Music banner card — force stacked layout */
.owc-ps--banner .owc-ps-main { display: flex !important; flex-direction: column !important; position: relative !important; }
.owc-ps--banner .owc-ps-frame { aspect-ratio: 16/9 !important; }
.owc-ps--banner .owc-ps-bio {
  position: static !important;
  width: 100% !important;
  padding: 28px 22px 20px !important;
}
.owc-ps--banner .owc-ps-collapse { padding: 0 22px 28px !important; }
.owc-ps--banner .owc-ps-frame::after {
  background: linear-gradient(to top, rgba(6,15,0,0.9) 0%, rgba(6,15,0,0.3) 60%, transparent 100%) !important;
}


/* ═══════════════════════════
   11. ABOUT — "WHAT IS OWC" / OUR STORY
   ═══════════════════════════ */

/* Force both columns to full-width stacked */
.about-area.about-p .col-lg-6,
.about-area.about-p [class*="col-"] {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}

/* Kill the giant "About" watermark — disrupts layout on mobile */
.about-area .text-outline { display: none !important; }

/* Section label & heading */
.about-title h2,
.about-title.second-atitle h2 {
  font-size: 28px !important;
  font-weight: 900 !important;
  margin-bottom: 16px !important;
}

/* Body copy */
.about-area.about-p p {
  font-size: 15px !important;
  line-height: 1.78 !important;
  margin-bottom: 14px !important;
}

/* Register Free CTA in this section — full-width pill button */
.about-area.about-p .btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  padding: 16px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  margin-top: 24px !important;
  border-radius: 50px !important;
  gap: 8px !important;
}

/* Right column (quote card panel) gets breathing room above */
.about-area.about-p .col-lg-6:last-child {
  margin-top: 36px !important;
}

/* pl-30 overrides — no longer needed when stacked */
.about-content.pl-30,
.about-content.s-about-content.pl-30 {
  padding-left: 0 !important;
  margin-top: 0 !important;
}

/* Story panel */
.owc-story-panel { gap: 16px !important; }
.owc-quote-card  { padding: 24px 20px !important; }
.owc-quote-text  { font-size: 14px !important; line-height: 1.78 !important; }
.owc-date-badge  {
  font-size: 12px !important;
  padding: 12px 16px !important;
  border-radius: 12px !important;
}
.owc-pillars {
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  margin-top: 16px !important;
}
.owc-pillar { padding: 14px 12px !important; gap: 10px !important; }
.owc-pillar strong { font-size: 13px !important; }
.owc-pillar span   { font-size: 11px !important; }


/* ═══════════════════════════
   12. ABOUT — TEAM COORD CARDS
   ═══════════════════════════ */
.owc-coord-card { border-radius: 20px !important; padding-bottom: 28px !important; }
.owc-coord-photo-wrap {
  width: 120px !important;
  height: 120px !important;
  margin-top: 24px !important;
  margin-bottom: 16px !important;
}
.owc-coord-photo { width: 114px !important; height: 114px !important; }
.owc-coord-name { font-size: 17px !important; }
.owc-coord-role { font-size: 11px !important; }
.owc-coord-note { font-size: 11px !important; }


/* ═══════════════════════════
   13. ABOUT — HOST CARDS
   ═══════════════════════════ */
.owc-host-card { padding: 28px 20px !important; border-radius: 18px !important; }
.owc-host-card h3 { font-size: 20px !important; }
.owc-host-card p  { font-size: 14px !important; line-height: 1.7 !important; }


/* ═══════════════════════════
   14. ABOUT — JOURNEY TIMELINE
   ═══════════════════════════ */
/* Hide the vertical connector line — misaligns on mobile */
.owc-timeline::before { display: none !important; }

.owc-timeline-item  { gap: 14px !important; margin-bottom: 24px !important; }
.owc-timeline-year  {
  min-width: 52px !important;
  height: 52px !important;
  font-size: 11px !important;
  flex-shrink: 0 !important;
}
.owc-timeline-card  { padding: 18px 16px !important; border-radius: 14px !important; }
.owc-timeline-card h5 { font-size: 16px !important; color: #fff !important; }
.owc-timeline-card p  { font-size: 13px !important; }
.owc-timeline-stats { gap: 12px !important; flex-wrap: wrap !important; }


/* ═══════════════════════════
   15. ABOUT — GLOBAL REACH
   ═══════════════════════════ */
.owc-region-card { padding: 22px 18px !important; border-radius: 18px !important; }
.owc-region-card h5 { font-size: 16px !important; }
.owc-region-card p  { font-size: 14px !important; }


/* ═══════════════════════════
   16. ABOUT — THEME POINTS
   ═══════════════════════════ */
.owc-theme-point { gap: 14px !important; margin-bottom: 16px !important; }
.owc-theme-icon  { width: 44px !important; height: 44px !important; min-width: 44px !important; font-size: 17px !important; }


/* ═══════════════════════════
   17. ABOUT — CTA BANNER
   ═══════════════════════════ */
.owc-about-cta { padding: 40px 22px !important; border-radius: 18px !important; }
.owc-about-cta h2 { font-size: 24px !important; }
.owc-about-cta p  { font-size: 14px !important; }


/* ═══════════════════════════
   18. ABOUT — SPONSOR GRID
   ═══════════════════════════ */
.owc-sponsor-grid {
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 12px !important;
}
.owc-sponsor-slot { min-width: 0 !important; }


/* ═══════════════════════════
   19. GALLERY
   ═══════════════════════════ */
.owc-gallery-masonry { column-count: 2 !important; column-gap: 8px !important; }
.owc-gallery-masonry .owc-gallery-item { margin-bottom: 8px !important; border-radius: 10px !important; }

/* Homepage gallery preview tiles — taller so photos aren't letterboxed */
.owc-gallery-grid .owc-gallery-tile {
  min-height: 220px !important;
}
/* Gallery section container — remove side padding so tiles go edge-to-edge */
.owc-gallery-section .container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.owc-gallery-section .owc-gallery-grid {
  border-radius: 0 !important;
  gap: 4px !important;
}


/* ═══════════════════════════
   20. CONTACT / REGISTER
   ═══════════════════════════ */
.contact-area .col-lg-6,
.contact-area .col-sm-6 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}


/* ═══════════════════════════
   21. VENUE
   ═══════════════════════════ */
.venue-map iframe { height: 220px !important; border-radius: 12px !important; }


/* ═══════════════════════════
   22. FOOTER
   ═══════════════════════════ */
.owc-footer__top {
  flex-direction: column !important;
  gap: 32px !important;
}
.owc-footer__col { width: 100% !important; }
.owc-footer__bottom {
  flex-direction: column !important;
  align-items: center !important;
  gap: 10px !important;
  text-align: center !important;
}
