/* Insights styles */


/*

  * Saving this JIC *

  OK, this is madness. There are a ton of legacy styles
  that need to go, and everything is scattered stem to stern.

  Events and PRs are different than BP and CS

  Insight structure?
    New column width for archives
    ?? Insight cards

  Cards

  Hero Cards

  Alt Hero Cards

  Chips

  Alt Chips ( ticker )

  Insight Landing pages
    Typography -> Make consistent for all of this stuff
      { things }
    Hero treatment
    Related chips
    BP / CS cards

  Newsroom and Events Archive
    Link styles

  Newsroom
    Hero treatment
    card tweaks

  Insight archives
    Filters
    Pagination
    Inherits card styles

  Single
    Shared
    Blog
    Client Story

  Carousels
    Insights carousel -> new square, full width style
    News Release carousel -> is this only on home?
    Upcoming Events carousel

  Card attributes
    Border-width
    Border-radius ( Hero vs. reg. )
    Border-color
    Padding

  Chip attributes
    Padding
    Border-width
    Border-color

  Shared elements
    Date
    Type
    Header
    Source ( NR card )
    Copy ( Heroes, Event card )
    BG image / gradient ( Heroes )
    Link
      Text / arrow ( Heroes, Cards )
      Text only ( Event card )
      Arrow only ( Event card )
      Internal icon only ( NR Card )
      External icon only ( NR Card )
*/



/* Adding new page gradient
------------------------------ */
.fl-insight-content {
  background: var( --as-page-gradient );
}

/* Insight Cards
 * Shared styles for all Cards
 * Specifc styles by type
     Hero Cards
     Alt Hero Cards

  Card attributes
    Border-width
    Border-radius ( Hero vs. reg. )
    Border-color
    Padding

  Chip attributes
    Padding
    Border-width
    Border-color

  Shared elements
    Date
    Type
    Header
    Source ( NR card )
    Copy ( Heroes, Event card )
    BG image / gradient ( Heroes )
    Link
      Text / arrow ( Heroes, Cards )
      Text only ( Event card )
      Arrow only ( Event card )
      Internal icon only ( NR Card )
      External icon only ( NR Card )

---------------------------------------- */


/* Shared styles for events and press releases
--------------------------------------------------- */
.fl-archive-grid-item { /* Inner single item wrap */
  flex: 0 0 calc( 50% - 16px );
  padding: 20px;
  position: relative;
  background: transparent;
  border: 1px solid #FFFFFF;
  border-radius: 8px;
  margin-bottom: 35px; /* space below row on Newsroom page (note: 1 per row)    */
  overflow: hidden;
}

.blog-1 .fl-events-carousel .fl-archive-grid-item,
.blog-2 .fl-events-carousel .fl-archive-grid-item,
.blog-3 .fl-events-carousel .fl-archive-grid-item,
.blog-7 .fl-events-carousel .fl-archive-grid-item { /* Events carousel */
  background-color: transparent;
  border: 1px solid var( --as-accent-primary );
}

.fl-archive-meta { /* wrapper for initially visible copy */
  margin: 20px 0px 20px 0px;
}

.fl-archive-date,
.fl-press-source,
.fl-press-region { /* Top line date for events & PRs */
  font-family: var( --as-font-family, sans-serif );
  font-weight: var( --as-font-weight-bold );
  font-size: 14px;
  line-height: 14px;
  color: #666666;
}

.fl-archive-content { /* wrapper for initially hidden copy */
  display: none;
}

.fl-archive-content p {
  font-size: 14px;
  color: #666666;
}

/* remove some spacing above filters on Archive pages */
.fl-archive .fl-content {
  margin: 0px 0px 40px 0px;
}


/* Insight filter interface ( based on taxo selects )
 * We don't need the -taxo- bit, but removing it is a PITA
 * fl-archive-x are just wrappers
---------------------------------------------------------- */
.fl-filters-wrap {
  position: relative;
  margin-bottom: 36px;
  min-height: 120px; /* minimize content jumping */
}

.fl-filters {
  display: block;
  position: relative; /* display filters in column (for mobile)  */
  z-index: 142;
  width: 100%;
  padding: 0px;
}

@media only screen and ( min-width: 480px ) {
  /* display filters in row */
  .fl-filters {
    position: absolute;
    top: 26px;
    left: 0;
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    flex-direction: row;
  }

}

    /* Wraps title and items */
  .fl-filter-wrap {
    flex: 0 0 15%;
    margin-bottom: 20px;
    padding: 12px 12px 12px 12px; /* make button/pill taller */
    background-color: #fff;
    background-position: 90% 8px;
    border: 1px solid #b3b3b3;
    border-radius: 24px;
    transition: all 0.4s;
  }

  .fl-filter-select { /* contains checkboxes inside filter drop down */
    display: none;
    padding-top:15px;
  }

  .fl-filter-select.open .facetwp-facet {
    margin-bottom: 0px;
  }

  /* Facet filter title styling
  ---------------------------------------------------------- */
  .fl-filter-title,
  .fl-filter-title:hover,
  .fl-filter-title:focus { /* anchor, toggle trigger*/
    display: block;
    margin: 0;
    line-height: 1;
    color: #b3b3b3;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 700;
    padding: 0px;
    background-image: url('../images/icon-arrow-right.svg');
    background-repeat: no-repeat;
    background-position: right;
    background-size: 9px 18px;
  }

  .fl-filter-wrap.open.active .fl-filter-title,
  .fl-filter-wrap.open .fl-filter-title { /* filter category inside pill */
    background-image: url('../images/icon-arrow-down-orange.svg');
    background-size: 15px 9px;
    color: #f3704c;  /* on color */
  }

  .fl-filter-wrap.active .fl-filter-title { /* filter category inside pill */
    background-image: url('../images/icon-arrow-right-on.png');
    background-size: 9px 18px;
    color: #f3704c;  /* on color */
  }

  /* Filter select items
  ------------------------------- */
  .fl-filter-wrap .facetwp-checkbox {
    background: url('../images/facetwp-plus-sign.png') no-repeat;
    background-position: top right 3px; /* 3px lines up with category arrow */
    background-size: 10px 10px;
    margin-bottom: 4px;
    padding-left: 0px;
    padding-right: 20px; /* moves + or - from end of filter name */
    cursor: pointer;
    font-size: 12px;
    color: #b3b3b3;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 700;
  }

  .fl-filter-wrap .facetwp-checkbox.checked {
    background-image: url('../images/facetwp-minus-sign.png');
  }

  .fl-filter-wrap .facetwp-checkbox .facetwp-counter {
    display: none; /* don't display count */
  }

  .fl-filter-wrap.open .facetwp-checkbox.checked {
    color: #f3704c;  /* on color */
  }

  /* See X more in facet drop down menu
   * :not used to override bootstrap css
  ---------------------------------------------------------- */
  a.facetwp-toggle:not([href]):not([tabindex]),
  a.facetwp-toggle:not([href]):not([tabindex]):hover {
      font-size: 12px;
      letter-spacing: 1px;
      text-transform: uppercase;
      color: #b3b3b3;
      font-weight: 700;
  }

  /* / Facet filter select content styling * /

  /* Clear filter link styling */
  .fl-clear-filters {
      text-align: center;
      margin: 3px 0px 15px 0px;
  }

  @media only screen and ( min-width: 480px ) {
    .fl-clear-filters {
      text-align: center;
      margin: 3px 0px 0px 0px;
    }
  }

  .fl-clear-filters a {
      font-size: 14px;
      font-weight: 600;
      text-transform: uppercase;
  }
  /* / Clear filter link styling */

/* / Insight filter interface */






/* Tweaks for external PRs */
.fl-press-external,
.fl-press-external:hover {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  color: var( --as-link-color ) !important;;
}

.fl-press-external:after {
  content: '';
  display: block;
  margin-left: 8px;
  width: 14px;
  height: 14px;
  background: url( '../images/icon-external.svg' ) no-repeat center;
}

/* Newsroom-specific tweaks for new design June 2026
---------------------------------------------------------- */
.newsroom .fl-archive-date,
.newsroom .fl-post-grid-type,
.newsroom .fl-press-title,
.newsroom .fl-press-title a,
.newsroom .fl-press-title a:visited,
.newsroom .fl-press-region
.newsroom .fl-press-source {
  color: #FFFFFF;
}

h2.fl-press-title { /* PR headline */
  font-size: 32px;
}

.newsroom .fl-archive-link,
.newsroom .fl-archive-link.js-new-window {

}

.newsroom .fl-archive-link:before,
.newsroom .fl-archive-link.js-new-window:before {
  content: '';
  display: inline-block;
  margin-left: 8px;
  width: 14px;
  height: 14px;
  background: url( '../assets/images/icon-press-link.svg' ) no-repeat center;
}

.newsroom .fl-archive-link.js-new-window:before {
  background-image: url( '../assets/images/icon-press-external.svg' )
}

.fl-archive-grid-featured {
  padding: 0;
}


/* Events grid and items
----------------------------- */

.fl-event-column {
 flex: 0 0 100%;
 margin-right: 0px !important; /* 7/31/19 molly */
}

/* Event grid row and cards mobile */
.fl-event-grid-row { /* single row of cards mobile */
  /* 8/5/19
  display: block;
  */
  margin-bottom: 0;
  padding: 0;
}

.fl-archive-grid-row .fl-post-column:last-child { /* last card in row */
  margin-right: 0;
}

/* Event grid and cards desktop */
@media only screen and ( min-width: 992px ) {

  .fl-archive-grid .fl-event-column { /* card outer wrap */
    margin-bottom: 32px;
  }

  .fl-event-column {
    flex: 0 0 30.333%;
    margin-right: 33px !important;
  }

  .fl-event-column:nth-child(3n) {
    margin-right: 0px !important;
  }

}

.fl-event-date { /* Big month/day on events */
  color: #000;
  font-size: 32px;
}

.fl-event-featured { /* Featured flag */
  color: var( --as-heading-alt );
  text-transform: uppercase;
}

.fl-event-title { /* Event title */
  color: #000;
  margin-top: 28px;
  line-height: 1.3em;
}

.fl-event-location p { /* Event location */
  font-family: var( --as-font-family, sans-serif );
  font-weight: var( --as-font-weight-regular );
  font-size: 14px;
  color: #666666;
  /* font-weight: 500; */
}

.home .fl-events-carousel .fl-archive-date,
.home .fl-events-carousel .fl-event-date,
.home .fl-events-carousel .fl-event-title,
.home .fl-events-carousel .fl-event-location p {
  color: #FFFFFF;
}


.fl-events-wrapper {
    margin: 0 auto; /* center for mobile */
}

@media only screen and ( min-width: 1080px ) {
    .fl-events-wrapper {
        max-width: 100% !important; /* override inline style */
        margin: 0; /* remove centering */
    }
}



/* Single Insight content tweaks
------------------------------------- */

.fl-post-image { /* Featured image on single Posts */
  display: block;
  margin: 0 auto 26px;
  border-radius: 16px;
  overflow: hidden;
}

h4.footer-block-header {
  margin: 0 auto 48px;
  font-size: 36px;
  text-align: center;
}

.fl-post-author-block { /* Author block */
  padding: 48px 0;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: space-between;
  background: var(--as-bg-secondary);
}

.fl-post-author-image-wrap {
  margin: 0 0 10px 20px;
  width: 40%;
  text-align: center;
}

.fl-post-author-image-wrap img {
  margin: 0 auto;
  border: 1px solid var( --as-accent-secondary );
  border-width: 0 1px 1px 0;
  border-radius: 50%;
}

.fl-post-author-copy {
  width: 100%;
  padding: 20px;
}


.fl-post-meta .fl-post-author-copy p {
  color: #000000;
  font-family: var( --as-font-family, sans-serif );
  font-weight: var( --as-font-weight-regular );
  font-size: 18px;
  text-transform: none;
}

.fl-post-meta .fl-post-author-copy p.fl-post-author-name,
.fl-post-meta .fl-post-author-copy p.fl-post-author-title {
  font-size: 20px;
  text-align: center;
}


@media only screen and ( min-width: 992px ) {

  .fl-post-author-image-wrap {
    width: 80%;
    float: none;
    margin: 0 0 0 0;
  }

  .fl-post-author-copy {
    width: 80%;
    max-width: 880px;
  }
} /* / MQ */


/* Captions in Posts
------------------------- */
.wp-caption {
  padding: 0;
  text-align: left;
  background: var( --as-bg-secondary );
  border: 1px solid var( --as-accent-secondary );
  border-radius: 16px;
  overflow: hidden;
}

.wp-caption.alignnone {
  margin: 5px auto 20px;
}

.wp-caption-text {
  padding: 20px;
  font-size: 16px;
}



/* Insights cards -> Where? */
.fl-archive-grid-row { /* this is the new wrapper */
  display: block;
  margin-bottom: 0;
  padding: 0;
  /* border: 1px solid red; */
}


.fl-archive-grid .fl-post-column { /* One-up card outer wrap */
  position: relative;
  margin-bottom: 20px;
  max-width: 80%;
}

.fl-term-column {
  padding: 20px;
  border: 1px solid var( --as-bg-secondary );
  border-radius: 8px;
  box-shadow: rgba(149, 157, 165, 0.1) 4px 6px 14px;
}


@media only screen and ( max-width: 767px ) {

  .fl-archive-grid .fl-post-column { /* Make a bit wider on real narrow devs. */
    max-width: 96%;
  }

} /* / MQ */

@media only screen and ( min-width: 992px ) {

  .fl-archive-grid-row { /* flex behavior for DT */
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    align-items: stretch;
    padding: 0;
    /* border: 1px solid red; */
  }

  .fl-post-column { /* card outer wrap  .fl-archive-grid .fl-archive-grid-row */
    flex: 0 0 48%;
    align-self: stretch;
    margin: 0 2% 20px 0;
  }

  /* Made this rule more specific to match the generic declaration */
  .fl-archive-grid-row .fl-post-column:nth-of-type( even ) { /* last card in 'row' */
    margin-right: 0;
  }

} /* / MQ */

.all-insights-header h6,
.single-insight-header h6 {
  font-size: 16px;
  letter-spacing: 1px;
}

.insights-list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.insight-card { /* single item inner wrapper */
  position: relative;
  display: flex;
  justify-content: space-between;
  overflow: hidden;
}

.insight-card.insight-related { /* Single item in a 'related' column */
  margin: 0 24px 20px;
  width: 100%;
  flex-direction: row-reverse;
}

.insight-card.term-card {
  flex-direction: column;
}

@media only screen and ( min-width: 992px ) {

  .insight-card.insight-related { /* Single item in a 'related' column */
    margin: 0 0 24px;
  }

}

.fl-post-grid-image {
  flex: 0 0 50%;
  overflow: hidden;
}

.insight-related .fl-post-grid-image {
  flex: 0 0 40%;
}

.fl-post-grid-image-link {
  display: block;
}

.insights-list .fl-post-grid-image-link {
  text-align: right;
}

.insight-card .fl-post-grid-type,
.press-carousel p.fl-post-grid-type,
.fl-post-grid-type,
h5 .insight-type {
  margin-bottom: 12px;
  font-family: var( --as-font-family, sans-serif );
  font-weight: var( --as-font-weight-bold );
  font-size: 16px;
  color: #8885be;
  letter-spacing: 1px;
  line-height: 1;
  text-transform: uppercase;
}

.fl-module-glossary-terms .fl-post-grid-text {
  flex-basis: 100%;
  padding: 0 4px;
}

.fl-post-grid-text {
  position: relative;
  padding: 0 16px 16px;
  flex-basis: 50%;
}

.insight-related .fl-post-grid-text {
  padding-left: 0;
  flex-basis: 60%;
}

.fl-post-grid-text .fl-button-wrap {
  position: absolute;
  bottom: 24px;
}

.fl-rich-text .fl-post-grid-post .fl-post-meta p {
  margin: 20px;
  font-family: var( --as-font-family, sans-serif );
  font-weight: var( --as-font-weight-bold );
  /* font-size: 12px; */
  /* color: #999; */
  text-transform: uppercase;
}

.insight-card .fl-post-grid-title {
  margin-bottom: 14px;
  font-size: 18px;
}

.insight-card .fl-post-grid-title a {
  color: var( --as-heading-color );
  transition: all 0.4s;
}

.insight-card .fl-post-grid-title a:hover {
  color: #8885be; /* 60% --as-heading-color */
}

.fl-post-grid-content p {
  margin-bottom: 10px;
  color: #666;
  font-size: 16px;
  line-height: 1.4;
}
/*  End Insights cards */

/* Most popular block */
.most-popular-block {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}

.featured-article-block {
  margin-bottom: 24px;
}

.ah-related-articles-block h2 { /* This isn't in the builder */
  margin: 0 0 24px;
  width: 100%;
  text-align: center;
}

@media only screen and ( min-width: 992px ) {

  .heroes-block {
    display: flex;
  }

  .most-popular-block {
    flex-direction: row;
  }

  .featured-article-block {
    margin-bottom: 0;
    padding-right: 24px;
    flex: 0 1 60%;
  }

  .related-articles-block {
    flex: 0 1 40%;
    border-left: 1px solid #b0b0b0;
  }

  .insights-list {
    padding-left: 24px;
  }

  .related-articles-block h2 {
    width: auto;
    text-align: left;
  }

  .most-popular-list {
    flex: 0 1 40%;
    border-left: 1px solid #b0b0b0;
  }

} /* / MQ */

/* Featured Article styles */
.featured-article-image {
  margin-bottom: 36px;
}

.featured-article-content {
  padding: 0 40px 40px;
  text-align: center;
}

@media only screen and ( min-width: 992px ) {

  .featured-article-content {
    padding: 0;
  }

}


.featured-article-content .featured-article-type {
  margin-bottom: 24px;
  font-family: var( --as-font-family, sans-serif );
  font-weight: var( --as-font-weight-bold );
  font-size: 16px;
  color: #8885be;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.featured-article-content .featured-article-title {
  margin-bottom: 24px;
  font-size: 38px;
}

.featured-article-content .featured-article-title a {
  color: var(--as-heading-color);
  transition: all 0.4s;
}

.featured-article-content .featured-article-title a:hover {
  color: #8885be; /* 60% --as-heading-color */
}

.featured-article-content .featured-article-byline {
  margin-bottom: 24px;
  color: #808080;
  font-size: 18px;
}

.featured-article-content .featured-article-excerpt {
  color: #231F20;
  font-size: 18px;
  line-height: 1.4;
}
/* End Featured Article styles */


/* Single legacy Insights */
.single .fl-content-full.container {
  margin: 0;
  padding: 0;
  width: auto;
  max-width: none;
}

.single .fl-content {
  margin: 0;
}

.single-insight-content-wrap {
  position: relative;
}

.single-insight-header {
  min-height: 190px;
  display: flex;
  background-repeat: no-repeat;
  background-size: cover;
}

.single-insight-header.glossary-term {
  background: linear-gradient( 15deg, #151744 0%, #393392 100% );
}

@media only screen and ( min-width: 992px ) {

  .single-insight-header {
    min-height: 450px;
  }

}

.single-insight-banner {
  flex: 0 0 100%;
  text-align: center;
}

.single-insight-banner h6 {
  padding: 20px;
  background-color: rgba(112,124,241,0.5);
  color: #ffffff;
}

.single-insight-content-wrap {
  background-color: var( --as-bg-page );
  border-top: 5px solid #707cf1;
  padding: 20px;
}

@media only screen and ( min-width: 992px ) {

  .single-insight-content-wrap {
    margin-top: -250px;
  }

}

/* Column tweaks for Insights on mobile */
@media only screen and ( max-width: 991px ) {

  .fl-row-fixed-width.insight-row { /* Generic style for copy block in Insights */
    max-width: 90%;
  }

  .insight-row .fl-row-fixed-width {
    max-width: 100%;
  }

  .insight-row .fl-module-content {
    margin-right: 0;
    margin-left: 0;
  }

  .single-insight-content-header {
    padding: 40px 0;
    text-align: center;
  }

  .as_client_story .fl-row-bg-photo.fl-row-custom-height > .fl-row-content-wrap,
  .as_emag .fl-row-bg-photo.fl-row-custom-height > .fl-row-content-wrap { /* Control image height on CSs */
    min-height: 250px;
  }

}

@media only screen and ( min-width: 992px ) {

  .single-insight-content-header {
    padding: 40px;
  }

}


/* New Insights header styles */

.insight-type { /* use inside h6 */
  display: block;
  margin: 0 auto 36px;
  letter-spacing: 1px;
  text-align: center;
  text-transform: uppercase;
}

.insight-title { /* use inside h2 */
  margin: 0 0 36px;
  display: block;
  text-align: center;
}

@media only screen and ( min-width: 992px ) {

  .insight-title { /* use inside h2 */
    margin: 0 36px 36px;
  }

}


.insight-byline { /* use inside p */
  margin: 20px;
  display: block;
  font-weight: var(--as-font-weight-bold);
  color: #808080; /* */
  text-align: center;
}

/* Insights action bar */
.insight-actionbar {
  position: relative;
}

@media only screen and ( min-width: 992px ) {

  .insight-actionbar {
    position: absolute;
    top: 5%;
    left: -42px;
    display: block;
    margin: 0;
    transition: all 0.2s;
    z-index: 418;
  }

} /* / MQ */

.insight-actionbar-items {
  margin: 0 0 32px;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  background: #ffffff;
}

@media only screen and ( min-width: 992px ) {

  .insight-actionbar-items {
    margin: 0;
    display: block;
  }

}

.insight-actionbar-item {
  width: 42px;
  height: 42px;
  text-indent: -200px;
  overflow: hidden;
  word-wrap: break-word;
  line-height: 1;
  border: 1px solid #707cf1;
  border-width: 1px 0 1px 1px;
}

.insight-actionbar-item:last-child {
  border-width: 1px;
}

@media only screen and ( min-width: 992px ) {

  .insight-actionbar-item {
    border-width: 1px 1px 0;
  }

} /* / MQ */


.insight-actionbar-button {
  display: block;
  width: 100%;
  height: 100%;
  transition: all 0.5s;
}

.insight-actionbar-button:hover {
  background-color: rgba( 112, 124, 241, 0.6 );
}

.insight-actionbar-button:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.actionbar-linkedin {
  background-image: url("../images/sidebar-button-linkedin.svg");
}

.actionbar-email {
  background-image: url("../images/sidebar-button-email.svg");
}

.actionbar-link {
  background-image: url("../images/sidebar-button-link.svg");
}

.actionbar-download {
  background-image: url("../images/sidebar-button-download.svg");
}

.single-insight-content {
  margin: 0 4%;
  padding-bottom: 48px;
}

@media only screen and ( min-width: 992px ) {

  .single-insight-content {
    margin: 0 10%;
    padding-bottom: 64px;
  }

}

.js-copied {
  display: none;
  position: absolute;
  top: 24px;
  left: 58px;
  white-space: nowrap;
  background-color: #ffffff;
}

.js-copied p,
span.js-copied {
  margin-bottom: 0;
  color: #ffffff;
  padding: 8px;
  border: 1px solid #707cf1;
  background-color: rgba( 112, 124, 241, 0.6 );
  font-size: 16px;
  text-align: center;
}

.js-copy-wrap { /* Hacky, used on single Press posts */
  position: relative;
}

p .js-copied {
  position: relative;
  top: auto;
  left: auto;
  margin-left: 16px;
}



/* Testing new Insight styles with a single classed column
---------------- */
.fl-post .insight-wrap img.alignright,
.single-insight-content-wrap img.alignright {
  max-width: 50%;
  margin-right: -4%;
}

@media only screen and ( min-width: 992px ) {

  .fl-post .insight-wrap img.alignright,
  .single-insight-content-wrap img.alignright {
    max-width: 60%;
    margin-right: -10%;
  }

}

.fl-post .insight-wrap img.alignleft,
.single-insight-content-wrap img.alignleft {
  max-width: 50%;
  margin-left: -4%;
}

@media only screen and ( min-width: 992px ) {

  .fl-post .insight-wrap img.alignleft,
  .single-insight-content-wrap img.alignleft {
    max-width: 60%;
    margin-left: -10%;
  }

}

/* 2 Up and 3 Up styles ZZZ Move these
-------------------------- */

.fl-insights-wrapper {
    max-width: 100% !important; /* overriding max width add to container via JS */
}

.fl-insights-wrapper .fl-post-grid-image { /* Lazy Load is causing weird height issues in carousels */
  max-height: 191px;
}

/* Every card has 34px of right margin */
.fl-featured-insights-carousel .fl-post-column, /* 3 Up */
.fl-module-related-insights .fl-insights-wrapper .fl-post-column { /* 2 Up */
    margin: 4px 34px 0px 0px;
}

.fl-terms-wrapper { /* terms carousel on Insights page */
  margin: 0 auto;
}

/* END 2 Up and 3 Up styles */

/* New hero image w / gradient treatment
------------------------------------ */

.foo {
  position: relative;
  margin: 0 auto 64px;
  max-width: 750px;
  overflow: hidden;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 28px;
}

.bar {
  position: relative;
  padding: 42px;
  background: linear-gradient( 90deg, rgb( 57 51 146 / 90% ), 70%, transparent );
  z-index: 42;
}

.bar h6,
.bar h2,
.bar p {
  color: #FFFFFF;
}

.bar h6 {
  margin-bottom: 24px;
  text-transform: uppercase;
}

.bar h2 {
  margin-bottom: 32px;
}

.bar h2 a,
.bar h2 a:hover {
  color: #FFFFFF;
  text-decoration: none;
  transform: all 0.4s;
}

.bar p {
  margin-bottom: 32px;
}

a.hi-read-more,
a.hi-read-more:hover {
  display: flex;
  align-items: flex-start;
  color: var( --as-link-color );
  text-decoration: none;
}

a.hi-read-more::after {
  content: "\27F6";
  display: inline-block;
  margin-left: 8px;
  line-height: 1;
  transition: all 0.4s;
}

a.hi-read-more:hover::after {
  margin-left: 12px;
}

@media only screen and ( min-width: 992px ) {

  .bar h6,
  .bar h2,
  .bar p {
    max-width: 72%;
  }

}

/* Insights (3 Up) on home page styles */
.fl-module-insights.fl-module-as-slider {
    padding-bottom: 0px;
}

.fl-module-as-slider-wrap {
  margin-bottom: 40px;
}

.fl-module-as-slider-wrap h2 {
  margin: 40px auto;
  text-align: center;
}

/* Insights slider on home page 8/3/19
 * this pushes column to the right over so it does not display on mobile
 * known issue: this fix works on newer mobile devices but causes older mobile devices (note 2)
 */
.fl-module-insights.fl-module-as-slider .fl-featured-insights-carousel .fl-post-column {
  /*margin-left: 25px;*/
}
/* don't need left margin on desktop */
@media only screen and ( min-width: 992px ) {
  .fl-module-insights.fl-module-as-slider .fl-featured-insights-carousel .fl-post-column {
    /*margin-left: 0px;*/
  }
}


/* Events slider on home page styles 8/3/19
 * this pushes column to the right over so it does not display on mobile
 * known issue: this fix works on newer mobile devices but causes older mobile devices (note 2)
 */

.blog-1.home .fl-rich-text:has( .fl-module-events ) h2,
.blog-3.home .fl-rich-text:has( .fl-module-events ) h2 {
  color: #FFFFFF;
}

.fl-module-events.fl-module-as-slider .fl-event-column {
  /*margin-left: 30px;
  margin-right: 20px !important; */
}
/* don't need margins on desktop */
@media only screen and ( min-width: 992px ) {
  .fl-module-events.fl-module-as-slider .fl-event-column {
    /*margin-left: 0px;
    margin-right: 33px !important;*/
  }
}


/* .fl-module-events.fl-module-as-slider .fl-slider-view-all  {
    transform: translate(-50%, -175%);  positioning for home page
} */

/* 2 Up layout container */
.fl-module-related-insights.fl-module-as-slider {
    padding-bottom: 0px;
}

.fl-slider-view-all {
    position: absolute;
    width: 160px;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, -30%);  /* Y = -70% positioning for 2 Up page */
}

/* this is event slider on home page */
.fl-node-5ce5c7a06533d > .fl-module-content {
    margin-left: 0px;
}


/* Styles for both Insights and Events */
.fl-module-as-slider .bx-controls {
    /*
    position: absolute;
    bottom: 16px;
    left: 39%;
    width: 32%;
    */
    position: relative;
    margin-top: 50px; /* space above pagination */
    width: 100%;
    left: 0;
    bottom: 0px;
    height: 45px;
}

.fl-module-as-slider .bx-controls button {
    display: block;
    width: 34px;
    height: 34px;
    overflow: hidden;
    text-indent: -999px;
    background-color: transparent;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain;
    border-width: 0px;
}

.fl-module-as-slider .bx-controls-direction {
    /*
    width: 69%;
    display: flex;
    justify-content: space-between;
    */
    width: 280px;
    display: flex;
    justify-content: space-between;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, -36%);
}

/*.fl-module-as-slider a.disabled {*/
.fl-module-as-slider .bx-controls-direction button.disabled {
    opacity: 0.2;
}

.fl-module-as-slider .bx-controls-direction button.bx-prev {
    background-image: url("../images/icon-carousel-prev.svg");
}

.fl-module-as-slider .bx-controls-direction button.bx-next {
    background-image: url("../images/icon-carousel-next.svg");
}

.fl-module-as-slider .fl-post-column {
    margin: 4px 30px 0px 0px;
}

.fl-terms-carousel {
  height: 100%;
}

.fl-module-glossary-terms .fl-post-column {
  margin: 0;
  padding: 20px;
  display: flex;
  align-items: center;
  height: 100%;
}

.fl-module-glossary-terms .insight-card {
  align-items: center;
  align-self: stretch;
  padding: 20px;
  background: #FFFFFF;
  border: 1px solid var( --as-accent-secondary );
  border-radius: 16px;
  box-shadow: rgba(149, 157, 165, 0.6) 0px 4px 16px;
}


/* Post meta styling
------------------------- */

.fl-insight-content .fl-post-meta-top,
.single-insight-content-header {
  margin-bottom: 20px;
  text-align: center;
}


.fl-post-meta-top h5,
.single-insight-content-header h5 { /* Post type */
  font-size: 16px;
  color: var( --as-heading-alt );
  text-transform: uppercase;
}

.fl-post-meta-top h2 {  /* Post title */ }

.fl-insight-content .fl-post-meta-top p,
.single-insight-content-header p {
  margin-bottom: 4px;
  color: var( --as-text-light );
}

.fl-insight-content .fl-post-meta-top p.fl-post-caveat,
.single-insight-content-header p.fl-post-caveat {
  color: var( --as-heading-alt );
  font-family: var( --as-font-family, sans-serif );
  font-weight: var( --as-font-weight-regular );
  font-style: italic;
  font-weight: 100;
  text-transform: none;
}

.fl-post-client-block h3 {
  margin: 24px auto;
  text-align: center;
}

.fl-post-client-wrap h4 {
  text-align: center;
}

/* Images in blog Post body copy */
.fl-blog-body img {
  border-radius: 16px;
}

blockquote {
  margin: 20px -4% 40px;
  padding: 18px;
  border: 1px solid #cccccc;
  border-width: 1px 0;
}

@media only screen and ( min-width: 992px ) {

  blockquote {
    margin: 20px -10% 40px;
    padding: 40px;
  }

}

.fl-rich-text blockquote p {
  margin: 20px auto;
  color: var( --as-heading-color );
  font-size: 28px;
  text-align: center;
}

.fl-rich-text blockquote p + p {
  color: var( --as-text-light );
  font-size: 20px;
}

/* Global ads in Posts */
.fl-rich-text .global-ad {
  margin: auto -10%;
}



/* Single event specific tweaks
------------------------------------ */
.single-as_event .fl-archive-full,
.single-as_event .fl-as-module { /* .fl-row-content-wrap top pad: 75px */
  padding-top: 60px;
  padding-bottom: 60px;
}

.single-as_event .fl-event-column-single {
  margin-top: 0;
  margin-right: auto !important;
  margin-bottom: 35px;
  margin-left: auto;
  max-width: 830px;
}

.fl-event-column-single a.fl-bb-button {
  display: inline-block;
}


/* Insights carousel height/width fix
------------------------------------ */
.fl-insights-wrapper {
  max-width: 100% !important;
}

.fl-insights-wrapper .bx-viewport {
  height: auto !important;
}

/* stop horizontal scrollbar on /insights page - will probably affect anywhere same slider is used 7/30/19 */
.uabb-image-carousel button.slick-prev,
.uabb-image-carousel button.slick-prev:hover {
    left: -10px;
}

.uabb-image-carousel button.slick-next,
.uabb-image-carousel button.slick-next:hover {
    right: -10px;
}


/* Carousel controls
------------------------- */
.fl-module-as-slider {
  position: relative;
  margin-bottom: 64px;
}

.fl-module-as-slider .bx-controls {
  position: absolute;
  bottom: 16px;
  left: 20%;
  width: 60%;
}

.fl-module-as-slider .bx-controls-direction,
.fl-module-featured-events .bx-controls-direction { /* Immediate nav parent */
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.fl-module-as-slider .bx-controls a,
.fl-module-featured-events .bx-controls a {
  display: block;
  width: 34px;
  height: 34px;
  overflow: hidden;
  text-indent: -999px;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
}

.fl-module-as-slider a.bx-prev {
  background-image: url('../images/icon-carousel-prev.svg');
}

.fl-module-as-slider a.bx-next {
  background-image: url('../images/icon-carousel-next.svg');
}

.fl-module-as-slider a.disabled {
  opacity: 0.6;
}

/* Remove this? */
.fl-slider-view-all { /* View all button wrapper */
  position: absolute;
  width: 40%;
  bottom: 10px;
  left: 30%;
  text-align: center;
}

/* Archives and Insight cards in archives
---------------------------------------------- */
.fl-archive-full { /* Full width archives */
  background-color: #fff;
}

.fl-archive > .row { /* Why aren't rows relative??? */
  position: relative;
}

.fl-builder .container.fl-content-full .fl-content.fl-archive-grid { /* Inner archive wrapper */
  position: relative;
  padding-top: 22px;
  margin: 0 20px;
}

@media only screen and ( min-width: 992px ) {

  .fl-builder .container.fl-content-full .fl-content.fl-archive-grid { /* Inner archive wrapper */
    margin: 0 0;
  }

}

/* Filter pills on Newsroom page */
.fl-filters.fl-newsroom-filters .fl-filter-wrap {
  flex: 0 0 20%;  /* makes pills same width and causes long filter names to break on multiple lines */
}


/* news room card container */
.fl-archive .fl-insight-content .fl-row-fixed-width {
  padding: 0 20px;  /* so card edges don't touch browser edge in mobile */
}

@media only screen and ( min-width: 992px ) {
    .fl-archive .fl-insight-content .fl-row-fixed-width {
      padding: 0px;  /* don't need for desktop */
    }
}


.fl-content.fl-newsroom-grid { /* Inner Newsroom wrapper, its col has TP */
  display: flex;
  gap: 16px;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 0;
}

  .fl-newsroom-grid table { /* Tables are breaking out of Newsroom cards */
    font-size: 14px;
  }

  td.bwalignr {
    text-align: right;
  }

  td.bwalignc {
    text-align: center;
  }

  td.bwvertalignb {
    vertical-align: bottom;
  }


/* Pagination
------------------ */
.fl-archive-pagination {
  text-align: center;
  color: #f2704c;
}

.facetwp-page {
  padding: 0 3px;
}

.facetwp-page.current {
  font-weight: 700;
  color: var( --as-accent-primary );
}


/* Dumb style for the content block on single events */
.fl-archive-content.fl-archive-content-block {
  display: block;
}
