/* Theme Name:   Cornell Thought Summits
 Description:    A custom theme for the Cornell Thought Summits website, based on the Divi theme.
 Author:         AWP
 Author URI:     https://awpny.com
 Template:       Divi
 Version:        1.0.0
*/

/*---------------------*/
/* SCREEN READERS ONLY */
/*---------------------*/
.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); border: 0; }

/*-------------*/
/* LINK STYLES */
/*-------------*/
:root {
  --ts-link-color: #006699;
  --tec-color-accent-primary: #B31B1B;
}
body:not(.et_pb_pagebuilder_layout) .entry-content a,
.et_pb_tab a,
.et_pb_text a,
.post-meta a,
.expert-details a,
.dsm_icon_list .dsm_icon_list_text,
.pagination a,
.tribe-events-single-event-description a,
.event-agenda a,
.event-sponsors a,
.contact-email a,
.white-paper-item a {
	border-bottom: 1px solid #ccc; 
	color: var(--ts-link-color);
}
footer .dsm_icon_list .dsm_icon_list_text {
	color: #fff;
}
.footer-logo a {
    border-bottom: 0px;
}
body:not(.et_pb_pagebuilder_layout) .entry-content a:hover,
.et_pb_tab a:hover,
.et_pb_text a:hover,
.post-meta a:hover,
.expert-details a:hover,
.et_pb_blurb_content a:hover,
.entry-title a:hover,
.pagination a:hover,
.tribe-events-single-event-description a:hover,
.event-agenda a:hover,
.event-sponsors a:hover,
.contact-email a:hover,
.white-paper-item a:hover {
	border-bottom: 1px solid #31789b;
}
.dsm_icon_list .dsm_icon_list_text:hover {
	border-bottom: 1px solid #31789b;
}
.home-navbar a, .main-header a, footer .dsm_icon_list .dsm_icon_list_text, footer .footer-ai-links a {
    border-bottom: none;
}
.home-navbar a:hover, .main-header a:hover {
	border-bottom: none;
}
.et_pb_bg_layout_light  .et_pb_post .post-meta a {
	color: var(--ts-link-color);
}
a.more-link:hover {
    background-color: #f7f7f7;
}


/******************/
/*  PAGE HEADERS  */
/******************/

/* Main H1 line */
.header-title {
  font-size: 98px;   /* requested size for main line */
  font-weight: 400;
  line-height: 1;    /* compact line box for tight stacking */
  margin: 0;
  text-transform: none;
}
@media (max-width: 980px) {
  .header-title {
    font-size: 62px;
  }
}

/* First line (icon + TEXT) */
.header-pretitle {
  display: flex;           /* keeps icon aligned with text baseline */
  align-items: flex-end;   /* bottom-align to the cap height */
  gap: 0.2em;              /* space between icon and word */
  font-size: 27px;         /* pretitle size */
  line-height: 1;          /* no extra leading */
  color: #b31b1b;
  text-transform: uppercase;
  margin: 0 0 0.45em 0;    /* tight gap above the main line */
  letter-spacing: 1px;
}

/* Slightly smaller-than-text icon locked to the baseline */
.header-icon {
  height: 0.85em;   /* ~15% smaller than text height */
  width: auto;
  display: block;   /* remove inline whitespace descenders */
  margin-bottom: .15em; /* fudge factor for baseline alignment */
}

/* Second line */
.header-main {
  display: block;   /* forces the line break without  */
}


/*-------------------------*/
/* PEOPLE ON EVENTS PAGES  */
/*-------------------------*/
.event-participants {
  margin-top: 3rem;
}
.participants-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1.5rem;
}
@media (max-width: 767px) {
  .participants-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.participant-card {
  text-align: center;
}
.participant-card img {
  width: 100%;
  max-width: 150px;
  height: auto;
  border-radius: 50%;
  margin: 0 auto 1rem;
}
.participant-title {
  margin-bottom: 0.5rem;
  font-size: 16px;
  line-height: 1.3em;
}

.event-organizers {
  margin-top: 3rem;
}

.organizers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1.5rem;
}

@media (max-width: 767px) {
  .organizers-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.organizer-card {
  text-align: center;
}

.organizer-card img {
  width: 100%;
  max-width: 150px;
  height: auto;
  border-radius: 50%;
  margin: 0 auto 1rem;
}

.organizer-title, .participant-title {
  font-weight: bold;
  margin-bottom: 0.25rem;
  color: #B31B1B;
  padding-bottom: 0px;
}

.organizer-affiliation, .participant-affiliation {
  font-style: italic;
  margin-bottom: 0.5rem;
  font-size: 16px;
  line-height: 1.3em;
}


.event-contacts {
  margin-top: 3rem;
}

/*
.contacts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1.5rem;
}
*/
.contacts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, max-content));
    justify-content: start; /* aligns the grid to the left */
    gap: 1.5rem;
}

.contact-card {
  text-align: center;
  border: 1px solid #eee;
  padding: 20px;
}

.contact-title {
  font-weight: bold;
  margin-bottom: 0.25rem;
  padding-bottom: 0px;
}

.contact-email {
  margin-bottom: 0.5rem;
}



/*-----------------------*/
/* PHOTO GALLERY STYLES  */
/*-----------------------*/

div#event-gallery {
    margin-top: 40px;
}

.event-photo-gallery {
  margin-top: 3rem;
  margin-left: auto;
  margin-right: auto;
}

.f-carousel__slide {
  display: flex;
  justify-content: center;
  align-items: center;
}

.f-carousel__slide img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.f-thumbs {
  margin-top: 1rem;
  justify-content: center;
  gap: 0.5rem;
}

.f-thumbs__slide img {
  border-radius: 4px;
  opacity: 0.6;
  transition: opacity 0.3s, border-color 0.3s;
  border: 2px solid transparent;
}

.f-thumbs__slide.is-nav-selected img {
  opacity: 1;
  border-color: #333;
}

.f-thumbs__slide:hover img {
  opacity: 0.9;
  border-color: #666;
}

/* smaller container for thumbnails */
.f-thumbs.f-carousel__thumbs.is-modern.is-ltr.is-horizontal {
    width: 80%;
    margin: auto;
}

/* Style for both prev and next arrows */
.f-button.is-prev,
.f-button.is-next {
  background-color: #fff;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  color: #000;
  transition: background-color 0.3s ease, transform 0.2s ease;
}

/* Center icon inside the button */
.f-button.is-prev svg,
.f-button.is-next svg {
  width: 16px;
  height: 16px;
}

/* Hover state */
.f-button.is-prev:hover,
.f-button.is-next:hover {
  background-color: #f0f0f0;
  transform: scale(1.05);
}

/* Optional: Increase z-index so they float above other elements */
.f-button {
  z-index: 10;
}

/* Add captions to photos */
.f-carousel__slide {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.photo-caption {
  margin-top: 0.5rem;
  font-size: 16px;
  color: #555;
  text-align: center;
  font-family: freight-sans-pro, sans-serif;
}



/*-------------------------*/
/* RELATED POSTS ON EVENTS */
/*-------------------------*/
.related-posts {
  margin-top: 40px;
}

.related-posts h2 {
  font-size: 1.5rem;
  margin-bottom: 20px;
}

.related-posts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
}

.related-post-card {
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 16px;
  background-color: #fff;
  transition: box-shadow 0.2s ease;
}

.related-post-title {
  margin-top: 0;
  font-size: 1.2rem;
}

.related-post-title a {
  text-decoration: none;
  color: #333;
}

.related-post-title a:hover {
  text-decoration: underline;
}

.related-post-date {
  font-size: 0.9rem;
  color: #555;
  margin-bottom: 10px;
  text-transform: uppercase;
  font-weight: 700;
}

.related-post-excerpt {
  font-family: freight-sans-pro, sans-serif;
  font-size: 1rem;
  color: #555;
}

section.related-posts {
    margin-bottom: 30px;
}


/* Caption text under the featured image on event detail pages */
.featured-image-caption p {
	font-weight:700;
	font-size: 15px;
	margin-bottom: 25px;
}
.tribe-events-event-image {
	margin-bottom: 10px;
}


/* event detail page pagination */
@media (max-width: 767px) {
  ul.tribe-events-sub-nav {
      line-height: 1.2em;
  }
  ul.tribe-events-sub-nav li {
    border: 1px solid #CCC;
    padding: 9px 10px;
  }
  .tribe-events-single .tribe-events-sub-nav {
  align-items: flex-start;
  gap: 50px;
  }
  .tribe-events-nav-next a::before { display: none !important; }
}



/*-----------------------*/
/* EVENTS CARDS STYLES   */
/*-----------------------*/
.ecs-event-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 24px;
  padding: 0;
  list-style: none;
}
@media (min-width: 1024px) {
  .ecs-event-list {
    grid-template-columns: repeat(3, 1fr);
  }
}

.ecs-event {
  background: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.home-next-event .ecs-event, .home-past-list .ecs-event {
  background: rgba(255,255,255,0);
  box-shadow: none;
}
.home-next-event .ecs-event a, .home-past-list .ecs-event a {
    margin-bottom: 20px;
}

/*
.ecs-event:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}
*/

.ecs-event img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.ecs-event .entry-title {
	margin: 16px;
    margin-bottom: 8px;
    font-size: 32px;
    font-family: freight-text-pro, sans-serif;
    line-height: 45px;
    font-style: italic;
    color: #333;
}
@media (max-width: 980px) {
	.ecs-event .entry-title {
		font-size: 26px;
		line-height: 36px;
	}
}

.home-next-event .ecs-event .entry-title {
	margin: 0px 0px 8px 0px;
}

.home-past-list .ecs-event .entry-title {
	margin: 0;
	line-height: 1em;
}

.home-past-list .ecs-event-list {
	gap: 80px;    
}
@media (max-width: 980px) {
	.home-past-list .ecs-event-list {
		gap: 40px;
	}
}

.ecs-event .entry-title a {
  text-decoration: none;
  color: #333;
}

.home-past-list .ecs-event .entry-title a {
  font-family: freight-sans-pro, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #666;
}

.ecs-event .duration {
  font-size: 15px;
  font-family: tondo, serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #B31B1B;
  line-height: 24px;
  margin: 0px 16px 4px;
  display: block;
}
@media (max-width: 980px) {
	.ecs-event .duration {
		font-size: 12px;
		line-height: 18px;
	}
}

.home-past-list .ecs-event .duration {
  color: #666;
  font-size: 13px;
}

@media (max-width: 980px) {
  .home-past-list .ecs-event .ecs-excerpt {
    display:none;
  }
}

.home-next-event .ecs-event .duration, .home-past-list .ecs-event .duration {
  margin: 0px 4px 0px 0px;
}

.ecs-event .duration.time::before {
    content: "";
    font-family: ETmodules;
    padding-right: 5px;
    speak: none;
}

.ecs-event .duration.venue {
  margin-bottom: 8px;
}

.ecs-event .duration.venue::before {
    content: "";
    font-family: ETmodules;
    padding-right: 4px;
    speak: none;
}

.ecs-event .duration.venue em {
  display:none;
}

.ecs-event .ecs-excerpt {
  font-family: freight-sans-pro, sans-serif;
  font-size: 1rem;
  color: #444;
  margin: 0 16px 16px;
  line-height: 1.5;
}

.home-next-event .ecs-event .ecs-excerpt, .home-past-list .ecs-event .ecs-excerpt {
  margin: 0;
  font-size: 17px;
  margin: 10px 0 0;
}

ul.ecs-event-list {
    padding-left: 0px;
}

.upcoming-summits .ecs-no-events {
	font-weight: 700;
	margin: 60px 15px;
}

.upcoming-summits .ecs-no-events::before {
    content: "";
    font-family: ETmodules;
    padding-right: 5px;
    speak: none;
}

/*---------------*/
/* CORNELL FONTS */
/*---------------*/
p {
	font-family: freight-sans-pro, sans-serif;
	font-weight: 400;
	font-style: normal;
}
.p-semi p {
	font-weight: 600 !important;
}
.p-bold p {
	font-weight: 700 !important;
}
h1, h2 {
	font-family: tondo, monospace !important;
	font-weight: 500;
	font-style: normal;
}
h3 {
	font-family: freight-text-pro, serif;
	font-weight: 400 !important;
	font-style: normal;
	font-size: 32px !important;
}
.et_pb_button {
	font-family: freight-sans-pro, sans-serif;
	font-weight: 900; 
}
span.published {
    font-weight: 700;
}


/*----------------------*/
/* TOP-LEVEL NAV STYLES */
/*----------------------*/

/* no pointer for empty top-level links */
.menu-item-has-children>a {
    cursor: default;
}

.home-nav .et_mobile_menu {
  left: 5%;
}

.home-nav ul#mobile_menu1 {
    max-width: 90%;
}

/*-------------------*/
/* MOBILE NAV STYLES */
/*-------------------*/

@media (max-width: 980px) {
	/* right align text */
	.et_pb_menu .et_mobile_menu, .et_pb_menu .et_mobile_menu ul {
		text-align: right !important;
	}
	/* Fix mobile menu not being full-width */
	.home-navbar .et_pb_column,
	.home-navbar .et_pb_menu,
	.home-navbar .et_pb_menu_inner_container,
	header .et_pb_column,
	header .et_pb_menu,
	header .et_pb_menu_inner_container {
		position: static !important;
	}
}

/* mobile menu scroll */
.et_mobile_menu {
	max-height: calc(100vh - 280px);
	overflow-y: auto;
}

/* Shrink mobile menu column so logo can be bigger */
@media (max-width: 980px) {
	.et-l--header .et_pb_column--with-menu.et-last-child {
		width: auto !important;
		margin-left: 20px;
	}
}

/* underline effect */
.menu-item a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 2px; /* Adjust distance below text */
  width: 100%;
  height: 1px;
  background-color: #fff;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.25s ease-in-out;
}

.menu-item a:hover::after,
.menu-item a:focus::after {
  transform: scaleX(1);
}


/*--------------------*/
/* HOME SLIDER MOBILE */
/*--------------------*/

@media (max-width: 768px) {
	.et_pb_slide_content {
		display: none;
	}
}

/*-----------------------*/
/* DIVI ACCORDION STYLES */
/*-----------------------*/

.filter-accordion .et_pb_toggle_open, .filter-accordion .et_pb_toggle_close {
	padding: 6px 0px 50px 0px !important;
	margin-bottom: 20px;
}
.filter-accordion ul.college-list, .filter-accordion ul.focus-area-list, .filter-accordion ul.category-list {
	line-height: 1em !important;
}
.filter-accordion .et_pb_toggle_open .category-list li, .filter-accordion .et_pb_toggle_close .category-list li, .filter-accordion .et_pb_toggle_open .focus-area-list li, .filter-accordion .et_pb_toggle_close .focus-area-list li, .filter-accordion .et_pb_toggle_open .college-list li, .filter-accordion .et_pb_toggle_close .college-list li {
  border:2px solid #222;
  display: inline-block;
  border-radius: 20px;
  padding: 6px 10px;
  margin-bottom: 10px;
  margin-right: 5px;
}

/*-------------------------*/
/* EVENTS CALENDAR STYLES  */
/*-------------------------*/

/* make sure da11y screen reader styles are available on event detail pages */
.da11y-screen-reader-text,.et_pb_contact_form_label,.et_pb_search .screen-reader-text,.et_pb_social_media_follow_network_name,.widget_search .screen-reader-text{clip:rect(1px,1px,1px,1px);-webkit-font-smoothing:subpixel-antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:1em;font-weight:600;height:1px;letter-spacing:normal;line-height:normal;overflow:hidden;position:absolute!important;text-shadow:none;text-transform:none;width:1px}.da11y-screen-reader-text:focus{clip:auto!important;background:#f1f1f1;-webkit-box-shadow:0 0 2px 2px rgba(0,0,0,.6);box-shadow:0 0 2px 2px rgba(0,0,0,.6);color:#00547a;display:block;height:auto;left:5px;padding:15px 23px 14px;text-decoration:none;top:7px;width:auto;z-index:1000000}

.tribe-events-content {
  font-family: 'freight-sans-pro', sans-serif !important;
}
.tribe-events-single-event-description.tribe-events-content {
  color: #666 !important;
}
.tribe-events-content ol, .tribe-events-content ul {
    padding-left: 20px;
}
.tribe-common-l-container.tribe-events-l-container {
    padding-top: 0px !important;
}
.tribe-common .tribe-common-b2, .tribe-events-calendar-list__event-title, .tribe-events-calendar-list__event-title a, .tribe-events-calendar-series-archive__container a, .tribe-events-calendar-series-archive__container a svg {
    color: #222222 !important;
}
.tribe-events-back {
    display: inline-block;
    margin-bottom: 0px;
}
.tribe-events-back a {
	border: 2px solid #333;
    padding: 8px 12px !important;
}
.tribe-events-back a:hover {
    color: #f3f3f3 !important;
    background-color: #333;
}
h3.tribe-events-calendar-list__event-title.tribe-common-h6.tribe-common-h4--min-medium, h1.tribe-events-single-event-title, h3.tribe-common-h8.tribe-common-h7--min-medium.tribe-events-pro-summary__event-title {
    font-family: 'freight-text-pro', serif;
    font-weight: 500;
    line-height: 37px;
    color: #222222 !important;
}
h1.tribe-events-single-event-title {
	line-height: 1em;
	font-size: 98px;
	color: #333 !important;
	margin-top: 30px !important;
}
@media (max-width: 980px) and (min-width: 768px) {
  h1.tribe-events-single-event-title { font-size: 68px; }
}
@media (max-width: 767px) {
  h1.tribe-events-single-event-title { font-size: 48px; margin-bottom: 25px;}
}
.tribe-common .tribe-events-calendar-list__event-datetime-wrapper.tribe-common-b2, .tribe-events-schedule h2 {
    font-family: "Roboto Mono", monospace;
    text-transform: uppercase;
    font-weight: 700;
	font-size: 15px;
	letter-spacing: 1px;
}

.tribe-events-schedule.tribe-clearfix {
    margin-bottom: 0px;
}
.tribe-events-schedule.tribe-clearfix h2 { 
	padding-bottom: 0px;
}
.tribe-events-schedule.tribe-clearfix h2::before {
	content: "";
    font-family: 'ETmodules';
    padding-right: 5px;
    speak: none;
}

.tribe-events-venue-name {
	font-family: 'tondo', monospace;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: 1px;
    color: #B31B1B;
}
.tribe-events-venue-name::before {
	content: "";
	font-family: 'ETmodules';
	padding-right: 4px;
	speak: none;
}

.tribe-events-notices {
    background-color: #ffe900;
    font-weight: 700;
    color: #333;
    padding: 10px;
    margin-top: 30px;
}
.tribe-events-notices::before {
	content: "p";
	font-family: 'ETmodules';
	padding-right: 4px;
	speak: none;
}
.tribe-events-notices ul {
    display: inline-block;
    padding-left: 5px;
}

.tribe-events-single>.tribe_events {
    margin-top: 30px;
}

img.attachment-full.size-full.wp-post-image {
    width: 100%;
}

.event-white-paper h2 {
	margin-bottom: 20px;
}

.event-white-paper a::before {
	content: "";
	font-family: 'ETmodules';
	padding-right: 4px;
	speak: none;
}

.event-white-paper .white-paper-item {
	font-size: 22px;
	margin-bottom: 15px;
}


/* Restore bullets/numbers + indentation in event agenda content */
.single-tribe_events .agenda-content ul,
.single-tribe_events .agenda-content ol,
.single-tribe_events .event-sponsors ul,
.single-tribe_events .event-sponsors ol {
  list-style-position: outside;
  margin: 0 0 1em 1.5em;   /* bottom space + left indent */
  padding-left: 1.5em;     /* ensure markers don't overlap text */
  font-family: 'freight-sans-pro', sans-serif;
}

/* Explicitly set marker types */
.single-tribe_events .agenda-content ul, .single-tribe_events .event-sponsors ul { list-style-type: disc; }
.single-tribe_events .agenda-content ol, .single-tribe_events .event-sponsors ol { list-style-type: decimal; }


.agenda-content h3 {
	margin-bottom:30px;
	margin-top:30px;
}


.event-agenda h2:first-of-type::before, .event-organizers h2::before, .event-participants h2::before, .event-contacts h2::before, .event-sponsors h2:first-of-type::before, .event-white-paper h2::before, .event-photo-gallery h2::before, .related-posts h2::before {
    border-top: 4px solid #EF4035;
    width: 50px;
    content: '';
    display: block;
    padding-top: 10px;
}

.event-agenda h2, .event-organizers h2, .event-participants h2, .event-contacts h2, .event-sponsors h2, .event-white-paper h2, .event-photo-gallery h2, .related-posts h2 {
	font-size: 42px;
}

.agenda-content, .event-organizers, .event-participants, .sponsors-content, .event-sponsors, .event-white-paper, .event-photo-gallery, .event-agenda {
	margin-top: 60px;
}
.organizers-grid, .participants-grid, .contacts-grid {
    margin-top: 30px;
}
.organizers-grid h3, .participants-grid h3, .contacts-grid h3 {
    font-size: 24px !important;
}

.tribe-events .tribe-events-calendar-list__event-datetime, .tribe-events-schedule h2 {
	color:#B31B1B !important;
}
.tribe-events-calendar-list__event-date-tag.tribe-common-g-col {
    display: none;
}
header.tribe-events-header {
    display: none !important;
}
time.tribe-events-calendar-list__month-separator-text.tribe-common-h7.tribe-common-h6--min-medium.tribe-common-h--alt, time.tribe-common-h7.tribe-common-h6--min-medium.tribe-common-h--alt.tribe-events-pro-summary__event-date-tag.tribe-events-pro-summary__month-separator-text {
    font-family: 'freight-sans-pro', sans-serif;
    font-weight: 600;
    font-size: 22px;
}
.tribe-events-calendar-list__event-description.tribe-common-b2 {
    font-size: 16px !important;
}
.tribe-events-c-nav__prev:disabled, .tribe-events-c-nav__next:disabled {
	display:none !important;
}
.tribe-events-c-nav__prev, .tribe-events-c-nav__next {
	font-family: "Open Sans", sans-serif !important;
	font-weight: 500 !important;
	line-height: 27px !important;
	border-bottom: 1px solid #ccc !important;
}
.tribe-events-c-nav__prev:hover, .tribe-events-c-nav__next:hover {
	border-bottom: 1px solid #31789b !important;
}
a.tribe-events-c-nav__prev.tribe-common-b2, a.tribe-events-c-nav__next.tribe-common-b2 {
	color: #006699 !important;
}
svg.tribe-events-c-nav__next-icon-svg path, svg.tribe-events-c-nav__prev-icon-svg path {
    fill: #006699 !important;
}

/* Main container for the events list, structured as a grid */
.tribe-events-calendar-list {
	display: grid;
    grid-template-columns: repeat(2, 1fr); /* Creates 2 columns */
    gap: 40px; /* Space between grid items */
    margin-bottom: 40px !important; /* Space at the bottom of the grid */
}
@media (max-width: 800px) {
    .tribe-events-calendar-list {
        grid-template-columns: 1fr; /* Switch to 1 column for mobile */
    }
}
/* Each event container */
.tribe-events-calendar-list__event-wrapper {
    display: flex; /* Uses flexbox to allow better control of child layout */
    flex-direction: column; /* Stacks children (the article tag) vertically */
}

/* Article tag to arrange image and details */
.tribe-events-calendar-list__event {
    display: flex;
    flex-direction: column !important; /* Stacks the image and details vertically */
}

/* Ensures the image is at the top */
.tribe-events-calendar-list__event-featured-image-wrapper {
    order: 1; /* Image comes first */
}

/* Ensures the details are below the image */
.tribe-events-calendar-list__event-details {
    order: 2; /* Details come second */
}

/* Month separators spanning full width */
.tribe-events-calendar-list__month-separator, .tribe-events-pro-summary__month-separator {
    grid-column: 1 / -1; /* Spans all columns */
    width: 100%; /* Full width to match the grid's width */
    margin-top: 20px; /* Top margin for spacing */
    margin-bottom: 20px; /* Bottom margin for spacing */
}
/* Hide only the first month separator */
h2.tribe-events-calendar-list__month-separator:first-of-type {
    display: none !important;
}
/* Add text before event cost */
.tribe-events-c-small-cta__price::before {
    content: "Cost:"; /* Text to appear before the price */
    font-weight: bold; /* Optional styling to make the label stand out */
    margin-right: 5px; /* Space between the label and the price */
}
/* Style cost text */
.tribe-events-c-small-cta__price, .tribe-events-c-small-cta__price::before {
	font-family: 'freight-sans-pro', sans-serif;
	font-size: 16px;
	color: #222 !important;
}
/* Style venue text */
.tribe-events-calendar-list__event-venue {
    font-family: 'freight-sans-pro', sans-serif !important;
    font-size: 14px !important;
    color: #555 !important;
}
.tribe-events-calendar-list__event-venue::before {
	content: "";
	font-family: 'ETmodules';
}
/* Adjustments to make 2 cols look good */
.tribe-events-calendar-list__event-featured-image-wrapper, .tribe-events-calendar-list__event-details {
	width:100% !important;
}
.tribe-events-calendar-list__event-row {
	margin: 0px !important;
}
.tribe-common .tribe-common-g-row--gutters {
    margin: 0px !important;
}
.tribe-common--breakpoint-medium.tribe-common .tribe-common-g-row--gutters {
    margin-left: var(--tec-grid-gutter-half-negative) !important;
    margin-right: var(--tec-grid-gutter-half-negative) !important;
}
.tribe-common-g-col article {
	background-color: #fff;
	padding-bottom: 20px !important;
	border: 1px solid #d8d8d8 !important;
}
.tribe-events-calendar-list__event-featured-image-wrapper {
	padding: 0px 0px 20px 0px !important;
}
span.tribe-events-calendar-series-archive__container {
    display: block;
    padding-top: 5px !important;
}
.tribe-common-l-container {
    padding: 0px !important;
}

.tribe-events-calendar-list__event {
    display: flex;
    flex-direction: column;
    justify-content: flex-start !important;  /* Aligns content to the top of the container */
    flex-grow: 1;
}

/* Ensure images or headers inside do not stretch awkwardly */
.tribe-events-calendar-list__event img {
    width: 100%;  /* Optional, ensures images fit well */
    height: auto;  /* Keeps image aspect ratio intact */
}

/* Event series pages specific styles */
.tribe-common--breakpoint-medium.tribe-events-pro .tribe-events-pro-summary__event-details {
    width: 100%;
}
article.tribe-events-pro-summary__event {
    border: 0px !important;
}
.tribe-events-pro-summary .tribe-events-calendar-series-archive__container {
    display: none !important;
}
.tribe-events-pro-summary .tribe-events-pro-summary__event-datetime-wrapper {
	width:auto !important;
	margin-right: 20px;
}
.tribe-events-pro .tribe-events-pro-summary__month-separator:after {
    margin-left: 20px;
}
time.tribe-events-pro-summary__event-date-tag-datetime {
    background-color: #B31B1B;
}
span.tribe-events-pro-summary__event-date-tag-weekday {
    color: #fff !important;
    font-weight: 900 !important;
    font-family: 'freight-sans-pro', sans-serif !important;
    font-size: 14px !important;
}
span.tribe-events-pro-summary__event-date-tag-daynum {
    color: #fff !important;
    font-family: 'freight-sans-pro', sans-serif !important;
    font-size: 30px !important;
}
.tribe-common-g-col.tribe-events-pro-summary__event-date-tag {
    padding-left: 0px !important;
}
time.tribe-events-pro-summary__event-date-tag-datetime {
    padding-bottom: 5px;
}
time.tribe-events-pro-summary__event-datetime {
    font-family: 'Roboto Mono';
    text-transform: uppercase;
    font-weight: 600;
    font-size: 14px;
    color: #B31B1B !important;
}
.tribe-events-c-small-cta.tribe-common-b3.tribe-common-b3--bold.tribe-events-pro-summary__event-cost {
    display: block;
    margin-top: 20px;
    margin-left: 0px;
}
.tribe-events-pro-summary__event-cost span.tribe-events-c-small-cta__price {
    font-weight: 300;
}
#event-series-block .tribe-common-l-container.tribe-events-l-container {
    min-height: fit-content !important;
}
.tribe-events-pro .tribe-events-pro-summary__month-separator:after {
    height: 3px !important;
}

div#tribe-events-footer {
    margin-top: 30px;
}
.single-tribe_events .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__content, .tribe-block__events-link .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__content {
	position: static;
}


/*** EVENTS ON HOME PAGE ***/ 
#home-events p.ecs-excerpt {
	padding-top:10px;
}
#home-events span.duration.time {
	color:#b31b1b;
	font-family: "Roboto Mono", monospace;
	font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
	display:inline-block;
}
#home-events h4.entry-title.summary {
	font-family: 'freight-text-pro', serif;
  font-size:28px;
  line-height:34px; 
}
#home-events .ecs-event-list {
	list-style: none !important;
	padding-left:0px;
}


/*** EVENTS ON OUTCOMES PAGE ***/
.white-paper-info {
	margin: 20px 16px 0;
}
.outcomes-events h2.outcomes-event-title {
    font-size: 32px;
    font-family: freight-text-pro, sans-serif !important;
    line-height: 45px;
    font-style: italic;
    color: #333;
}
.outcomes-events .outcome-files {
    display: block;
    padding-top: 5px;
}
.outcomes-events .outcome-files p {
    padding-bottom: 15px;
}
.outcomes-events .white-paper-info .outcome-files a::before {
    content: "";
    font-family: ETmodules;
    padding-right: 4px;
    speak: none;
}
.outcomes-events .white-paper-info .related-posts a::before {
    content: "";
    font-family: ETmodules;
    padding-right: 4px;
    speak: none;
}
.outcomes-events .ecs-event h3.entry-title {
	font-size: 24px !important;
	margin-bottom: 0px;
}
.outcomes-events li.ecs-event {
    padding-bottom: 16px;
}
.outcomes-event-title a {
	color: #333;
	line-height: 1.4em;
}
.ecs-event .white-paper-info .duration {
	margin: 10px 0px 0px 0px;
	color: #333;
}
.ecs-event .white-paper-info .outcomes::before {
    border-top: 4px solid #EF4035;
    width: 50px;
    content: '';
    display: block;
    padding-top: 10px;
    margin-top: 20px;
}


/***  FOOTER NAV  ***/
.footer-nav nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer-nav nav li {
  margin-bottom: 15px;
}