/*
 * SORA intranet: the one stylesheet.
 *
 * Built on the SORA Partners design system tokens (--sora-*). Phone first:
 * the 390px layout is the base, wider screens add to it. The header switches
 * to the desktop bar at 1100px.
 *
 * One page frame for everything: content up to 1440px wide with a 16, 24 or
 * 48px side gutter (--sora-frame), shared by the header, the charcoal title
 * band, the page content and the footer. See "THE PAGE FRAME" below.
 *
 * Sections: tokens, base, header, drawer, quick links, footer, search page,
 * SORA plugin screens, BetterDocs, Gravity Forms, Avada wrappers, page
 * blocks, Home, knowledgebase, site wide, page text.
 */

/* ------------------------------------------------------------------ tokens */
:root {
	--sora-charcoal: #2c2c2a;
	--sora-orange: #f08a04;
	--sora-orange-bright: #f5921e;
	--sora-teal: #1b9aaa;
	--sora-neutral-2: #f5f5f5;
	--sora-neutral-5: #ededed;
	--sora-neutral-10: #dadadb;
	--sora-neutral-15: #c8c8c9;
	--sora-neutral-150: #6c6d6f;
	--sora-neutral-300: #47484b;
	--sora-line-dark: #3a3a38;

	--sora-bg-page: #ffffff;
	--sora-bg-elev: #f5f5f5;
	--sora-fg1: #2c2c2a;
	--sora-fg2: #47484b;
	--sora-fg3: #6c6d6f;
	--sora-fg-inverse: #ffffff;
	--sora-fg-inverse-2: #c8c8c9;
	--sora-accent-hover: #d87c04;
	--sora-accent-press: #c06e03;
	--sora-hairline: #dadadb;

	--sora-font-display: "Poppins", "Helvetica Neue", Arial, sans-serif;
	--sora-font-body: "Open Sans", "Helvetica Neue", Arial, sans-serif;
	--sora-radius-input: 2px;
	--sora-radius-pill: 999px;
	--sora-tap-min: 44px;
	--sora-focus-ring: 3px solid var(--sora-orange);

	/* Spacing scale, 8px base. */
	--sora-s1: 8px;
	--sora-s2: 16px;
	--sora-s3: 24px;
	--sora-s4: 32px;
	--sora-s6: 48px;
	--sora-s8: 64px;

	/*
	 * The page frame: content up to 1440px wide, centered, with a 16px side
	 * gutter on phones, 24px on tablets and 48px on desktop. --sora-frame is
	 * the side padding that puts content in that frame; it is used on
	 * elements that span the full window width, so the header, the title
	 * band, the content and the footer all share one left edge.
	 */
	--sora-max: 1440px;
	--sora-gutter: 16px;
	--sora-frame: max(var(--sora-gutter), calc((100% - var(--sora-max)) / 2));
}

@media (min-width: 768px) {
	:root {
		--sora-gutter: 24px;
	}
}

@media (min-width: 1100px) {
	:root {
		--sora-gutter: 48px;
	}
}

/* -------------------------------------------------------------------- base */
body.sora-intranet {
	background: var(--sora-bg-page);
	color: var(--sora-fg1);
	font-family: var(--sora-font-body);
	font-size: 16px;
	line-height: 1.5;
}

.sora-intranet :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: var(--sora-focus-ring);
	outline-offset: 2px;
	box-shadow: none;
}

.sora-intranet .screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.sora-ico {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	flex-shrink: 0;
}

.sora-ico--sm {
	width: 16px;
	height: 16px;
}

.sora-eyebrow {
	margin: 0 0 8px;
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 12px;
	line-height: 1.2;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--sora-fg3);
}

/* A white search field with a leading icon. Avada's form styles are reset here. */
.sora-field {
	display: flex;
	align-items: center;
	gap: 10px;
	height: 48px;
	padding: 0 14px;
	background: #ffffff;
	border-radius: var(--sora-radius-input);
	color: var(--sora-fg3);
	box-sizing: border-box;
	margin: 0;
}

.sora-field:focus-within {
	outline: var(--sora-focus-ring);
	outline-offset: 2px;
}

.sora-intranet .sora-field input[type="search"],
.sora-intranet .sora-hd__search input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	height: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--sora-fg1);
	font-family: var(--sora-font-body);
	font-size: 16px;
	line-height: 1.4;
	-webkit-appearance: none;
	appearance: none;
}

.sora-intranet .sora-field input[type="search"]:focus,
.sora-intranet .sora-hd__search input[type="search"]:focus {
	outline: none;
	border: 0;
	box-shadow: none;
}

.sora-intranet .sora-field input::placeholder,
.sora-intranet .sora-hd__search input::placeholder {
	color: var(--sora-fg3);
	opacity: 1;
}

.sora-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: var(--sora-tap-min);
	padding: 0 20px;
	border: 0;
	border-radius: 0;
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 15px;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
}

/* Charcoal on orange: white on this orange is below 4.5:1. */
.sora-btn--primary {
	background: var(--sora-orange);
	color: var(--sora-charcoal);
}

.sora-btn--primary:hover {
	background: var(--sora-accent-hover);
	color: var(--sora-charcoal);
}

.sora-btn--primary:active {
	background: var(--sora-accent-press);
	transform: translateY(1px);
}

.sora-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: var(--sora-tap-min);
	padding: 0 14px;
	border: 1px solid var(--sora-hairline);
	border-radius: var(--sora-radius-pill);
	color: var(--sora-fg1);
	font-weight: 600;
	font-size: 14px;
	text-decoration: none;
	box-sizing: border-box;
}

.sora-chip:hover {
	border-color: var(--sora-fg1);
	color: var(--sora-fg1);
}

.sora-chip__n {
	color: var(--sora-fg3);
	font-weight: 400;
}

/* ------------------------------------------------------------------ header */
.sora-hd {
	position: relative;
	z-index: 1000;
	background: var(--sora-charcoal);
	color: var(--sora-fg-inverse);
	font-family: var(--sora-font-body);
}

.sora-hd__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	height: 64px;
	padding: 0 calc(var(--sora-gutter) - 8px) 0 var(--sora-gutter);
	box-sizing: border-box;
}

.sora-hd__brand {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: var(--sora-tap-min);
	color: var(--sora-fg-inverse);
	text-decoration: none;
	flex-shrink: 0;
}

.sora-hd__logo {
	display: block;
	width: auto;
	height: 30px;
}

.sora-hd__tag {
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--sora-fg-inverse-2);
}

.sora-hd__nav,
.sora-hd__search {
	display: none;
}

.sora-hd__btns {
	display: flex;
	gap: 4px;
}

.sora-intranet .sora-hd__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--sora-fg-inverse);
	cursor: pointer;
	box-shadow: none;
}

.sora-intranet .sora-hd__icon:hover {
	color: var(--sora-orange-bright);
	background: transparent;
}

@media (min-width: 1100px) {
	.sora-hd__bar {
		justify-content: flex-start;
		gap: 32px;
		height: 76px;
		padding: 0 var(--sora-frame);
	}

	.sora-hd__logo {
		height: 36px;
	}

	.sora-hd__btns {
		display: none;
	}

	.sora-hd__nav {
		display: block;
		flex: 1 1 auto;
		min-width: 0;
	}

	.sora-hd__menu {
		display: flex;
		gap: 4px;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.sora-hd__li {
		position: relative;
		margin: 0;
	}

	.sora-intranet .sora-hd__top {
		display: flex;
		align-items: center;
		gap: 6px;
		min-height: var(--sora-tap-min);
		margin: 0;
		padding: 0 12px;
		border: 0;
		border-top: 3px solid transparent;
		border-bottom: 3px solid transparent;
		border-radius: 0;
		background: transparent;
		color: var(--sora-fg-inverse);
		font-family: var(--sora-font-body);
		font-weight: 600;
		font-size: 15px;
		line-height: 1.2;
		text-decoration: none;
		white-space: nowrap;
		cursor: pointer;
		box-sizing: border-box;
		box-shadow: none;
	}

	.sora-intranet .sora-hd__top:hover {
		color: var(--sora-fg-inverse);
		border-bottom-color: var(--sora-neutral-150);
	}

	.sora-intranet .sora-hd__li.is-current > .sora-hd__top {
		border-bottom-color: var(--sora-orange);
	}

	.sora-hd__top[aria-expanded="true"] .sora-ico {
		transform: rotate(180deg);
	}

	.sora-hd__dd {
		position: absolute;
		top: calc(100% + 16px);
		left: 0;
		z-index: 10;
		min-width: 260px;
		margin: 0;
		padding: 8px 0;
		list-style: none;
		background: #ffffff;
		border-top: 4px solid var(--sora-orange);
		box-shadow: 0 8px 24px rgba(44, 44, 42, 0.18);
	}

	.sora-hd__dd[hidden] {
		display: none;
	}

	.sora-hd__li:last-child .sora-hd__dd--portals {
		left: auto;
		right: 0;
	}

	.sora-hd__dd li {
		margin: 0;
	}

	.sora-intranet .sora-hd__dd-a {
		display: flex;
		align-items: center;
		min-height: var(--sora-tap-min);
		padding: 0 20px;
		color: var(--sora-fg1);
		font-weight: 600;
		font-size: 15px;
		line-height: 1.3;
		text-decoration: none;
	}

	.sora-intranet .sora-hd__dd-a:hover {
		background: var(--sora-bg-elev);
		color: var(--sora-fg1);
	}

	.sora-intranet .sora-hd__dd-a[aria-current="page"] {
		box-shadow: inset 4px 0 0 var(--sora-orange);
	}

	.sora-hd__search {
		display: flex;
		align-items: center;
		gap: 8px;
		flex: 0 1 260px;
		min-width: 160px;
		height: 44px;
		margin: 0;
		padding: 0 12px;
		background: #ffffff;
		border-radius: var(--sora-radius-input);
		color: var(--sora-fg3);
		box-sizing: border-box;
	}

	.sora-hd__search:focus-within {
		outline: var(--sora-focus-ring);
		outline-offset: 2px;
	}

	.sora-hd__search .sora-ico {
		width: 16px;
		height: 16px;
	}

	.sora-intranet .sora-hd__search input[type="search"] {
		font-size: 15px;
	}
}

/* ------------------------------------------------------------------ drawer */
.sora-dr {
	position: fixed;
	inset: 0;
	z-index: 100001;
	display: flex;
	flex-direction: column;
	background: var(--sora-charcoal);
	color: var(--sora-fg-inverse);
	overflow: hidden;
}

.sora-dr[hidden] {
	display: none;
}

.admin-bar .sora-dr {
	top: 46px;
}

@media (min-width: 783px) {
	.admin-bar .sora-dr {
		top: 32px;
	}
}

html.sora-dr-open,
html.sora-dr-open body {
	overflow: hidden;
}

.sora-dr__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 64px;
	padding: 0 8px 0 16px;
	border-bottom: 1px solid var(--sora-line-dark);
	flex-shrink: 0;
}

.sora-dr__body {
	flex: 1 1 auto;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 24px;
}

.sora-dr__search {
	padding: 16px;
}

.sora-dr__menu,
.sora-dr__sub,
.sora-dr__portals {
	margin: 0;
	padding: 0;
	list-style: none;
}

.sora-dr__menu {
	padding: 0 16px;
}

.sora-dr__menu > li,
.sora-dr__sub > li,
.sora-dr__portals > li {
	margin: 0;
}

.sora-intranet .sora-dr__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	min-height: 52px;
	margin: 0;
	padding: 0;
	border: 0;
	border-bottom: 1px solid var(--sora-line-dark);
	border-radius: 0;
	background: transparent;
	color: var(--sora-fg-inverse);
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 18px;
	line-height: 1.2;
	text-align: left;
	text-decoration: none;
	cursor: pointer;
	box-shadow: none;
}

.sora-intranet .sora-dr__top:hover,
.sora-intranet .sora-dr__top[aria-expanded="true"],
.sora-intranet .sora-dr__li.is-current > a.sora-dr__top {
	color: var(--sora-orange-bright);
	background: transparent;
}

.sora-dr__top[aria-expanded="true"] .sora-ico {
	transform: rotate(180deg);
}

.sora-dr__sub {
	padding: 4px 0 8px 16px;
	border-bottom: 1px solid var(--sora-line-dark);
}

.sora-dr__sub[hidden] {
	display: none;
}

.sora-intranet .sora-dr__a {
	display: flex;
	align-items: center;
	min-height: var(--sora-tap-min);
	color: var(--sora-fg-inverse);
	font-size: 15px;
	line-height: 1.3;
	text-decoration: none;
}

.sora-intranet .sora-dr__a:hover {
	color: var(--sora-orange-bright);
}

.sora-intranet .sora-dr__a[aria-current="page"] {
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: var(--sora-orange);
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

.sora-dr__group {
	padding: 24px 16px 0;
}

.sora-dr .sora-eyebrow {
	color: var(--sora-fg-inverse-2);
}

.sora-dr__portals {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.sora-intranet .sora-dr__portal {
	display: flex;
	align-items: center;
	min-height: 52px;
	padding: 0 14px;
	background: var(--sora-line-dark);
	border-top: 4px solid var(--sora-orange);
	color: var(--sora-fg-inverse);
	font-weight: 700;
	font-size: 16px;
	text-decoration: none;
}

.sora-intranet .sora-dr__portal:hover {
	color: var(--sora-fg-inverse);
	background: var(--sora-neutral-300);
}

.sora-dr__ql {
	margin-top: 24px;
	border-top: 1px solid var(--sora-line-dark);
}

@media (min-width: 1100px) {
	/* The drawer is the phone menu; the desktop bar replaces it. */
	.sora-dr {
		display: none !important;
	}
}

/* ------------------------------------------------------------- quick links */
.sora-ql {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 768px) {
	.sora-ql--light {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.sora-ql > li {
	margin: 0;
	min-width: 0;
}

.sora-intranet .sora-ql__tile {
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	height: 100%;
	min-height: 64px;
	padding: 10px 28px 10px 10px;
	border: 1px solid var(--sora-hairline);
	box-sizing: border-box;
	color: var(--sora-fg1);
	text-decoration: none;
}

.sora-intranet .sora-ql__tile:hover {
	border-color: var(--sora-fg1);
	color: var(--sora-fg1);
}

/* Logos sit on white so each company's own colors read as they should. */
.sora-ql__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 4px;
	background: #ffffff;
	border: 1px solid var(--sora-hairline);
	box-sizing: border-box;
	flex-shrink: 0;
}

.sora-ql__logo img {
	display: block;
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}

.sora-ql__logo--initial {
	background: var(--sora-bg-elev);
	color: var(--sora-fg2);
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 18px;
	line-height: 1;
}

.sora-ql__text {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.sora-ql__name {
	font-weight: 700;
	font-size: 14px;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.sora-ql__desc {
	font-size: 12px;
	line-height: 1.3;
	color: var(--sora-fg2);
}

.sora-ql__ext {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 14px;
	height: 14px;
	color: var(--sora-fg3);
}

.sora-intranet .sora-ql--dark .sora-ql__tile {
	min-height: 56px;
	border-color: var(--sora-neutral-300);
	color: var(--sora-fg-inverse);
}

.sora-intranet .sora-ql--dark .sora-ql__tile:hover {
	border-color: var(--sora-fg-inverse-2);
	color: var(--sora-fg-inverse);
}

.sora-ql--dark .sora-ql__logo {
	border-color: var(--sora-neutral-300);
}

.sora-ql--dark .sora-ql__logo--initial {
	background: var(--sora-line-dark);
	color: var(--sora-fg-inverse-2);
}

.sora-ql--dark .sora-ql__desc,
.sora-ql--dark .sora-ql__ext {
	color: var(--sora-fg-inverse-2);
}

/* ------------------------------------------------------------------ footer */
.sora-ft {
	background: var(--sora-charcoal);
	color: var(--sora-fg-inverse-2);
	font-family: var(--sora-font-body);
}

.sora-ft__in {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 24px var(--sora-frame) 32px;
}

.sora-ft__nav ul {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sora-ft__nav li {
	margin: 0;
}

.sora-intranet .sora-ft__a {
	display: flex;
	align-items: center;
	min-height: var(--sora-tap-min);
	color: var(--sora-fg-inverse);
	font-weight: 600;
	text-decoration: none;
}

.sora-intranet .sora-ft__a:hover {
	color: var(--sora-fg-inverse);
	text-decoration: underline;
}

/* The web support line: small and quiet, its link still a full size target. */
.sora-ft__help {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: 4px;
	margin: 8px 0 0;
	font-size: 13px;
	line-height: 1.4;
	color: var(--sora-fg-inverse-2);
}

.sora-intranet .sora-ft__help-a {
	display: inline-flex;
	align-items: center;
	min-height: var(--sora-tap-min);
	color: var(--sora-fg-inverse);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sora-intranet .sora-ft__help-a:hover {
	color: var(--sora-fg-inverse);
}

.sora-ft__line {
	margin: 0;
	font-size: 12px;
	line-height: 1.4;
	color: var(--sora-fg-inverse-2);
}

@media (min-width: 1100px) {
	.sora-ft__in {
		flex-direction: row;
		align-items: center;
		gap: 32px;
		padding: 24px var(--sora-frame);
		font-size: 14px;
	}

	.sora-ft__nav ul {
		flex-direction: row;
		gap: 32px;
	}

	.sora-ft__help {
		margin: 0 0 0 auto;
	}

	.sora-ft__line {
		margin: 0;
	}
}

/* ------------------------------------------------------------- search page */
/* Pages drawn by the plugin's templates (search, articles, categories): the page frame. */
/* Isolated: nothing in a doc (an embed, a positioned builder element) can stack above the header. */
.sora-page {
	position: relative;
	isolation: isolate;
	width: 100%;
	float: none;
	margin: 0;
	padding: 0 var(--sora-frame);
	box-sizing: border-box;
}

.sora-search__q {
	font-weight: 700;
}

.sora-field--lg {
	height: 52px;
	padding: 0 4px 0 14px;
	max-width: 720px;
}

.sora-search__jump .sora-chip {
	border-color: var(--sora-neutral-150);
	color: #ffffff;
}

.sora-search__jump .sora-chip:hover {
	border-color: #ffffff;
	color: #ffffff;
}

.sora-search__jump .sora-chip__n {
	color: var(--sora-fg-inverse-2);
}

.sora-field--lg .sora-btn {
	min-height: 42px;
	padding: 0 16px;
}

.sora-search__jump {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sora-search__none {
	margin-top: 32px;
	padding: 16px;
	background: var(--sora-bg-elev);
	border-top: 4px solid var(--sora-orange);
}

.sora-intranet .sora-search__none h2 {
	margin: 0 0 8px;
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 20px;
	line-height: 1.25;
	color: var(--sora-fg1);
	overflow-wrap: anywhere;
}

.sora-search__none p {
	margin: 0;
	color: var(--sora-fg2);
}

.sora-search__group {
	margin-top: 32px;
	padding-top: 16px;
	border-top: 4px solid var(--sora-orange);
	scroll-margin-top: 16px;
}

.sora-intranet .sora-search__h2 {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 8px;
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 22px;
	line-height: 1.2;
	color: var(--sora-fg1);
}

.sora-search__count {
	font-family: var(--sora-font-body);
	font-weight: 400;
	font-size: 15px;
	color: var(--sora-fg3);
}

.sora-search__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.sora-search__item {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0;
	padding: 12px 0;
	border-bottom: 1px solid var(--sora-hairline);
}

.sora-intranet .sora-search__title {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	min-height: var(--sora-tap-min);
	color: var(--sora-fg1);
	font-weight: 700;
	font-size: 17px;
	line-height: 1.3;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.sora-intranet a.sora-search__title {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.sora-intranet a.sora-search__title:hover {
	color: var(--sora-fg1);
	text-decoration-thickness: 2px;
}

/* "Showing results for ..." and "No exact match" above the groups. */
.sora-intranet .sora-search__note {
	margin: 0 0 16px;
	padding: 12px 14px;
	background: var(--sora-neutral-5);
	border-left: 4px solid var(--sora-orange);
	font-size: 15px;
	line-height: 1.5;
	color: var(--sora-fg1);
}

/* A result on another site: the new tab icon after its title. */
.sora-intranet a.sora-search__title .sora-ico {
	flex-shrink: 0;
	margin-left: 6px;
}

.sora-search__meta {
	font-size: 13px;
	color: var(--sora-fg3);
}

.sora-search__text {
	margin: 2px 0 0;
	font-size: 15px;
	line-height: 1.5;
	color: var(--sora-fg2);
}

/* Avada wraps the search template; keep its own sidebar and spacing out of the way. */
.sora-intranet.search #main {
	padding-top: 0;
	padding-bottom: 0;
}

.sora-intranet.search #main > .fusion-row {
	max-width: none;
	padding: 0;
}

.sora-intranet.search #content.sora-search {
	width: 100%;
	float: none;
}

/* ------------------------------------------------- SORA plugin screens */
/* Directory, Port Map and the review views bring their own tokens; these set them to the brand. */
.sora-intranet .sora-dir,
.sora-intranet .sora-pm,
.sora-intranet .sora-rv {
	--sora-bg: transparent;
	--sora-surface-pad: 0;
	--sora-card-bg: #ffffff;
	--sora-text: var(--sora-charcoal);
	--sora-muted: var(--sora-neutral-150);
	--sora-border: var(--sora-neutral-10);
	--sora-accent: var(--sora-charcoal);
	--sora-focus: var(--sora-orange);
	--sora-radius: 0;
	--sora-font: var(--sora-font-body);
}

/* The directory's grey panel spans the window; its cards stay white. */
.sora-intranet .sora-dir {
	--sora-bg: var(--sora-neutral-2);
	--sora-rule: var(--sora-orange);
	--sora-dir-bleed: 100vmax;
}

/* Referrals, TIP tracking and the Sales Portal print their own styles; these set their light-on-dark colors for a white page. */
body.sora-intranet .sora-referrals-table a.sora-link,
body.sora-intranet .sora-detail .sora-back {
	color: var(--sora-fg1);
	border-bottom-color: var(--sora-fg1);
}

body.sora-intranet .sora-referrals-table a.sora-link:hover,
body.sora-intranet .sora-detail .sora-back:hover {
	color: var(--sora-fg2);
	border-bottom-color: var(--sora-fg2);
}

body.sora-intranet .sora-referrals-table tr:hover td,
body.sora-intranet .sora-candidates label:hover {
	background: var(--sora-bg-elev);
}

body.sora-intranet .sora-detail dt,
body.sora-intranet .sora-field-label,
body.sora-intranet .sora-panel h4,
body.sora-intranet .sora-sp-recent h4 {
	color: var(--sora-fg2);
}

body.sora-intranet .sora-cand-meta,
body.sora-intranet .sora-hint,
body.sora-intranet .sora-attr,
body.sora-intranet .sora-attr-k,
body.sora-intranet .sora-empty {
	color: var(--sora-fg3);
}

body.sora-intranet .sora-notice {
	background: var(--sora-bg-elev);
}

/* The New Lead form repeats the page title; the title band already shows it. */
body.sora-intranet .sora-head ~ .sora-detail.sora-sp > h3:first-child,
body.sora-intranet .sora-c--page .sora-detail.sora-sp > h3:first-child {
	display: none;
}

/* Square corners, as everywhere else on the intranet. */
body.sora-intranet :is(.sora-pill, .sora-flag, .sora-candidates, .sora-approve select, .sora-f input, .sora-f select, .sora-search input),
body.sora-intranet .sora-detail .sora-btn {
	border-radius: 0;
}

/* ------------------------------------------------------------- BetterDocs */
/* The floating Instant Answers button stays off; its settings are kept. */
#betterdocs-ia,
.betterdocs-ia-launcher-wrapper {
	display: none !important;
}

.sora-intranet .betterdocs-live-search .betterdocs-searchform {
	border: 1px solid var(--sora-neutral-150) !important;
	border-radius: var(--sora-radius-input) !important;
	background: #ffffff !important;
}

.sora-intranet .betterdocs-live-search .betterdocs-search-field {
	color: var(--sora-fg1) !important;
	background: transparent !important;
}

.sora-intranet .betterdocs-live-search .betterdocs-search-field::placeholder {
	color: var(--sora-fg3) !important;
	opacity: 1;
}

.sora-intranet .betterdocs-live-search .docs-search-icon,
.sora-intranet .betterdocs-live-search .docs-search-icon * {
	fill: var(--sora-fg3) !important;
}

.betterdocs-live-search .betterdocs-searchform .search-submit {
	border-width: 0 !important;
}

.betterdocs-search-form-wrapper .betterdocs-live-search {
	max-width: 100% !important;
}

/* Glossary (BetterDocs encyclopedia) colors: light cards with dark text. Its layout is under "knowledgebase" below. */
.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-alphabets a {
	color: var(--sora-fg1) !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-alphabets a.letter-has-no-docs {
	color: var(--sora-fg3) !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-item {
	background: transparent !important;
	border-radius: 0 !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .tools-card {
	background: #ffffff !important;
	border: 1px solid var(--sora-hairline) !important;
	border-top: 4px solid var(--sora-orange) !important;
	border-radius: 0 !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .tools-card .heading-small,
.sora-intranet .betterdocs-encyclopedia-wrapper .tools-card .heading-small a {
	color: var(--sora-fg1) !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .tools-card .text-size-small {
	color: var(--sora-fg2) !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .tools-card .text-style-link {
	color: var(--sora-fg1) !important;
}

.betterdocs-encyclopedia .heading-small {
	font-family: var(--sora-font-display) !important;
}

/* ---------------------------------------------------------- page content */
iframe {
	display: block;
	flex-grow: 1;
	border: none;
	margin: 0;
	padding: 0;
}

.logged-in .signin {
	display: none;
}

.blue {
	color: var(--sora-teal);
}

.blue h3 {
	color: var(--sora-teal);
}

@media screen and (max-width: 600px) {
	iframe {
		max-height: 300px;
	}
}

/* ---------------------------------------------------------- Gravity Forms */
.post-content .gravity-theme table.gsurvey-likert {
	border-left: 0 !important;
}

.post-content .gsurvey-likert-row-label {
	background-color: transparent !important;
}

.post-content thead .gsurvey-likert-row-label {
	border-top: 0 !important;
}

table.gsurvey-likert th {
	color: var(--sora-charcoal);
	width: 25%;
}

.gform_wrapper.gravity-theme .gfield {
	margin: 1rem 0 !important;
}

.post-content .gform_wrapper.gravity-theme input[type="checkbox"],
input[type="radio"] {
	line-height: 30px;
	block-size: 30px;
	inline-size: 30px;
	font-size: 30px;
}

@media screen and (max-width: 600px) {
	.post-content .gform_wrapper.gravity-theme .gchoice {
		margin: 1rem;
	}
}

/* UniFi Firewall Quiz (form 17): compact rows and its own paging buttons. */
#gform_17 .gfield {
	margin: 0 !important;
}

#gform_17 .gfield_label {
	font-weight: 400 !important;
}

#gform_17 select,
#gform_17 input {
	background: #ffffff;
	color: var(--sora-charcoal);
	border: 1px solid var(--sora-neutral-150);
}

#gform_17 select:focus,
#gform_17 input:focus {
	border: 1px solid var(--sora-orange);
}

#gform_17 ::placeholder {
	color: var(--sora-neutral-150);
}

#gform_17 ::picker-icon {
	border: 0;
}

#gform_17 .gform_page_footer input[type="button"] {
	background: var(--sora-orange) !important;
	color: #ffffff;
	padding: 13px 29px;
	font-size: 16px;
	line-height: 1.2;
}

#gform_17 .gform_page_footer input[type="button"].gform_previous_button {
	background: var(--sora-teal) !important;
}

#gform_17 .gform_page_footer input[type="submit"] {
	background: #7aaa44 !important;
	color: #ffffff;
}

#gform_17 .gform_page_footer {
	border-top: 1px solid var(--sora-neutral-10);
	margin-top: 3em;
}

/* ---------------------------------------------------- older page content */
/*
 * Pages built in Fusion Builder before the white pages used translucent black
 * panels and white text. These map those exact values onto the light page so
 * the content stays readable. They match only those values, so anything built
 * with the current palette is untouched.
 */
#main [style*="--awb-bg-color:rgba(0,0,0,0.5)"],
#main [style*="--awb-bg-color:rgba(0,0,0,0.2)"] {
	--awb-bg-color: var(--sora-bg-elev) !important;
	--awb-bg-color-hover: var(--sora-bg-elev) !important;
}

#main [style*="--awb-backgroundcolor:rgba(0,0,0,0.2)"] {
	--awb-backgroundcolor: var(--sora-bg-elev) !important;
}

#main [style*="--awb-even-row-bgcolor:rgba(0,0,0,0.2)"] {
	--awb-even-row-bgcolor: var(--sora-bg-elev) !important;
}

#main [style*="--button_gradient_top_color:rgba(0,0,0,0.2)"] {
	--button_gradient_top_color: var(--sora-charcoal) !important;
	--button_gradient_bottom_color: var(--sora-charcoal) !important;
	--button_gradient_top_color_hover: var(--sora-neutral-300) !important;
	--button_gradient_bottom_color_hover: var(--sora-neutral-300) !important;
	--button_accent_color: #ffffff !important;
	--button_accent_hover_color: #ffffff !important;
}

#main [style*="--awb-title-color:var(--awb-color1)"],
#main [style*="--awb-title-color:#ffffff"] {
	--awb-title-color: var(--sora-fg1) !important;
}

#main [style*="--awb-content-color:var(--awb-color1)"] {
	--awb-content-color: var(--sora-fg1) !important;
}

#main [style*="--awb-body-color:var(--awb-color1)"],
#main [style*="--awb-body-color:#ffffff"] {
	--awb-body-color: var(--sora-fg1) !important;
}

#main [style*="--awb-text-color:var(--awb-color1)"] {
	--awb-text-color: var(--sora-fg1) !important;
}

#main [style*="--awb-iconcolor:#ffffff"] {
	--awb-iconcolor: var(--sora-fg2) !important;
}

/* ---------------------------------------------------------- Avada wrappers */
/* The header and footer sections hold only the shortcodes; no Avada spacing around them. */
.fusion-tb-header .sora-hd,
.fusion-tb-footer .sora-ft {
	width: 100%;
}

.sora-intranet .fusion-tb-footer.fusion-footer {
	background: transparent;
	padding: 0;
	border: 0;
}

/* ============================================================= page blocks */
/* Containers written by the setup step: no Avada spacing, one content width. */
.sora-intranet .fusion-fullwidth.sora-c {
	padding: 0 !important;
	margin: 0 !important;
}

.sora-intranet .sora-c .fusion-column-wrapper {
	padding: 0 !important;
	margin: 0 !important;
}

.sora-intranet .sora-c .fusion-builder-row,
.sora-intranet .sora-c .fusion-layout-column {
	margin: 0 !important;
	width: 100% !important;
}

.sora-intranet .sora-c--page .fusion-column-wrapper,
.sora-intranet .sora-c--home .fusion-column-wrapper {
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box;
}

/*
 * THE PAGE FRAME. Avada's main area and its row lose their own width and
 * padding; every builder container on a page then spans the window and pads
 * its content into the frame (see --sora-frame). Containers keep their own
 * backgrounds. The same applies to the plugin's templates through .sora-page.
 */
.sora-intranet #main {
	padding: 0 0 var(--sora-s8) !important;
}

.sora-intranet #main > .fusion-row {
	max-width: none !important;
	width: 100%;
	margin: 0;
	padding: 0;
}

.sora-intranet #main #content.full-width,
.sora-intranet #main #content.sora-page {
	width: 100%;
	float: none;
}

.sora-intranet .post-content > .fusion-fullwidth {
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: var(--sora-frame) !important;
	padding-right: var(--sora-frame) !important;
	box-sizing: border-box;
}

.sora-intranet .post-content > .fusion-fullwidth > .fusion-builder-row {
	max-width: none !important;
	width: auto !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* A single full width column sits on the frame's edges (no column spacing). */
.sora-intranet .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion_builder_column_1_1 {
	--awb-spacing-left: 0 !important;
	--awb-spacing-right: 0 !important;
	--awb-spacing-left-medium: 0 !important;
	--awb-spacing-right-medium: 0 !important;
	--awb-spacing-left-small: 0 !important;
	--awb-spacing-right-small: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100% !important;
}

.sora-intranet .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion_builder_column_1_1 > .fusion-column-wrapper {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Blocks placed straight in a page (not in a builder container, such as the Glossary) sit in the frame too. */
.sora-intranet .post-content > :not(.fusion-fullwidth):not(script):not(style) {
	padding-left: var(--sora-frame);
	padding-right: var(--sora-frame);
	box-sizing: border-box;
}

/* Space between the containers of one page. */
.sora-intranet .post-content > .fusion-fullwidth.sora-c--head + .fusion-fullwidth {
	margin-top: 0 !important;
}

/* The footer sits at the bottom of the window on short pages. */
.sora-intranet #wrapper {
	display: flex;
	flex-direction: column;
	min-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px));
}

.sora-intranet #wrapper > #main {
	flex: 1 0 auto;
}

/*
 * Page title band: charcoal from edge to edge with a 4px orange rule along
 * its bottom, holding the back link, eyebrow, title and one line intro. The
 * band's content stays in the frame because it sits in a framed container;
 * the charcoal and the rule reach the window edges through border-image and
 * box-shadow, which paint outside the box without widening the page.
 */
.sora-head {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--sora-s1);
	padding: var(--sora-s3) 0 var(--sora-s4);
	margin: 0 0 var(--sora-s4);
	color: #ffffff;
	border-image: linear-gradient(var(--sora-charcoal), var(--sora-charcoal)) fill 0 / 0 / 0 100vmax;
	box-shadow: 0 4px 0 100vmax var(--sora-orange);
	clip-path: inset(0 -100vmax -4px);
}

.sora-intranet .sora-head__back {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 4px;
	min-height: var(--sora-tap-min);
	margin: calc(var(--sora-s1) * -1) 0 0;
	color: #ffffff;
	font-size: 14px;
	text-decoration: none;
}

.sora-intranet .sora-head__back:hover,
.sora-intranet .sora-head__back:focus {
	color: #ffffff;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sora-intranet .sora-head .sora-eyebrow {
	margin: 0;
	color: var(--sora-orange);
}

.sora-intranet .sora-head__h1 {
	margin: 0;
	font-family: var(--sora-font-display);
	font-weight: 800;
	font-size: 30px;
	line-height: 1.1;
	text-transform: none;
	color: #ffffff;
	overflow-wrap: anywhere;
}

.sora-intranet .sora-head__intro {
	margin: 0;
	max-width: 52em;
	font-size: 16px;
	line-height: 1.5;
	color: var(--sora-fg-inverse-2);
}

.sora-intranet .sora-head__intro a {
	color: #ffffff;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sora-head__meta {
	margin: 0;
	font-size: 13px;
	color: var(--sora-fg-inverse-2);
}

.sora-head__extra {
	display: flex;
	flex-direction: column;
	gap: var(--sora-s2);
	margin-top: var(--sora-s1);
}

@media (min-width: 768px) {
	.sora-head {
		gap: 10px;
		padding: var(--sora-s4) 0 40px;
	}

	.sora-intranet .sora-head__h1 {
		font-size: 44px;
		line-height: 1.05;
	}
}

/* Section headings inside a page */
.sora-intranet .sora-c .fusion-text .sora-eyebrow {
	margin: 32px 0 4px;
	color: var(--sora-fg2);
}

/* The first section right under the title band needs no extra space above it. */
.sora-intranet .sora-c .sora-head + .fusion-text > .sora-eyebrow:first-child {
	margin-top: 0;
}

.sora-intranet .sora-c .sora-sec-h {
	margin: 0 0 12px;
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 20px;
	line-height: 1.2;
	color: var(--sora-fg1);
	scroll-margin-top: 16px;
}

.sora-intranet .sora-c .fusion-text {
	margin: 0 !important;
}

/* Rows: list (hairlines), cards (boxed), feature (Truck Order) */
.sora-rows {
	display: flex;
	flex-direction: column;
	margin: 0 0 8px;
	padding: 0;
	list-style: none;
}

.sora-rows--list {
	border-top: 1px solid var(--sora-hairline);
}

.sora-rows--cards {
	gap: 8px;
}

.sora-row {
	margin: 0;
}

.sora-intranet .sora-row__a {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 52px;
	padding: 8px 0;
	box-sizing: border-box;
	color: var(--sora-fg1);
	text-decoration: none;
}

.sora-rows--list .sora-row__a {
	border-bottom: 1px solid var(--sora-hairline);
}

.sora-intranet .sora-rows--cards .sora-row__a {
	height: 100%;
	min-height: 60px;
	padding: 12px 14px;
	border: 1px solid var(--sora-hairline);
}

.sora-intranet .sora-rows--feature .sora-row__a {
	min-height: 64px;
	padding: 14px;
	background: #fef3e6;
	border-top: 4px solid var(--sora-orange);
}

.sora-intranet .sora-row__a:hover {
	color: var(--sora-fg1);
}

.sora-intranet .sora-row__a:hover .sora-row__title {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sora-intranet .sora-rows--cards .sora-row__a:hover {
	border-color: var(--sora-fg1);
}

.sora-row__ico {
	color: var(--sora-teal);
}

.sora-rows--feature .sora-row__ico {
	color: var(--sora-fg1);
}

.sora-row__text {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	min-width: 0;
}

.sora-row__title {
	font-weight: 700;
	font-size: 15px;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

.sora-rows--list .sora-row__title {
	font-weight: 600;
}

.sora-row__desc {
	font-size: 13px;
	line-height: 1.4;
	color: var(--sora-fg2);
}

/* "Opens Cognito Forms": a row that goes to another site says which. */
.sora-row__site {
	font-size: 12px;
	line-height: 1.4;
	font-weight: 600;
	color: var(--sora-fg3);
}

.sora-ico--muted {
	color: var(--sora-fg3);
}

.sora-chip-count {
	flex-shrink: 0;
	padding: 2px 8px;
	border-radius: var(--sora-radius-pill);
	background: var(--sora-neutral-5);
	color: var(--sora-fg2);
	font-size: 12px;
	font-weight: 700;
}

/* Wider screens use the width: cards two then three across, page lists in two columns. */
@media (min-width: 768px) {
	.sora-rows--cards {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--sora-s2);
	}
}

@media (min-width: 1100px) {
	.sora-rows--cards {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.sora-c .sora-rows--list,
	.sora-doccat .sora-rows--list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: var(--sora-s6);
	}
}

/* Copy Link block */
.sora-copy {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 14px;
	border: 1px solid var(--sora-hairline);
	max-width: 720px;
}

.sora-copy p {
	margin: 0;
}

.sora-copy__title {
	font-weight: 700;
	font-size: 15px;
}

.sora-copy__desc {
	font-size: 14px;
	line-height: 1.45;
	color: var(--sora-fg2);
}

.sora-intranet .sora-copy__url input {
	width: 100%;
	box-sizing: border-box;
	font-size: 14px;
	height: 44px;
}

.sora-copy__btns {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sora-intranet .sora-btn--secondary {
	background: transparent;
	color: var(--sora-fg1);
	border: 2px solid var(--sora-fg1);
}

.sora-intranet .sora-btn--secondary:hover {
	background: var(--sora-fg1);
	color: #ffffff;
}

.sora-copy__status {
	min-height: 1.4em;
	font-size: 14px;
	font-weight: 600;
	color: var(--sora-fg1);
}

/* Where to go for... */
.sora-where {
	margin: 16px 0 0;
	padding: 0;
}

.sora-where__row {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 14px 0;
	border-bottom: 1px solid var(--sora-hairline);
}

.sora-where__need {
	font-weight: 700;
	font-size: 16px;
	margin: 0;
}

.sora-where__go {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 20px;
	margin: 0;
}

.sora-intranet .sora-where__a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: var(--sora-tap-min);
	color: var(--sora-fg1);
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (min-width: 768px) {
	.sora-where__row {
		flex-direction: row;
		align-items: center;
	}

	.sora-where__need {
		flex: 0 0 22em;
	}
}

/* All Forms, A to Z */
.sora-az ul {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin: 16px 0;
	padding: 0;
	list-style: none;
}

.sora-az li {
	margin: 0;
}

.sora-intranet .sora-az a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	border: 1px solid var(--sora-hairline);
	color: var(--sora-fg1);
	font-weight: 700;
	text-decoration: none;
}

.sora-intranet .sora-az a:hover {
	border-color: var(--sora-fg1);
}

.sora-intranet .sora-az__letter {
	margin: 24px 0 8px;
	font-family: var(--sora-font-display);
	font-weight: 800;
	font-size: 28px;
	line-height: 1;
	color: var(--sora-orange);
}

.sora-az__group {
	scroll-margin-top: 16px;
}

.sora-intranet .sora-az__ext a {
	padding: 0 12px;
	font-weight: 600;
}

.sora-intranet .sora-az__letter--ext {
	margin-top: 40px;
	font-size: 22px;
}

.sora-az__note {
	margin: 0 0 8px;
	font-size: 14px;
	color: var(--sora-fg2);
}

/* ============================================================== Home */
.sora-intranet .sora-c--hero .fusion-column-wrapper {
	padding: 0 !important;
}

/* Home's band spans the window and frames its own content. */
.sora-intranet .post-content > .fusion-fullwidth.sora-c--hero {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.sora-hero {
	background: var(--sora-charcoal);
	color: #ffffff;
}

.sora-hero__in {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 24px var(--sora-frame) 32px;
	box-sizing: border-box;
}

.sora-intranet .sora-eyebrow--accent {
	margin: 0;
	color: var(--sora-orange);
}

.sora-intranet .sora-hero__h1 {
	margin: 0;
	font-family: var(--sora-font-display);
	font-weight: 800;
	font-size: 30px;
	line-height: 1.1;
	color: #ffffff;
}

.sora-field--hero {
	height: 52px;
	max-width: 720px;
}

@media (min-width: 768px) {
	.sora-hero__in {
		padding: 40px var(--sora-frame) 56px;
	}

	.sora-intranet .sora-hero__h1 {
		font-size: 48px;
		line-height: 1.05;
	}

	.sora-field--hero {
		height: 60px;
	}

	.sora-intranet .sora-field--hero input[type="search"] {
		font-size: 18px;
	}
}

.sora-block {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding-top: 24px;
}

.sora-intranet .sora-block__h {
	margin: 0;
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 18px;
	line-height: 1.2;
	color: var(--sora-fg1);
}

.sora-c--home .sora-rv--compact {
	margin-top: 24px;
}

/* Your portals */
.sora-portals__list {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sora-portals__list li {
	margin: 0;
}

.sora-intranet .sora-portal {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 64px;
	padding: 14px 16px;
	box-sizing: border-box;
	background: var(--sora-charcoal);
	border-top: 4px solid var(--sora-orange);
	color: #ffffff;
	text-decoration: none;
}

.sora-intranet .sora-portal:hover {
	background: var(--sora-neutral-300);
	color: #ffffff;
}

.sora-portal__ico {
	color: var(--sora-orange);
}

.sora-portal__text {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	min-width: 0;
}

.sora-portal__name {
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 16px;
}

.sora-portal__desc {
	font-size: 13px;
	color: var(--sora-fg-inverse-2);
}

/* Browse: rows on phones, cards with their main links on desktop */
.sora-browse__list {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--sora-hairline);
}

.sora-browse__item {
	margin: 0;
	border-bottom: 1px solid var(--sora-hairline);
}

.sora-intranet .sora-browse__main {
	display: flex;
	align-items: center;
	gap: 14px;
	min-height: 64px;
	padding: 14px 4px;
	box-sizing: border-box;
	color: var(--sora-fg1);
	text-decoration: none;
}

.sora-browse__ico {
	color: var(--sora-teal);
}

.sora-browse__text {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	min-width: 0;
}

.sora-browse__name {
	font-weight: 700;
	font-size: 16px;
}

.sora-browse__desc {
	font-size: 13px;
	color: var(--sora-fg2);
}

.sora-browse__links {
	display: none;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 1100px) {
	.sora-intranet .sora-c--home .fusion-column-wrapper {
		display: grid !important;
		grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
		grid-template-areas: "browse portals" "browse quick" "browse reviews" "browse rest";
		grid-template-rows: auto auto auto 1fr;
		column-gap: 32px;
		align-items: start;
	}

	.sora-c--home .sora-browse {
		grid-area: browse;
	}

	.sora-c--home .sora-portals {
		grid-area: portals;
	}

	.sora-c--home .sora-ql-block {
		grid-area: quick;
	}

	.sora-c--home .sora-rv--compact {
		grid-area: reviews;
	}

	.sora-c--home .sora-ql--light {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sora-browse__list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
		border-top: 0;
	}

	.sora-browse__item {
		padding: 20px;
		border: 1px solid var(--sora-hairline);
		border-top: 4px solid var(--sora-orange);
	}

	.sora-intranet .sora-browse__main {
		min-height: 44px;
		padding: 0 0 10px;
	}

	.sora-browse__name {
		font-family: var(--sora-font-display);
		font-size: 20px;
	}

	.sora-browse__links {
		display: flex;
		flex-direction: column;
	}

	.sora-browse__links li {
		margin: 0;
	}

	.sora-intranet .sora-browse__links a {
		display: flex;
		align-items: center;
		min-height: 44px;
		border-top: 1px solid var(--sora-neutral-5);
		color: var(--sora-fg1);
		font-size: 15px;
		text-decoration: none;
	}

	.sora-intranet .sora-browse__links a:hover {
		text-decoration: underline;
	}
}

/* Signed out: Home shows only the sign in. */
.sora-intranet:not(.logged-in) .sora-c.signin .fusion-column-wrapper {
	max-width: 720px;
	margin: 0 auto !important;
	padding: 48px 16px 64px !important;
	text-align: center;
}

.sora-intranet .sora-signin__h {
	font-family: var(--sora-font-display);
	font-weight: 800;
	font-size: 30px;
	line-height: 1.1;
}

/* Referral list links: one underline (the plugin draws its own dotted line). */
body.sora-intranet .sora-referrals-table a.sora-link {
	text-decoration: none !important;
}

.sora-intranet .sora-c.signin .nsl-container,
.sora-intranet .sora-c.signin .nsl-container-buttons {
	display: flex !important;
	justify-content: center;
}

/* ============================================================ knowledgebase */
/* Articles, categories and the Knowledgebase hub (templates/doc*.php, [sora_kb_hub]). */
/*
 * Articles. Phones: one column (On this page, the body, Back to top, then
 * the related docs as a panel). Desktop: the body in a 720px reading column
 * on the frame's left edge, and a side panel (On this page, related docs)
 * that stays in view while you scroll when it fits the screen. The side
 * panel's parts are laid out on the phone grid directly (display: contents)
 * so their order matches the page.
 */
.sora-article {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-areas: "toc" "main" "related";
	gap: var(--sora-s3);
}

.sora-article__side {
	display: contents;
}

.sora-article__main {
	grid-area: main;
	min-width: 0;
}

.sora-article .sora-toc {
	grid-area: toc;
}

.sora-article .sora-related {
	grid-area: related;
	margin-top: var(--sora-s3);
	padding: var(--sora-s2);
	background: var(--sora-bg-elev);
	border: 1px solid var(--sora-hairline);
}

@media (min-width: 1100px) {
	.sora-article {
		grid-template-columns: minmax(0, 720px) minmax(280px, 340px);
		grid-template-areas: none;
		justify-content: space-between;
		column-gap: var(--sora-s6);
		align-items: start;
	}

	.sora-article__main {
		grid-area: auto;
		grid-column: 1;
	}

	.sora-article__side {
		position: sticky;
		top: var(--sora-s3);
		grid-column: 2;
		display: flex;
		flex-direction: column;
		gap: var(--sora-s3);
		padding: 20px;
		background: var(--sora-bg-elev);
		border: 1px solid var(--sora-hairline);
	}

	/* Taller than the screen: it scrolls with the page instead (set by intranet.js). */
	.sora-article__side.is-tall {
		position: static;
	}

	.admin-bar .sora-article__side {
		top: calc(var(--wp-admin--admin-bar--height, 32px) + var(--sora-s3));
	}

	.sora-article .sora-toc,
	.sora-article .sora-related {
		grid-area: auto;
	}

	.sora-article .sora-related {
		margin: 0;
		padding: 0;
		background: none;
		border: 0;
	}

	.sora-article__side .sora-toc {
		background: #ffffff;
	}
}

/* Category pages */
.sora-doccat__body {
	display: flex;
	flex-direction: column;
	gap: var(--sora-s2);
}

/* On this page */
.sora-toc {
	border: 1px solid var(--sora-hairline);
	background: var(--sora-bg-elev);
}

.sora-toc__summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 48px;
	padding: 0 14px;
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
	list-style: none;
}

.sora-toc__summary::-webkit-details-marker {
	display: none;
}

.sora-toc[open] .sora-toc__summary .sora-ico {
	transform: rotate(180deg);
}

.sora-toc__list {
	margin: 0;
	padding: 0 14px 10px 34px;
}

.sora-toc__list li {
	margin: 0;
	font-size: 15px;
}

.sora-intranet .sora-toc__list a {
	display: flex;
	align-items: center;
	min-height: var(--sora-tap-min);
	color: var(--sora-fg1);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/*
 * The article body: one reading column. Whatever the doc holds (old builder
 * rows and columns, text, lists, callouts, buttons, media), every block
 * starts on the same left edge, is at most 720px wide, and sits 24px from
 * the next one. Headings follow one scale whatever level the doc used.
 */
.sora-article__body {
	display: flow-root;
	max-width: 720px;
	min-width: 0;
	color: var(--sora-fg1);
	font-size: 16px;
	line-height: 1.65;
	overflow-wrap: anywhere;
}

@media (min-width: 768px) {
	.sora-article__body {
		font-size: 17px;
	}
}

/* Old builder rows and columns: plain stacked boxes, no spacing or backgrounds of their own. */
.sora-intranet .sora-article__body :is(.fusion-fullwidth, .fusion-builder-row, .fusion-layout-column, .fusion-column-wrapper) {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	overflow: visible !important;
}

.sora-intranet .sora-article__body .fusion-fullwidth::before,
.sora-intranet .sora-article__body .fusion-fullwidth::after,
.sora-intranet .sora-article__body .fusion-builder-row::before,
.sora-intranet .sora-article__body .fusion-builder-row::after {
	content: none !important;
}

/* Text: the body's size and colour, left aligned. */
.sora-intranet .sora-article__body :is(.fusion-text, .fusion-checklist, .fusion-li-item, .fusion-li-item-content, ul, ol, p, li, td, th, dd, dt, blockquote) {
	font-size: inherit !important;
	line-height: inherit !important;
	color: inherit !important;
	text-align: left !important;
}

.sora-intranet .sora-article__body .fusion-text {
	columns: auto !important;
	max-width: 100% !important;
	margin: 0 0 var(--sora-s3) !important;
	padding: 0 !important;
}

/* One rhythm: 24px between blocks, 16px between paragraphs. */
.sora-intranet .sora-article__body :is(ul, ol, dl, blockquote, table, figure, iframe, video, .fusion-checklist, .fusion-image-element, .fusion-video, .fluid-width-video-wrapper, .sora-callout, .sora-pre) {
	max-width: 100% !important;
	margin: 0 0 var(--sora-s3) !important;
}

.sora-intranet .sora-article__body p {
	max-width: 100%;
	margin: 0 0 var(--sora-s2) !important;
}

.sora-intranet .sora-article__body li > :is(ul, ol),
.sora-intranet .sora-article__body li p:last-child {
	margin-bottom: 0 !important;
}

.sora-intranet .sora-article__body li > :is(ul, ol) {
	margin-top: 6px !important;
}

/* The web support line is in the site footer; a doc's own copy (and the divider above it) is hidden. */
.sora-intranet .sora-article__body .sora-support-dup,
.sora-intranet .sora-article__body .fusion-text:has(> .sora-support-dup:only-child),
.sora-intranet .sora-article__body .fusion-separator:has(+ .fusion-text > .sora-support-dup:only-child) {
	display: none !important;
}

/* The title band already shows the title. */
.sora-intranet .sora-article__body .sora-dup-title,
.sora-intranet .sora-article__body .fusion-title:has(> .sora-dup-title) {
	display: none !important;
}

/* Headings */
.sora-intranet .sora-article__body .fusion-title {
	display: block !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.sora-intranet .sora-article__body .fusion-title .title-sep-container {
	display: none !important;
}

.sora-intranet .sora-article__body :is(h1, h2, h3, h4, h5, h6) {
	max-width: 100%;
	padding: 0 !important;
	color: var(--sora-fg1) !important;
	font-family: var(--sora-font-display) !important;
	text-align: left !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	line-height: 1.3 !important;
	scroll-margin-top: 16px;
}

/* H2 (and an H1 in the body): a new section, with an orange tick above it. */
.sora-intranet .sora-article__body :is(h1, h2) {
	margin: 40px 0 12px !important;
	font-weight: 700 !important;
	font-size: 20px !important;
}

.sora-intranet .sora-article__body :is(h1, h2)::before {
	content: "";
	display: block;
	width: 32px;
	height: 3px;
	margin: 0 0 12px;
	background: var(--sora-orange);
}

@media (min-width: 768px) {
	.sora-intranet .sora-article__body :is(h1, h2) {
		font-size: 24px !important;
	}
}

.sora-intranet .sora-article__body h3 {
	margin: 32px 0 8px !important;
	font-weight: 700 !important;
	font-size: 19px !important;
}

/* H4 to H6: small labels, never bigger than the headings above them. */
.sora-intranet .sora-article__body :is(h4, h5, h6) {
	margin: 24px 0 8px !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
}

/* Whatever the body opens with sits right under the band (or On this page). */
.sora-intranet .sora-article__body .sora-first {
	margin-top: 0 !important;
}

/* Plain lists: small orange dots, no lines. */
.sora-intranet .sora-article__body ul {
	padding: 0 0 0 1.25em !important;
	list-style: disc;
}

.sora-intranet .sora-article__body ol {
	padding: 0 0 0 1.5em !important;
	list-style: decimal;
}

.sora-intranet .sora-article__body :is(ul, ol) > li {
	margin: 0 0 6px !important;
	padding: 0 0 0 4px;
}

.sora-intranet .sora-article__body ul > li::marker {
	color: var(--sora-orange);
}

.sora-intranet .sora-article__body .fusion-checklist.type-icons {
	padding: 0 !important;
	list-style: none;
}

.sora-intranet .sora-article__body .fusion-checklist.type-icons:not(.sora-list--links) .fusion-li-item {
	display: block !important;
	position: relative;
	margin: 0 0 6px !important;
	padding: 0 0 0 1.25em !important;
	border: 0 !important;
	background: transparent !important;
}

.sora-intranet .sora-article__body .fusion-checklist.type-icons .icon-wrapper {
	display: none !important;
}

.sora-intranet .sora-article__body .fusion-checklist.type-icons:not(.sora-list--links) .fusion-li-item::before {
	content: "";
	position: absolute;
	left: 2px;
	top: 0.68em;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--sora-orange);
}

.sora-intranet .sora-article__body .fusion-checklist .fusion-li-item-content {
	margin: 0 !important;
}

/* Numbered checklists read as steps: a large numeral beside each step. */
.sora-intranet .sora-article__body .fusion-checklist.type-numbered {
	--awb-odd-row-bgcolor: transparent !important;
	--awb-even-row-bgcolor: transparent !important;
	padding: 0 !important;
}

.sora-intranet .sora-article__body .fusion-checklist.type-numbered .fusion-li-item {
	display: flex !important;
	align-items: flex-start;
	gap: 12px;
	margin: 0 !important;
	padding: 12px 0 !important;
	border-top: 1px solid var(--sora-hairline);
	background: transparent !important;
}

.sora-intranet .sora-article__body .fusion-checklist.type-numbered .icon-wrapper {
	flex: none;
	min-width: 32px;
	margin: 0 !important;
	color: var(--sora-orange) !important;
	font-family: var(--sora-font-display);
	font-weight: 800;
	font-size: 22px !important;
	line-height: 1.2;
}

/* Link lists (every item is only a link): a row per link, with a chevron and a line between. */
.sora-intranet .sora-article__body .sora-list--links {
	padding: 0 !important;
	list-style: none !important;
	border-bottom: 1px solid var(--sora-hairline);
}

.sora-intranet .sora-article__body .sora-list--links > li {
	display: flex !important;
	align-items: center;
	gap: 12px;
	min-height: var(--sora-tap-min);
	margin: 0 !important;
	padding: 8px 0 !important;
	border-top: 1px solid var(--sora-hairline);
}

.sora-intranet .sora-article__body .sora-list--links > li::marker {
	content: none;
}

.sora-intranet .sora-article__body .sora-list--links > li::before {
	content: "";
	position: static !important;
	flex: none;
	width: 7px !important;
	height: 7px !important;
	margin: 0 4px 0 2px;
	border-top: 2px solid var(--sora-orange);
	border-right: 2px solid var(--sora-orange);
	border-radius: 0 !important;
	background: none !important;
	transform: rotate(45deg);
}

.sora-intranet .sora-article__body .sora-list--links a {
	color: var(--sora-fg1);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Content boxes are link cards: see "Link cards" under "site wide". */

/* Dividers: a full width line. */
.sora-intranet .sora-article__body .fusion-separator {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 var(--sora-s3) !important;
	padding: 0 !important;
}

.sora-intranet .sora-article__body .fusion-separator-border {
	border-color: var(--sora-hairline) !important;
	border-width: 1px 0 0 !important;
}

/* Callouts: text blocks that open with Note, Important, Heads up or Pro tip. */
.sora-intranet .sora-article__body .sora-callout {
	padding: 16px 20px !important;
	background: #fef3e6 !important;
	border-top: 4px solid var(--sora-orange);
}

.sora-intranet .sora-article__body .sora-callout p:last-child {
	margin-bottom: 0 !important;
}

/* Buttons: the site's button, as wide as its text. */
.sora-intranet .sora-article__body div:has(> .fusion-button),
.sora-intranet .sora-article__body .fusion-button-wrapper {
	max-width: 100%;
	margin: 0 0 var(--sora-s3) !important;
	text-align: left !important;
}

.sora-intranet .sora-article__body .fusion-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	max-width: 100%;
	min-height: var(--sora-tap-min);
	padding: 10px 20px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--sora-orange) !important;
	color: var(--sora-charcoal) !important;
	font-family: var(--sora-font-display) !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

.sora-intranet .sora-article__body .fusion-button:hover {
	background: var(--sora-accent-hover) !important;
}

.sora-intranet .sora-article__body .fusion-button .fusion-button-text {
	color: inherit !important;
	font: inherit !important;
	letter-spacing: 0 !important;
}

/* The spacing around a button comes from its block, never from the button itself. */
.sora-intranet .sora-article__body .fusion-button {
	margin: 0 !important;
}

/*
 * Button groups (two or more buttons in a row, grouped by the template): one
 * wrapping row, 12px apart, each as wide as its text. On phones they stack,
 * the full width of the column.
 */
.sora-intranet .sora-article__body .sora-btn-group,
.sora-intranet .sora-article__body .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 12px;
	max-width: 100%;
	margin: 0 0 var(--sora-s3) !important;
	text-align: left !important;
}

.sora-intranet .sora-article__body .sora-btn-group > :is(div, p),
.sora-intranet .sora-article__body .sora-btn-group > :is(div, p):has(> .fusion-button),
.sora-intranet .sora-article__body .wp-block-buttons > * {
	margin: 0 !important;
	padding: 0 !important;
	max-width: 100%;
}

@media (max-width: 767px) {
	.sora-intranet .sora-article__body .sora-btn-group,
	.sora-intranet .sora-article__body .wp-block-buttons {
		flex-direction: column;
		align-items: stretch;
	}

	.sora-intranet .sora-article__body .sora-btn-group :is(.fusion-button, .sora-btn, a[class*="button"]),
	.sora-intranet .sora-article__body .wp-block-buttons a {
		display: flex !important;
		width: 100% !important;
		box-sizing: border-box;
	}
}

/* Templates and preformatted text: a gray box with a Copy button. */
.sora-intranet .sora-article__body .sora-pre {
	position: relative;
	padding: 12px 16px 16px 20px;
	background: var(--sora-bg-elev);
	border-left: 4px solid var(--sora-orange);
}

.sora-pre__bar {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	margin: 0 0 4px;
}

.sora-pre__status {
	color: var(--sora-fg2);
	font-size: 14px;
}

.sora-intranet .sora-article__body .sora-pre__body,
.sora-intranet .sora-article__body .sora-pre__body code {
	display: block;
	padding: 0;
	background: none;
	color: var(--sora-fg1);
	font-family: var(--sora-font-body);
	font-size: 16px;
	line-height: 1.6;
	white-space: normal;
	overflow-wrap: anywhere;
}

.sora-intranet .sora-article__body .sora-pre__body p:last-child {
	margin-bottom: 0 !important;
}

.sora-intranet .sora-article__body .sora-pre--code pre {
	margin: 0 !important;
	padding: 0;
	background: none;
	font-family: ui-monospace, Consolas, "Courier New", monospace;
	font-size: 15px;
	line-height: 1.55;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

/* Media and tables. */
.sora-article__body img {
	max-width: 100%;
	height: auto;
}

/*
 * Tables (the template wraps each in .sora-table). Columns size to their
 * content and never break inside a word. A table is the reading column's
 * width; when its words don't fit in that, it grows, up to the room beside
 * the side panel (--sora-col and --sora-room, set by intranet.js). Only a
 * table that still doesn't fit scrolls sideways; until the script has
 * measured, every table box can scroll. Under 768px each row is a card.
 */
.sora-intranet .sora-article__body .sora-table {
	position: relative;
	max-width: var(--sora-room, 100%) !important;
	margin: 0 0 var(--sora-s3) !important;
	overflow-x: auto;
}

.sora-intranet .sora-article__body .sora-table.is-fit {
	overflow: visible;
}

.sora-intranet .sora-article__body .sora-table > table {
	display: table;
	width: var(--sora-col, 100%);
	max-width: none !important;
	margin: 0 !important;
	table-layout: auto;
	border-collapse: collapse;
	border: 0;
	background: #ffffff;
	font-size: inherit;
	line-height: 1.5;
}

.sora-intranet .sora-article__body .sora-table :is(th, td) {
	padding: 12px 14px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--sora-hairline) !important;
	background: transparent;
	color: var(--sora-fg1);
	font-size: inherit !important;
	text-align: left !important;
	vertical-align: top;
	word-break: normal;
	overflow-wrap: break-word;
	hyphens: manual;
}

.sora-intranet .sora-article__body .sora-table tr:nth-child(even) > td {
	background: #f7f7f7;
}

.sora-intranet .sora-article__body .sora-table td:first-child {
	color: var(--sora-charcoal);
	font-weight: 600;
}

/* The header row: charcoal with white Poppins. Links (glossary terms) in it stay readable. */
.sora-intranet .sora-article__body .sora-table .sora-table__head > * {
	background: var(--sora-charcoal) !important;
	color: #ffffff !important;
	font-family: var(--sora-font-display);
	font-weight: 600;
	border-bottom: 0 !important;
}

.sora-intranet .sora-article__body .sora-table .sora-table__head a {
	color: #ffffff !important;
}

@media (max-width: 767px) {
	.sora-intranet .sora-article__body .sora-table {
		width: 100% !important;
		max-width: 100% !important;
		overflow: visible;
	}

	.sora-intranet .sora-article__body .sora-table :is(table, thead, tbody, tfoot, tr, th, td) {
		display: block;
		width: auto;
	}

	/* The header row is read out as the labels on each card. */
	.sora-intranet .sora-article__body .sora-table .sora-table__head {
		position: absolute !important;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}

	.sora-intranet .sora-article__body .sora-table tr {
		margin: 0 0 12px;
		padding: 4px 0;
		border: 1px solid var(--sora-hairline);
		border-top: 4px solid var(--sora-orange);
		background: #ffffff;
	}

	.sora-intranet .sora-article__body .sora-table tr:last-child {
		margin-bottom: 0;
	}

	.sora-intranet .sora-article__body .sora-table tr > :is(td, th) {
		padding: 6px 14px !important;
		border: 0 !important;
		background: transparent !important;
		font-weight: 400;
	}

	/* The first cell is the card's title. */
	.sora-intranet .sora-article__body .sora-table tr > :first-child {
		padding-top: 10px !important;
		color: var(--sora-charcoal);
		font-family: var(--sora-font-display);
		font-weight: 600;
	}

	.sora-intranet .sora-article__body .sora-table tr > :not(:first-child)[data-label]::before {
		content: attr(data-label) ": ";
		color: var(--sora-charcoal);
		font-weight: 700;
	}

	.sora-intranet .sora-article__body .sora-table tr > .is-empty {
		display: none;
	}
}

/* Drive videos full width at 16:9; PDFs scroll in a tall box. */
.sora-intranet .sora-article__body iframe[src*="drive.google.com"],
.sora-intranet .sora-article__body iframe[src*="youtube"],
.sora-intranet .sora-article__body iframe[src*="vimeo"] {
	display: block;
	width: 100% !important;
	max-width: 100%;
	height: auto !important;
	max-height: none !important;
	aspect-ratio: 16 / 9;
	border: 0;
}

.sora-intranet .sora-article__body iframe[src$=".pdf"] {
	width: 100% !important;
	height: 75vh !important;
	max-height: 900px !important;
	border: 1px solid var(--sora-hairline);
}

.sora-article__top {
	display: flex;
	justify-content: flex-start;
	margin: var(--sora-s4) 0 0;
}

.sora-intranet .sora-related__h {
	margin: 0 0 8px;
	padding: 0 0 8px;
	border-bottom: 2px solid var(--sora-orange);
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 17px;
	line-height: 1.3;
	color: var(--sora-fg1);
}

.sora-related .sora-rows--list {
	margin: 0;
	border-top: 0;
}

.sora-related .sora-row:last-child .sora-row__a {
	border-bottom: 0;
}

/* Category pages: compact, so the first doc shows on the first phone screen. */
.sora-intranet .sora-doccat__h2 {
	margin: var(--sora-s3) 0 var(--sora-s1);
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 18px;
	color: var(--sora-fg1);
}

.sora-doccat__search,
.sora-kb__search {
	max-width: 720px;
	margin: 0 0 var(--sora-s3);
}

.sora-intranet .sora-doccat__search .betterdocs-search-form-wrapper,
.sora-intranet .sora-kb__search .betterdocs-search-form-wrapper {
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	min-height: 0 !important;
}

.sora-intranet .sora-doccat__search .betterdocs-searchform,
.sora-intranet .sora-kb__search .betterdocs-searchform {
	height: 48px !important;
	padding: 0 12px !important;
}

.sora-intranet .sora-doccat__search .betterdocs-search-heading,
.sora-intranet .sora-kb__search .betterdocs-search-heading,
.sora-intranet .betterdocs-popular-search-keyword {
	display: none !important;
}

.sora-empty-note {
	margin: 8px 0 16px;
	color: var(--sora-fg3);
	font-style: italic;
}

/* Knowledgebase hub */
.sora-kb__cards {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 768px) {
	.sora-kb__cards {
		grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
		gap: var(--sora-s3);
	}
}

.sora-kb__card {
	margin: 0;
	padding: 16px;
	border: 1px solid var(--sora-hairline);
	border-top: 4px solid var(--sora-orange);
}

.sora-intranet .sora-kb__top {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	color: var(--sora-fg1);
	text-decoration: none;
}

.sora-kb__name {
	flex: 1 1 auto;
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 20px;
}

.sora-kb__subs {
	margin: 4px 0 0;
	padding: 0;
	list-style: none;
}

.sora-kb__subs li {
	margin: 0;
}

.sora-intranet .sora-kb__subs a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 44px;
	border-top: 1px solid var(--sora-neutral-5);
	color: var(--sora-fg1);
	font-size: 15px;
	text-decoration: none;
}

.sora-intranet .sora-kb__subs a:hover {
	text-decoration: underline;
}

.sora-kb__n {
	color: var(--sora-fg3);
	font-size: 13px;
}

.sora-kb__desc {
	margin: 4px 0 0;
	font-size: 14px;
	color: var(--sora-fg2);
}

.sora-intranet .sora-c .sora-sec-intro {
	margin: -4px 0 8px;
	font-size: 14px;
	color: var(--sora-fg2);
}

/* Glossary (BetterDocs encyclopedia) on the new look */
.sora-intranet .betterdocs-encyclopedia-wrapper {
	padding: 0 !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-alphabets {
	position: sticky;
	top: 0;
	z-index: 5;
	display: flex !important;
	flex-wrap: wrap;
	gap: 4px;
	padding: 8px 0 !important;
	background: #ffffff !important;
	border: 0 !important;
	box-shadow: none !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-alphabets li {
	margin: 0 !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-alphabets a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	border: 1px solid var(--sora-hairline);
	font-family: var(--sora-font-body) !important;
	font-weight: 700;
	text-decoration: none !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .section-item {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	gap: 12px;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-item {
	display: flex !important;
	width: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .tools-card {
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	max-height: none !important;
	flex: 1 1 auto;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.sora-intranet .betterdocs-encyclopedia-wrapper .section-item {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.sora-intranet .betterdocs-encyclopedia-wrapper .section-item {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.sora-intranet .betterdocs-encyclopedia-wrapper .tools-card {
	padding: 14px 16px !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .tools-card .heading-small {
	font-family: var(--sora-font-display) !important;
	font-weight: 700 !important;
	font-size: 17px !important;
}

/* ============================================================ site wide */
/* Avada's floating back-to-top button covers text and buttons on phones; pages and articles have their own. */
@media (max-width: 599px) {
	.to-top-container,
	#toTop {
		display: none !important;
	}
}

/*
 * Link cards (the builder's content boxes, in articles and on pages). Each
 * box is a white card with a light border and an orange top rule; its icon
 * sits in a 48px charcoal square beside the heading, white (orange on hover).
 * A box with a link is one link target: the heading link covers the whole
 * card, so there is one Tab stop and the focus ring goes round the card.
 * Several boxes share a grid, as many 260px columns as fit, equal heights; a
 * box on its own is one card up to the reading width. Phones: one per row.
 * Avada's own box colors, circles, centering, offsets and animations are
 * reset here, inside the intranet's pages only.
 */
.sora-intranet #main .fusion-content-boxes {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr));
	gap: var(--sora-s2);
	width: 100% !important;
	max-width: 100%;
	margin: 0 0 var(--sora-s3) !important;
	padding: 0 !important;
	text-align: left !important;
}

.sora-intranet #main .fusion-content-boxes.fusion-columns-total-1 {
	grid-template-columns: minmax(0, 1fr);
	max-width: 720px;
}

.sora-intranet #main .fusion-content-boxes::before,
.sora-intranet #main .fusion-content-boxes::after,
.sora-intranet #main .fusion-content-boxes .fusion-clearfix {
	display: none !important;
	content: none !important;
}

.sora-intranet #main .fusion-content-boxes .content-box-column {
	display: flex !important;
	float: none !important;
	width: auto !important;
	min-width: 0;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	visibility: visible !important;
	animation: none !important;
}

.sora-intranet #main .fusion-content-boxes .content-box-wrapper {
	position: relative;
	display: flex !important;
	flex-direction: column;
	gap: 12px;
	flex: 1 1 auto;
	width: 100% !important;
	min-width: 0;
	box-sizing: border-box;
	margin: 0 !important;
	padding: 20px !important;
	background: #ffffff !important;
	border: 1px solid var(--sora-hairline) !important;
	border-top: 3px solid var(--sora-orange) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--sora-fg1);
	text-align: left !important;
	visibility: visible !important;
	animation: none !important;
	transition: box-shadow 0.15s ease;
}

.sora-intranet #main .fusion-content-boxes :is(.heading, .heading-link) {
	display: flex !important;
	align-items: center;
	gap: 16px;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	text-align: left !important;
}

.sora-intranet #main .fusion-content-boxes .heading-link {
	min-height: 48px;
	color: var(--sora-fg1) !important;
	text-decoration: none !important;
	box-shadow: none !important;
	outline: none !important;
}

/* The heading link reaches over the whole card. */
.sora-intranet #main .fusion-content-boxes .heading-link::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}

.sora-intranet #main .fusion-content-boxes .content-box-wrapper:has(.heading-link):hover {
	box-shadow: 0 6px 16px rgba(44, 44, 42, 0.14) !important;
}

.sora-intranet #main .fusion-content-boxes .content-box-wrapper:has(.heading-link:focus-visible) {
	outline: var(--sora-focus-ring);
	outline-offset: 2px;
}

/* The icon: a 48px charcoal square with a white glyph. A logo image sits on white instead. */
.sora-intranet #main .fusion-content-boxes :is(.icon, .image) {
	position: static !important;
	display: flex !important;
	flex: 0 0 48px;
	align-items: center;
	justify-content: center;
	width: 48px !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: var(--sora-charcoal);
	border-radius: 0 !important;
	transform: none !important;
}

.sora-intranet #main .fusion-content-boxes .icon > span {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	height: auto !important;
	line-height: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

.sora-intranet #main .fusion-content-boxes .icon .fontawesome-icon {
	position: static !important;
	display: block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #ffffff !important;
	font-size: 22px !important;
	line-height: 1 !important;
	animation: none !important;
	transition: color 0.15s ease;
}

.sora-intranet #main .fusion-content-boxes .content-box-wrapper:has(.heading-link):is(:hover, :focus-within) .icon .fontawesome-icon {
	color: var(--sora-orange) !important;
}

.sora-intranet #main .fusion-content-boxes .image {
	background: #ffffff;
	border: 1px solid var(--sora-hairline);
	box-sizing: border-box;
}

.sora-intranet #main .fusion-content-boxes .image img {
	display: block;
	width: 36px !important;
	height: 36px !important;
	max-width: none !important;
	margin: 0 !important;
	transform: none !important;
	object-fit: contain;
}

/* The heading: Poppins 600, next to the icon. */
.sora-intranet #main .fusion-content-boxes .content-box-heading {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--sora-fg1) !important;
	font-family: var(--sora-font-display) !important;
	font-weight: 600 !important;
	font-size: 18px !important;
	line-height: 1.3 !important;
	text-align: left !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	text-decoration: none !important;
}

.sora-intranet #main .fusion-content-boxes .content-box-heading::before,
.sora-intranet #main .fusion-content-boxes .content-box-heading::after {
	content: none !important;
	display: none !important;
}

.sora-intranet #main .fusion-content-boxes .heading-link:hover .content-box-heading {
	text-decoration: underline !important;
	text-underline-offset: 3px;
}

.sora-intranet #main .fusion-content-boxes .sora-card__ext {
	display: inline-block;
	margin-left: 6px;
	color: var(--sora-fg3);
	vertical-align: -2px;
}

/* Body text below, in body type. */
.sora-intranet #main .fusion-content-boxes .content-container {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--sora-fg1) !important;
	font-family: var(--sora-font-body) !important;
	font-size: inherit;
	line-height: 1.6;
	text-align: left !important;
}

.sora-intranet #main .fusion-content-boxes .content-container :is(p, ul, ol) {
	color: inherit !important;
}

.sora-intranet #main .fusion-content-boxes .content-container > :first-child {
	margin-top: 0 !important;
}

.sora-intranet #main .fusion-content-boxes .content-container > :last-child {
	margin-bottom: 0 !important;
}

/* A card's "Read more" repeats its link; the card itself is the target. */
.sora-intranet #main .fusion-content-boxes .content-box-wrapper:has(.heading-link) :is(.fusion-read-more, .fusion-read-more-button, .fusion-read-more-wrapper) {
	display: none !important;
}

/* BetterDocs search: one border, on the form only. */
.sora-intranet .betterdocs-live-search .betterdocs-searchform .betterdocs-search-field,
.sora-intranet .betterdocs-live-search .betterdocs-searchform-input-wrap {
	border: 0 !important;
	box-shadow: none !important;
	outline: none;
	height: 100% !important;
}

.sora-intranet .betterdocs-live-search .betterdocs-searchform:focus-within {
	outline: var(--sora-focus-ring);
	outline-offset: 2px;
}

.sora-kb__cards {
	align-items: start;
}

/*
 * Glossary terms in articles (BetterDocs Pro). The term keeps a dotted
 * underline and turns teal on hover and focus. Its tooltip is a charcoal
 * card with an orange top rule: the term in bold, then the definition. The
 * intranet script places it so it stays 16px inside the window (it shifts
 * sideways and opens below the term when there is no room above), and opens
 * it on focus and on tap as well as on hover.
 */
.sora-intranet .glossary-tooltip-container a {
	color: var(--sora-fg1) !important;
	text-decoration: underline dotted !important;
	text-decoration-thickness: 1px !important;
	text-underline-offset: 3px;
}

.sora-intranet .glossary-tooltip-container a:hover,
.sora-intranet .glossary-tooltip-container a:focus-visible,
.sora-intranet .glossary-tooltip-container.active a {
	color: var(--sora-teal) !important;
}

.sora-intranet .glossary-tooltip-overlay {
	left: 50% !important;
	width: min(320px, calc(100vw - 32px)) !important;
	max-width: none !important;
	margin: 0 0 4px !important;
	padding: 12px 14px 14px !important;
	box-sizing: border-box;
	background: var(--sora-charcoal) !important;
	color: #ffffff !important;
	border-top: 3px solid var(--sora-orange);
	border-radius: 0 !important;
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.28) !important;
	font-family: var(--sora-font-body) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	font-style: normal;
	line-height: 1.5 !important;
	letter-spacing: 0;
	text-align: left;
	text-transform: none;
	white-space: normal;
	transform: translateX(calc(-50% + var(--sora-gx, 0px))) !important;
	/* Fade in place; the position is set before it opens and never slides. */
	transition: opacity 0.15s ease, visibility 0.15s ease !important;
}

.sora-intranet .glossary-tooltip-container.active .glossary-tooltip-overlay {
	margin-bottom: 10px !important;
}

.sora-intranet .glossary-tooltip-overlay::before {
	left: calc(50% + var(--sora-ax, 0px)) !important;
	border-top-color: var(--sora-charcoal) !important;
}

.sora-gloss__term {
	display: block;
	margin: 0 0 4px;
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 15px;
	line-height: 1.3;
	color: #ffffff;
}

.sora-intranet .glossary-tooltip-overlay div,
.sora-intranet .glossary-tooltip-overlay p {
	margin: 0 0 8px;
	color: #ffffff;
	font-size: 15px;
	line-height: 1.5;
}

.sora-intranet .glossary-tooltip-overlay div {
	margin: 0;
	max-height: min(400px, 50vh);
}

.sora-intranet .glossary-tooltip-overlay div > :last-child {
	margin-bottom: 0;
}

.sora-intranet .glossary-tooltip-overlay ul,
.sora-intranet .glossary-tooltip-overlay ol {
	margin: 0 0 8px 1.2em;
	padding: 0;
}

.sora-intranet .glossary-tooltip-overlay a {
	color: #ffffff !important;
	text-decoration: underline !important;
}

/* No room above the term: the card opens below it, the arrow on top. */
.sora-intranet .glossary-tooltip-container.sora-gloss--below .glossary-tooltip-overlay {
	top: 100% !important;
	bottom: auto !important;
	margin: 4px 0 0 !important;
}

.sora-intranet .glossary-tooltip-container.sora-gloss--below.active .glossary-tooltip-overlay {
	margin-top: 10px !important;
}

.sora-intranet .glossary-tooltip-container.sora-gloss--below .glossary-tooltip-overlay::before {
	top: -12px !important;
	bottom: auto !important;
	border-top-color: transparent !important;
	border-bottom-color: var(--sora-orange) !important;
}

/* Older builder columns in docs clip their content; the card has to be able to reach past the column. */
.sora-intranet .sora-article__body .fusion-column-wrapper {
	overflow: visible !important;
}

/* A closed tooltip takes no room, so it never widens the page. */
.sora-intranet .glossary-tooltip-container:not(.active) .glossary-tooltip-overlay {
	pointer-events: none;
}

/* Glossary: in the page frame (see "blocks placed straight in a page"), with a compact letter heading per section. */
.sora-intranet .betterdocs-encyclopedia-wrapper {
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .letter-start,
.sora-intranet .betterdocs-encyclopedia-wrapper .letter-start.alphabet-big-round-view {
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 24px 0 8px !important;
	padding: 0 !important;
	background: transparent !important;
	border-radius: 0 !important;
	justify-content: flex-start !important;
	text-align: left !important;
	font-family: var(--sora-font-display) !important;
	font-weight: 800 !important;
	font-size: 28px !important;
	line-height: 1 !important;
	color: var(--sora-orange) !important;
	grid-column: 1 / -1;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .letter-start > span {
	width: auto !important;
	height: auto !important;
	padding: 0 !important;
	background: transparent !important;
	border-radius: 0 !important;
	font-size: 28px !important;
	line-height: 1 !important;
	color: var(--sora-orange) !important;
}

.sora-intranet .betterdocs-encyclopedia-wrapper .tools-card .text-style-link {
	font-family: var(--sora-font-body) !important;
	font-weight: 600;
	font-size: 14px !important;
}

/* ============================================================ page text */
/* Running text on built pages keeps a readable line. */
.sora-intranet .sora-c .sora-prose,
.sora-intranet .sora-c .sora-steps,
.sora-intranet .sora-c .sora-faq {
	max-width: 75ch;
}

.sora-intranet .sora-c .sora-prose p,
.sora-intranet .sora-c p.sora-prose {
	margin: 0 0 var(--sora-s2);
	line-height: 1.6;
}

.sora-intranet .sora-c .sora-prose h3,
.sora-intranet .sora-c .sora-steps h3 {
	margin: var(--sora-s3) 0 var(--sora-s1);
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 18px;
	line-height: 1.3;
	color: var(--sora-fg1);
	text-transform: none;
	letter-spacing: 0;
}

.sora-intranet .sora-c :is(.sora-prose, .sora-steps, .sora-faq) a {
	color: var(--sora-fg1);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Numbered steps: a large numeral beside each. */
.sora-intranet .sora-c .sora-steps {
	counter-reset: sora-step;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sora-intranet .sora-c .sora-steps > li {
	position: relative;
	margin: 0;
	padding: var(--sora-s2) 0 var(--sora-s2) 56px;
	border-top: 1px solid var(--sora-hairline);
	counter-increment: sora-step;
}

.sora-intranet .sora-c .sora-steps > li::before {
	content: counter(sora-step);
	position: absolute;
	left: 0;
	top: var(--sora-s2);
	font-family: var(--sora-font-display);
	font-weight: 800;
	font-size: 32px;
	line-height: 1;
	color: var(--sora-accent-press);
}

.sora-intranet .sora-c .sora-steps > li > h3:first-child {
	margin-top: 2px;
}

.sora-intranet .sora-c .sora-steps p {
	margin: 0 0 var(--sora-s1);
	line-height: 1.6;
}

/* What each status means */
.sora-intranet .sora-c .sora-statuses {
	margin: var(--sora-s1) 0 0;
	padding: 0;
}

.sora-intranet .sora-c .sora-statuses > div {
	padding: 10px 0;
	border-top: 1px solid var(--sora-neutral-5);
}

.sora-intranet .sora-c .sora-statuses dt {
	font-weight: 700;
}

.sora-intranet .sora-c .sora-statuses dd {
	margin: 2px 0 0;
	line-height: 1.55;
	color: var(--sora-fg2);
}

/* FAQs: one question per line, opening in place. */
.sora-intranet .sora-c .sora-faq {
	border-top: 1px solid var(--sora-hairline);
}

.sora-intranet .sora-c .sora-faq:last-of-type {
	border-bottom: 1px solid var(--sora-hairline);
}

.sora-intranet .sora-c .sora-faq summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--sora-s2);
	min-height: 52px;
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.sora-intranet .sora-c .sora-faq summary::-webkit-details-marker {
	display: none;
}

.sora-intranet .sora-c .sora-faq summary::after {
	content: "+";
	flex: 0 0 auto;
	font-family: var(--sora-font-display);
	font-weight: 700;
	font-size: 22px;
	color: var(--sora-fg2);
}

.sora-intranet .sora-c .sora-faq[open] summary::after {
	content: "\2212";
}

.sora-intranet .sora-c .sora-faq__a p {
	margin: 0 0 var(--sora-s2);
	line-height: 1.6;
}

/* Two parts side by side on wide screens (TIP Referrals), one after the other on phones. */
.sora-split {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	column-gap: var(--sora-s6);
	align-items: start;
}

@media (min-width: 1100px) {
	.sora-split {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* The knowledgebase search field fills its box, so the whole box is the tap target. */
.sora-intranet .sora-doccat__search .betterdocs-search-field,
.sora-intranet .sora-kb__search .betterdocs-search-field {
	height: 46px !important;
	min-height: 44px;
}

/* Older builder panels (the form and quiz pages) keep their panel, with square corners. */
.sora-intranet .post-content .fusion-layout-column {
	--awb-border-radius-top-left: 0 !important;
	--awb-border-radius-top-right: 0 !important;
	--awb-border-radius-bottom-left: 0 !important;
	--awb-border-radius-bottom-right: 0 !important;
}

.sora-intranet .post-content .fusion-layout-column > .fusion-column-wrapper {
	border-radius: 0 !important;
}

/* Videos stored on this site (imported docs): full column width. */
.sora-article__body video {
	display: block;
	width: 100%;
	height: auto;
	background: #000;
}

.sora-article__body figure.sora-embed,
.sora-article__body figure.sora-video,
.sora-article__body figure.sora-image {
	max-width: none;
	margin: 0 0 var(--sora-s3);
}

/* ============================================================ glossary terms */
/*
 * A glossary term's own page (templates/glossary-term.php): the title band,
 * then search, the letter bar, the definition card and the way back, all on
 * the page frame's left edge.
 */
.sora-gloss-letters {
	margin: 0 0 var(--sora-s3);
}

.sora-gloss-letters ul {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sora-gloss-letters li {
	margin: 0;
}

/* Letter buttons: the same square 44px boxes as the Glossary page's letter bar. */
.sora-intranet .sora-gloss-letters__a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	padding: 0 8px;
	box-sizing: border-box;
	border: 1px solid var(--sora-hairline);
	background: #ffffff;
	color: var(--sora-fg1);
	font-family: var(--sora-font-body);
	font-weight: 700;
	font-size: 16px;
	text-decoration: none;
}

.sora-intranet a.sora-gloss-letters__a:hover {
	border-color: var(--sora-fg1);
	color: var(--sora-fg1);
}

/* The current letter: orange with charcoal text (5.5:1). */
.sora-intranet .sora-gloss-letters__a.is-current,
.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-alphabets li.active a {
	background: var(--sora-orange) !important;
	border-color: var(--sora-orange) !important;
	color: var(--sora-charcoal) !important;
}

/* Letters with no terms: visibly off, not clickable, not in the Tab order. */
.sora-intranet .sora-gloss-letters__a.is-empty,
.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-alphabets a.letter-has-no-docs {
	background: var(--sora-neutral-2) !important;
	border-style: dashed !important;
	color: #8a8b8d !important;
	cursor: default;
	pointer-events: none;
}

.sora-gloss-term__card {
	max-width: 70ch;
	padding: var(--sora-s3);
	background: #ffffff;
	border: 1px solid var(--sora-hairline);
	border-top: 4px solid var(--sora-orange);
	box-sizing: border-box;
}

.sora-intranet .sora-gloss-term__def {
	font-size: 16px;
	line-height: 1.6;
	color: var(--sora-fg1);
	overflow-wrap: anywhere;
}

.sora-intranet .sora-gloss-term__def p {
	margin: 0 0 var(--sora-s2);
}

.sora-intranet .sora-gloss-term__def > :last-child {
	margin-bottom: 0;
}

.sora-intranet .sora-gloss-term__def ul,
.sora-intranet .sora-gloss-term__def ol {
	margin: 0 0 var(--sora-s2) 1.25em;
	padding: 0;
}

.sora-gloss-term__back {
	margin: var(--sora-s3) 0 0;
}

.sora-intranet .sora-gloss-term__back a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: var(--sora-tap-min);
	color: var(--sora-fg1);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* At 1280 and wider, All plus A to Z fit on one row: 40px wide (still 44px tall) with 3px gaps. */
@media (min-width: 1280px) {
	.sora-gloss-letters ul,
	.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-alphabets,
	.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-alphabet-list {
		gap: 3px !important;
	}

	.sora-intranet .sora-gloss-letters__a,
	.sora-intranet .betterdocs-encyclopedia-wrapper .encyclopedia-alphabets a {
		min-width: 40px;
		padding: 0 4px;
	}
}

/* ============================================================== All Hands */
.sora-ah__latest {
	margin-bottom: 40px;
}

.sora-intranet .sora-ah__title,
.sora-intranet .sora-ah__what {
	margin: 0 0 8px;
	font-size: 15px;
	line-height: 1.5;
	color: var(--sora-fg2);
}

.sora-intranet .sora-ah__title {
	font-weight: 700;
	color: var(--sora-fg1);
}

/* Drive's player, 16:9, as wide as the page column up to 960px. */
.sora-ah__player {
	position: relative;
	max-width: 960px;
	aspect-ratio: 16 / 9;
	margin: 16px 0;
	background: #2c2c2a;
}

.sora-ah__player iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.sora-ah__btns {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 12px;
	margin: 16px 0 8px;
}

.sora-intranet .sora-ah__btns .sora-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	text-decoration: none;
}

.sora-intranet .sora-ah__hint,
.sora-intranet .sora-ah__note {
	margin: 0 0 16px;
	font-size: 14px;
	line-height: 1.5;
	color: var(--sora-fg2);
}

.sora-intranet .sora-ah__year {
	margin: 24px 0 4px;
	font-family: var(--sora-font-display);
	font-weight: 800;
	font-size: 22px;
	line-height: 1.2;
	color: var(--sora-orange);
}

.sora-ah__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.sora-intranet .sora-ah__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 4px 24px;
	margin: 0;
	padding: 10px 0;
	border-bottom: 1px solid var(--sora-hairline);
}

.sora-ah__when {
	flex: 1 1 18em;
	min-width: 0;
}

.sora-intranet .sora-ah__date {
	margin: 0;
	font-weight: 600;
	font-size: 15px;
	line-height: 1.4;
	color: var(--sora-fg1);
}

.sora-intranet .sora-ah__when .sora-ah__title,
.sora-intranet .sora-ah__when .sora-ah__what {
	margin: 2px 0 0;
	font-size: 14px;
}

.sora-ah__links {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 20px;
}

.sora-ah__slot:empty {
	display: none;
}

/* Wider screens: Watch and Read the notes in two fixed columns. */
@media (min-width: 600px) {
	.sora-ah__links {
		display: grid;
		grid-template-columns: 6em 9.5em;
	}

	.sora-ah__slot:empty {
		display: block;
	}
}

.sora-intranet .sora-ah__a {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	min-height: 44px;
	color: var(--sora-fg1);
	font-weight: 600;
	font-size: 15px;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sora-intranet .sora-ah__a:hover {
	color: var(--sora-fg1);
	text-decoration-thickness: 2px;
}

.sora-ah__note {
	margin-top: 32px !important;
}
