.elementor-749 .elementor-element.elementor-element-f474045{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-749 .elementor-element.elementor-element-236f5fd .jeg-elementor-kit.jkit-post-terms{text-align:left;}.elementor-749 .elementor-element.elementor-element-c79f5f5 .jeg-elementor-kit.jkit-post-title{text-align:left;}.elementor-749 .elementor-element.elementor-element-16ed113 .hfe-post-info-icon{width:14px;}.elementor-749 .elementor-element.elementor-element-16ed113 .hfe-post-info-icon i{font-size:14px;}.elementor-749 .elementor-element.elementor-element-16ed113 .hfe-post-info-icon svg{--e-icon-list-icon-size:14px;}body:not(.rtl) .elementor-749 .elementor-element.elementor-element-16ed113 .hfe-post-info-text{padding-left:10px;}body.rtl .elementor-749 .elementor-element.elementor-element-16ed113 .hfe-post-info-text{padding-right:10px;}.elementor-749 .elementor-element.elementor-element-56ab336 .jeg-elementor-kit.jkit-post-featured-image{text-align:center;}.elementor-749 .elementor-element.elementor-element-56ab336 .jeg-elementor-kit.jkit-post-featured-image .post-featured-image img{object-position:center center;}.elementor-749 .elementor-element.elementor-element-3418271{width:var( --container-widget-width, 107.687% );max-width:107.687%;--container-widget-width:107.687%;--container-widget-flex-grow:0;}.elementor-749 .elementor-element.elementor-element-3418271.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-749 .elementor-element.elementor-element-3418271 .jeg-elementor-kit.jkit-post-content{text-align:left;}.elementor-749 .elementor-element.elementor-element-4dc9a8d{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-749 .elementor-element.elementor-element-2fc32c8{--display:flex;}/* Start custom CSS for container, class: .elementor-element-f474045 *//* ==================================================
   BUBBLE BREATH - SINGLE POST TEMPLATE STYLES
   ================================================== */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Inter:wght@300;400;500;600&display=swap');

:root {
  --bb-pink: #d58fa6;
  --bb-dark: #4a2c35;
  --bb-light: #fdfaf9;
  --bb-text: #6b5b5b;
  --bb-border: rgba(213, 143, 166, 0.25);
}

.elementor-749 {
  font-family: 'Inter', -apple-system, sans-serif;
  color: var(--bb-text);
  background-color: var(--bb-light);
  overflow-x: clip;
}

/* --------------------------------------------------
   1. CATEGORY BADGE (Container: f474045)
   -------------------------------------------------- */
.elementor-element-f474045 {
  padding-top: 45px !important;
  padding-bottom: 8px !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  text-align: center !important;
}

.elementor-element-f474045 .e-con-inner,
.elementor-element-f474045 .wpr-taxonomy-list {
  display: inline-flex !important;
  justify-content: center !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-element-f474045 .wpr-taxonomy a {
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  text-decoration: none !important;
  font-size: 0.76rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.18em !important;
  font-weight: 600 !important;
  color: var(--bb-pink) !important;
}

.elementor-element-f474045 .wpr-term-count {
  display: none !important;
}

/* --------------------------------------------------
   2. POST TITLE & META (Container: a8bfc1f)
   -------------------------------------------------- */
/* Force Title & Meta into a centered vertical column on desktop */
.elementor-element-a8bfc1f,
div[data-id="a8bfc1f"] {
  display: flex !important;
  flex-direction: column !important;
  --direction: column !important;
  --flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  max-width: 900px !important;
  margin: 0 auto 35px auto !important;
  padding: 0 20px !important;
  width: 100% !important;
}

.elementor-element-a8bfc1f > .elementor-element,
div[data-id="a8bfc1f"] > .elementor-element {
  width: 100% !important;
  max-width: 100% !important;
}

.elementor-element-c79f5f5 .post-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(2.2rem, 4.2vw, 3.2rem) !important;
  color: var(--bb-dark) !important;
  line-height: 1.18 !important;
  font-weight: 500 !important;
  margin: 0 0 16px 0 !important;
  text-align: center !important;
}

.elementor-element-16ed113 .hfe-post-info-inline {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 22px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  flex-wrap: wrap !important;
  width: 100% !important;
}

.elementor-element-16ed113 .hfe-post-info-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 0.85rem !important;
  color: #8c7b80 !important;
}

.elementor-element-16ed113 .hfe-post-info-item a {
  color: inherit !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.elementor-element-16ed113 .hfe-post-info-icon svg {
  width: 14px !important;
  height: 14px !important;
  fill: var(--bb-pink) !important;
}

/* --------------------------------------------------
   3. FEATURED IMAGE (Container: 454fce3) - CENTERED & EXPANDED
   -------------------------------------------------- */
.elementor-element-454fce3,
div[data-id="454fce3"] {
  max-width: 1100px !important;
  width: 100% !important;
  margin: 0 auto 50px auto !important;
  padding: 0 20px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

/* Force widget and JKit wrappers to fill full container width */
.elementor-element-56ab336,
div[data-id="56ab336"],
.elementor-element-56ab336 .jkit-post-featured-image,
.elementor-element-56ab336 .post-featured-image {
  width: 100% !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
  display: block !important;
}

.elementor-element-56ab336 .post-featured-image {
  border-radius: 24px 24px 80px 24px !important;
  overflow: hidden !important;
  box-shadow: 0 20px 45px rgba(74, 44, 53, 0.08) !important;
  border: 4px solid #ffffff !important;
  background-color: var(--bb-light) !important;
}

.elementor-element-56ab336 .post-featured-image img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 8.5 !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 auto !important;
}

/* --------------------------------------------------
   4. MAIN 2-COLUMN LAYOUT (Container: 113fa1f)
   -------------------------------------------------- */
.elementor-element-113fa1f {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 0 20px 80px 20px !important;
  box-sizing: border-box !important;
  display: flex !important;
  gap: 60px !important;
}

/* Force left content container to stack its children vertically */
.elementor-element-6fc8121,
div[data-id="6fc8121"] {
  display: flex !important;
  flex-direction: column !important;
  --direction: column !important;
  --flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
}

.elementor-element-6fc8121 > .elementor-element,
div[data-id="6fc8121"] > .elementor-element {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  display: block !important;
}

/* Desktop layout (> 1024px) */
@media (min-width: 1025px) {
  .elementor-element-113fa1f {
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
  }

  .elementor-element-6fc8121 {
    flex: 1 1 0% !important;
    max-width: calc(100% - 410px) !important;
  }

  .elementor-element-eaa0e29 {
    flex: 0 0 350px !important;
    width: 350px !important;
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 90px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 26px !important;
  }
}

/* --------------------------------------------------
   5. TABLET RESPONSIVE FIXES (768px - 1024px)
   -------------------------------------------------- */
@media (max-width: 1024px) {
  /* Left-align category, title, and post meta on tablet */
  .elementor-element-f474045 {
    text-align: left !important;
    padding-top: 35px !important;
  }

  .elementor-element-f474045 .e-con-inner,
  .elementor-element-f474045 .wpr-taxonomy-list {
    justify-content: flex-start !important;
  }

  .elementor-element-a8bfc1f,
  div[data-id="a8bfc1f"] {
    align-items: flex-start !important;
    text-align: left !important;
  }

  .elementor-element-c79f5f5 .post-title {
    text-align: left !important;
  }

  .elementor-element-16ed113 .hfe-post-info-inline {
    justify-content: flex-start !important;
  }
}

/* Tablet: Side-by-side cards */
@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-element-113fa1f {
    flex-direction: column !important;
    gap: 50px !important;
  }

  .elementor-element-6fc8121 {
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-element-eaa0e29 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-element-3705774,
  .elementor-element-4dc9a8d {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
  }

  .bb-care-paths-card,
  .bb-journey-cta-card {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
  }
}

/* --------------------------------------------------
   6. POST CONTENT STYLING (Widget: 3418271)
   -------------------------------------------------- */
.elementor-element-3418271 .jkit-post-content {
  font-size: 1.05rem !important;
  line-height: 1.85 !important;
  color: var(--bb-text) !important;
  width: 100% !important;
}

.elementor-element-3418271 .jkit-post-content p {
  margin-bottom: 24px !important;
  font-weight: 300 !important;
}

.elementor-element-3418271 .jkit-post-content > p:first-of-type {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.22rem !important;
  font-style: italic !important;
  color: var(--bb-dark) !important;
  line-height: 1.7 !important;
  border-left: 2px solid var(--bb-pink) !important;
  padding-left: 20px !important;
  margin-bottom: 30px !important;
}

.elementor-element-3418271 .jkit-post-content h2,
.elementor-element-3418271 .jkit-post-content h3,
.elementor-element-3418271 .jkit-post-content h4 {
  font-family: 'Playfair Display', Georgia, serif !important;
  color: var(--bb-dark) !important;
  line-height: 1.25 !important;
  font-weight: 500 !important;
  margin: 36px 0 14px 0 !important;
}

.elementor-element-3418271 .jkit-post-content h2 { font-size: 1.95rem !important; }
.elementor-element-3418271 .jkit-post-content h3 { font-size: 1.6rem !important; }
.elementor-element-3418271 .jkit-post-content h4 { font-size: 1.3rem !important; }

/* --------------------------------------------------
   7. AUTHOR SPOTLIGHT CARD (Widget: 0784ae8)
   -------------------------------------------------- */
.elementor-element-0784ae8 {
  width: 100% !important;
  margin: 45px 0 !important;
}

.bb-author-spotlight-card {
  width: 100% !important;
}

/* --------------------------------------------------
   8. COMMENTS (Widget: 07758c6)
   -------------------------------------------------- */
.elementor-element-07758c6 {
  width: 100% !important;
  border-top: 1px solid var(--bb-border) !important;
  padding-top: 40px !important;
  margin-top: 20px !important;
  clear: both !important;
}

.elementor-element-07758c6 #reply-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.7rem !important;
  color: var(--bb-dark) !important;
  font-weight: 500 !important;
  margin-bottom: 16px !important;
}

.elementor-element-07758c6 textarea,
.elementor-element-07758c6 input[type="text"],
.elementor-element-07758c6 input[type="email"] {
  width: 100% !important;
  padding: 14px 18px !important;
  border: 1px solid var(--bb-border) !important;
  background: #ffffff !important;
  border-radius: 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.95rem !important;
  color: var(--bb-dark) !important;
  outline: none !important;
  margin-bottom: 16px !important;
}

.elementor-element-07758c6 input[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 13px 36px !important;
  background-color: var(--bb-dark) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 50px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.78rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.elementor-element-07758c6 input[type="submit"]:hover {
  background-color: var(--bb-pink) !important;
  transform: translateY(-2px) !important;
}

/* --------------------------------------------------
   9. MOBILE BREAKPOINT (Under 767px)
   -------------------------------------------------- */
@media (max-width: 767px) {
  .elementor-element-113fa1f {
    flex-direction: column !important;
    gap: 40px !important;
  }

  .elementor-element-eaa0e29 {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
    width: 100% !important;
  }

  .bb-care-paths-card,
  .bb-journey-cta-card {
    max-width: 100% !important;
    width: 100% !important;
  }

  .elementor-element-16ed113 .hfe-post-info-inline {
    gap: 12px !important;
  }

  .elementor-element-07758c6 input[type="submit"] {
    width: 100% !important;
  }
}/* End custom CSS */