/* ========== 0) DESIGN TOKENS ========== */
:root {
  --text-size-36: 2.184rem;
  --text-size-28: 2.00rem;
  --text-size-20: 1.43rem;
  --text-size-18: 1.29rem;
  --text-size-16: 1.14rem;
  --text-size-14: 1rem;
  --text-size-12: 0.875rem;


  --T-Red: #E30045;
  --T-Honey: #F1D4A4;
  --T-Honey-Medium-Tint: #F9EEDB;
  --T-Honey-Light-Tint: #FDFAF5;
  --T-Honey-300-Tint: #f6e2c2;
  --T-White: #FFFFFF;

  --T-Blue: #9BBFC4;
  --T-Blue-Medium-Tint: #D7E5E7;
  --T-Blue-Light-Tint: #F5F8F9;
  --T-Blue-300-Tint: #bcd4d7;

  --T-Deep-Blue: #1C4259;
  /* single canonical deep blue */
  --T-Blue-Black-Body: #1C4259;
  /* alias for body text */

  --deep-red: #C00000;
  --deep-red-50: #f8ebec;
  --deep-red-100: #ebb9c3;
  --deep-red-200: #e17a96;
  --deep-red-300: #d3687d;
  --deep-red-400: #bc4a64;
  --deep-red-500: #be1d3d;
  --deep-red-600: #ad1a38;
  --deep-red-700: #87152b;
  --deep-red-800: #691022;
  --deep-red-900: #500c1a;
  --deep-blue-50: #e6ecf2;
  --deep-blue-100: #d0deec;
  --deep-blue-200: #97a8b3;
  --deep-blue-300: #678090;
  --deep-blue-400: #49687a;
  --deep-blue-500: #1c4259;
  --deep-blue-600: #193c51;
  --deep-blue-700: #142f41;
  --deep-blue-800: #0f2431;
  --deep-blue-900: #0c1c25;
  --blue-50: #f5f9f9;
  --blue-100: #e0ebed;
  --blue-200: #d1e2e4;
  --blue-300: #bcd4d7;
  --blue-400: #afcccd;
  --blue-500: #9bbfc4;
  --blue-600: #8badaf;
  --blue-700: #6e888b;
  --blue-800: #55696c;
  --blue-900: #415052;
  --honey-50: #fef1d6;
  --honey-100: #fdf2e3;
  --honey-200: #f9deb5;
  --honey-300: #f6e2c2;
  --honey-400: #fddbb0;
  --honey-500: #f1d4a4;
  --honey-600: #dbc195;
  --honey-700: #ab9774;
  --honey-800: #875523;
  --honey-900: #655945;

  --text-body: var(--T-Blue-Black-Body);
  --left-space: 7%;
  --opaque-color: rgba(255, 255, 255, 0.7);;

  --T-Dot-Active: #F1D4A4;
  /* active dot */
  --T-Dot: #C3CCD3;
  /* inactive dot */
}

/* Tablets ≥ 768px */
@media (min-width: 768px) {
  :root {
    --text-size-36: 2.442rem;
    --text-size-28: 1.900rem;
    --text-size-20: 1.349rem;
    --text-size-18: 1.186rem;
    --text-size-16: 1.055rem;
    --text-size-14: 1.00rem;
    --text-size-12: 0.831rem;
  }
}

/* Laptops ≥ 1024px (your exact baseline) */
@media (min-width: 1024px) {
  :root {
    --text-size-36: 2.8rem;
    --text-size-28: 2.00rem;
    --text-size-20: 1.42rem;
    --text-size-18: 1.28rem;
    --text-size-16: 1.14rem;
    --text-size-14: 1.00rem;
    --text-size-12: 0.90rem;
  }
}

/* Desktops ≥ 1440px */
@media (min-width: 1440px) {
  :root {
    --text-size-36: 3.22rem;
    --text-size-28: 2.300rem;
    --text-size-20: 1.633rem;
    --text-size-18: 1.450rem;
    --text-size-16: 1.275rem;
    --text-size-14: 1.150rem;
    --text-size-12: 1.006rem;
  }
}


/* Large screens ≥ 1920px */
@media (min-width: 1920px) {
  :root {
    --text-size-36: 3.5rem; /* ~+25% */
    --text-size-28: 2.500rem;
    --text-size-20: 1.775rem;
    --text-size-18: 1.575rem;
    --text-size-16: 1.375rem;
    --text-size-14: 1.250rem;
    --text-size-12: 1.094rem;
  }
}


/* ========== 1) BASE / GLOBAL ========== */
a {
  color: #9bbfc3;
}

@font-face {
  font-family: "Basis GRT";
  src: url("./fonts/BasisGrtforThrivent-Lt.otf") format("opentype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Basis GRT";
  src: url("./fonts/BasisGrtforThrivent.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Basis GRT";
  src: url("./fonts/BasisGrtforThrivent-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Basis GRT";
  src: url("./fonts/BasisGrtforThrivent-Blk.otf") format("opentype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
li {
  font-family: "Basis GRT", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--text-body);
}

h1 {
  font-weight: 700;
  font-size: var(--text-size-36);
  line-height: 1.15;
  color: var(--T-Blue-Black-Body);
}

h2 {
  font-weight: 500;
  font-size: var(--text-size-28);
  line-height: 1.35;
  color: var(--T-Blue-Black-Body);
}

h3 {
  font-weight: 500;
  font-size: var(--text-size-20);
  line-height: 1.35;
  color: var(--T-Blue-Black-Body);
}

h4 {
  font-weight: 700;
  font-size: var(--text-size-18);
  line-height: 1.3;
}

h5 {
  font-weight: 600;
  font-size: var(--text-size-16);
  line-height: 1.3;
}

p,
li {
  font-weight: 400;
  font-size: var(--text-size-14);
  line-height: 1.5;
}

.section-padding {
  padding: 3rem 4rem;
}

@media screen and (max-width: 600px) {
  .section-padding {
    padding: 1rem 1.5rem;
  }
}

.margin-bottom {
  margin-bottom: 4rem;
}

.bg-soft-white {
  background: #f2f2f2;
}

.bg-soft-teal {
  background: #ebf2f3
}

.section-header {
  font-size: 3rem;
  padding-left: var(--left-space);
  padding-right: var(--left-space);
}

.vertical-center {
  min-height: 75vh;
  display: flex;
  align-items: center;
}

.left-space {
  padding-left: var(--left-space);
}

.right-space {
  padding-right: var(--left-space);
}

.font-size-20 {
  font-size: var(--text-size-20);
}

.font-size-14 {
  font-size: var(--text-size-14);
}

.font-size-16 {
  font-size: var(--text-size-16);
}

.font-size-18 {
  font-size: var(--text-size-18);
}

.font-size-12 {
  font-size: var(--text-size-12);
}

/* ========== NAV BAR ========== */

.navbar-nav {
  gap: 2rem;
}

#bootstrap-overrides .navbar {
  height: auto;
}

#bootstrap-overrides .nav-link {
  color: #000;
  font-size: var(--text-size-14);
  font-weight: 500;
  line-height: 1.125rem;
  transition: color .2s;
  font-family: "Basis Grt", sans-serif;
}

#bootstrap-overrides .nav-link:hover {
  color: var(--deep-red);
}

#bootstrap-overrides .navbar .nav-item.active>.nav-link,
#bootstrap-overrides .navbar .nav-link.active {
  color: var(--deep-red) !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
}

#bootstrap-overrides .nav-tabs .nav-item.show .nav-link,
#bootstrap-overrides .nav-tabs .nav-link.active {
  background: var(--deep-red);
  border: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-contact:hover {
  background: #0b5563;
  color: #fff !important;
}

.btn-contact {
  margin-left: auto;
  padding: 0.75rem;
  text-align: center;
  border-radius: 5px;
  background-color: rgb(28, 66, 89);
  color: white !important;
  font-size: var(--text-size-14);
  border: none;
  font-weight: 700;
}

/* Header visuals */
#site-header {
  background: #fff;
  transition: box-shadow .2s ease-in-out;
  z-index: 1030; /* above content */
}

#site-header.is-scrolled {
  box-shadow: 0 2px 10px rgba(0,0,0,.08);
}

/* Top logo collapses on scroll */
#top-logo {
  transition: height .25s ease, padding .25s ease, opacity .25s ease;
  overflow: hidden;
}
#site-header.is-scrolled #top-logo {
  height: 0 !important;
  padding-top: 0 !important;
  opacity: 0;
}

/* Inline brand only visible when scrolled */
.brand-inline {
  opacity: 0;
  width: 0;
  pointer-events: none;
  transition: opacity .2s ease, width .2s ease;
}
#site-header.is-scrolled .brand-inline {
  opacity: 1;
  width: auto;
  pointer-events: auto;
}

#site-header .navbar {
  transition: padding .2s ease;
}
#site-header.is-scrolled .navbar {
  padding-top: .25rem;
  padding-bottom: .25rem;
}

@media (max-width: 991.98px) {
  .navbar-nav {
    margin-top: .5rem;
  }
  .btn.btn-contact {
    margin-top: .5rem;
  }
}

/* ========== HERO ========== */
.hero-image {
  position: relative;
  display: grid;
  overflow: hidden;
}

.hero-image img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 800px;
  grid-area: 1 / 1;
  z-index: 0;
  object-fit: cover !important;
}

.hero-overlay-vert {
  position: absolute;
  left: var(--left-space);
  width: 47vw;
  height: 100%;
  background: var(--opaque-color);
}

.overlay-vert-text {
  color: var(--T-White);
  padding: 20% 15% 10% 10%;
}

#investment-strategies img {
  max-height: 800px;
  object-fit: cover;
  object-position: bottom;
}

#investment-strategies {
  max-height: 600px;
}

@media (max-width: 768px) {
  .hero-overlay-vert {
    position: static;
    width: 100%;
    height: auto;
    padding: 1.5rem;
  }

  .overlay-vert-text {
    padding: 0;
    text-align: center;
  }

  .overlay-vert-text h1 {
    margin-bottom: 1rem;
  }

  .overlay-vert-text h2 {
    margin-bottom: 1rem;
  }
}


/* ========== Strength and Stability ========== */

.flip-card {
  perspective: 1000px;
  min-height: 305px;
}

@media (min-width: 1440px) {
  .flip-card-inner {
    width: 80%;
  }

  .flip-card {
    perspective: 1000px;
    min-height: 330px;
  }

  .flip-card.flipped .flip-card-inner {
    min-height: 330px;
  }
  
}

.flip-card-inner {
  position: relative;
  height: 100%;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

.flip-card.flipped .flip-card-inner {
  transform: rotateY(180deg) ;
  min-height: 305px;
}

.flip-card-front,
.flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border-radius: 18px;
  font-size: 0.95rem;
}

.flip-card-back {
  transform: rotateY(180deg);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.flip-card-back p { 
  overflow-wrap: anywhere;
}

.flipbtn {
  background: none;
  border: 4px solid var(--T-Deep-Blue);
  border-radius: 50%;
  height: 3.5rem;
  width: 3.5rem;
  display: flex;
  transition: border .2s;
}

.flipbtn:hover {
  border-width: 5px;
}

.flip-img {
  min-width: 150px;
}

.tile-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 2rem;
  background: var(--T-White);
  border-radius: 18px 18px 18px 18px;
  box-shadow: 0 6px 24px rgba(0, 0, 0, .06);
  transition: transform .2s, box-shadow .2s;
}

.tile-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .10);
}

.tile-card img.img-fluid {
  max-width: 100px;
  margin-bottom: 1rem;
}

.tile-footer {
  padding-top: 1.6rem;
}

.tile-card .circle {
  border: 2px solid var(--gold);
  justify-content: center;
  align-items: center;
}

.tile-panel {
  background: #F5F8F9;
  padding: 1rem;
  box-shadow: 0 6px 24px rgba(0, 0, 0, .06);
}

.tile-panel ul {
  margin: 0;
  padding-left: 22px;
}

.tile-footer .circle {
  width: 48px;
  height: 48px;
}

.tile-footer .circle img {
  width: 20px;
  height: 20px;
}

/* By the Numbers  */
.close-img {
    max-height: 3rem;
}


/* .main-body {
  margin-left: 7%;
  margin-right: 7%;
} */

.by-the-numbers-h {
  padding-left: var(--left-space);
  padding-right: var(--left-space);
  text-align: center;
  color: var(--T-White);
}

.by-the-numbers-tile {
  background: var(--T-White);
  padding: 1rem;
  margin-bottom: 1.5rem;
  aspect-ratio: 0.7 / 1;
}

.by-the-numbers-row {
  justify-content: center;
}

.by-the-number-tile-number {
  margin-top: 1rem;
}


.by-the-numbers-tile-subhead {
  font-weight: bold;
  font-size: var(--text-size-16)
}

.by-the-numbers-astrix {
  margin-top: 1rem;
  margin-left: 2rem;
  margin-bottom: 6rem;
  color: var(--T-White);
  font-size: 0.75rem;
}


.header {
  margin: 0;
}

.collapse-menu {
  height: 3rem;
}

#bootstrap-overrides .hr-divider hr {
  margin: 3rem 14rem;
}

.grid-container {
  position: relative;
  display: grid;
  background: transparent;
  grid-auto-rows: 100%;
  height: 100%;
  padding-left: var(--left-space);
  padding-right: var(--left-space);
}

.grid-container>div {
  position: relative;
  background: transparent;
  text-align: center;
  display: flex;
  justify-content: center;
}

.from-out-team-hr {
  border-top: 2px solid var(--gold);
}



/* ========== 4) BUTTONS ========== */
#bootstrap-overrides .btn-primary {
  background: var(--honey-100);
  color: var(--T-Deep-Blue);
  font-weight: 700;
  font-size: 1rem;
  padding: .6rem 1.2rem;
  border: 1px solid #E3C9A3;
  border-radius: 8px;
  cursor: pointer;
  box-shadow: 6px 6px 0 var(--T-Honey);
  transition: transform .2s, box-shadow .2s;
}

#bootstrap-overrides .btn-primary:hover {
  transform: translate(-2px, -2px);
  box-shadow: 8px 8px 0 #F1D4A4;
}

#bootstrap-overrides .btn-outline-primary {
  border-radius: 0;
  font-weight: 700;
  padding: 14px 24px;
}

/* ========== 5) CONTENT SECTIONS ========== */
:root {
  --stat-header-lock: 240px;
}

.number {
  font-size: clamp(2.5rem, 4.5vw, 5rem);
  display: inline-block;
  position: relative;
  font-weight: 700;
  line-height: 1;
  z-index: 0;
}

.number::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 0.33em;
  bottom: 0.05em;
  background: var(--blue-100);
  border-radius: 2px;
  z-index: -1;
}

.number-secondary {
  font-size: 4rem;
}

.number-title {
  margin-bottom: 3rem;
}

.number-text {
  min-height: 18rem;
}

.stats-grid {
  padding-left: var(--left-space);
  padding-right: var(--left-space);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}

.stats-grid .stat-header {
  text-align: center;
}

.stats-grid .btn {
  justify-self: center;
}

.stats-grid.tiles .stat-tile {
  display: grid;
  grid-template-rows: minmax(var(--stat-header-lock), auto) 1fr auto;
}

.stats-grid.tiles .stat-header {
  min-height: var(--stat-header-lock);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  text-align: center;
  padding-bottom: 0;
}

.stats-grid.tiles .number-title {
  margin: .5rem 0 1rem;
}

.stats-grid.tiles .number-text {
  margin-top: 0;
}






.three-up-grid>.tile {
  display: flex;
  flex-direction: column;
  height: 100%
}


.stats-grid.tiles {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.5rem;
  align-items: stretch;
  padding-left: var(--left-space);
  padding-right: var(--left-space);
}

.stat-tile {
  background: var(--T-White);
  border-radius: 18px;
  box-shadow: 0 6px 24px rgba(0, 0, 0, .06);
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  transition: transform .2s, box-shadow .2s;
}

.stat-tile:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .10);
}

.stat-tile .stat-header {
  text-align: center;
}

.stat-tile .number-text {
  flex: 1 1 auto;
}

.stat-tile .btn {
  align-self: center;
}

.stats-grid .stat-header,
.numbers-section .stat-header {
  position: relative;
  isolation: isolate;
}

.stats-grid .number,
.numbers-section .number {
  position: relative;
  z-index: 0;
}

.stats-grid .number::after,
.numbers-section .number::after {
  z-index: -1;
  pointer-events: none;
}

.stats-grid.tiles .stat-tile,
.numbers-section .stat-tile {
  overflow: visible;
}

.stats-grid.tiles .stat-tile .stat-header {
  z-index: 1;
}

.tab-container {
  max-width: 75%;
}

#bootstrap-overrides .tab-container .card-header {
  background: #fff;
  padding-left: .6rem;
  border-bottom: none;
}

.tab-content {
  border: 1px solid var(--gold);
}

.tab-content .row {
  margin-top: 1rem;
}

.tab-image img {
  max-height: 20rem;
}

.gold-tab-header {
  color: var(--gold);
  text-transform: uppercase;
  font-size: 1.25rem;
}

#bootstrap-overrides .nav-tabs .nav-link {
  border: 1px solid var(--gold);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

#bootstrap-overrides .carousel-control-prev-icon {
  background-image: url("./images/icons/functional/right-arrow.svg");
  transform: scaleX(-1);
}

#bootstrap-overrides .carousel-control-next-icon {
  background-image: url("./images/icons/functional/right-arrow.svg");
}

#bootstrap-overrides .carousel-control-next,
#bootstrap-overrides .carousel-control-prev {
  width: 5%;
  color: #000;
  opacity: .5;
  top: 4rem;
  bottom: 4rem;
}

#aboutThrivent img {
  object-position: center;
}

.page-intro-text {
  margin: 2rem;
}

.title {
  color: var(--gold);
  text-transform: uppercase;
  font-weight: 700;
  font-size: 1rem;
}

.profile {
  max-height: 16rem;
  max-width: 16rem;
  height: 14rem;
  width: 14rem;
  object-fit: cover;
  object-position: top;
}

.profile-name {
  margin: 1rem 0;
}

.profile-name .gold {
  font-size: 1.25rem;
}

.profile-details {
  min-height: 13rem;
}



.profile-inner {
  padding: 2rem 8rem;
}

.profile-img {
  padding-right: 5rem;
}

.profile-img img {
  max-height: 25rem;
}

.team-title {
  margin-bottom: 3rem;
}

.gold {
  color: var(--gold);
}

.gold-secondary {
  font-size: 2rem;
  color: var(--gold);
  margin-top: 1rem;
}

.footer-bg {
  background: linear-gradient(rgb(241, 212, 164) 6.25rem, rgb(253, 250, 245) 6.25rem);
}

.footer-bar {
  margin-left: -0.75rem;
  height: 6.25rem;
}

.footer-brand {
  font-size: 1.625rem;
  color: #1C4259;
  font-family: "Basis Grt", sans-serif;
}

.footer-container {
  max-width: 90rem;
  width: 100%;
  margin: 0px auto;
  padding-left: 2rem;
  padding-right: 2rem;
}

.footer-column-title {
  font-family: "Basis Grt", sans-serif;
  font-weight: 700;
  line-height: 1.375rem;
  font-size: 1rem;
  margin-bottom: 1rem;
}

.footer-column-item {
  font-family: "Basis Grt", sans-serif;
  font-weight: 400;
  line-height: 1.375rem;
  font-size: 1rem;
  color: rgb(28, 66, 89);
  margin-bottom: 0.75rem;
}

.footer-block-start {
  width: 100%;
  background-color: var(--T-Honey);
  height: 100%;
}

footer hr {
  border-top: 1px solid var(--gold);
}

footer a {
  font-weight: 700;
}

.footer-block .img-fluid {
  height: 6rem;
}

/* ========== 10) MEDIA QUERIES ========== */
@media(min-width:1200px) {
  .container {
    max-width: 1700px;
  }
}

@media(max-width:991px) {
  .number-text {
    min-height: 0;
  }
}


@media(max-width:1000px) {
  #bootstrap-overrides .tab-container {
    max-width: 100%;
  }
}

@media(max-width:800px) {
  .gold-tab-header {
    margin-top: 2rem;
  }
}

@media(max-width:500px) {
  .number-text {
    height: auto;
  }

  .number {
    margin-top: 3rem;
  }
}

@media(min-width:992px) {
  #bootstrap-overrides .modal-lg {
    max-width: 1400px;
  }
}

@media(min-width:576px) {
  .modal-dialog {
    max-width: 750px;
    margin: 1.75rem auto;
  }
}

@media(max-width:500px) {
  #contactUs img {
    object-position: 80% 50%;
  }
}

@media(min-width:500px) {
  #contactUs img {
    object-position: right;
  }
 } /*Critically missing closing brace*/

@media(max-width:1100px) {

  .three-up-grid {
    padding-left: min(5vw, 16px);
    padding-right: min(5vw, 16px);
    gap: 1rem;
    grid-auto-flow: column;
    grid-auto-columns: clamp(300px, 85vw, 520px);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: .5rem;
  }

  .tile-card {
    padding: clamp(1rem, 3.5vw, 1.5rem);
    scroll-snap-align: start;
  }

  .numbers-section {
    padding-left: min(5vw, 16px);
    padding-right: min(5vw, 16px);
  }

  .numbers-section .stats-grid.tiles {
    width: 100%;
    max-width: 100%;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: clamp(280px, 85%, 520px);
    gap: 1rem;
    padding-left: 0;
    padding-right: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scroll-padding-inline: 8px;
    overscroll-behavior-inline: contain;
  }

  .numbers-section .stat-tile {
    scroll-snap-align: start;
    height: auto;
  }
}

@media(max-width:600px) {

  .three-up-grid {
    padding-left: 8px;
    padding-right: 8px;
  }

  .three-up-grid {
    gap: .75rem;
    grid-auto-columns: calc(100vw - 16px);
  }

  .numbers-section .stats-grid.tiles {
    grid-auto-columns: 100%;
    gap: .75rem;
  }
}

@media (max-width: 1200px) {
  :root {
    --stat-header-lock: 220px;
  }
}

@media (max-width: 992px) {
  :root {
    --stat-header-lock: 200px;
  }
}

@media (max-width: 768px) {
  .grid-container {
    grid-template-columns: 1fr;
    padding-left: 0;
    padding-right: 0;
  }

  .hero-overlay-vert {
    position: static;
    width: 100%;
    height: auto;
    padding: 1.5rem;
  }


  :root {
    --stat-header-lock: 180px;
  }
}

@media (max-width: 480px) {
  .hero-text {
    font-size: 1rem;
    width: 90vw;
  }
}

html,
body {
  max-width: 100%;
}


.btn-contact:hover {
  background: #0b5563;
  color: #fff !important;
}

/*=====FLIP CARDS =====*/


.bg-t-blue {
  background: var(--T-Blue-Light-Tint);
}

.bg-t-dark-blue {
  background: var(--T-Deep-Blue);
}

.white-text {
  color: var(--T-White);
}

.bg-t-white {
  background: var(--T-White);
}



.stack-title {
  font-weight: bold !important;
}


.Page-footer-notes {
  font-size: 1rem;
  line-height: 1.33;
}

.three-up-grid .tile {
  width: 80%;
  aspect-ratio: 1 / 1; /* Modern browsers */
  margin: 0 auto;
  display: flex;
  align-items: stretch;
}

.tile-card-content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: auto;
  width: 100%;
}



.tile-card-content img {
  width: 100%;
  height: auto;
  margin-bottom: 1rem;
  display: block;
  bject-fit: contain;
}

.tile-card-content h3,
.tile-card-content p {
  width: 100%;
  font-size: 1.8rem;
}




/*=====END FLIP CARDS =====*/


.team-action-shots .row {
  margin-left: -10px;
  margin-right: -10px;
}
.team-action-shots {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.team-action-shots .row>[class^="col-"],
.team-action-shots .row>[class*=" col-"] {
  padding-left: 1rem;
  padding-right: 1rem;
}

.team-action-shots .col-12.col-md-4 {
  margin-bottom: 15px;
}

.team-action-shots-tile img {
  width: 100%;
  height: auto;

}

/*====Inv Strat Circles===*/
.seek-buyout-circles .circles{
  display: flex;
  flex-wrap: nowrap;
  gap: 2rem;
  justify-content: center;

  margin-left: 150px;
  margin-right: 150px;
}

.circle-icon {
  background: var(--T-Blue-Light-Tint);
  padding: 12%;
  max-width: 60%;
  min-width: 8rem;
}

.circle-label {
  font-size: var(--text-size-16);
  font-weight: 500;
}

/*==INV STRAT SLIDER==*/
.inv-slider{
  display:grid;
}

.inv-slide-card{
  grid-area: 1 / 1;
  width:100%;
  max-width:1000px;
  height:100%;
  margin-left:auto;
  /*margin-right:50px;*/
  background: var(--T-White);
  padding:30px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition: opacity 2s ease;
  overflow-y: auto;

}

@media (max-width: 1200px) {
  .inv-slide-card{
    max-height: 30rem;
  }
  
}

.inv-slide-title {
  font-weight: bold;
}

.inv-slide-text {
  color: var(--T-Blue-Black-Body);
  font-size: var(--text-size-16);
}

.inv-slide-card.active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.inv-slide-dots{
  grid-row:2;
  justify-self:end;
  width:100%;
  max-width:1000px;
  display:flex;
  justify-content:center;
  gap:14px;
  padding: 20px 20px 40px;
}
.inv-slide-dots .dot{ width:14px; height:14px; border-radius:50%; border:0; background:var(--T-Dot); cursor:pointer; }
.inv-slide-dots .dot.active{ background: var(--T-Dot-Active); }

/* mobile tweak */
@media (max-width:576px){
  .inv-slide-card{ margin-right:0; }
  .inv-slide-dots{ margin-right:0; }
}


.orange-text{
}

.slider-container{
    max-height:40rem;
}


/*==Team Tiles INV Strat==*/
.team-action-shots-tile img{
    max-height: 750px; /*Crop images to be the same height*/
    object-fit: cover;
    object-position: top;
}


/*Modals*/
#bootstrap-overrides .modal.and.carousel {
    position: fixed;
}
@media (min-width: 992px) {
    #bootstrap-overrides .modal-lg {
        max-width: 1400px;
    }
}

@media (min-width: 576px) {
    .modal-dialog {
        max-width: 750px;
        margin: 1.75rem auto;
    }
}
/* Modal and Profile Carousel Styles */
#bootstrap-overrides .modal-lg {
    max-width: 1400px;
}
.modal-dialog {
    max-width: 750px;
    margin: 1.75rem auto;
}
.profile-inner {
    padding: 2rem 8rem;
}
@media (max-width: 800px) {
    .profile-inner {
        padding: 1rem 2.5rem;
    }
    .carousel-item .profile-img {
        padding-right: 3rem;
    }
    #bootstrap-overrides .carousel-control-next, .carousel-control-prev {
        width: 10%;
    }
}
.profile-img {
    padding-right: 5rem;
}
.profile-img img {
    max-height: 25rem;
}
.profile-details {
    min-height: 13rem;
    margin-top: 1rem;
    margin-bottom: 2rem;
    margin-left: 3rem;
    margin-right: 3rem;
}
.profile {
    max-height: 16rem;
    max-width: 16rem;
    height: 14rem;
    width: 14rem;
    object-fit: cover;
    object-position: top;
}
.profile-name {
    margin: 1rem 0rem;
}
.profile-title {
  font-size: var(--text-size-18);
}

.profile-inner h2 {
  color: #9bbfc3
}

.profile-inner a {
  color: var(--text-body)
}

#bootstrap-overrides .profile-inner .profile-name-gold {
    color: #c7ab75;
    font-size: 4rem;
}
@media (max-width: 400px) {
    #bootstrap-overrides .profile-inner {
        padding: 2rem 4rem;
    }
    #bootstrap-overrides .profile-inner .profile-name-gold {
        font-size: 3rem;
    }
}
#bootstrap-overrides .carousel-control-prev-icon {
    background-image: url("./images/icons/functional/right-arrow.svg");
    transform: scaleX(-1);
}
#bootstrap-overrides .carousel-control-next-icon {
    background-image: url("./images/icons/functional/right-arrow.svg");
}
#bootstrap-overrides .carousel-control-next, .carousel-control-prev {
    width: 5%;
    color: #000;
    opacity: 50%;
    top: 4rem;
    bottom: 4rem;
}
/*END Modals*/

.slide-pretext {
  margin-bottom: 1rem;
}


/*----Our Team---*/

.long-term-partners{
    background: var(--T-Blue-Light-Tint);
    display: block;
    width: 100%;
    height: 100%;

}

.pe-leadership{
    background: var(--T-Deep-Blue);
}
.pe-leadership h1,
.pe-leadership h2,
.pe-leadership h3,
.pe-leadership h4,
.pe-leadership h5,
.pe-leadership p{
    color: var(--T-White);
}
.pe-leadership h2{
    font-weight: 600;
}

.pi-team{
    background: var(--T-White);
}
.pi-team h1,
.pi-team h2,
.pi-team h3,
.pi-team h4,
.pi-team h5,
.pi-team p{
    color: var(--T-Deep-Blue);
}
.pi-team h2{
    font-weight: 600;
}

.pi-ops-team{
    background: var(--T-Blue-Light-Tint);
}
.pi-ops-team h1,
.pi-ops-team h2,
.pi-ops-team h3,
.pi-ops-team h4,
.pi-ops-team h5,
.pi-ops-team p{
    color: var(--T-Deep-Blue);
}
.pi-ops-team h2{
    font-weight: 600;
}

.team-img h3,
.team-img p{
      margin-bottom: 0vw;
      margin-top: -0.25vw;
}
.team-img img{
      margin-bottom: 2vw !important;
      margin-top: 3vw !important;
      aspect-ratio: 1 / 1 !important;
      max-width: 345px !important;
      min-width: 10rem !important;
      width: 14vw !important;
      object-fit: cover !important;
      object-position: center;
      outline: 2px solid var(--T-Blue) !important;
      border-radius: 50% !important;
}
.team-img p{
}
.team-img h3{
    text-align: center !important;
    font-weight: 600 !important;
}
/*Headshot by headshot tweaks*/
.matt-i-head{
    object-position: 10% 10% !important;
}
.matt-f-head{
    object-position: 20% 20% !important;
}
.ben-head{
    object-position: 20% 20% !important;
}
.jen-v-head{
    object-position: 20% 20% !important;
}
.jen-w-head{
    object-position: 20% 20% !important;
}
.brad-head{
    object-position: 20% 20% !important;
}
.josh-head{
    object-position: 10% 10% !important;
}
.joe-head{
    object-position: 10% 10% !important;
}

.square-embed {
  aspect-ratio: 1.2 / 1;
  width: 100%;
}
.square-embed > iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

/* Latest from our team */

@media (min-width: 1000px) {
  /* Passes through: (1287px → 348px) and (1917px → 447px) */
  .news-card {
    width: clamp(300px, calc(15.7143vw + 145.76px), 447px);
  }
}

.news-title {
  line-height: 1.2;
  min-height: calc(4 * 1.2em);
  margin-bottom: 0;
}