  /* ============ Âé¶¹ÆµµÀ Overrides ============ */

/* Cabinet component ï¿½ remove bullets & indent, tidy spacing */
.cabinet-member :where(.wp-block-list, ul, ol) {
  list-style: none;
  margin: 0;
  padding-left: 0;
}
.cabinet-member li { margin: .25rem 0; }
.cabinet-member li::marker { content: ""; }

/* --- Layout tokens (use theme.json if available, else fallback) --- */
:root {
  --umw-content: var(--wp--style--global--content-size, 1170px);
  --umw-wide:    var(--wp--style--global--wide-size,    1400px);
  --umw-gutter:  16px;
  /* Brand */
  --bs-primary: #7a1e2d;

  /* Subtle UI surfaces */
  --bs-primary-bg-subtle: #f6eef0;
  --bs-primary-border-subtle: #e4c3ca;
}


/* 1) Treat any full-width Group/Cover as a full-bleed strip */
.wp-block-group.alignfull,
.wp-block-cover.alignfull {
  width: 100vw;
  margin-left: 50%;
  transform: translateX(-50%);
}

/* 2) Clamp *direct children* inside those strips, unless they are explicitly wide/full */
.wp-block-group.alignfull > :not(.alignwide):not(.alignfull),
.wp-block-cover.alignfull > :not(.alignwide):not(.alignfull) {
  max-width: var(--umw-content);
  margin-inline: auto;
  padding-inline: var(--umw-gutter);
}

/* 3) Back-compat: if an old inner-container exists, clamp that too */
.wp-block-group.alignfull > .wp-block-group__inner-container,
.wp-block-cover.alignfull > .wp-block-cover__inner-container {
  max-width: var(--umw-content);
  margin-inline: auto;
  padding-inline: var(--umw-gutter);
}

/* 4) For non-full sections, keep normal clamped groups (no inner wrapper needed) */
.wp-block-group:is(.is-layout-flow, .is-layout-constrained):not(.alignwide):not(.alignfull) {
  max-width: var(--umw-content);
  margin-inline: auto;
  padding-inline: var(--umw-gutter);
}

/* 5) Wide/full helpers still respected elsewhere */
.alignwide { max-width: var(--wp--style--global--wide-size, 1400px); margin-inline: auto; }

/* (Optional) columns rhythm */
:where(.wp-block-columns) { margin-bottom: 1.75em; }
:where(.wp-block-columns.is-layout-flex) { gap: 1.5rem; }


/* Fallback defaults for the ACF block (match theme.json) */
.wp-block-acf-hxinfo-icons,
.umw-hxinfo-icons {
  /* Use JSON variables if present; else fallback values */
  margin-block: var(--wp--custom--acf-hxinfo-icons--margin, 1.75rem);
  padding: var(--wp--custom--acf-hxinfo-icons--padding, 1rem);
}

/* Better gutters whenever the block is full-bleed */
.wp-block-acf-hxinfo-icons.alignfull,
.umw-hxinfo-icons.alignfull {
  padding-left: max(1rem, env(safe-area-inset-left));
  padding-right: max(1rem, env(safe-area-inset-right));
}

/* If you keep a .container inside the block, ensure it doesnï¿½t zero out padding */
.umw-hxinfo-icons > .container { padding-left: 1rem; padding-right: 1rem; }

/* Optional: avoid double spacing with your bridge rule (remove margin if the bridge already applies) */
.wp-site-blocks > .wp-block-acf-hxinfo-icons:not(.alignwide):not(.alignfull) + :not(.wp-block),
.wp-site-blocks > :not(.wp-block) + .wp-block-acf-hxinfo-icons:not(.alignwide):not(.alignfull) {
  margin-block-start: 0;
}



 .myÂé¶¹ÆµµÀ-dropdown .myÂé¶¹ÆµµÀ-dropdown-content a {
 text-shadow: none}

 .hero-text .btn{
  text-shadow: none}
  /* Skip link becomes visible when focused */
.skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	padding: .75rem 1rem;
	background: #fff;
	border: 2px solid currentColor;
	z-index: 10000;
}
.skip-link:focus {
	left: 1rem;
	top: 1rem;
}


.btn.menu-item, .nav-item.btn {
padding: 2px 10px;
border-radius: var(--bs-border-radius)}


.search-form .btn {
    background-color: var(--bs-tertiary-bg);
    border: var(--bs-border-width) solid var(--bs-border-color);
    }

.search-form .bi-search {
color: #cd262d;
}


  .dlp-grid-card-info .dlp-grid-card-categories {
       color: #cd262d!important;
       font-weight: 600;
       padding-bottom: 10px;
  }




/* Mobile Search Icon */
.top-menu .calendar{
	float:left;
}
.mobile-search-link{
	display: inline-block;
  height: 40px;
 }
.mobile-search-link svg{
	height: 40px;
	padding-top: 9px;
}

@media (max-width:1005px){

	.top-menu .navbar-brand{
		width:70%;
	}

}

@media (max-width:500px){
	.mobile-search-link {
    height: 30px;
		padding-top: 5px;
	}

	.top-menu .calendar{
		padding: 0;
    margin-right: 0px;
	}

	.mobile-search-link svg{
		height: 30px;
	}

	.top-menu .calendar img{
		height: 30px;
    margin-right: 11px;
    margin-top: 5px;
	}
}

.caption:first-child{
margin:20px 0;
}

.home .tribe-events-widget-events-list__event-row{
	width:100%;
}

.home .tribe-events-widget-events-list__view-more-link{display:none;}

.tribe-events .tribe-events-c-search__button,.tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button{
	background:#E10303;
	color:white;
	border:none;
}
a.tribe-common-c-btn.submit-event{
	border:1px solid #E10303;
	background:none;
	color:#E10303;
	position:absolute;
	top: 21px;
    right: 20px;
    width: 150px !important;
    padding: 3px;
	text-align:center;
	border-radius:4px;
	font-weight:bold;
	font-size:14px;
}
a.tribe-common-c-btn.submit-event:hover,.tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:hover,.tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus-within{
	background:#E10303;
	color:white;
	text-decoration:none;
}

.tribe-events-view{
	max-width:1170px;
	margin:auto;
	position:relative;
}

#tribe-events-pg-template{
	position:relative;
}
#post.events-community-submit{
background-color:#E10303!important;
}

.tribe-events-community-details .event-label {
  color: var(--tec-color-text-primary);
    font-size: var(--tec-font-size-3);
    font-weight: var(--tec-font-weight-bold);
    text-transform: uppercase;
}

.tribe-events-community-details textarea {
  width: 100%!important
}
.tribe-organizer{font-weight:bold;}
.tribe-events-meta-group-organizer dl dt{float:left;font-weight:normal;}

#event_tribe_event_status{display:none;}

.wp-block-cover{
	background-size:cover;
}

.breadcrumb-wrapper {
	margin-bottom: 3.5rem;
}

.style-pull-quote{
	padding: 20px;
margin-left: 10px;
	border-radius: 5px;
  border-left: 6px solid #b0122b;
background-color: #f2f2f2;
	width: 90%;
	
}


/* Full-width layout container */
/* Give the whole template breathing room */
.layout-fullwidth-sidebar {
  padding-block: clamp(1.5rem, 3vw, 3rem); /* top/bottom space */
}

.layout-fullwidth-sidebar .layout-wrap{
  width: min(90%, 1200px);  /* ~90% but capped */
  margin-inline: auto;      /* center it */
  padding: 0;               /* remove edge padding if you want */
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 350px);
}
.layout-fullwidth-sidebar .layout-wrap{
  column-gap: clamp(2rem, 4vw, 3.5rem);
}

.layout-fullwidth-sidebar .site-sidebar{
  background: #ffffff;
  padding: 1.5rem;
  border-radius: 6px;
}


.layout-fullwidth-sidebar .site-sidebar{
  margin-top: .5rem;
}

/* Optional: constrain *content* width while keeping page full-width */
.layout-fullwidth-sidebar .layout-main{
  max-width: 1100px; /* adjust to taste */
}

/* Sticky sidebar */
.layout-fullwidth-sidebar .site-sidebar{
  position: sticky;
  top: 1.5rem;       /* adjust for header height */
  margin-top: .5rem; /* or 1rem */
}



/* Mobile: stack */
@media (max-width: 900px){
  .layout-fullwidth-sidebar .layout-wrap{
    grid-template-columns: 1fr;
  }
  .layout-fullwidth-sidebar .site-sidebar{
    position: static;
    top: 90px;
  }
}


/* Sidebar nav list (simple, black links like your first screenshot) */
.sidebar-nav__menu{
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
}

.sidebar-nav__menu li{
  margin: 0;
  padding: 0;
  display: block;
}

.sidebar-nav__menu a{
  display: block;
  padding: .5rem 0;
  color: inherit;            /* uses your themeâ€™s normal text color */
  text-decoration: none;
  font-weight: 400;          /* normal weight */
  text-transform: none;      /* NOT all caps */
  letter-spacing: normal;
}

.sidebar-nav__menu a:hover,
.sidebar-nav__menu a:focus-visible{
  text-decoration: underline;
  color: #E10303!important;
}

/*from old app.css or others*/
    
.event-link {
      text-decoration: none;
  text-align: center;
    min-width: 120px;
display: block;
    margin-top: 15px;
    margin-bottom: 15px;
    font-weight: 800;}

    .event-link:hover {
          opacity: 0.5;
    }

    .department-info {
  background-color: #d7d7d7;
  padding: 30px;
  margin-top: 75px;
  width: 100%;
}
/* ================================
   BOOTSTRAP 5 MIGRATION FIXES
   hx-feature + event-link
================================ */

/* Event link variants */
.event-link.home {
  color: #E10303;
}

/* Normalize BS3 legacy image behavior */
.hx-feature img,
.umw-hxfeature img {
  display: block;
  max-width: 100%;
  height: auto;
}

/* Prevent BS3 row overrides from breaking BS5 gutters */
.hx-feature .row,
.umw-hxfeature .row {
  margin-left: 0;
  margin-right: 0;
}

/* Ensure hx-feature stacks properly on mobile */
@media (max-width: 576px) {
  .hx-feature [class*="col-"],
  .umw-hxfeature [class*="col-"] {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

/* Consistent spacing between feature tiles */
.hx-feature .featured-image-row,
.umw-hxfeature .featured-image-row {
  margin-bottom: 1.5rem;
}


/* =========================================================
   BS5 dropdown polish for sidebar nav components
   (in-this-section + related-links)
   These rules REPLACE the old BS3-era blocks that were removed from style.css.
   ========================================================= */

/* Buttons */
.in-this-section > .btn,
.related-links > .btn,
.related-links-department > .btn{
  border-radius: var(--bs-border-radius-lg);
  border: 1px solid rgba(0,0,0,.15);
  box-shadow: 0 .25rem .75rem rgba(0,0,0,.08);
}

/* Menus */
.in-this-section > .dropdown-menu,
.related-links > .dropdown-menu,
.related-links-department > .dropdown-menu{
  border-radius: var(--bs-border-radius-lg);
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.15);
  box-shadow: 0 .5rem 1.25rem rgba(0,0,0,.12);
  margin-top: .25rem;
}

/* Items */
.in-this-section .dropdown-menu > li > a,
.related-links .dropdown-menu > li > a,
.related-links-department .dropdown-menu > li > a{
  padding: .55rem 1rem;
}

/* Hide BS3 caret spans if present */
.in-this-section .caret,
.related-links .caret,
.related-links-department .caret{ display:none; }

/* Support BS5 .show state */
.in-this-section .dropdown-menu.show,
.related-links .dropdown-menu.show,
.related-links-department .dropdown-menu.show{
  display:block;
}

/* Give your top menus a BS5-ish dropdown shape without changing colors */
.top-menu .dropdown-menu,
.main-content-menu .dropdown-menu{
  border-radius: var(--bs-border-radius-lg);
  box-shadow: 0 .75rem 1.5rem rgba(0,0,0,.15);
}

/* =========================================================
   HX Feature (Helix) â€” STABLE BS5 SCOPED STYLES
   Prevent TOP/CARD from breaking each other
   ========================================================= */

/* Shared basics (safe) */
.hxfeature--top .featured-image-background-parent,
.hxfeature--card .featured-image-background-parent{
  position: relative;
  overflow: hidden;
}

.hxfeature--top .featured-image-background,
.hxfeature--card .featured-image-background{
  width: 100%;
  height: 100%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  transition: transform .35s ease;
}

.hxfeature--top .featured-image-background-parent:hover .featured-image-background,
.hxfeature--top .featured-image-background-parent:focus-within .featured-image-background,
.hxfeature--card .featured-image-background-parent:hover .featured-image-background,
.hxfeature--card .featured-image-background-parent:focus-within .featured-image-background{
  transform: scale(1.06);
}

/* Hidden sizer img should not affect layout */
.hxfeature--top .featured-image-background img,
.hxfeature--card .featured-image-background img{
  display:block;
  width:100%;
  height:auto;
  visibility:hidden;
}

/* ---------- TOP spotlight (Biology-like) ---------- */

.hxfeature--top .featured-image-background{ min-height:350px; }

.hxfeature--top .hxfeature-overlay{
  position:absolute;
  left:0;
  bottom:0;
  width:90%;
  z-index:2;
  display:table;
  table-layout:fixed;
}

.hxfeature--top .hxfeature-overlay .bg1,
.hxfeature--top .hxfeature-overlay .bg2{
  display:table-cell;
  box-sizing:border-box;
  transition:background-color .15s ease;
}

.hxfeature--top .hxfeature-overlay .bg1{
  width:80%;
  padding:10px 15px;
  background-color:var(--hx-bg1, rgba(0,0,0,.8));
  color:var(--hx-text1, #fff);
  vertical-align:bottom;
}

.hxfeature--top .hxfeature-overlay .bg2{
  width:20%;
  padding:10px 12px;
  background-color:var(--hx-bg2, rgba(255,255,255,.8));
  color:var(--hx-text2, #000);
  vertical-align:middle;
  text-align:center;
  font-weight:700;
  letter-spacing:.04em;
}

.hxfeature--top .featured-image-background-parent:hover .hxfeature-overlay .bg1,
.hxfeature--top .featured-image-background-parent:focus-within .hxfeature-overlay .bg1{
  background-color:var(--hx-bg1h, rgba(0,0,0,1));
}
.hxfeature--top .featured-image-background-parent:hover .hxfeature-overlay .bg2,
.hxfeature--top .featured-image-background-parent:focus-within .hxfeature-overlay .bg2{
  background-color:var(--hx-bg2h, rgba(255,255,255,1));
}

.hxfeature--top .hxfeature-label{
  margin:0 0 2px 0;
  line-height:1.2;
  font-size:.85rem;
  text-transform:uppercase;
  letter-spacing:.02em;
  font-weight:600;
}
.hxfeature--top .hxfeature-title{
  margin:0;
  line-height:1.15;
  font-size:1.35rem;
  font-weight:800;
}

/* =========================================================
   HX CARD REFACTOR: Contained Grid & Variable Heights
   ========================================================= */

/* Ensure equal heights across the row */
.hxfeature--card .row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}

/* Base Tile: Balanced vertical size */
.hxfeature--card .featured-image-row {
    position: relative;
    overflow: hidden;
    min-height: 360px !important; 
    display: flex !important;
    padding: 0 !important; /* Gaps are handled by Bootstrap Gutter g-4 */
}

.hxfeature--card .hx-card-link {
    display: flex !important;
    flex-direction: column !important;
    flex: 1;
    width: 100%;
    position: relative;
    text-decoration: none !important;
    color: inherit;
}
/* =========================================================
   HX BENTO GRID: Z-Index & Image-Text Overlay Fix
   ========================================================= */

.hx-bento-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
    width: 100%;
}

.hx-bento-item {
    position: relative !important;
    overflow: hidden !important; 
    display: flex !important;
    min-height: 400px !important; /* Slightly taller for better readability */
    flex: 1 1 calc(33.333% - 20px); 
    background-color: #1a1a1a; /* Dark base ensures text is readable if image fails */
}

/* --- THE 33% / 66% BENTO SPLIT --- */
@media (min-width: 992px) {
    /* If 5 items: 3 on top, bottom row splits 33/66 */
    .hx-bento-item:nth-child(5):last-child { 
        flex: 2 1 calc(66.666% - 20px); 
    }
}

@media (max-width: 991px) and (min-width: 768px) {
    .hx-bento-item { flex: 1 1 calc(50% - 20px); }
}

@media (max-width: 767px) {
    .hx-bento-item { flex: 1 1 100%; min-height: auto !important; }
}

/* --- IMAGE LAYER (Z-INDEX: 1) --- */
.hx-bento-item .featured-image-background {
    position: absolute !important;
    inset: 0;
    z-index: 1 !important; /* Stays BEHIND the text */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    width: 100%;
    height: 100%;
}

.hx-bento-item:hover .featured-image-background {
    transform: scale(1.1); /* Zoom is contained by overflow:hidden above */
}

/* --- TEXT LAYER (Z-INDEX: 2) --- */
.hx-bento-item .hx-card-link {
    display: flex !important;
    flex: 1;
    z-index: 5 !important; /* Ensures link and text are on the very top */
    width: 100%;
    position: relative;
    text-decoration: none !important;
}

.hx-bento-item .bg1 {
    display: flex !important;
    flex-direction: column !important;
    flex: 1;
    position: relative !important;
    z-index: 10 !important; /* Higher than the image background */
    background-color: var(--hx-bg1, rgba(0,0,0,.7)); 
    color: var(--hx-text, #fff);
    padding: 3rem 2.5rem !important;
    transition: background-color 0.3s ease;
    width: 100%;
}

.hx-bento-item:hover .bg1 {
    background-color: var(--hx-bg1h, rgba(0,0,0,0.85)) !important;
}

/* Internal Layout Fixes */
.hx-bento-item .hxcard-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.hx-bento-item .hxcard-title {
    font-weight: 800;
    font-size: 1.6rem !important;
    line-height: 1.1;
    margin-bottom: 8px;
}

.hx-bento-item .hxcard-line {
    border: 0 !important;
    border-top: 4px solid var(--hx-line, #c60202) !important;
    width: 60px !important;
    margin: 18px 0 !important;
    opacity: 1 !important;
}

.hx-bento-item .hxcard-desc {
    flex-grow: 1;
    font-size: 1.05rem;
    line-height: 1.6;
}

.hx-bento-item .cta-link {
    margin-top: 20px;
    font-weight: 800;
    text-transform: uppercase;
    font-size: 0.95rem;
    letter-spacing: 1px;
}

.main-breadcrumb a, .breadcrumb.main-breadcrumb a {
    color: #CD262D; 
    text-decoration: none;
}
/* ---------- Editor: stop red underline in preview ---------- */
.editor-styles-wrapper .hxfeature--top a,
.editor-styles-wrapper .hxfeature--card a{
  color:inherit;
  text-decoration:none;
}
.editor-styles-wrapper .hxfeature--top a:hover,
.editor-styles-wrapper .hxfeature--card a:hover{
  text-decoration:none;
}
/* Apply bg1 to the tile wrapper itself (TOP only) */
.hxfeature--top .featured-image-background-parent{
  background-color: var(--hx-bg1, rgba(0,0,0,.8));
  color: var(--hx-text1, #fff);
}
/* Breadcrumb separators */
.main-breadcrumb li + li::before {
  content: "/";
  padding: 0 .5rem;
  color: #6c757d;
}

/* ================================
   Legacy "More Stories" tiles (BS5 safe)
   Matches markup: .featured-image-row.image-headline
   ================================ */

.featured-image-row.image-headline{
  position: relative;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;
  border-radius: 0; /* keep the old squared look */
}

/* Make the whole tile clickable */
.featured-image-row.image-headline > a{
  display: block;
  position: relative;
  height: 100%;
  text-decoration: none;
}

/* Replace .img-responsive behavior (BS3) */
.featured-image-row.image-headline img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Control tile height (this is the big visual difference) */
@media (min-width: 992px){
  .featured-image-row.image-headline{
    height: 260px; /* tweak if you want taller/shorter */
  }
}
@media (max-width: 991.98px){
  .featured-image-row.image-headline{
    height: 240px;
  }
}

/* Date box (red square) */
.featured-image-row.image-headline .image-date-box{
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  background: #c60202;
  color: #fff;
  width: 60px;
  height: 60px;
  display: grid;
  place-content: center;
  text-align: center;
  font-weight: 700;
  line-height: 1.1;
}

/* Dark overlay layer (if your markup uses it) */
.featured-image-row.image-headline .image-headline-box{
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0,0,0,.35);
}

/* Headline text area */
.featured-image-row.image-headline .image-headline-container{
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  padding: 28px 24px 18px;
  color: #fff;

  /* gradient like the live feel */
  background: linear-gradient(to top, rgba(0,0,0,.75), rgba(0,0,0,0));
}

.featured-image-row.image-headline .image-headline-container h3{
  margin: 0 0 10px 0;
  color: #fff;
  font-weight: 800;
  line-height: 1.1;
}

.featured-image-row.image-headline .image-headline-container p{
  margin: 0;
  color: #fff;
  font-weight: 600;
}

.featured-image-row.image-headline .headline-border{
  height: 2px;
  width: 85%;
  background: #c60202;
  margin: 0 0 10px 0;
}

/* Breadcrumb link color */
.main-breadcrumb a,
.breadcrumb.main-breadcrumb a {
  color: #CD262D; /* Âé¶¹ÆµµÀ red */
  text-decoration: none;
}

.main-breadcrumb a:hover,
.breadcrumb.main-breadcrumb a:hover {
  text-decoration: underline;
}

/*WP Forms uploader override*/
.wpforms-uploader span {
  color: #1e1e1e!important;
  opacity: 1!important;
}

.tribe-events-schedule__all-day, .tribe-events-schedule__separator, .tribe-events-schedule__timezone {
  color: #141827;
}


.helix-banner.wp-block-cover {
  overflow: visible;
}

.home-cards {
      background: linear-gradient(to bottom, #f4f4f4 60%, #1e1e1e 60%);
}