.facis-about-deliverables {
	--facis-rules-bg: #eef1ff;
	--facis-rules-border: #8795ff;
	--facis-rules-text: #0f1598;
	--facis-tools-bg: #f2efff;
	--facis-tools-border: #a692ff;
	--facis-tools-text: #4b36b8;
	--facis-examples-bg: #fbeeff;
	--facis-examples-border: #d48cff;
	--facis-examples-text: #941fc6;
	--facis-blue: #0f1598;
	color: #15183f;
}

.facis-about-deliverables__desktop {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 1.15fr) minmax(0, 1fr);
	gap: 22px;
	align-items: center;
}

.facis-about-deliverables__right {
	display: grid;
	gap: 22px;
}

.facis-about-deliverables__group {
	border: 1px solid rgba(50,55,100,.08);
	border-radius: 22px;
	padding: 18px;
	background: #fafafa;
}

.facis-about-deliverables__group--rules { background: linear-gradient(180deg, #fafbff, #f1f3ff); }
.facis-about-deliverables__group--tools { background: linear-gradient(180deg, #fbfaff, #f3f0ff); }
.facis-about-deliverables__group--examples { background: linear-gradient(180deg, #fffaff, #fcefff); }

.facis-about-deliverables__group-head h3 {
	margin: 0;
	font-size: 22px;
	line-height: 1.2;
}

.facis-about-deliverables__group-head p {
	margin: 3px 0 0;
	font-size: 13px;
	color: #6a6e7f;
}

.facis-about-deliverables__group-items {
	display: grid;
	gap: 10px;
	margin-top: 13px;
}

.facis-about-deliverables__item {
	width: 100%;
	border: 1px solid;
	border-radius: 14px;
	padding: 13px 14px;
	text-align: left;
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	transition: transform .18s ease, box-shadow .18s ease;
	outline: none;
}

.facis-about-deliverables__item:hover,
.facis-about-deliverables__item:focus-visible {
	transform: translateY(-2px);
	box-shadow: 0 8px 18px rgba(17,22,66,.08);
}

.facis-about-deliverables__item:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.facis-about-deliverables__item[data-group="rules"] { background: var(--facis-rules-bg); border-color: var(--facis-rules-border); color: var(--facis-rules-text); }
.facis-about-deliverables__item[data-group="tools"] { background: var(--facis-tools-bg); border-color: var(--facis-tools-border); color: var(--facis-tools-text); }
.facis-about-deliverables__item[data-group="examples"] { background: var(--facis-examples-bg); border-color: var(--facis-examples-border); color: var(--facis-examples-text); }

.facis-about-deliverables__item-icon {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: rgba(255,255,255,.62);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
}

.facis-about-deliverables__item-copy { min-width: 0; }
.facis-about-deliverables__item-copy strong { display: block; font-size: 15px; line-height: 1.25; }
.facis-about-deliverables__item-copy small { display: block; margin-top: 2px; font-size: 12px; line-height: 1.3; color: currentColor; opacity: .86; }
.facis-about-deliverables__item-arrow { font-size: 24px; line-height: 1; }

.facis-about-deliverables__hub {
	min-height: 390px;
	position: relative;
	display: grid;
	place-items: center;
}

.facis-about-deliverables__hub-lines,
.facis-about-deliverables__hub-lines::before,
.facis-about-deliverables__hub-lines::after {
	position: absolute;
	content: "";
	left: 5%;
	right: 5%;
	top: 50%;
	height: 1px;
	background: repeating-linear-gradient(90deg, #8d74ff 0 7px, transparent 7px 14px);
}

.facis-about-deliverables__hub-lines::before { left: 0; right: 0; top: 0; transform: rotate(60deg); }
.facis-about-deliverables__hub-lines::after { left: 0; right: 0; top: 0; transform: rotate(-60deg); }

.facis-about-deliverables__hub-circle {
	position: relative;
	z-index: 2;
	width: 220px;
	height: 220px;
	border: 2px solid #c8b9ff;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 16px 40px rgba(70,48,180,.12);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 24px;
}

.facis-about-deliverables__hub-circle img { max-width: 115px; max-height: 55px; object-fit: contain; margin: 0 auto; }
.facis-about-deliverables__hub-logo { font-size: 44px; font-weight: 900; letter-spacing: -4px; background: linear-gradient(90deg,#2116c9,#bc00ff,#4153ff); -webkit-background-clip: text; background-clip: text; color: transparent; }
.facis-about-deliverables__hub-circle p { margin: 8px 0 0; font-size: 14px; line-height: 1.35; color: #25294f; }

.facis-about-deliverables__mobile { display: none; }

.facis-about-deliverables__modal {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 22px;
}

.facis-about-deliverables__modal.is-open { display: flex; }
.facis-about-deliverables__modal-backdrop { position: absolute; inset: 0; background: rgba(5,8,45,.58); backdrop-filter: blur(5px); }

.facis-about-deliverables__modal-dialog {
	position: relative;
	z-index: 2;
	width: min(700px, 100%);
	max-height: min(82vh, 760px);
	overflow: auto;
	border: 1px solid #e5e6f2;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 24px 80px rgba(0,0,0,.28);
	padding: 31px;
}

.facis-about-deliverables__modal-close {
	position: absolute;
	right: 17px;
	top: 12px;
	width: 34px;
	height: 34px;
	display: grid;
	place-items: center;
	color: #505671;
	font-size: 31px;
	line-height: 1;
	cursor: pointer;
	border-radius: 50%;
	outline: none;
}

.facis-about-deliverables__modal-close:focus-visible { outline: 2px solid #0f1598; outline-offset: 2px; }
.facis-about-deliverables__modal-title { margin: 0 45px 12px 0; font-size: 28px; line-height: 1.2; }
.facis-about-deliverables__modal-content { font-size: 15px; line-height: 1.65; color: #505671; }
.facis-about-deliverables__modal-content > :first-child { margin-top: 0; }
.facis-about-deliverables__modal-content > :last-child { margin-bottom: 0; }

.facis-about-deliverables__modal-button,
.facis-about-deliverables__modal-button:visited {
	display: inline-flex;
	align-items: center;
	margin-top: 22px;
	border: 0;
	border-radius: 999px;
	background: var(--facis-blue);
	color: #fff;
	padding: 12px 18px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
}

.facis-about-deliverables__modal-button:hover,
.facis-about-deliverables__modal-button:focus-visible { color: #fff; text-decoration: none; }

.facis-about-deliverables__modal-button.is-hidden,
.facis-about-deliverables__modal-button[hidden] {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
}

html.facis-deliverables-modal-open { overflow: hidden; }

@media (max-width: 1024px) {
	.facis-about-deliverables__desktop { grid-template-columns: minmax(0, 1fr) minmax(220px, .9fr) minmax(0, 1fr); gap: 14px; }
	.facis-about-deliverables__hub-circle { width: 185px; height: 185px; }
	.facis-about-deliverables__hub { min-height: 340px; }
}

@media (max-width: 767px) {
	.facis-about-deliverables__desktop { display: none; }
	.facis-about-deliverables__mobile { display: grid; gap: 8px; }
	.facis-about-deliverables__accordion { border: 1px solid; border-radius: 13px; overflow: hidden; }
	.facis-about-deliverables__accordion--rules { background: var(--facis-rules-bg); border-color: var(--facis-rules-border); color: var(--facis-rules-text); }
	.facis-about-deliverables__accordion--tools { background: var(--facis-tools-bg); border-color: var(--facis-tools-border); color: var(--facis-tools-text); }
	.facis-about-deliverables__accordion--examples { background: var(--facis-examples-bg); border-color: var(--facis-examples-border); color: var(--facis-examples-text); }

	.facis-about-deliverables__accordion-toggle {
		width: 100%;
		padding: 13px 14px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		text-align: left;
		cursor: pointer;
		outline: none;
	}

	.facis-about-deliverables__accordion-toggle:focus-visible { outline: 2px solid currentColor; outline-offset: -3px; }
	.facis-about-deliverables__accordion-toggle > span:first-child { display: flex; align-items: baseline; gap: 12px; min-width: 0; }
	.facis-about-deliverables__accordion-toggle strong { font-size: 14px; }
	.facis-about-deliverables__accordion-toggle small { font-size: 11px; opacity: .78; }
	.facis-about-deliverables__accordion-toggle > span:last-child { font-size: 20px; transition: transform .2s ease; }
	.facis-about-deliverables__accordion.is-open .facis-about-deliverables__accordion-toggle > span:last-child { transform: rotate(180deg); }
	.facis-about-deliverables__accordion-body { display: none; padding: 0 10px 10px; }
	.facis-about-deliverables__accordion.is-open .facis-about-deliverables__accordion-body { display: grid; gap: 8px; }
	.facis-about-deliverables__accordion .facis-about-deliverables__item { background: rgba(255,255,255,.62); }
	.facis-about-deliverables__modal { padding: 14px; }
	.facis-about-deliverables__modal-dialog { padding: 25px 20px; border-radius: 17px; }
	.facis-about-deliverables__modal-title { font-size: 23px; }
}
