/*
Theme Name: Invision Bank Redesign
Theme URI: http://csibankanytime.com/
Author: CSI ( Sera Bargas, Bri Grimsley )
Description: Design Pro 3 CSI Banking Theme
Version: 2.5.1
Text Domain: design-pro-3
*/
/* TYPOGRAPHY
-------------------------------------------------------------------------------------- */
:root {
  --primary-color: #00274C;
  --secondary-color: #F15D22;
  --accent-color: #CDEAE6;
  --text-color: #001224;
  --accent-text: #C03F0C;

  --linear-gradient: linear-gradient(180deg, #00274C 0%, #001229 100%);
  --radial-gradient: linear-gradient(99deg, #000F1C 0%, #00274C 25.08%, #00274C 75.23%, #000F1C 100.31%);
}

body,
html {
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: "Inter", sans-serif;
  background: #F0F0F0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  color: var(--primary-color);
}

.secondary-color {
  color: var(--accent-text);
}

h1 {
  font-size: 4rem;
}
h2 {
  font-size: 3.5rem;
}
h3 {
  font-size: 3rem;
}
h4 {
  font-size: 2.5rem;
}
h5 {
  font-size: 2rem;
}
h6 {
  font-size: 1.5rem;
}

p,
ul,
dl,
ol {
  color: var(--text-color);
  font-size: 1rem;
  line-height: 22px
}

hr {
  background: var(--accent-text);
}

ul li {
  position: relative;
  list-style: none;
}

li.page_item {
  list-style: inside;
}
li.page_item a {
    font-size: 1.125rem;
}
li.menu-item {
  list-style: none;
}
li.menu-item a {
  font-size: 1rem;
}

section ul li:not(.nav-item):not(.page_item):before {
  content: "";
  font-family: "Font Awesome 5 Free";
  content: "\f058";
  color: var(--secondary-color);
  margin-right: .75rem;
}

section ul li {
  margin-bottom: 1.25rem;
}

.lead {
  line-height: 2.125rem;
  font-size: 1.375rem;
}

.text-muted {
  font-size: 0.875rem;
  color: var(--text-color) !important;
}

.boosted-font {
  font-size: 1.375rem;
  line-height: 34px;
}
.csi-ib iframe{
	width:100%;
	height:215px;
}
/* BUTTONS AND LINKS
Before Changing any Hover/Focus behavior, ensure the new behavior still complies with
ADA requirements (at least 3.0 contrast change or underline change)
-------------------------------------------------------------------------------------- */
a {
  color: var(--accent-text);
  font-weight: 700;
}
a:hover, a:focus {
  color: var(--accent-text);
  font-weight: 700;
  text-decoration: underline;
}
.mobile-ib-btn {
  padding-block: .5rem !important;
}
.csi-btn, .prev-posts-link a, .next-posts-link a, .post-password-form input[type="submit"] {
  background: var(--secondary-color);
  color: var(--text-color);
  padding: .75rem 1.5rem;
  border: 1px solid var(--secondary-color);
  border-radius: 3.125rem;
  font-weight: 600;
  display: inline-block;
}
#csiMenuWrapper .primary-menu a.csi-btn.ib-btn {
  padding: .75rem 1.5rem;
  color: var(--text-color);
}
#csiMenuWrapper .primary-menu a.csi-btn.ib-btn:hover, #csiMenuWrapper .primary-menu a.csi-btn.ib-btn:focus {
  background: transparent;
  border-color: var(--secondary-color);
  color: white;
  text-decoration: none;
  font-weight: normal;
}

.csi-btn:hover, .csi-btn:focus, .prev-posts-link a:hover, .prev-posts-link a:focus, .next-posts-link a:hover, .next-posts-link a:focus, .post-password-form input[type="submit"]:hover, .post-password-form input[type="submit"]:focus {
  background: white;
}

.block-banner .csi-btn:hover, .block-banner .csi-btn:focus, .ib-btn:hover, .ib-btn:focus, .mobile-ib-btn:focus , .mobile-ib-btn:hover {
  background: white;
  color: var(--primary-color);
}

.accent-btn, .csi-productAccordion .panel-heading .csi-btn:nth-child(2) {
  color: var(--text-color);
  padding: .5rem 1.5rem;
  background: white;
  border: 1px solid var(--secondary-color);
  border-radius: 3.125rem;
  font-weight: 600;
}

.accent-btn:hover, .accent-btn:focus, .csi-productAccordion .panel-heading .csi-btn:nth-child(2):hover, .csi-productAccordion .panel-heading .csi-btn:nth-child(2):focus {
  background: var(--secondary-color);
  color: var(--text-color);
}

/* GENERAL STYLES
-------------------------------------------------------------------------------------- */
.csi-container1400 {
  max-width: 1400px;
  margin: auto;
  padding-inline: 1rem;
}
.csi-container1500 {
  max-width: 1500px;
  margin: auto;
  padding-inline: 1rem;
}

/* HEADER/BANNER
-------------------------------------------------------------------------------------- */

#csiMenuWrapper .primary-menu a, #csiMenuWrapper-secondary .primary-menu a, #csiMenuWrapper .primary-menu .icon, #csiMenuWrapper-secondary .primary-menu .icon, #csiMenuWrapper button.close-nav-toggle, #csiMenuWrapper-secondary button.close-nav-toggle, #csiMenuWrapper .modal-menu > li > a, #csiMenuWrapper .modal-menu > li > .ancestor-wrapper > a, #csiMenuWrapper-secondary .modal-menu > li > a, #csiMenuWrapper-secondary .modal-menu > li > .ancestor-wrapper > a, #csiMenuWrapper .toggle-inner .toggle-text, #csiMenuWrapper-secondary .toggle-inner .toggle-text {
  color: var(--accent-color);
}
#csiMenuWrapper .modal-menu > li > .ancestor-wrapper > a {
  font-weight: normal;
}
#csiMenuWrapper .nav-toggle svg, #csiMenuWrapper-secondary .nav-toggle svg {
  fill: var(--accent-color);
}
#csiMenuWrapper .modal-menu ul li a, #csiMenuWrapper-secondary .modal-menu ul li a {
  font-weight: 400;
  color: var(--accent-color);
}
select.gt_selector {
  border-radius: 50px;
  padding: .25rem .5rem;
  background: transparent;
  border-color: var(--accent-color);
  color: var(--accent-color);
  max-width: 130px;
}
.search-col {
  justify-content: flex-end;
  gap: 1rem;
}
select.gt_selector option {
  color: var(--primary-color);
}
form#search {
  position: absolute;
  right: 9.5rem;
  background: #FAFAF7;
  padding: 1rem;
  border-radius: 8px;
  top: 2rem;
  z-index: 2;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
}
a.search-btn {
  position: relative;
  color: var(--accent-color);
  font-weight: 600;
}
input.search-field {
  border: 1px solid var(--primary-color);
  border-radius: 8px;
  padding: .5rem;
}
.csi-ib {
  position: absolute;
  background: #FAFAF7;
  z-index: 3;
  right: 1rem;
  padding: 2rem;
  min-width: 370px;
  border-radius: 8px;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  top: 7rem;
}
input#ib-username {
  border-color: var(--secondary-color);
  height: 48px;
  margin-top: 1rem;
}
input#ib-username::placeholder {
  color: var(--text-color);
  text-align: center;
}
.csi-ib a {
  color: var(--accent-text) !important;
  font-size: 0.875rem;
  text-align: right;
  line-height: 22px;
}
.section-one .col-12 {
  max-width: 700px;
  margin: auto;
}

/* SECTION ONE
-------------------------------------------------------------------------------------- */
.section-one {
  min-height: 1200px;
  margin-top: -2rem;
  position: relative;
}
.section-one .staff-container {
  height: 100%;
  position: absolute;
  z-index: 2;
  width: 100%;
  top: 0;
}
.section-one h2 {
  font-size: 5rem;
}
.section-one p {
  font-size: 1.375rem;
  line-height: 2.2125rem;
}
.section-one .staff-photo {
  border-radius: 50%;
  aspect-ratio: 1/1;
  position: absolute;
  z-index: 1;
}
.section-one .staff-photo:first-child {
  height: 240px;
  right: 18%;
  top: 11%;
}
.section-one .staff-photo:nth-child(2) {
  height: 281px;
  left: 20%;
  top: 66%;
}
.section-one .staff-photo:nth-child(3) {
  height: 170px;
  top: 10%;
  right: 60%;
}
.section-one .staff-photo:nth-child(4) {
  height: 170px;
  top: 62%;
  right: 28%
}
.section-one .staff-photo:nth-child(5) {
  height: 126px;
  top: 2.5%;
  right: 41%;
}
.section-one .staff-photo:nth-child(6) {
  height: 130px;
  top: 45%;
  right: 11%;
}
.section-one .staff-photo:nth-child(7) {
  height: 126px;
  top: 27%;
  right: 81%;
}
.section-one .staff-photo:nth-child(8) {
  height: 236px;
  top: 73%;
  right: 3%;
}
.section-one .staff-photo:nth-child(9) {
  height: 126px;
  top: 86%;
  right: 47%;
}
.section-one .staff-photo:nth-child(10) {
  height: 170px;
  top: -2rem;
  left: 3%;
}
.section-one .staff-photo:nth-child(11) {
  height: 126px;
  right: 5%;
  top: -2rem;
}
.section-one .staff-photo:nth-child(12) {
  height: 170px;
  top: 26%;
  right: -2rem;
}
.section-one .staff-photo:nth-child(13) {
  height: 126px;
  top: 79%;
  right: 89%;
}
.section-one .staff-photo:nth-child(14) {
  height: 170px;
  top: 47%;
  left: -2rem;
}
.section-one .content {
  max-width: 700px;
  margin: auto;
  z-index: 3;
  position: relative;
}

/* SECTION TWO
-------------------------------------------------------------------------------------- */
.section-two {
  margin-bottom: 5rem;
}
.section-two .img-container {
  position: relative;
}
.section-two .img-container:before {
  content: "";
  position: absolute;
  top: -.25rem;
  left: 0;
  background: linear-gradient(180deg, #F0F0F0 10%, #F0F0F0 20%, rgba(240, 240, 240, 0.00) 100%);
  height: 10rem;
  width: 100%;
  z-index: 1;
}
.section-two .img-container:after {
  content: "";
  position: absolute;
  top: 0;
  left: -.25rem;
  background: linear-gradient(270deg, rgba(240, 240, 240, 0.025) 0%,rgba(240, 240, 240, 0.2) 10%, #F0F0F0 100%);
  height: 100%;
  width: 35%;
  z-index: 1;
}
.section-two .col-lg-6 {
    padding-block: 10rem;
}
.section-two .col-lg-6:first-child {
  padding-inline: 8rem;
}

/* SECTION THREE
-------------------------------------------------------------------------------------- */
.section-three p, .section-two p {
  font-size: 1.125rem;
}
.section-three h2, .section-two h2 {
  font-size: 4rem;
  line-height: 6rem;
}
.section-three .card-block {
  display: flex;
  flex-direction: column;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  border-radius: 8px;
  background: #FAFAF7;
  align-items: center;
  padding: 2.5rem 1.8rem;
  margin-bottom: 2rem;
  gap: 1rem;
  color: var(--primary-color);
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  min-height: 270px;
  justify-content: center;
}
.section-three .card-block:hover, .section-three .card-block:focus {
  color: var(--accent-color);
  background: var(--primary-color);
  text-decoration: none;
}
.section-three .card-block:hover img, .section-three .card-block:focus img {
  filter: brightness(0) invert(1);
}
.section-three .card-block img {
  max-width: 110px;
}
.section-three .content {
  padding-top: 3rem;
  padding-left: 5rem;
}
.section-three {
    position: relative;
    z-index: 2;
}

/* SECTION FOUR
-------------------------------------------------------------------------------------- */
.section-four {
  padding-top: 5rem;
  position: relative;
}
.section-four:before {
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  background: var(--linear-gradient);
  position: absolute;
  top: -10rem;
}
.section-four h2 {
  color: var(--accent-color);
  padding-bottom: 3.75rem;
}
.section-four .csi-container1400 {
  z-index: 2;
  position: relative;
}

.post-entry {
  background: #FAFAF7;
  border-radius: 8px;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  text-align: center;
  height: 100%;
}
.post-entry .card-content {
  padding: 3rem 2.5rem;
}
.post-entry .card-content h6  {
  line-height: 36px;
  padding-bottom: 1.5rem;
}
.post-entry .card-wrapper img {
  border-radius: 8px 8px 0 0;
}

/* SECTION FOUR
-------------------------------------------------------------------------------------- */
footer {
  background: transparent;
  padding-bottom: 1%;
  margin-top: 0;
}
footer a, footer p {
  color: var(--text-color);
  font-size: 1rem;
}
footer .fdic-wrapper .fdic-notice {
	display: flex;
    flex-direction: row;
    width: 100%;
    margin: 0;
    overflow: hidden;
    box-sizing: border-box;
    text-align: left;
    font-family: 'Source Sans Pro', Arial, Helvetica, sans-serif;
    font-style: italic;
    font-size: .8rem;
    font-weight: 400;
    color: #000;
    align-items: center;
    margin-left: .25rem;
}
footer .fdic-wrapper .fdic-notice svg {
    width: auto;
    height: 15.74px;
    margin-right: .75em;
    display: block;
}
footer a.fdic-link {
  display: flex;
  align-items: center;
}
footer .col-lg-6:has(.fdic-link) {
  justify-content: flex-end;
}

/* ACCORDIONS
-------------------------------------------------------------------------------------- */
.panel-default a span.icon-open-close::before, .panel-default a .panel-title::before {
  float: right !important;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f067";
  padding-right: 5px;
  color: var(--primary-color);
  font-size: 1.5rem;
}
.panel-default a[aria-expanded="true"] span.icon-open-close::before, .panel-default a[aria-expanded="true"] .panel-title::before {
  float: right !important;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f068";
  padding-right: 5px;
}
.csi-defaultAccordion a:hover h5, .csi-defaultAccordion a:focus h5, .inside-panel-group .panel-default a:hover .inside-header-content h5, .inside-panel-group .panel-default a:focus .inside-header-content h5, .csi-defaultAccordion a:hover .panel-title:before, .csi-defaultAccordion a:focus .panel-title::before {
  color: white;
  text-decoration: none;
}
.csi-defaultAccordion a:hover, .csi-defaultAccordion a:focus, .inside-panel-group .panel-default a:focus, .inside-header-content, .inside-panel-group .panel-default a:hover .inside-header-content {
  background: var(--linear-gradient);
  text-decoration: none;
}
.csi-defaultAccordion a:hover h5, .csi-defaultAccordion a:focus h5, .inside-panel-group .panel-default a:hover .inside-header-content h5, .inside-panel-group .panel-default a:focus .inside-header-content h5, .csi-defaultAccordion a:hover .panel-title:before, .csi-defaultAccordion a:focus .panel-title::before,  .inside-panel-group .panel-default a:focus,  .inside-panel-group .panel-default a:hover {
  /* color: white;
  text-decoration: none; */
}
.csi-defaultAccordion a {
  background: #FAFAF7;
  border: none;
  border-radius: 8px;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  padding-block: 1.25rem 1.5rem;
  padding-inline: 2.5rem;
}
.inside-panel-group .panel-default a .inside-header-content {
  background: #FAFAF7;
  padding-block: 1.25rem 1.5rem;
  padding-inline: 2.5rem;
  border: none;
  border-radius: 8px;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
}
.inside-panel-group a:hover .inside-header-content .head img {
    filter: brightness(0) invert(1);
}
.csi-defaultAccordion h5, .inside-header-content h5 {
  color: var(--primary-color);
  font-size: 1.5rem;
  margin-bottom: 0;
}
.csi-defaultAccordion .panel-body {
  border: none;
  padding: 2.25rem;
}
.inside-panel-group .panel a:focus .inside-header-content {
  background: var(--linear-gradient);
}
.panel-body a:focus, .panel-body a:hover {
  background: none !important;
  text-decoration: underline !important;
}
.inside-header-content .head {
    display: flex;
    gap: 1rem;
}
.inside-header-content .head img {
  max-width: 34px;
}
.inside-panel-group a[aria-expanded="true"] .inside-header-content {
  border-radius: 8px 8px 0 0;
}
.csi-defaultAccordion a[aria-expanded=true] {
  border-radius: 8px 8px 0px 0px !important;
}
.inside-panel-group .panel a:focus .inside-header-content span.icon-open-close::before, .inside-panel-group .panel a:hover .inside-header-content span.icon-open-close::before {
  color: white;
}
.panel-body {
  background: #FAFAF7;
  padding: 2.25rem;
  border-radius: 0 0 8px 8px;
}
.inside-panel-collapse, .panel-collapse {
  border-top: 1px solid var(--secondary-color);
}
.csi-productAccordion .panel-body, .csi-productAccordion .panel-heading {
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  background: #FAFAF7;
}
.csi-productAccordion {
  border: none;
  border-radius: 8px;
}
.csi-productAccordion .panel-body {
  border-top: 1px solid var(--secondary-color);
}
.csi-productAccordion .panel-title {
  font-size: 2rem;
}
.panel-teaser p {
  font-size: 1;
}
.csi-productAccordion .csi-btn.accent-btn, .csi-productAccordion .csi-btn2 {
  max-width: fit-content;
  margin: auto;
}
.csi-learnMoreBtn {
  max-width: 480px;
  margin: auto;
  border-radius: 0px 0px 8px 8px;
  font-size: 1rem;
  padding: 0.75rem;
  background: var(--primary-color);
  border-color: var(--primary-color);
  color: white;
  word-spacing: 0.875rem;
  font-weight: 700;
}
.panel-collapse.show .panel-body {
    border-radius: 0 0 8px 8px;
}
.inside-panel-group, .csi-defaultAccordion, .csi-productAccordion {
    max-width: 1200px;
    margin-inline: auto;
    margin-bottom: 1rem;
}

/* CARDS
-------------------------------------------------------------------------------------- */
.card-deck {
  margin-inline: 0;
}
.card {
  background: transparent;
}
.card-deck .card {
  background: #FAFAF7;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  border-radius: 8px;
  border: none;
}
.card.flip-card .link-back .card-text {
  font-size: 1.375rem;
  line-height: 34px;
}
.card.flip-card:hover, .card.flip-card:focus {
  background: var(--radial-gradient);
}
.card.flip-card:hover .card-text, .card.flip-card:focus .card-text {
  color: var(--accent-color);
}
.card-deck.col-lg-6 .card-body h6 {
  font-size: 2rem;
}
.card-deck.col-lg-6 .card {
  padding: 2rem 4.5rem;
}
.card-deck.col-lg-6 .card-body {
  /* padding-bottom: 0; */
  margin-top: 0;
}
.csi_cards.card-deck.col-lg-6 .card-icon img {
  width: auto;
  margin: 0 auto;
  height: 150px;
  object-fit: contain;
}
.csi_cards.card-deck.col-lg-6 .card-icon {
  padding: 0;
}

/* CARDS
-------------------------------------------------------------------------------------- */
.tab-pane, .nav-tabs {
  border: none;
}
.tab-pane {
  padding: 1.75rem;
}
.nav-tabs .nav-link {
  border: 1px solid var(--secondary-color);
  color: var(--text-color);
  border-radius: 30px;
  font-weight: 600;
  padding: .5rem 1rem;
  margin-right: 1.125rem;
}
.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
  background: var(--secondary-color);
  color: var(--text-color);
  border: 1px solid var(--secondary-color);
}
.nav-tabs .nav-link:focus, .nav-tabs .nav-link:hover {
  border-color: var(--primary-color);
}

/* TABLES
-------------------------------------------------------------------------------------- */
.table thead td, .table thead th {
  text-align: center;
  border-bottom-width: 0;
  color: var(--accent-color);
  border: none;
  font-size: 1.5rem;
  line-height: 36px;
}
.table td, .table th {
  border: none;
}
.table thead th {
  background: var(--primary-color);
}
.table tr td:first-child {
  text-align: right;
  font-weight: 700;
}
.table tr td {
  line-height: 34px;
  font-size: 1.375rem;
  text-align: center;
  padding: 1rem 3rem;
  vertical-align: middle;
}
.table {
  table-layout: fixed;
}
.table i {
  color: var(--secondary-color);
}
table {
  border-spacing: 0;
}
thead tr th:first-child {
  border-radius: 8px 0 0 8px;
}
thead tr th:last-child {
  border-radius: 0px 8px 8px 0;
}
.table tr:nth-child(even) {
  background: #FAFAF7;
}
.table tr:nth-child(even) td:first-child {
    border-radius: 8px 0 0 8px;
}
.table tr:nth-child(even) td:last-child {
  border-radius: 0px 8px 8px 0;
}

/* INTERNAL COMPONENTS
-------------------------------------------------------------------------------------- */
.block-banner {
    text-align: center;
    background: var(--primary-color);
    border-radius: 30px;
    padding: 5rem;
}
.block-banner h3, .block-banner p {
  color: var(--accent-color);
}
.block-banner p {
  margin-block: 1rem 2.5rem;
}
.block-banner a {
  padding-block: .75rem;
}

.ui-dialog.ui-widget-content {
  background: white;
  text-align: center;
  margin-inline: 3rem;
  padding: 50px 75px 20px;
  right: 0;
  margin-inline: auto;
  max-width: 1000px;
  width: 90%;
  border-radius: 0;
}
.ui-dialog.ui-widget-content .ui-dialog-content h2, .ui-dialog.ui-widget-content .ui-dialog-content p {
  color: var(--text-color);
}
.ui-dialog.ui-widget-content .ui-dialog-content h6 {
  font-weight: 500;
  padding-bottom: 1rem;
}
.ui-dialog.ui-widget-content .ui-dialog-content h6, .ui-dialog.ui-widget-content .ui-dialog-content p {
  color: var(--text-color);
}
.ui-dialog .ui-dialog-buttonpane button {
  font-size: 1.125rem;
}
.ui-dialog-buttonset button:first-child, .ui-dialog-buttonset button:first-child:focus, .ui-dialog-buttonset button:first-child:hover {
  background: var(--accent-color);
  color: var(--text-color);
  padding-inline: 3rem;
  text-transform: uppercase;
  border-color: var(--accent-color);
  border-radius: 0;
}
.ui-dialog-buttonset button:nth-child(2) {
  background: none;
  color: var(--text-color);
  border: none;
}

/* PEOPLE PAGE
-------------------------------------------------------------------------------------- */
select#team-select {
  border-color: var(--secondary-color);
  border-radius: 8px;
  width: 340px;
  padding-inline: 1rem;
  height: 54px;
}
.people-post {
  height: 410px;
  border-radius: 8px;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  position: relative;
}
.people-col {
  padding-inline: 6px;
  margin-bottom: 1.75rem;
}
.people-post .person-content {
  position: absolute;
  border-radius: 8px;
  opacity: 0.88;
  background: var(--neutral-white-fafaf-7, #FAFAF7);
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  bottom: 0.875rem;
  width: 95%;
  margin: auto;
  left: 0;
  right: 0;
  text-align: center;
  padding: 1.25rem;
}
.people-post .person-content p {
  color: var(--primary-color);
  font-weight: 700;
  font-size: 1.5rem;
}
.layout-col {
  margin-top: 3.5rem;
}
.csi-banner-video .carousel-inner.single .carousel-item {
  min-height: 500px;
  display: flex;
  align-items: center;
}
.csi-banner-video .carousel-inner.single .carousel-item .carousel-caption {
  position: relative;
}
.highlight-image {
  border-radius: 50%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
.highlight-image:first-child {
  max-height: 577px;
  position: absolute;
  right: -2rem;
  top: -8rem;
}
.highlight-image:nth-child(2) {
  max-height: 359px;
  bottom: 10%;
  left: 10%;
  position: absolute;
}
section.content-people li:before {
  content: none !important;
}
.content-people li {
  list-style: inside;
  margin-bottom: 0;
}
.content-people ul {
  padding-left: 0;
}
.img-column {
  min-height: 700px;
}
.person-content {
  padding-left: 7rem;
  padding-top: 6rem;
}
.person-content .person-title {
  padding-bottom: 2.35rem;
}

/* LOCATION FINDER
-------------------------------------------------------------------------------------- */
#location-finder h2 {
  font-size: 2rem;
}
.location-finder #userAddress {
  border-radius: 0.5rem;
  border: 1px solid var(--secondary-color);
  background: #FAFAF7;
  height: 54px;
}
.location-finder #submitButton {
  background: var(--secondary-color);
  border: 1px solid var(--secondary-color);
  color: var(--text-color);
  height: 54px;
}
.location-finder #findMeButton {
  font-weight: bold;
  color: var(--accent-text);
}
.location-finder .fancy span {
  color: var(--accent-text);
  font-size: 1rem;
}
.location-finder #legend {
  justify-content: center;
}
.location-finder .result-header {
  display: none;
}
.location-list .location-result:first-child {
  text-align: center;
  border-radius: 8px;
  background: var(--primary-color);
}
.location-list .location-result:not(:first-child) {
  max-width: 32%;
  margin-top: 0;
  margin-inline: .5rem;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  background: #FAFAF7;
  border-radius: 8px;
  padding: 2.5rem 1.6rem;
}
.location-finder .location-list {
  display: flex;
  flex-wrap: wrap;
}
.location-finder .location-list .location-result:first-child .link h3 {
  font-size: 2.5rem;
  color: var(--accent-color);
  margin-bottom: 1rem;
}
.location-finder .location-list .location-result:first-child .link > * {
  color: var(--accent-color);
}
.location-finder .location-list .location-result:not(:first-child) .link h3 {
  font-size: 2rem;
  line-height: 3rem;
  margin-bottom: 1rem;
}
.location-finder .location-list .location-result:not(:first-child) p:has(strong) {
  color: var(--accent-text);
  padding-bottom: 1rem;
}
.location-finder .location-list .location-result:not(:first-child) p {
  margin-bottom: 0;
}
.location-finder .location-list .location-result:first-child .link h6 {
  font-size: 2rem;
}
.location-finder .location-result .link p {
  display: none;
}
.location-finder .col-md-8.link, .location-finder .location-result .col-md-4 {
  max-width: 100%;
  flex: 0 0 100%;
}
.location-finder .location-list .location-result:first-child .result-info p {
  text-align: center;
  color: var(--accent-color);
  line-height: 2.125rem;
  font-size: 1.375rem;
} 
.location-finder .location-list .location-result:first-child .result-info p:first-child {
  margin-bottom: 2rem;
}
.location-finder #mobile-content {
  display: none;
}

/* LOCATION FINDER
-------------------------------------------------------------------------------------- */
.blog-tabs .nav-tabs li:not(:last-child) a {
    border-right: 2px solid var(--text-color);
}
.blog-tabs .nav-tabs .nav-link {
  border: none;
  color: var(--accent-text);
  font-size: 1.25rem;
  padding-inline: .52rem;
  margin-right: 0;
  padding-block: 0;
  margin-block: 0;
  line-height: 1;
  border-radius: 0;
  font-size: 1rem;
}
.blog-tabs .nav-tabs .nav-item.show .nav-link, .blog-tabs .nav-tabs .nav-link.active {
  background: none;
  text-decoration: underline;
}
.related-sidebar h4 {
  font-size: 1.5rem;
  text-align: center;
}
.blog-sidebar-block {
  border-radius: 8px;
  background: var(--neutral-white-fafaf-7, #FAFAF7);
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  margin-bottom: 1.5rem;
  padding: 1.625rem 1rem;
  text-align: center;
}
.blog-sidebar-block p.post-name {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 36px;
}
.blog-sidebar-block p.post-date {
  font-weight: 700;
  position: relative;
  margin-bottom: 2rem;
}
.blog-sidebar-block p.post-date:after {
  content: "";
  border-bottom: 2px solid var(--secondary-color);
  width: 46px;
  margin: auto;
  bottom: -.875rem;
  position: absolute;
  left: 0;
  right: 0;
}

/* VIDEO
-------------------------------------------------------------------------------------- */
.video-modal .modal-content {
  padding: 2rem;
}
.video-modal h5 {
  max-width: 90%;
  margin: auto;
}
.video-modal .modal-header {
  border-bottom: 0;
}
.video-tabs .nav-tabs li:not(:last-child) a {
    border-right: 2px solid var(--text-color);
}
.video-tabs .nav-tabs .nav-link {
  border: none;
  color: var(--accent-text);
  font-size: 1.25rem;
  padding-inline: .52rem;
  margin-right: 0;
  padding-block: 0;
  margin-block: 0;
  line-height: 1;
  border-radius: 0;
  font-size: 1rem;
}
.video-modal .modal-dismiss {
  background: none;
  border: none;
  text-align: right;
}
.video-tabs .nav-tabs .nav-item.show .nav-link, .video-tabs .nav-tabs .nav-link.active {
  background: none;
  text-decoration: underline;
}
.video-tabs .col-lg-4 {
  padding-inline: 8px;
}
.video-tabs .tab-pane {
  padding-inline: 0;
}
.video-tabs .post-entry .card-wrapper img {
    max-height: 250px;
    width: 100%;
    object-fit: cover;
}

/* EVENTS
-------------------------------------------------------------------------------------- */
#calendar {
  width: 100%;
  max-height: 600px;
  transition: all 0.3s linear;
}
.calendar-container {
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  background: #FAFAF7;
  border-radius: 8px;
  padding-left: 3rem;
  padding-top: 2rem;
  max-width: 920px;
}
.fc .fc-toolbar {
  justify-content: unset;
}
.calendar-section-title {
  padding-bottom: 2rem;
}
.fc-direction-ltr .fc-button-group > .fc-button:not(:first-child), .fc-direction-ltr .fc-button-group > .fc-button:not(:last-child) {
  background: none;
  color: var(--accent-text);
  padding: 0;
}
.fc-direction-ltr .fc-button-group > .fc-button:not(:last-child) {
  margin-right: 0;
}
.fc-button-group {
  margin-left: 1rem;
}
.fc .fc-toolbar-title {
  font-size: 2rem;
  color: var(--text-color);
  line-height: 48px;
}
#calendar a:not([href]):not([tabindex]) {
  font-size: 1.125rem;
}
#calendar .fc-daygrid-dot-event .fc-event-title {
  display: none;
}
#calendar .fc-daygrid-event-dot {
  border-color: var(--accent-text);
}
#calendar .fc .fc-daygrid-day-number{
  font-weight: 400;
}
#calendar .fc .fc-toolbar.fc-header-toolbar {
  margin-bottom: 3rem; 
}
.calendar-sidebar .meeting-to {
  font-weight: 700;
}
.calendar-sidebar .meeting-details {
  margin-bottom: 2rem;
}
hr.events-hr {
  margin-block: 3rem;
}
.events-list .col-12 .event-post {
  min-height: 650px;
}
.events-list .col-md-6 .event-post {
  min-height: 460px;
}
.events-list .event-post {
  border-radius: 8px;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  position: relative;
}
.event-post .event-content {
  position: absolute;
  border-radius: 8px;
  opacity: 0.88;
  background: var(--neutral-white-fafaf-7, #FAFAF7);
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  bottom: 0.875rem;
  margin-inline: .75rem;
  left: 0;
  right: 0;
  padding: 1.25rem;
}
.event-image {
  border-radius: 8px;
  box-shadow: 0 11px 26px 0 rgba(2, 14, 30, 0.10);
}
.content-event .date {
  font-size: 1.125rem;
  font-weight: 700;
}

/* PASSWORD PROTECTED PAGE
-------------------------------------------------------------------------------------- */
.post-password-form {
  max-width: 50%;
  margin: auto;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  background: #FAFAF7;
  border-radius: 8px;
  padding: 2rem;
}
.post-password-form p {
  font-size: 1.375rem;
  text-align: left;
}
.post-password-form p:has(label) {
  font-size: 1rem;
  font-weight: 700;
  padding-block: 1rem;
}
.post-password-form label {
  display:flex;
  flex-direction: column;
  width: 100%;
}
.post-password-form input:not([type="submit"]){
  border-radius: 8px;
  border: 1px solid var(--secondary-color);
  background: #FAFAF7;
  height: 46px;
  margin-block: .5rem;
}

/* MEETING SCHEDULER
-------------------------------------------------------------------------------------- */
form.meeting-scheduler-form .progress-title {
  font-size: 3rem;
}
form.meeting-scheduler-form .progress-title i {
  display: none;
}
form.meeting-scheduler-form .meter span {
  background-color: var(--secondary-color) !important;
  background-image: none !important;
}
form.meeting-scheduler-form .meter {
  border-bottom:  1px solid var(--secondary-color) !important;
}
.meeting-scheduler-actions h3 {
  font-size: 1.5rem;
  margin-bottom: 2rem;
  width: 100% !important;
  max-width: 100% !important;
}
a.forward:not(a#showLaterTimes),
a.back:not(a#showEarlierTimes) {
  display:none;
}
a.psuedo-forward,
a.psuedo-back {
  background: var(--secondary-color);
  color: var(--text-color);
  padding: .5rem 1.5rem;
  border: 1px solid var(--secondary-color);
  border-radius: 3.125rem;
  font-weight: 600;
  margin-left: .5rem;
}
a.psuedo-back {
  background: transparent;
}
a.psuedo-forward:hover,
a.psuedo-forward:focus {
  background: white;
  color: var(--text-color);
}
a.psuedo-back:hover,
a.psuedo-back:focus {
  background: var(--secondary-color);
}
.psuedo-meeting-scheduler-actions a {
  display: none;
}
.psuedo-meeting-scheduler-actions a.psuedo-forward.psuedo-meeting-location-div-button {
  display: block;
}
.psuedo-meeting-scheduler-actions {
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 2rem;
  display: flex;
  justify-content: flex-end;
  width: 100%;
}
form input[type="submit"] {
  max-width: fit-content;
  background: var(--secondary-color);
  color: var(--text-color);
  padding: .75rem 1.5rem;
  border: 1px solid var(--secondary-color);
  border-radius: 3.125rem;
  font-weight: 600;
  display: inline-block;
}
form input[type="submit"]:hover, 
form input[type="submit"]:focus {
  background: white;
} 
.wpcf7 form, form span, form input, form label {
  width: 100%;
}
.wpcf7 form label input, form select {
  border-radius: 8px;
  border: 1px solid var(--secondary-color) !important;
  background: #FAFAF7 !important;
  height: 46px;
  margin-block: .5rem;
  padding-inline: .5rem;
  width: 100%;
}
.wpcf7 form label textarea {
  border-radius: 8px;
  border: 1px solid var(--secondary-color) !important;
  background: #FAFAF7 !important;
  margin-block: .5rem;
  width: 100%;
}

/* PRODUCT PICKER */

button.productContainerBtn {
  display: flex;
  position: fixed;
  border-radius:8px;
  right: 2.5rem;
  bottom: 2.5rem;
  z-index: 10;
  animation-name: floating;
  -webkit-animation-name: floating;
  animation-duration: 1.5s;
  -webkit-animation-duration: 1.5s;
  animation-iteration-count: 1;
  -webkit-animation-iteration-count: 1;
  transition: all 0.5s ease;
  font-family: var(--primary-font);
  align-items: center;
  justify-content: center;
  height: 54px;
  width: 54px;
}
.csi-questionsContainer {
  position: fixed;
  width: auto;
  height: auto;
  bottom: 7rem;
  right: 2.75rem;
  z-index: 900;
}
button.productContainerBtn i {
  font-size: 1.5rem;
  color: white;
}
.productContainerBtn:hover, .productContainerBtn:focus {
  background: var(--accent-color);
}
.productContainerBtn:hover i, .productContainerBtn:focus i {
  color: var(--text-color);
}
.csi-questionsContainer .questions-box {
  background: #FAFAF7;
  width: 300px;
  height: auto;
  overflow: hidden;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  border-radius: 8px;
}
.csi-questionsContainer .questions-box .question-box-header {
  background: var(--primary-color);
}
.csi-questionsContainer .questions-box .question-box-header h5 {
  color: white;
  font-size: 1.375rem;
  padding: .75rem 1.25rem;
}
button.csi-questionsClose {
  position: absolute;
  right: 0.5rem;
  top: 0.5rem;
  z-index: 5;
  border: 0 none transparent;
  background: transparent;
  color: #fff;
}
.csi-questionsContainer .question {
  display: none;
}
.csi-questionsContainer .question.question-1 {
  display: block;
}
.csi-questionsContainer .default, .product-suggestion, .start-over, #answer-trail {
  display: none;
}
.questions-box form {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-inline: 1rem;
  margin-block: 1rem;
}
.questions-box form a {
  margin-bottom: .5rem;
  text-align: center;
}
.question-title p {
  color: var(--blue-900);
  padding: 1rem;
  font-family: var(--primary-font);
  font-size: 1rem;
  font-weight: 400;
}
.product-column {
  margin-bottom: 3rem;
}
.product .csi-productAccordion {
  max-width: unset;
  margin-bottom: 5rem;
}
.product .panel-heading {
  padding-block: 4rem;
}
.product .panel-heading .productAccordionImage{
  width: 140px;
}
.product .csi-productAccordion .fa-chevron-down:before {
  margin-left: 1rem;
}
#target h3 {
  width: 100%;
}
.wpcf7 #target .outlook-calendar-event {
  width: 50%;
  background: var(--primary-color) !important;
  color: var(--accent-color) !important;
}
.wpcf7 #target {
  display: flex !important;
  flex-wrap: wrap;
  margin-bottom: 1rem !important;
}
form.meeting-scheduler-form a.forward {
  background: var(--secondary-color) !important;
  color: var(--text-color) !important;
  padding: .75rem 1.5rem !important;
  border: 1px solid var(--secondary-color) !important;
  border-radius: 3.125rem !important;
  font-weight: 600;
  margin-left: 1rem;
}
form.meeting-scheduler-form a.forward:hover, form.meeting-scheduler-form a.forward:focus {
  background: white !important;
  color: var(--text-color) !important;
}
form.meeting-scheduler-form a.back {
  color: var(--text-color) !important;
  padding: .75rem 1.5rem !important;
  background: white !important;
  border: 1px solid var(--secondary-color) !important;
  border-radius: 3.125rem !important;
  font-weight: 600;
}
form.meeting-scheduler-form a.back:hover, form.meeting-scheduler-form a.back:focus {
  background: var(--secondary-color) !important;
  color: var(--text-color) !important;
}
.meeting-date-time legend {
  display: none;
}
.wpcf7 #target .outlook-calendar-event:hover, .wpcf7 #target .outlook-calendar-event.selected {
  background: white !important;
  border: 1px solid var(--text-color) !important;
  color: var(--text-color) !important;
}
.meeting-scheduler-actions h3 {
  margin-top: 2rem;
}
.confirmation-feedback {
  padding-inline: 0 !important;
}
.confirmation-feedback p {
    font-size: 1.125rem !important;
}
.wpcf7 form.sent .wpcf7-response-output {
  border-color: var(--secondary-color) !important;
}
#wpcf7-f108030-o1 input:not([type="submit"]), #wpcf7-f108030-o1 textarea {
  background: #FAFAF7;
  box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
  border-radius: 8px;
  border: none;
  margin-top: .25rem;
}
#wpcf7-f108030-o1 .form-row {
  display: flex;
}
#wpcf7-f108030-o1 input[type="text"], #wpcf7-f108030-o1 input[type="email"] {
  height: 40px;
  width: 100%;
}
#wpcf7-f108030-o1 label {
  width: 100%;
  font-size: 1.375rem;
  margin-bottom: .5rem;
  font-weight: 600;
}
#wpcf7-f108030-o1 p:has(span[data-name="your-message"]), #wpcf7-f108030-o1 textarea, #wpcf7-f108030-o1 p:has(span[data-name="your-message"]) label {
  width: 100%;
}
.calc-body .nav a {
  border: 1px solid var(--accent-text);
  border-radius: 30px;
  padding: .5rem 2rem;
}
.switch-tabs.li-titles {
  width: unset !important;
}
.csi-insidepages .csi-articleContent .calc-body ul li {
  margin-right: 1.5rem;
}
div#calcLoad .demo-icon.icon-csi-printer, .tab-headings, .demo-icon, .calc-icon-page, .fa-money, .card-header h2, .highlight, .entry-section, .calc-top-title-text h2 {
  color: var(--primary-color);
}
.calc-body .nav li:hover {
  background: none !important;
}
.csi-insidepages .csi-articleContent .calc-body ul li:before {
  content: none;
}
.calc-body .return a.calculation-button {
  background: var(--secondary-color);
  color: var(--text-color) !important;
  border-color: var(--secondary-color);
}
.calc-body .calc-bot-info h5 {
  color: var(--text-color);
}
.csi_cards .link-front {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  top: 0;
  bottom: 0;
}
/* INSIGHTS */
.poll-layout-one .poll-choice:hover, .poll-layout-one .poll-choice:focus, .poll-layout-one .poll-choice.selected-choice {
  background: #00274c3d !important;
}
.poll-layout-one .progress span {
  background-color: transparent !important;
}
.poll {
    background: #FAFAF7;
    box-shadow: 0px 11px 26px 0px rgba(2, 14, 30, 0.10);
    border-radius: 8px;
    padding: 1rem;
}
.block-row-image {
  margin-bottom: 10rem;
}
.block-row-image.right .row {
  flex-direction: row-reverse;
}
.block-row-image .img-container {
  min-height: 400px;
}
.block-row-image.right .img-wrapper {
  box-shadow: 30px 30px var(--secondary-color);
}
.block-row-image.left .img-wrapper {
  box-shadow: -30px 30px 0 0 var(--secondary-color);
}
.block-row-image .img-wrapper {
  height: 100%;
}
.block-row-image img {
  box-shadow: rgba(3, 21, 43, 0.35) 4px 4px 14px 0px;
  height: 100%;
  max-height: 400px;
  width: 100%;
  object-fit: contain;
  background: white;
}
.block-row-image .content {
  padding: 4rem 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%
}
.gradient-cards {
  left: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  max-width: 100vw;
  position: relative;
  right: 50%;
  width: 100vw;
  background: linear-gradient(82deg, var(--text-color) 0%, var(--primary-color) 100.26%);
  padding-block: 4rem;
  margin-bottom: 2rem;
}
.gradient-cards h6, .gradient-cards p{
  color: white;
}
.gradient-cards .featured-card {
  padding-inline: 2rem;
}
.poll-btn {
  font-size: 1rem;
}

.image-banner {
  margin-block: 3rem;
  left: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  max-width: 100vw;
  position: relative;
  right: 50%;
  width: 100vw;
}
.image-banner.blue:before {
  content: "";
  position: absolute;
  max-height: 75%;
  width: 100%;
  background: var(--primary-color);
  top: 15%;
  bottom: 15%;
}
.image-banner.teal:before {
  content: "";
  position: absolute;
  max-height: 75%;
  width: 100%;
  background: var(--accent-color);
  top: 15%;
  bottom: 15%;
}
.image-banner img {
  object-fit: cover;
  max-height: 500px;
  margin: auto;
}
.image-banner.blue .content > *, .image-banner.blue .content .csi-btn {
  color: white;
}
.image-banner.teal .content > *, .image-banner.teal .content .csi-btn {
  color: var(--text-color);
}
.image-banner.blue .content .csi-btn {
  border-color: white;
}
.image-banner .content {
  padding: 10rem 2rem;
}
.image-banner.image-right .row {
  flex-direction: row-reverse;
}
.image-banner.image-right img {
  margin-left: auto;
}
.image-banner.image-left img {
  margin-right: auto;
}

/* ANIMATIONS
-------------------------------------------------------------------------------------- */
@media(min-width: 768px) {
  .animation-flip-up.in-view {
    transition-duration: 1.2s;
    transition-timing-function: ease;
    transform: perspective(2500px) rotateX(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition-property: -webkit-transform;
    transition-property: transform, -webkit-transform;
    transition-timing-function: ease;
    transition-delay: .3s;
  }
  .animation-flip-up {
    -webkit-transform: perspective(2500px) rotateX(-100deg);
    transform: perspective(2500px) rotateX(-100deg);
  }
  .animation-slide-left.in-view {
    opacity: 1;
    -moz-transform: translate3d(0px, 0px, 0px);
    -webkit-transform: translate3d(0px, 0px, 0px);
    -o-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate3d(0px, 0px, 0px);
    transition-timing-function: ease;
    transition-delay: .3s;
  }
  .animation-slide-left {
    opacity: 0;
    -moz-transition: all 1.2s linear;
    -webkit-transition: all 1.2s linear;
    -o-transition: all 1.2s linear;
    transition: all 1.2s linear;
    -moz-transform: translate3d(300px, 0px, 0px);
    -webkit-transform: translate3d(300px, 0px, 0px);
    -o-transform: translate(300px, 0px);
    -ms-transform: translate(300px, 0px);
    transform: translate3d(300px, 0px, 0px);
  }
  .animation-slide-right.in-view {
    opacity: 1;
    -moz-transform: translate3d(0px, 0px, 0px);
    -webkit-transform: translate3d(0px, 0px, 0px);
    -o-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate3d(0px, 0px, 0px);
    transition-timing-function: ease;
    transition-delay: .3s;
  }
  .animation-slide-right {
    opacity: 0;
    -moz-transition: all 1.2s linear;
    -webkit-transition: all 1.2s linear;
    -o-transition: all 1.2s linear;
    transition: all 1.2s linear;
    -moz-transform: translate3d(-300px, 0px, 0px);
    -webkit-transform: translate3d(-300px, 0px, 0px);
    -o-transform: translate(-300px, 0px);
    -ms-transform: translate(-300px, 0px);
    transform: translate3d(-300px, 0px, 0px);
  }
  .animation-zoom-in.in-view {
    animation-fill-mode: both;
    animation-duration: 2s;
    animation-name: zoomIn;
    transition-timing-function: ease;
  }
}

@keyframes zoomIn {
  0% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
    transition-timing-function: ease;
  }
  60% {
    opacity: 1;
  }
}