.elementor-34 .elementor-element.elementor-element-cec1bc6{--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-34 .elementor-element.elementor-element-978964b{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-34 .elementor-element.elementor-element-1f356b4{--display:flex;border-style:solid;--border-style:solid;border-width:0px 1px 0px 0px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:0px;--border-left-width:0px;border-color:#E2E2E2;--border-color:#E2E2E2;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:32px;}.elementor-34 .elementor-element.elementor-element-0fd3567 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 16px;}.elementor-34 .elementor-element.elementor-element-8a99d65{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:0px;}.elementor-34 .elementor-element.elementor-element-3ae4e08 > .elementor-widget-container{margin:16px 0px 0px 0px;}.elementor-34 .elementor-element.elementor-element-8b5a808{--display:flex;--margin-top:128px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-34 .elementor-element.elementor-element-782c679{text-align:center;}.elementor-34 .elementor-element.elementor-element-782c679 .elementor-heading-title{font-family:"Federo", serif;font-size:48px;font-weight:400;color:var( --e-global-color-text );}.elementor-34 .elementor-element.elementor-element-2808b7f{margin:32px 0px calc(var(--kit-widget-spacing, 0px) + 128px) 0px;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-34 .elementor-element.elementor-element-2808b7f{margin:32px 0px calc(var(--kit-widget-spacing, 0px) + 128px) 0px;}}@media(min-width:768px){.elementor-34 .elementor-element.elementor-element-1f356b4{--width:80%;}.elementor-34 .elementor-element.elementor-element-8a99d65{--width:20%;}}@media(max-width:767px){.elementor-34 .elementor-element.elementor-element-1f356b4{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-34 .elementor-element.elementor-element-0fd3567 > .elementor-widget-container{margin:0px 0px 16px 0px;padding:0px 0px 0px 0px;}.elementor-34 .elementor-element.elementor-element-8a99d65{--padding-top:0px;--padding-bottom:0px;--padding-left:8px;--padding-right:8px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}/* Start custom CSS for feedzy-rss-feeds, class: .elementor-element-0fd3567 *//* =========================================
   BFB – Feedzy (Free) Substack Feed
   Wrapper: .bfb-substack-feed-main
   Desktop: image left (absolute) + text RIGHT bottom-aligned
   Mobile: image, title, preview stacked
   ========================================= */

.bfb-substack-feed-main{
  --bfb-img-w: 520px;     /* desktop image width */
  --bfb-gap: 16px;
  --bfb-pad-y: 32px;

}

/* ===== Desktop + base ===== */
.bfb-substack-feed-main .feedzy-rss ul > li.rss_item{
  position: relative !important;
  display: flex !important;                 /* so we can push text to bottom */
  flex-direction: column !important;
  justify-content: flex-start !important;     /* TEXT AT BOTTOM */

  /* override Feedzy inline padding */
  padding: var(--bfb-pad-y) 0 !important;

  /* space on the left for the absolute image */
  padding-left: calc(var(--bfb-img-w) + var(--bfb-gap)) !important;

  /* reserve height so items don’t overlap + align to image height */
  min-height: calc((var(--bfb-img-w) * 9 / 16) + (var(--bfb-pad-y) * 2)) !important;

  margin: 0 !important;
  border-bottom: 0px solid rgba(0,0,0,.12) !important;
  overflow: hidden !important;
}

/* IMAGE pinned left */
.bfb-substack-feed-main .feedzy-rss ul > li.rss_item .rss_image{
  position: absolute !important;
  left: 0 !important;
  top: var(--bfb-pad-y) !important;

  width: var(--bfb-img-w) !important;               /* overrides inline width */
  height: calc(var(--bfb-img-w) * 9 / 16) !important; /* 16:9 height */
  margin: 0 !important;

  overflow: hidden !important;
  float: none !important;
  clear: none !important;

  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.bfb-substack-feed-main .feedzy-rss ul > li.rss_item .rss_image img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Title */
.bfb-substack-feed-main .feedzy-rss ul > li.rss_item span.title{
  display: block !important;
  line-height: 1.2 !important;
  margin: 0 0 8px 0 !important;
  float: none !important;
  clear: none !important;
}

.bfb-substack-feed-main .feedzy-rss ul > li.rss_item span.title a{
  text-decoration: none !important;
  color: inherit !important;

  /* Typography */
  font-family: "Erode", serif !important;
  font-size: 32px !important;
  line-height: 1.15 !important;
  font-weight: 300 !important;
    color: #111111!important;
}

/* Preview */
.bfb-substack-feed-main .feedzy-rss ul > li.rss_item .rss_content{
  line-height: 1.5 !important;
  margin: 0 !important;
  float: none !important;
  clear: none !important;
  margin-bottom: -7px!important;

  /* Typography */
  font-family: "Erode", serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  color: #111111!important;

  /* clamp */
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.bfb-substack-feed-main .feedzy-rss ul > li.rss_item .rss_content p{
  margin: 0 !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}

/* ===== Mobile: stack vertically (image, title, preview) ===== */
@media (max-width: 767px){
  .bfb-substack-feed-main{
    --bfb-img-w: 150px;
    --bfb-gap: 16px;
    --bfb-pad-y: 32px;
  }

  .bfb-substack-feed-main .feedzy-rss ul > li.rss_item{
    display: block !important;     /* normal flow stack */
    padding-left: 0 !important;
    min-height: 0 !important;
  }
  
  .bfb-substack-feed-main .feedzy-rss ul > li.rss_item span.title{
  margin: 0 0 0px 0 !important;
}

  .bfb-substack-feed-main .feedzy-rss ul > li.rss_item .rss_image{
    position: relative !important;
    left: auto !important;
    top: auto !important;

    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;

    margin: 0 0 12px 0 !important;
  }

  .bfb-substack-feed-main .feedzy-rss ul > li.rss_item .rss_image img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  /* Optional mobile type scaling */
  .bfb-substack-feed-main .feedzy-rss ul > li.rss_item span.title a{
    font-size: 24px !important;
  }
  .bfb-substack-feed-main .feedzy-rss ul > li.rss_item .rss_content{
    font-size: 16px !important;
  }
}/* End custom CSS */
/* Start custom CSS for feedzy-rss-feeds, class: .elementor-element-3ae4e08 *//* =========================================
   BFB – Sidebar Feed (20%) – stacked layout
   Wrapper: .bfb-substack-feed-side
   Includes: OFFSET (hide first N items)
   Desktop: image/title/preview stacked
   Mobile: 2-column grid, keep 16:9, hide preview
   Fix: remove Feedzy UL pseudo-elements that create empty grid slot
   ========================================= */

/* ===== OFFSET / HIDE FIRST N ITEMS =====
   Change 2 -> however many you want to skip
*/
.bfb-substack-feed-side .feedzy-rss ul > li.rss_item:nth-of-type(-n+5){
  display: none !important;
}

/* FIX: Feedzy UL ::before/::after can create a blank "first cell" in grid */
.bfb-substack-feed-side .feedzy-rss ul::before,
.bfb-substack-feed-side .feedzy-rss ul::after{
  content: none !important;
  display: none !important;
}

/* Clean UL defaults */
.bfb-substack-feed-side .feedzy-rss ul{
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Base item (stacked) */
.bfb-substack-feed-side .feedzy-rss ul > li.rss_item{
  position: relative !important;
  display: block !important;
  padding: 16px 0 !important;
  margin: 0 !important;
  border-bottom: 0px solid rgba(0,0,0,.12) !important;

  /* undo any main-feed layout that might leak */
  padding-left: 0 !important;
  min-height: 0 !important;

  overflow: visible !important;
}

/* Image (normal flow, full width) */
.bfb-substack-feed-side .feedzy-rss ul > li.rss_item .rss_image{
  position: relative !important;
  left: auto !important;
  top: auto !important;

  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 0 8px 0 !important;

  overflow: hidden !important;
  float: none !important;
  clear: none !important;

  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.bfb-substack-feed-side .feedzy-rss ul > li.rss_item .rss_image img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Title */
.bfb-substack-feed-side .feedzy-rss ul > li.rss_item span.title{
  display: block !important;
  margin: 0 0 px 0 !important;
  line-height: 1.2 !important;
}

.bfb-substack-feed-side .feedzy-rss ul > li.rss_item span.title a{
  text-decoration: none !important;
  color: inherit !important;

  font-family: "Erode", serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
}

/* Preview */
.bfb-substack-feed-side .feedzy-rss ul > li.rss_item .rss_content{
  margin: 0 !important;
  opacity: .85 !important;
  line-height: 1.5 !important;

  font-family: "Erode", serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;

  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.bfb-substack-feed-side .feedzy-rss ul > li.rss_item .rss_content p{
  margin: 0 !important;
}

/* Hide truly empty items if Feedzy outputs an empty LI */
.bfb-substack-feed-side .feedzy-rss ul > li.rss_item:empty{
  display: none !important;
}

/* MOBILE: 2-column grid, keep 16:9, hide preview */
@media (max-width: 767px){

  .bfb-substack-feed-side .feedzy-rss ul{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    grid-auto-flow: row dense !important;
  }

  .bfb-substack-feed-side .feedzy-rss ul > li.rss_item{
    border-bottom: none !important;
    padding: 0 !important;
  }

  .bfb-substack-feed-side .feedzy-rss ul > li.rss_item .rss_image{
    aspect-ratio: 16 / 9 !important;
    margin: 0 0 8px 0 !important;
  }

  .bfb-substack-feed-side .feedzy-rss ul > li.rss_item span.title a{
    font-size: 16px !important;
    line-height: 1.15 !important;
  }

  .bfb-substack-feed-side .feedzy-rss ul > li.rss_item .rss_content{
    display: none !important;
  }
}/* End custom CSS */