/**
 * Base layout for Team Members widget.
 * Theme styles for .team-info-section can override these.
 */

 .team-info-section {
	margin-top: 6.25rem;
	margin-bottom: 0;
	padding: 0 9rem;
  }
  .team-info-section .container {
	max-width: 1440px;
	margin: 0 auto;
  }
  .team-info-section .row {
	display: flex;
	align-items: center;
	margin-bottom: 150px;
  }
  .team-info-section .row:nth-child(even) {
	flex-direction: row-reverse;
  }
  .team-info-section .img-col {
	position: relative;
	width: 50%;
  }
  
  .team-info-section .img-col img {
	border-radius: 200px 200px 200px 0;
	display: inline-block;
	vertical-align: middle;
	height: auto;
	max-width: 100%;
  }
  
  .team-info-section .content-col {
	width: 50%;
	padding-left: 6rem;
  }
  .team-info-section .row:nth-child(even) .content-col {
	padding-left: 0;
	padding-right: 6rem;
  }
  .team-info-section .content-col h2 {
	color: var(--e-global-color-6cb72e5);
	font-family: "Adril Display", Sans-serif;
	font-size: 3.375rem;
	font-weight: 400;
	line-height: 1.1em;
	margin-bottom: 20px;
  }
  
  .team-info-section .content-col h3 {
	font-family: "Adril Display", Sans-serif;
	color: var(--e-global-color-6cb72e5);
	font-size: 2rem;
	font-weight: 400;
	line-height: 1;
	margin-bottom: 20px;
  }
  
  .team-info-section .content-col p {
	font-size: 1.25rem;
	color: var(--e-global-color-secondary);
	font-weight: 400;
	line-height: 1.5;
	font-family: var(--e-global-typography-text-font-family);
	margin-bottom: 10px;
  }
  .team-info-section .content-col p:last-child {
	margin-bottom: 0px;
  }
  
  .team-info-section .btn-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
	margin-top: 30px;
  }
  
  .team-info-section .btn {
	background-color: var(--e-global-color-6cb72e5);
	font-family: "Moskau Grotesk", Sans-serif;
	font-size: 1rem;
	font-weight: 400;
	color: #fff;
	border-radius: 0 0 0 0;
	padding: 15px 40px;
	line-height: 1;
	text-align: center;
	transition: all 0.3s;
  }
  .team-info-section .btn:hover {
	background-color: var(--e-global-color-d5db4a4);
	color: var(--e-global-color-6812882);
	transform: translateY(-8px);
  }
  .team-info-section .elementor-icon {
	color: var(--e-global-color-6812882);
	border-color: var(--e-global-color-6812882);
	margin: 0 0 1rem 1.5rem;
	position: absolute;
	bottom: 0;
	left: 0;
  }
  
  .team-info-section .elementor-icon:hover {
	color: #b8b8b8;
	border-color: #b8b8b8;
  }
  .team-info-section .elementor-icon i {
	display: block;
	height: 0.9em;
	position: relative;
	width: 0.9em;
	--fa: "\f0e1";
	--fa-family: var(--fa-family-brands);
	--fa-style: 400;
  }
  
  .team-info-section .elementor-icon i::before {
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	content: var(--fa) / "";
  }
  
  @media (min-width: 1920px) {
	.team-info-section .container {
	  max-width: calc(1440vw / 19.2);
	}
  }
  
  @media (max-width: 1024px) {
	.team-info-section {
	  margin: 0;
	  padding: 0;
	}
	.team-info-section .row,
	.team-info-section .row:nth-child(even) {
	  flex-direction: column;
	  margin-top: 2rem;
	  margin-bottom: 2rem;
	  padding: 2.25rem;
	}
	.team-info-section .img-col {
	  width: 100%;
	  margin-bottom: 20px;
	}
	.team-info-section .content-col,
	.team-info-section .row:nth-child(even) .content-col {
	  width: 100%;
	  padding-left: 0;
	  padding-right: 0;
	  padding-top: 3rem;
	}
  }
  
  @media (max-width: 768px) {
	.team-info-section .row,
	.team-info-section .row:nth-child(even) {
	  margin-top: 2rem;
	  margin-bottom: 2rem;
	  padding: 2rem;
	}
  
	.team-info-section .content-col h2 {
	  font-size: 2.5rem;
	}
	.team-info-section .content-col h3 {
	  font-size: 1.5rem;
	  line-height: 1.2em;
	}
	.team-info-section .content-col p {
	  font-size: 1rem;
	}
	.team-info-section .content-col,
	.team-info-section .row:nth-child(even) .content-col {
	  padding: 1rem 0 0;
	}
	.team-info-section .img-col img {
	  border-radius: 70px 70px 70px 0;
	}
  }

/* Hidden until Elementor-style fadeInUp is applied in JS */
.team-info-section--fade-up .elementor-invisible {
	visibility: hidden;
	opacity: 0;
}

/* Prevent delayed buttons from flashing before fadeInUp starts */
.team-info-section--fade-up .animated {
	animation-fill-mode: both;
}

/* Keep animated buttons in normal flow like Elementor auto-width widgets */
.team-info-section--fade-up .btn.animated,
.team-info-section--fade-up .btn.elementor-invisible {
	display: inline-block;
}

@media (prefers-reduced-motion: reduce) {
	.team-info-section--fade-up .elementor-invisible {
		visibility: visible;
		opacity: 1;
	}

	.team-info-section--fade-up .animated {
		animation: none !important;
	}
}
