/* ==========================================================================
   Conference — 2027 recap ("Trauma & Transformation"). Elementor-editable
   content (post 46547). IDs pinned at build time; see conference.css for
   rationale.

   NOTE: this page used to share global.css's .cbcc-conference-page-scoped
   rules (facts/verse/pullquote/speakers/schedule/badge) with the other
   conference-year templates. Now that this page and the 2026 recap are both
   Elementor-built, Conference Registration is the only page left using that
   wrapper class — left untouched intentionally. This file reproduces the
   unscoped, ID-pinned equivalents for THIS page only. The truly page-
   agnostic unscoped rules (.cbcc-conf-hero-banner__img sizing,
   .cbcc-cta-strip layout) still come from global.css / inner-pages.css.
   ========================================================================== */

/* Hero info bar */
.elementor-element-4bfb2e0 { background: var(--c-dark); color: #fff; padding: 32px 0; text-align: center; }
.elementor-element-4bfb2e0 .cbcc-eyebrow { color: var(--c-gold); letter-spacing: .14em; text-transform: uppercase; font-size: .8rem; font-weight: 700; margin-bottom: 10px; }
.elementor-element-4bfb2e0 .cbcc-conf-hero-info__meta { font-size: 1.05rem; color: rgba(255,255,255,.82); margin: 0 0 16px; }
.elementor-element-4bfb2e0 .cbcc-conf-hero__badge { display: inline-block; margin-top: 4px; padding: 8px 18px; border-radius: 999px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.3); color: #fff; font-size: .82rem; font-weight: 700; letter-spacing: .04em; }

/* Hero banner image — full-bleed, no container inset */
.elementor-element-fbd84df { padding: 0; line-height: 0; }
.elementor-element-fbd84df > .elementor-container { max-width: none !important; padding: 0 !important; width: 100% !important; }
.elementor-element-fbd84df .elementor-widget-html,
.elementor-element-fbd84df .elementor-widget-image,
.elementor-element-fbd84df .elementor-widget-container { line-height: 0; }
.elementor-element-fbd84df > .elementor-container > .elementor-column > .elementor-element-populated,
.elementor-element-fbd84df .elementor-widget-wrap { padding: 0 !important; }

/* Opening blurb — verse + paragraphs + pullquote, capped like the original prose column */
.elementor-element-6045651 { background: #fff; padding: var(--section-pad) 0; }
.elementor-element-6045651 > .elementor-container > .elementor-column > .elementor-widget-wrap { max-width: 820px; margin: 0 auto; }
.elementor-element-6045651 .elementor-widget-text-editor p { font-size: 1.05rem; line-height: 1.7; color: var(--c-text); margin: 0 0 22px; }
.elementor-element-6045651 .elementor-widget-text-editor:last-child p { margin-bottom: 0; }
.elementor-element-6045651 .cbcc-conf-verse { margin: 0 0 28px; padding: 28px 32px; border-left: 3px solid var(--c-gold); background: var(--c-card); border-radius: 0 var(--radius-lg) var(--radius-lg) 0; }
.elementor-element-6045651 .cbcc-conf-verse p { font-family: var(--font-heading); font-style: italic; font-size: 1.2rem; line-height: 1.6; color: var(--c-text); margin: 0 0 10px; }
.elementor-element-6045651 .cbcc-conf-verse cite { font-style: normal; font-size: .85rem; font-weight: 700; color: var(--c-gold); letter-spacing: .04em; }
.elementor-element-6045651 .cbcc-conf-pullquote { font-size: 1.3rem; line-height: 1.6; text-align: center; color: var(--c-text); margin: 32px 0; padding: 0 20px; }

/* Key Details head */
.elementor-element-bbc6a22 { background: var(--c-bg-alt); padding: var(--section-pad) 0 0; }
.elementor-element-bbc6a22 .elementor-heading-title { font-family: var(--font-heading); font-size: 2.4rem; font-weight: 700; color: var(--c-text); line-height: 1.2; margin: 0; }

/* Quick facts grid */
.elementor-element-676ce93 { background: var(--c-bg-alt); padding: 8px 0 var(--section-pad); }
.elementor-element-676ce93 .cbcc-conf-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; text-align: center; }
.elementor-element-676ce93 .cbcc-conf-fact { padding: 28px 20px; border: 1px solid var(--c-border); border-radius: var(--radius-lg); background: var(--c-card); }
.elementor-element-676ce93 .cbcc-conf-fact svg { color: var(--c-gold); margin-bottom: 12px; }
.elementor-element-676ce93 .cbcc-conf-fact h4 { font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; color: var(--c-muted); font-weight: 700; margin: 0 0 6px; }
.elementor-element-676ce93 .cbcc-conf-fact p { font-size: 1rem; line-height: 1.5; color: var(--c-text); margin: 0; }

/* Guest speakers head */
.elementor-element-8d1a33b { background: #fff; padding: var(--section-pad) 0 0; }
.elementor-element-8d1a33b .elementor-heading-title { font-family: var(--font-heading); font-size: 2.4rem; font-weight: 700; color: var(--c-text); line-height: 1.2; margin: 0; }

/* Speaker cards */
.elementor-element-4a13510 { background: #fff; padding: 8px 0 var(--section-pad); }
.elementor-element-4a13510 .cbcc-conf-speakers { display: flex; flex-direction: column; gap: 24px; max-width: 820px; margin: 0 auto; }
.elementor-element-4a13510 .cbcc-conf-speaker { display: flex; gap: 24px; padding: 28px; align-items: flex-start; }
.elementor-element-4a13510 .cbcc-conf-speaker__photo { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; flex-shrink: 0; border: 2px solid var(--c-border); }
.elementor-element-4a13510 .cbcc-conf-speaker__body h3 { font-family: var(--font-heading); font-size: 1.3rem; font-weight: 700; color: var(--c-text); margin: 0 0 10px; }
.elementor-element-4a13510 .cbcc-conf-speaker__body p { font-size: .95rem; line-height: 1.65; color: var(--c-muted); margin: 0; }

/* Schedule head */
.elementor-element-ff1a304 { background: var(--c-bg-alt); padding: var(--section-pad) 0 0; }
.elementor-element-ff1a304 .elementor-heading-title { font-family: var(--font-heading); font-size: 2.4rem; font-weight: 700; color: var(--c-text); line-height: 1.2; margin: 0 0 16px; }
.elementor-element-ff1a304 .elementor-widget-text-editor:last-child p { font-size: 1.05rem; color: var(--c-muted); max-width: 620px; margin: 0 auto; line-height: 1.8; }

/* Schedule days */
.elementor-element-ed2d6b6 { background: var(--c-bg-alt); padding: 8px 0 var(--section-pad); }
.elementor-element-ed2d6b6 > .elementor-container > .elementor-column > .elementor-widget-wrap { max-width: 700px; margin: 0 auto; }
.elementor-element-ed2d6b6 .cbcc-conf-schedule-day { margin-bottom: 32px; }
.elementor-element-ed2d6b6 .cbcc-conf-schedule-day h3 { font-family: var(--font-heading); font-size: 1.2rem; font-weight: 700; color: var(--c-gold); margin: 0 0 14px; padding-bottom: 8px; border-bottom: 1px solid var(--c-border); }
.elementor-element-ed2d6b6 .cbcc-conf-schedule-list { list-style: none; margin: 0; padding: 0; }
.elementor-element-ed2d6b6 .cbcc-conf-schedule-list li { display: flex; gap: 20px; padding: 10px 0; border-bottom: 1px solid var(--c-border); font-size: .92rem; }
.elementor-element-ed2d6b6 .cbcc-conf-schedule-list li:last-child { border-bottom: none; }
.elementor-element-ed2d6b6 .cbcc-conf-schedule-time { flex: 0 0 150px; color: var(--c-muted); font-weight: 600; }
.elementor-element-ed2d6b6 .cbcc-conf-schedule-title { color: var(--c-text); }

/* Registration CTA */
.elementor-element-a354f1c { background: var(--c-dark); padding: var(--section-pad) 0; }
.elementor-element-a354f1c > .elementor-container { align-items: center; }

@media (max-width: 820px) {
  .elementor-element-676ce93 .cbcc-conf-facts { grid-template-columns: repeat(2, 1fr); }
  .elementor-element-4a13510 .cbcc-conf-speaker { flex-direction: column; align-items: center; text-align: center; }
  .elementor-element-ed2d6b6 .cbcc-conf-schedule-time { flex-basis: 110px; }
}
@media (max-width: 480px) {
  .elementor-element-676ce93 .cbcc-conf-facts { grid-template-columns: 1fr; }
  .elementor-element-ed2d6b6 .cbcc-conf-schedule-list li { flex-direction: column; gap: 4px; }
}
