/* ==========================================================
   NAV / HEADER OVERRIDES (clean, no duplicates)
   Strategy:
   - >=992px: desktop menu + desktop search (right)
   - <=991px: hamburger/collapse menu + icon-only search
   ========================================================== */

/* 1) Kill the theme's SELECT dropdown menu completely */
select,
.selectnav,
.tinynav,
.responsive-menu-select,
.mobile-menu-select,
.nav-select,
.menu-select,
select.selectnav,
select.tinynav,
.eo-mobile-select-wrap {
  display: none !important;
}

/* 2) Title sizing */
#navbarcont .navbar-brand{
  font-size: 1.6em;
  font-weight: 600;
}
@media (max-width: 767px){
  #navbarcont .navbar-brand{ font-size: 1.8em; }
}

/* ----------------------------------------------------------
   <=991px: MOBILE/TABLET MODE (hamburger + collapse)
   ---------------------------------------------------------- */
@media (max-width: 991px){

  html, body, #wrap{ overflow-x: hidden !important; }

  /* Show hamburger */
  #navbarcont .navbar-toggle{ display: block !important; }

  /* Hide desktop-only collapse variant */
  #navbarcont .navbar-collapse.hidden-xs.hidden-sm{
    display: none !important;
  }

  /* Collapse hidden until opened */
  #navbarcont .navbar-collapse{ display: none !important; }

  /* Bootstrap open states */
  #navbarcont .navbar-collapse.collapse.in,
  #navbarcont .navbar-collapse.show{
    display: block !important;
  }

  /* Submenus stacked */
  .dropdown-menu,
  .sub-menu{
    position: static !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
  }

  /* Show submenu when parent is open/show */
  li.open > .dropdown-menu,
  li.show > .dropdown-menu,
  li.open > .sub-menu,
  li.show > .sub-menu,
  .menu-item-has-children.open > .sub-menu,
  .menu-item-has-children.show > .sub-menu{
    display: block !important;
  }

  /* One-row header: toggle + brand + search icon */
  #navbarcont .navbar-header{
    display: flex !important;
    align-items: center;
    width: 100% !important;
    float: none !important;
  }

  #navbarcont .navbar-header .navbar-toggle,
  #navbarcont .navbar-header .navbar-brand,
  #navbarcont .navbar-header .searchwrap{
    float: none !important;
  }

  #navbarcont .navbar-header .navbar-toggle{ margin: 0 10px 0 0 !important; }

  #navbarcont .navbar-header .navbar-brand{
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  #navbarcont .navbar-header .searchwrap{
    flex: 0 0 auto !important;
    margin-left: auto !important;
    position: relative;
  }

  /* icon-only until opened */
  #navbarcont #search_lg{ display: none !important; }

  /* open state drops input below */
  #navbarcont .searchwrap.is-open #search_lg{
    display: block !important;
    position: absolute;
    right: 0;
    top: 100%;
    margin-top: 8px;
    width: 220px !important;
    max-width: 70vw !important;
    z-index: 9999;
  }

  #navbarcont #searchformtop,
  #navbarcont .navbar-form{
    margin: 0 !important;
  }
}

/* ----------------------------------------------------------
   >=992px: DESKTOP MODE (horizontal menu + search right)
   ---------------------------------------------------------- */
@media (min-width: 992px){

  /* Hide hamburger */
  #navbarcont .navbar-toggle{ display: none !important; }

  #inner-header .navbar{ min-height: 56px !important; }

  #navbarcont,
  #navbarcont .nav-container{
    position: relative !important;
  }

  #navbarcont .navbar-header{ position: static !important; }

  /* Show desktop menu */
  #navbarcont .navbar-collapse.hidden-xs.hidden-sm{
    display: block !important;
  }

  /* Pin search to far right */
  #navbarcont .navbar-header .searchwrap{
    position: absolute !important;
    right: 15px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    z-index: 999 !important;
  }

  /* Search sizing */
  #navbarcont #search_lg{
    width: 140px !important;
    max-width: 140px !important;
    height: 34px !important;
    line-height: 34px !important;
  }
  #navbarcont .searchwrap .btn{
    height: 34px !important;
    line-height: 34px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  #navbarcont .navbar-form{
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* Reserve space so menu doesn't wrap under search */
  #navbarcont #topmenuwrap{
    padding-right: 210px !important;
  }

  /* Space between title and menu */
  #navbarcont .navbar-nav{ margin-left: 30px !important; }

  /* Keep one-line title without truncation */
  #navbarcont .navbar-header .navbar-brand{
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  /* Fixed navbar offset */
  body.fixednav{ padding-top: 70px !important; }
}

/* --------------------------------------------------
   BOOTSTRAP CAROUSEL FIXES (no duplicates)
----------------------------------------------------- */

/* General carousel spacing */
#myCarousel{ margin-top: 0 !important; }
#myCarousel .item{ padding: 10px 0 !important; }

/* Keep image box height consistent and crop nicely */
#myCarousel .col-xs-6.col-sm-4 a.thumbnail{
  height: 180px !important;     /* adjust: 160–220 */
  overflow: hidden !important;
  margin: 0 !important;
}

/* Crop image into the box */
#myCarousel .col-xs-6.col-sm-4 a.thumbnail img.featurette-image{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Caption formatting (ALLOW WRAPPING – no clamping) */
#myCarousel .carousel-caption{
  padding: 0 !important;
  text-align: justify;
}
#myCarousel .carousel-caption h3{
  text-align: center;
  margin: 0 0 .35em 0 !important;
  white-space: normal !important;
  overflow: visible !important;
}
#myCarousel .carousel-caption p{
  margin: 0 0 .6em 0 !important;
  white-space: normal !important;
  overflow: visible !important;
}

/* Center the Details button */
#myCarousel .carousel-caption .btn{
  display: block;
  width: max-content;
  margin: 1em auto 0;
}

/* Hide redundant “Read more” inside carousel */
#myCarousel .excerpt-read-more{ display: none !important; }

/* Center indicators (Bootstrap 3-safe) */
#myCarousel .carousel-indicators{
  left: 0 !important;
  right: 0 !important;
  width: auto !important;
  margin-left: 0 !important;
  text-align: center !important;
}

/* MOBILE: force carousel image left + text right (no wrapping under image) */
@media (max-width: 767px){

  #myCarousel .item{ padding: 6px 0 !important; }

  #myCarousel .row.caru{
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
  }

  #myCarousel .row.caru > .col-xs-6.col-sm-4{
    flex: 0 0 38% !important;
    max-width: 38% !important;
  }

  #myCarousel .row.caru > .col-xs-6.col-sm-8{
    flex: 1 1 62% !important;
    max-width: 62% !important;
  }

  /* Slightly shorter image box on mobile */
  #myCarousel .col-xs-6.col-sm-4 a.thumbnail{
    height: 140px !important;
  }
}
/* Carousel: tighten typography to stabilize height */
#myCarousel .carousel-caption h3{
  font-size: 1.15em !important;   /* default ~1.3em */
  line-height: 1.25 !important;
}

#myCarousel .carousel-caption p{
  font-size: 0.95em !important;   /* slightly smaller body */
  line-height: 1.45 !important;
}
/* Carousel: keep slide height stable even when text is short */
#myCarousel .carousel-caption{
  min-height: 150px;  /* adjust: 130–190 */
}
/* Stronger: stabilize the whole slide height */
#myCarousel .item .row.caru{
  min-height: 200px; /* adjust to taste */
}
/* Carousel: prevent height shrinking between slides */
#myCarousel .item .row.caru{
  min-height: 240px !important;  /* adjust: 220–280 */
  align-items: stretch !important;
}
@media (max-width: 767px){
  #myCarousel .carousel-caption{
    min-height: 150px; /* adjust: 100–150 */
  }
}
@media (max-width: 767px){
  #myCarousel .item .row.caru{
    min-height: 170px;
  }
}
@media (max-width: 767px){
  #myCarousel .item .row.caru{
    min-height: 190px !important; /* adjust: 170–220 */
  }
}





/* --------------------------------------------------
   HOME / SPACING FIXES
----------------------------------------------------- */

@media (max-width: 767px){
  #maincnot,
  .bu-home-intro{
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

/* DESKTOP: seam header to content (remove excess white space) */
@media (min-width: 992px){
  #navbarcont .navbar,
  #inner-header .navbar{
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  #inner-header,
  #navbarcont{
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  #maincont,
  #main,
  .site-content,
  .container:first-of-type{
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

/* MOBILE: prevent header/nav from overlapping page content */
@media (max-width: 991px){
  body.fixednav{ padding-top: 56px !important; }

  #maincont,
  #main,
  .site-content{
    padding-top: 10px !important;
    margin-top: 0 !important;
  }

  #maincont h1:first-child,
  #main h1:first-child,
  .site-content h1:first-child{
    margin-top: 0 !important;
  }
}

/* --------------------------------------------------
   FOOTER
----------------------------------------------------- */
footer{ background-color: #ffffff !important; }


/* --------------------------------------------------
   SIDEBAR: CATEGORIES NESTING
----------------------------------------------------- */
#categories-4.widget_categories ul{
  margin: 0;
  padding-left: 0;
  list-style: none;
}
#categories-4.widget_categories li{
  display: list-item !important;
  float: none !important;
  margin: 6px 0;
}
#categories-4.widget_categories ul.children{
  margin-top: 6px;
  padding-left: 18px !important;
}
#categories-4.widget_categories ul.children li{
  margin: 4px 0;
  font-size: 0.97em;
  opacity: 0.95;
}

/* --------------------------------------------------
   HOME: Apostles Creed section square thumbnail
----------------------------------------------------- */
.home header.bu-home-cat-header a.thumbnail.bu-cat-thumb{
  width: 90px !important;
  height: 90px !important;
  max-width: 90px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  overflow: hidden !important;
  float: left !important;
  display: block !important;
  margin: 0 14px 6px 0 !important;
}
.home header.bu-home-cat-header a.thumbnail.bu-cat-thumb img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
.home header.bu-home-cat-header::after{
  content: "";
  display: table;
  clear: both;
}
@media (max-width: 767px){
  .home header.bu-home-cat-header a.thumbnail.bu-cat-thumb{
    width: 70px !important;
    height: 70px !important;
    max-width: 70px !important;
    margin-right: 12px !important;
  }
}




#acpe-archive-toolbar-holder{
  clear: both;
}


/* ACPE shield: prevent theme from shrinking/clipping icons */
.acpe-toolbar .acpe-icon{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:16px !important;
  height:16px !important;
  line-height:1 !important;
  overflow:visible !important;
}

.acpe-toolbar .acpe-svg{
  width:16px !important;
  height:16px !important;
  max-width:16px !important;
  max-height:16px !important;
  display:block !important;
}

/* ACPE shield: dropdown spacing */
.acpe-toolbar .acpe-menu{
  padding:.45rem .6rem !important;
  font-size:14px !important;
  line-height:1.35 !important;
}


/* ACPE layout fix — Apostles Creed */
.acpe-header-wrap{
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.acpe-header-wrap .thumbnail{
  float: none !important;
  flex: 0 0 auto;
}

.acpe-header-wrap .acpe-toolbar{
  flex: 1 1 auto;
  margin-top: 0;
}


/*=== SIDEBAR styles ==== */
.sidebar-card {
  border: 0px solid rgba(0,0,0,.08);
}
.sidebar-cta a {
  color: #1a1a1a;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,.2);
}

.sidebar-cta a:hover {
  border-bottom-color: rgba(0,0,0,.5);
}


