.ai-architecture {
	width: min(1240px, calc(100% - 48px));
	margin: 80px auto 0;
}

.ai-architecture__heading {
	max-width: 700px;
	margin: 0 auto 30px;
	text-align: center;
}

.ai-architecture__eyebrow {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin: 0 0 16px;
	color: #1769e8;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
}

.ai-architecture__eyebrow::before,
.ai-architecture__eyebrow::after {
	width: 30px;
	height: 1px;
	background: #79aaff;
	content: "";
}

.ai-architecture__heading h2 {
	margin: 0;
	color: #0d315c;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: 0;
}

.ai-architecture__heading h2 span + span::before {
	content: " ";
}

.ai-architecture__heading > p:not(.ai-architecture__eyebrow) {
	margin: 14px 0 0;
	color: #536b85;
	font-size: 15px;
	line-height: 1.8;
}

.ai-architecture__viewport {
	overflow: hidden;
	width: 100%;
	background: #fff;
	border: 1px solid #d8e5f5;
	border-radius: 10px;
	box-shadow: 0 10px 28px rgba(15, 48, 91, 0.06);
}

.ai-architecture__viewport:focus-visible {
	outline: 2px solid #1769e8;
	outline-offset: 3px;
}

.ai-architecture__viewport img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
}

.ai-architecture__notes {
  margin: 12px auto 0;
  max-width: 1120px;
}

.ai-architecture__notes p {
  margin: 0;
  color: #6b7f93;
  font-size: 12px;
  line-height: 1.7;
  text-align: left;
}

.ai-architecture__notes p + p {
  margin-top: 2px;
}

.ai-architecture__call-note strong {
  color: #1769e8;
}

@media (max-width: 767px) {
  .ai-architecture__notes {
    margin-top: 8px;
    padding-inline: 4px;
  }

  .ai-architecture__notes p {
    font-size: 11px;
    text-align: left;
  }

}

@media (max-width: 768px) {
	.ai-architecture {
		width: calc(100% - 32px);
		margin-top: 56px;
	}

	.ai-architecture__heading {
		margin-bottom: 24px;
	}

	.ai-architecture__eyebrow {
		gap: 10px;
		margin-bottom: 14px;
		font-size: 12px;
	}

	.ai-architecture__eyebrow::before,
	.ai-architecture__eyebrow::after {
		width: 24px;
	}

	.ai-architecture__heading h2 {
		font-size: 22px;
		line-height: 1.5;
	}

	.ai-architecture__heading h2 span {
		display: block;
	}

	.ai-architecture__heading h2 span + span::before {
		content: none;
	}

	.ai-architecture__heading > p:not(.ai-architecture__eyebrow) {
		margin-top: 14px;
		font-size: 14px;
		line-height: 1.8;
	}

	.ai-architecture__viewport {
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-inline: contain;
		scrollbar-color: #9bbce8 #edf4fc;
		scrollbar-width: thin;
	}

	.ai-architecture__viewport img {
		width: 900px;
		max-width: none;
	}
}

@media (max-width: 390px) {
	.ai-architecture {
		width: calc(100% - 24px);
	}
}
