.panel--tabbed-content {
	position: relative;
	background-color: #FFF;
	background-image: url("../../images/background-tile-light.png");
	background-repeat: repeat;

	&.bg_white {
		background-color: #FFF;
		background-image: url("../../images/background-tile-light.png");
	}

	.tabbed-content__eyebrow {
		padding: 10px 20px;
		position: absolute;
		width: fit-content;
		left: 0;
		top: 40px;
		background: var(--tabbed-content-eyebrow-background);
		font-weight: 700;
		font-size: 17px;
		letter-spacing: 0.05em;
		text-transform: uppercase;
		color: #FFF;
	}

	.tabbed-content__inner {
		display: flex;
		flex-direction: column;
		gap: 2rem;
		padding-block: 100px;

		.tabbed-content__intro {
			font-family: var(--research-font-aleo);
			font-size: 30px;
			font-weight: 400;
			line-height: 45px;
			color: #AE2F54;
		}
	}

	.tabbed-content__interface {
		display: flex;
		align-items: center;
		gap: 50px;
		min-width: 0;

		.tabbed-content__group-title {
			flex: 1 1 40%;
			font-size: 17px;
			font-weight: 700;
			color: #002467;
			letter-spacing: 0.05em;
			text-transform: uppercase;
		}

		.tabbed-content__tabs {
			position: relative;
			display: flex;
			min-width: 0;
			padding-left: 20px;

			&::before {
				content: "";
				position: absolute;
				left: 0;
				top: 0;
				height: 100%;
				width: 2px;
				background-color: #F08B1E;
			}

			&::after {
				content: "";
				width: 50px;
				height: 2px;
				background-color: #F08B1E;
				position: absolute;
				left: -50px;
				top: 50%;
				transform: translateY(-50%);
			}
		}

		.tabbed-content__tab-list {
			flex: 0 1 30%;
			display: flex;
			flex-direction: column;
			gap: 3px;
		}

		.tabbed-content__tab-button {
			display: flex;
			text-align: start;
			align-items: center;
			padding-inline: 20px;
			width: 100%;
			cursor: pointer;
			text-transform: uppercase;
			color: #002467;
			font-size: 17px;
			font-weight: 700;
			letter-spacing: 0.05em;
			border: none;
			background-color: #E7E6E6;
			flex: 1;
			transition: background-color 150ms ease, color 150ms ease;

			&:not([aria-selected="true"]):hover {
				background-color: #8CC8E8;
			}

			&:focus-visible {
				position: relative;
				z-index: 1;
				outline: 3px solid #F08B1E;
				outline-offset: -3px;
			}
		}

		.tabbed-content__tab-button[aria-selected="true"] {
			background-color: #002467;
			color: #FFF;
		}

		.tabbed-content__panels,
		.tabbed-content__panel {
			width: 100%;
			min-width: 0;
		}

		.tabbed-content__panel {
			padding: 20px 50px;
			background-color: #002467;
			
			h2 {
				font-size: 30px;
				font-family: var(--research-font-aleo);
				color: #F08B1E;
				font-weight: 400;
				line-height: 45px;

				@media (max-width: 900px) {
					font-size: 22px;
					line-height: 30px;
				}
			}

			p {
				font-size: 18px;
				font-weight: 300;
				line-height: 32px;
				color: #FFF;
			}
		}

		.tabbed-content__panel[hidden] {
			display: none;
		}

		@media (max-width: 900px) {
			flex-direction: column;
			align-items: stretch;
			gap: 20px;

			.tabbed-content__tabs {
				width: 100%;
				min-width: 0;
				padding-left: 0;
				flex-direction: column;

				&::before, &::after {
					display: none;
				}

				.tabbed-content__tab-list {
					width: 100%;
					min-width: 0;
					flex-direction: column;

					.tabbed-content__tab-button {
						width: 100%;
						min-width: 0;
						padding-block: 12px;
					}
				}

				.tabbed-content__panel {
					box-sizing: border-box;
				}
			}
		}
	}


	.tabbed-content__cta-container {
		display: flex;
		justify-content: end;
	}

	.tabbed-content__cta {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;

    .tabbed-content__cta-icon {
      display: inline-flex;
      flex: 0 0 auto;

      svg {
        display: block;
        width: 100%;
        height: 100%;
      }
    }

    .tabbed-content__cta-label {
      font-size: 17px;
      text-transform: uppercase;
      text-decoration: none;
    }

    &:hover .tabbed-content__cta-label {
      text-decoration: underline;
    }

    &.cta_orange svg, &.cta_orange .tabbed-content__cta-label {
      color: #F08B1E;
    }

    &.cta_white svg, &.cta_white .tabbed-content__cta-label {
      color: #FFF;
    }

    &.cta_blue svg, &.cta_blue .tabbed-content__cta-label {
      color: #002467;
    }
  }

	&.show-divider {
    .tabbed-content__inner {
      border-bottom: 1px solid #F08B1E;
			padding-bottom: 50px;
    }
  }
}
