/* PARASOL site styles. Loaded only on the PARASOL site, through extra_css in
 * sites/parasol/mkdocs.yml; the DSMLP site never sees this file.
 *
 * The same contract as theme/css/site.css: EVERY rule is scoped under the
 * canvas, main#main-content, and nothing here sets a background on html, body,
 * :root or main#main-content itself, or uses a full-bleed trick.
 *
 * Ported 2026-10-25 from the PARASOL review site, bpollak/parasol at 4e8f472
 * (src/site/_resources/css: parasol.css, landing-hubs.css, agent-site.css,
 * the last two from the TritonAI site). Only the rules for the components the
 * PARASOL hub pages and banners use were taken. Each selector was re-scoped:
 * the review site's body classes (.agent-page, .landing-hub-page,
 * .about-subpage, .docs-page) were dropped, since this theme puts no classes on
 * <body>, and main#main-content put in their place. Declarations that sized a
 * section to the viewport (hub-full-bleed: margin calc(50% - 50vw), padding
 * from 100vw) were removed, so hub sections sit within the content column.
 * The custom properties come from the review site's :root, declared on the
 * canvas here instead.
 */

main#main-content {
	--triton-blue: #00629b;
	--triton-border: #d5d9de;
	--triton-bright-blue: #00c6d7;
	--triton-gold: #ffcd00;
	--triton-navy: #182b49;
	--triton-sand: #f5f0e6;
	--triton-slate: #37474f;
}

/* ---- from parasol.css ------------------------------------------------- */




main#main-content .hub-section-cta {
	margin-top: 1.25em;
}

main#main-content .dsmlp-map-core .dsmlp-map-core-name {
	color: var(--triton-navy);
	display: block;
	font-size: 29px;
	font-weight: 400;
	line-height: 1;
	margin: 0;
}





main#main-content .docs-cards {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	margin: 18px 0 28px;
}

main#main-content .docs-card {
	background: #fff;
	border: 1px solid var(--triton-border);
	border-radius: 6px;
	box-shadow: 0 1px 2px rgba(24, 43, 73, .06);
	display: flex;
	flex-direction: column;
	padding: 18px 18px 16px;
}

main#main-content .docs-card > .glyphicon {
	color: var(--triton-blue);
	font-size: 22px;
	margin-bottom: 10px;
}

main#main-content .docs-card > h3,
main#main-content .docs-card-title {
	color: var(--triton-navy);
	font-family: Roboto, sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 8px;
}

main#main-content .docs-card p {
	font-size: 15px;
	line-height: 1.55;
}

main#main-content .docs-card > :last-child {
	margin-bottom: 0;
}

main#main-content .docs-checklist {
	list-style: none;
	margin: 12px 0 22px;
	padding: 0;
}

main#main-content .docs-checklist > li {
	padding: 4px 0 4px 32px;
	position: relative;
}

main#main-content .docs-checklist > li::before {
	border-bottom: 3px solid #2e7d32;
	border-right: 3px solid #2e7d32;
	content: "";
	height: 14px;
	left: 9px;
	position: absolute;
	top: 7px;
	transform: rotate(45deg);
	width: 7px;
}


main#main-content .hub-section-ruled {
	border-top: 1px solid var(--triton-border);
}

/* ---- from landing-hubs.css -------------------------------------------- */

main#main-content .landing-hub-hero {
	background-color: var(--triton-navy);
	background-position: center;
	background-size: cover;
	min-height: 315px;
	overflow: hidden;
	position: relative;
}

main#main-content .landing-hub-hero::before {
	background: linear-gradient(90deg, rgba(24, 43, 73, .92) 0%, rgba(24, 43, 73, .72) 46%, rgba(24, 43, 73, .28) 100%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: 0;
}

main#main-content .landing-hub-hero--abstract {
	background-color: #102b4e;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

main#main-content .landing-hub-hero--abstract::before {
	background: linear-gradient(90deg, rgba(24, 43, 73, .3) 0%, rgba(24, 43, 73, .12) 48%, rgba(24, 43, 73, 0) 82%);
}

main#main-content .landing-hub-hero .container {
	position: relative;
	z-index: 1;
}

main#main-content .landing-hub-title {
	max-width: 820px;
	padding: 74px 0 60px;
}

main#main-content .landing-hub-title > p {
	color: var(--triton-gold);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .14em;
	margin: 0 0 8px;
	text-transform: uppercase;
}

main#main-content .landing-hub-title .intro-banner-heading {
	color: #fff;
	float: none;
	font-size: clamp(46px, 5vw, 68px);
	line-height: 1;
	margin: 0;
	max-width: 780px;
	text-align: left;
	text-shadow: 0 2px 18px rgba(0, 0, 0, .22);
	text-wrap: balance;
}

main#main-content .landing-hub-content {
	float: none;
	margin-bottom: 0 !important;
	padding: 0 !important;
}

main#main-content .about-subpage-hero {
	background-color: var(--triton-navy);
	background-position: center;
	background-size: cover;
	min-height: 270px;
	overflow: hidden;
	position: relative;
}

main#main-content .about-subpage-hero::before {
	background: linear-gradient(90deg, rgba(24, 43, 73, .96), rgba(24, 43, 73, .72) 58%, rgba(24, 43, 73, .42));
	content: "";
	inset: 0;
	position: absolute;
}

main#main-content .about-subpage-hero .container {
	position: relative;
	z-index: 1;
}

main#main-content .about-subpage-title {
	max-width: 850px;
	padding: 58px 0 48px;
}

main#main-content .about-subpage-title > p {
	color: var(--triton-gold);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .14em;
	margin: 0 0 8px;
	text-transform: uppercase;
}

main#main-content .about-subpage-title .intro-banner-heading {
	color: #fff;
	float: none;
	font-size: clamp(42px, 4.6vw, 60px);
	line-height: 1;
	margin: 0;
	max-width: 820px;
	text-align: left;
	text-shadow: 0 2px 18px rgba(0, 0, 0, .24);
	text-wrap: balance;
}

main#main-content .main-section > .hub-section {
	margin-bottom: 36px;
	padding: 34px 0;
}

main#main-content .main-section > .hub-section:first-child {
	padding-top: 6px;
}

main#main-content .main-section > .hub-section-sand {
	border: 1px solid #e2dacb;
}

main#main-content .main-section > .hub-section > .container {
	padding-left: 0;
	padding-right: 0;
	width: auto;
}

main#main-content .hub-heading h2,
main#main-content .hub-split-copy h2,
main#main-content .hub-subscribe h2 {
	font-size: clamp(32px, 3vw, 40px);
}

main#main-content .trust-intro .hub-split-copy,
main#main-content .trust-intro .hub-split-media {
	width: 100%;
}

main#main-content .trust-intro .hub-split-media {
	margin-top: 34px;
}

main#main-content .hub-number-grid > .col-md-3 {
	width: 50%;
}

main#main-content .hub-subscribe {
	background: #f5f8fa;
	border: 1px solid var(--triton-border);
	border-top: 5px solid var(--triton-bright-blue);
	border-radius: 8px;
	padding: 32px 30px;
}

main#main-content .hub-section {
	margin: 0;
	padding: 70px 0;
}

main#main-content .hub-section-intro {
	padding-bottom: 78px;
	padding-top: 66px;
}

main#main-content .landing-hub-content > .connect-intro .hub-heading {
	margin-bottom: 0;
}

main#main-content .landing-hub-content > .connect-intro {
	padding-block: 66px 24px;
}

main#main-content .landing-hub-content > .connect-communities {
	padding-block: 24px;
}

main#main-content .hub-section-dark {
	background-color: var(--triton-navy);
	background-image: linear-gradient(115deg, rgba(24, 43, 73, .98), rgba(0, 98, 155, .88)), url("https://cdn.ucsd.edu/cms/decorator-5/img/navy-simple-grit.jpg");
	background-position: center;
	background-size: cover;
	color: #fff;
}

main#main-content .hub-section.certificate-close {
	margin-top: 70px;
}

main#main-content .hub-section-intro.certificate-tight {
	padding-bottom: 0;
}

main#main-content .hub-section.certificate-tight {
	padding-top: 0;
}

main#main-content .hub-section-sand {
	background: var(--triton-sand);
}

main#main-content .hub-heading {
	margin-bottom: 34px;
	max-width: 820px;
}

main#main-content .hub-heading h2,
main#main-content .hub-split-copy h2,
main#main-content .hub-subscribe h2 {
	color: var(--triton-navy);
	font-size: clamp(34px, 3.7vw, 47px);
	line-height: 1.08;
	margin: 0 0 12px;
	text-wrap: balance;
}

main#main-content .hub-heading > p:last-child,
main#main-content .hub-lede {
	color: #52616b;
	font-size: 19px;
	line-height: 1.58;
}

main#main-content .hub-heading p.hub-body {
	color: #333;
	font-size: 16px;
	line-height: 1.5;
}

main#main-content .hub-section-dark h2,
main#main-content .hub-section-dark h3,
main#main-content .hub-section-dark .hub-heading > p:last-child,
main#main-content .hub-section-dark .hub-split-copy p {
	color: #fff;
}

main#main-content .hub-section-dark .home-kicker {
	color: var(--triton-gold);
}

main#main-content .hub-section-dark .hub-heading a:not(.btn) {
	color: #fff;
	text-decoration: underline;
	text-decoration-color: var(--triton-bright-blue);
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

main#main-content .hub-section-dark .hub-heading a:hover,
main#main-content .hub-section-dark .hub-heading a:focus {
	color: var(--triton-bright-blue);
}

main#main-content .hub-split {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
}

main#main-content .hub-split-align-center {
	align-items: center;
}

main#main-content .hub-split-copy {
	padding-right: 46px;
}

main#main-content .hub-split-copy > p:last-child {
	margin-bottom: 0;
}

main#main-content .hub-split-media {
	padding-left: 36px;
}

main#main-content .home-feature .hub-split {
	align-items: stretch;
	margin: 0;
	min-height: 450px;
}

main#main-content .home-feature .hub-split-copy {
	align-self: center;
	padding: 58px 48px 58px 54px;
}

main#main-content .home-feature .hub-split-copy .hub-lede {
	margin-bottom: 26px;
}

main#main-content .home-feature .hub-split-media {
	align-items: center;
	background-color: var(--triton-navy);
	background-image: linear-gradient(145deg, rgba(24, 43, 73, .96), rgba(0, 98, 155, .86)), url("https://cdn.ucsd.edu/cms/decorator-5/img/navy-simple-grit.jpg");
	background-position: center;
	background-size: cover;
	display: flex;
	padding: 38px;
}

main#main-content .landing-hub-content > .about-feature {
	padding: 0;
}

main#main-content .about-feature .hub-split {
	align-items: stretch;
	margin: 0;
	min-height: 410px;
}

main#main-content .about-feature .hub-split-copy {
	align-self: center;
	padding: 54px 52px 54px 54px;
}

main#main-content .about-feature .hub-split-copy .hub-lede {
	margin-bottom: 26px;
}

main#main-content .about-feature .hub-split > .col-md-5 {
	display: flex;
	padding: 0;
}

main#main-content .about-feature .hub-quote-card .home-kicker {
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .12em;
	margin-bottom: 10px;
	text-transform: uppercase;
}

main#main-content .trust-layers .hub-heading > p:last-child {
	color: #d9f2f5;
}

main#main-content .shared-compute-bridge .hub-split-copy p {
	color: #334e5a;
}

main#main-content .dsmlp-intro-actions {
	align-items: stretch;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 27px;
}

main#main-content .dsmlp-platform-map {
	background:
    radial-gradient(circle at 90% 8%, rgba(0, 198, 215, .22), transparent 28%),
    var(--triton-navy);
	border-top: 6px solid var(--triton-gold);
	box-shadow: 0 18px 42px rgba(24, 43, 73, .2);
	color: #fff;
	margin: 0;
	padding: 27px;
}

main#main-content .dsmlp-map-label {
	color: var(--triton-gold);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .13em;
	margin: 0 0 18px;
	text-transform: uppercase;
}

main#main-content .dsmlp-map-entry {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

main#main-content .dsmlp-map-entry article {
	background: rgba(255, 255, 255, .1);
	border: 1px solid rgba(255, 255, 255, .28);
	min-width: 0;
	padding: 17px 15px;
}

main#main-content .dsmlp-map-entry .glyphicon {
	color: var(--triton-bright-blue);
	display: block;
	font-size: 25px;
	margin-bottom: 10px;
}

main#main-content .dsmlp-map-entry strong,
main#main-content .dsmlp-map-entry small {
	display: block;
}

main#main-content .dsmlp-map-entry strong {
	color: #fff;
	font-size: 17px;
}

main#main-content .dsmlp-map-entry small {
	color: #d9f2f5;
	font-size: 12px;
	line-height: 1.45;
	margin-top: 4px;
}

main#main-content .dsmlp-map-connector {
	align-items: center;
	display: flex;
	flex-direction: column;
	min-height: 62px;
}

main#main-content .dsmlp-map-connector span {
	color: #d9f2f5;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .08em;
	padding: 8px 0 4px;
	text-transform: uppercase;
}

main#main-content .dsmlp-map-connector i {
	background: var(--triton-bright-blue);
	flex: 1;
	min-height: 28px;
	position: relative;
	width: 3px;
}

main#main-content .dsmlp-map-connector i::after {
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	border-top: 10px solid var(--triton-bright-blue);
	bottom: -1px;
	content: "";
	left: -5px;
	position: absolute;
}

main#main-content .dsmlp-map-core {
	align-items: center;
	background: #fff;
	border-left: 7px solid var(--triton-gold);
	color: var(--triton-navy);
	display: grid;
	gap: 17px;
	grid-template-columns: 58px 1fr;
	padding: 19px 20px;
}

main#main-content .dsmlp-map-core > .glyphicon {
	color: var(--triton-blue);
	font-size: 42px;
	text-align: center;
}

main#main-content .dsmlp-map-core p {
	color: var(--triton-blue);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .1em;
	margin: 0 0 2px;
	text-transform: uppercase;
}

main#main-content .dsmlp-map-core h3 {
	color: var(--triton-navy);
	font-size: 29px;
	line-height: 1;
	margin: 0;
}

main#main-content .dsmlp-map-core ul {
	display: flex;
	flex-wrap: wrap;
	gap: 5px 13px;
	list-style: none;
	margin: 10px 0 0;
	padding: 0;
}

main#main-content .dsmlp-map-core li {
	color: #52616b;
	font-size: 11px;
	font-weight: 700;
}

main#main-content .dsmlp-map-outcomes {
	display: grid;
	gap: 11px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

main#main-content .dsmlp-map-outcomes span {
	background: var(--triton-blue);
	border-bottom: 4px solid var(--triton-bright-blue);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.3;
	padding: 13px 12px;
	text-align: center;
}

main#main-content .dsmlp-platform-map figcaption {
	color: #d9f2f5;
	font-size: 12px;
	line-height: 1.5;
	margin-top: 18px;
}

main#main-content .dsmlp-access-pathway {
	background: var(--triton-sand);
	border-left: 7px solid var(--triton-gold);
	margin-top: 34px;
	padding: 29px 30px 27px;
}

main#main-content .dsmlp-access-pathway-heading {
	align-items: end;
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin-bottom: 23px;
}

main#main-content .dsmlp-access-pathway-heading .home-kicker {
	flex: 0 0 auto;
	margin: 0 0 4px;
}

main#main-content .dsmlp-access-pathway-heading h3 {
	color: var(--triton-navy);
	flex: 0 1 700px;
	font-size: 25px;
	line-height: 1.2;
	margin: 0;
	text-align: right;
}

main#main-content .dsmlp-access-pathway ol {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

main#main-content .dsmlp-access-pathway li {
	align-items: start;
	background: #fff;
	border: 1px solid var(--triton-border);
	display: grid;
	gap: 12px;
	grid-template-columns: 36px 1fr;
	min-width: 0;
	padding: 19px 17px;
}

main#main-content .dsmlp-access-pathway li > span {
	align-items: center;
	background: var(--triton-blue);
	border-radius: 50%;
	color: #fff;
	display: flex;
	font-size: 15px;
	font-weight: 700;
	height: 36px;
	justify-content: center;
	width: 36px;
}

main#main-content .dsmlp-access-pathway strong {
	color: var(--triton-navy);
	display: block;
	font-size: 16px;
	line-height: 1.3;
}

main#main-content .dsmlp-access-pathway li p {
	color: #52616b;
	font-size: 13px;
	line-height: 1.5;
	margin: 6px 0 0;
}

main#main-content .dsmlp-access-pathway-note {
	align-items: start;
	color: #52616b;
	display: grid;
	gap: 10px;
	grid-template-columns: 20px 1fr;
	line-height: 1.5;
	margin: 20px 0 0;
}

main#main-content .dsmlp-access-pathway-note .glyphicon {
	color: var(--triton-blue);
	margin-top: 3px;
	text-align: center;
}

main#main-content .dsmlp-resource-panel {
	background: var(--triton-navy);
	border-top: 6px solid var(--triton-gold);
	box-shadow: 0 14px 34px rgba(24, 43, 73, .16);
	color: #fff;
	padding: 30px 31px 28px;
}

main#main-content .dsmlp-resource-panel .home-kicker {
	color: var(--triton-gold);
}

main#main-content .dsmlp-resource-panel h3 {
	color: #fff;
	font-size: 28px;
	line-height: 1.15;
	margin: 0 0 20px;
}

main#main-content .dsmlp-resource-panel ul {
	list-style: none;
	margin: 0 0 22px;
	padding: 0;
}

main#main-content .dsmlp-resource-panel li + li {
	border-top: 1px solid rgba(255, 255, 255, .18);
}

main#main-content .dsmlp-resource-panel a {
	color: #fff;
}

main#main-content .dsmlp-resource-panel li a {
	display: block;
	font-weight: 700;
	padding: 11px 0;
}

main#main-content .dsmlp-resource-panel > p:last-child {
	color: #d9f2f5;
	margin: 0;
}

main#main-content .hub-action-grid,
main#main-content .hub-number-grid,
main#main-content .hub-principle-grid {
	display: flex;
	flex-wrap: wrap;
}

main#main-content .hub-action-grid > [class*="col-"],
main#main-content .hub-number-grid > [class*="col-"],
main#main-content .hub-principle-grid > [class*="col-"] {
	display: flex;
	margin-bottom: 30px;
}

main#main-content .hub-action-card {
	background: #fff;
	border: 1px solid var(--triton-border);
	border-top: 5px solid var(--triton-bright-blue);
	box-shadow: 0 8px 24px rgba(24, 43, 73, .08);
	display: flex;
	flex-direction: column;
	margin-bottom: 0;
	min-height: 270px;
	padding: 28px 25px 24px;
	transition: box-shadow .2s ease, transform .2s ease;
	width: 100%;
}

main#main-content .hub-action-grid > div:nth-child(2) .hub-action-card {
	border-top-color: var(--triton-gold);
}

main#main-content .hub-action-grid > div:nth-child(3) .hub-action-card {
	border-top-color: var(--triton-blue);
}

main#main-content .hub-action-grid > div:nth-child(4) .hub-action-card {
	border-top-color: #6e963b;
}

main#main-content .hub-action-grid-four .hub-action-card {
	min-height: 250px;
	padding: 24px 20px 20px;
}

main#main-content .hub-action-grid-four .hub-action-card h3 {
	font-size: 21px;
	line-height: 1.3;
	margin: 14px 0 8px;
}

main#main-content .hub-action-card:hover,
main#main-content .hub-action-card:focus-within {
	box-shadow: 0 16px 34px rgba(24, 43, 73, .14);
	transform: translateY(-3px);
}

main#main-content .hub-action-card .glyphicon {
	color: var(--triton-blue);
	font-size: 29px;
}

main#main-content .hub-action-card h3 {
	color: var(--triton-navy);
	font-size: 27px;
	margin: 18px 0 9px;
}

main#main-content .hub-action-card a {
	font-weight: 700;
	margin-top: auto;
	padding-top: 14px;
}

main#main-content .hub-number-grid article {
	border-top: 1px solid rgba(255, 255, 255, .28);
	padding: 22px 22px 6px 0;
	width: 100%;
}

main#main-content .hub-number-grid article > span {
	color: var(--triton-gold);
	display: block;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .16em;
	margin-bottom: 14px;
}

main#main-content .hub-number-grid h3 {
	font-size: 29px;
	margin: 0 0 10px;
}

main#main-content .hub-number-grid p {
	color: #d9f2f5;
	line-height: 1.55;
}

main#main-content .hub-number-grid a {
	color: #fff;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: var(--triton-bright-blue);
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

main#main-content .hub-number-grid-light article {
	border-top-color: #aebbc3;
}

main#main-content .hub-number-grid-light article > span {
	color: var(--triton-blue);
}

main#main-content .hub-number-grid-light h3 {
	color: var(--triton-navy);
}

main#main-content .hub-number-grid-light p {
	color: #344c5a;
}

main#main-content .hub-number-grid-light a {
	color: var(--triton-blue);
}

main#main-content .build-harness-access .home-kicker {
	margin-bottom: 7px;
}

main#main-content .hub-principle-grid article {
	align-items: flex-start;
	border-top: 3px solid var(--triton-bright-blue);
	display: flex;
	gap: 20px;
	padding: 24px 20px 20px 0;
	width: 100%;
}

main#main-content .hub-principle-grid .glyphicon {
	color: var(--triton-blue);
	font-size: 28px;
	width: 34px;
}

main#main-content .hub-principle-grid h3 {
	color: var(--triton-navy);
	font-size: 26px;
	margin: 0 0 7px;
}

main#main-content .hub-link-panel {
	background: #fff;
	border-top: 1px solid #e7eaed;
}

main#main-content .hub-link-columns {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	row-gap: 16px;
}

main#main-content .hub-link-columns::before,
main#main-content .hub-link-columns::after {
	display: none;
}

main#main-content .connect-departmental .hub-link-panel {
	border-top: 0;
}

main#main-content .hub-link-columns > div {
	float: none;
	margin-bottom: 0;
	width: auto;
}

main#main-content .hub-link-columns a {
	align-items: center;
	background: #f7f8f9;
	border-left: 4px solid var(--triton-blue);
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 104px;
	padding: 20px 22px;
	text-decoration: none;
}

main#main-content .hub-link-columns strong,
main#main-content .hub-link-columns span {
	display: block;
	width: 100%;
}

main#main-content .hub-link-columns strong {
	color: var(--triton-navy);
	font-size: 19px;
	margin-bottom: 4px;
}

main#main-content .hub-link-columns span {
	color: #52616b;
}

main#main-content .hub-subscribe {
	background: linear-gradient(105deg, #fff 0%, #fff 67%, var(--triton-sand) 67%, var(--triton-sand) 100%);
	border-top: 5px solid var(--triton-gold);
}

main#main-content .hub-subscribe.hub-task-intake {
	background: #f0f6fa;
	border-top: 4px solid var(--triton-blue);
}

main#main-content .landing-section-navy .home-kicker {
	color: var(--triton-gold);
}

main#main-content .tritongpt-recognition-panel .home-kicker {
	color: var(--triton-gold);
}

@media (max-width: 991px) {
	main#main-content .hub-link-columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	main#main-content .landing-hub-hero {
		min-height: 285px;
	}
	main#main-content .landing-hub-title {
		padding: 66px 0 52px;
	}
	main#main-content .hub-split-copy,
	main#main-content .hub-split-media {
		flex: 0 0 100%;
		max-width: 100%;
		padding-left: 15px;
		padding-right: 15px;
		width: 100%;
	}
	main#main-content .hub-split-media {
		margin-top: 34px;
	}
	main#main-content .home-feature .hub-split {
		min-height: 0;
	}
	main#main-content .home-feature .hub-split-copy {
		padding: 48px 42px;
	}
	main#main-content .home-feature .hub-split-media {
		margin-top: 0;
		padding: 38px 42px;
	}
	main#main-content .about-feature .hub-split {
		min-height: 0;
	}
	main#main-content .about-feature .hub-split-copy {
		padding: 48px 42px;
	}
	main#main-content .about-feature .hub-split > .col-md-5 {
		display: block;
	}
	main#main-content .dsmlp-access-pathway ol {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	main#main-content .hub-link-columns {
		grid-template-columns: 1fr;
	}
	main#main-content .about-subpage-hero {
		min-height: 220px;
	}
	main#main-content .about-subpage-hero::before {
		background: rgba(24, 43, 73, .78);
	}
	main#main-content .about-subpage-title {
		padding: 46px 0 38px;
	}
	main#main-content .about-subpage-title .intro-banner-heading {
		font-size: 40px;
	}
	main#main-content .main-section > .hub-section {
		border-radius: 0;
		margin-bottom: 26px;
		padding: 36px 22px;
	}
	main#main-content .main-section > .hub-section:first-child {
		padding-top: 12px;
	}
	main#main-content .hub-number-grid > .col-md-3 {
		width: 100%;
	}
	main#main-content .hub-subscribe {
		padding: 28px 22px;
	}
	main#main-content .landing-hub-hero {
		min-height: 235px;
	}
	main#main-content .landing-hub-hero::before {
		background: rgba(24, 43, 73, .79);
	}
	main#main-content .landing-hub-hero--abstract {
		background-position: 70% center !important;
		background-size: cover !important;
	}
	main#main-content .landing-hub-hero--abstract::before {
		background: linear-gradient(90deg, rgba(24, 43, 73, .72) 0%, rgba(24, 43, 73, .52) 58%, rgba(24, 43, 73, .2) 100%);
	}
	main#main-content .landing-hub-title {
		padding: 48px 0 38px;
	}
	main#main-content .landing-hub-title .intro-banner-heading {
		font-size: 42px;
	}
	main#main-content .hub-section {
		padding: 48px 22px;
	}
	main#main-content .home-feature .hub-split-copy {
		padding: 38px 28px 34px;
	}
	main#main-content .home-feature .hub-split-media {
		padding: 26px 22px;
	}
	main#main-content .about-feature .hub-split-copy {
		padding: 38px 28px 34px;
	}
	main#main-content .landing-hub-content > .hub-section {
		padding-left: 22px;
		padding-right: 22px;
	}
	main#main-content .hub-action-grid > [class*="col-"],
	main#main-content .hub-number-grid > [class*="col-"],
	main#main-content .hub-principle-grid > [class*="col-"] {
		display: block;
	}
	main#main-content .hub-action-card {
		min-height: 0;
	}
	main#main-content .dsmlp-intro-actions {
		align-items: stretch;
		flex-direction: column;
	}
	main#main-content .dsmlp-intro-actions .btn {
		width: 100%;
	}
	main#main-content .dsmlp-platform-map {
		padding: 23px 19px;
	}
	main#main-content .dsmlp-map-entry,
	main#main-content .dsmlp-map-outcomes {
		grid-template-columns: 1fr;
	}
	main#main-content .dsmlp-map-core {
		gap: 12px;
		grid-template-columns: 42px 1fr;
		padding: 18px 15px;
	}
	main#main-content .dsmlp-map-core > .glyphicon {
		font-size: 32px;
	}
	main#main-content .dsmlp-access-pathway {
		padding: 24px 18px 22px;
	}
	main#main-content .dsmlp-access-pathway-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 5px;
	}
	main#main-content .dsmlp-access-pathway-heading h3 {
		flex-basis: auto;
		font-size: 22px;
		text-align: left;
	}
	main#main-content .dsmlp-access-pathway li {
		padding: 17px 15px;
	}
	main#main-content .dsmlp-resource-panel {
		padding: 27px 23px 25px;
	}
	main#main-content .hub-subscribe {
		background: #fff;
	}
}

@media (prefers-reduced-motion: reduce) {
	main#main-content .hub-action-card {
		transition: none;
	}
}

/* ---- from agent-site.css ---------------------------------------------- */

main#main-content .intro-banner {
	background-color: var(--triton-navy);
}

main#main-content .home-kicker {
	color: var(--triton-blue);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .12em;
	margin: 0 0 10px;
	text-transform: uppercase;
}

main#main-content .agent-metric-grid {
	align-items: stretch;
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin-bottom: 4px;
	padding-left: 0;
}

main#main-content .agent-metric-grid > [class*="col-"] {
	display: flex;
	flex: 0 0 auto;
	margin-bottom: 26px;
}

main#main-content .agent-metric-card {
	align-items: center;
	background: var(--triton-navy);
	border-bottom: 6px solid var(--triton-bright-blue);
	color: #fff;
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	justify-content: center;
	min-height: 205px;
	padding: 28px 20px 25px;
	text-align: center;
	width: 100%;
}

main#main-content .agent-metric-value {
	color: var(--triton-gold);
	font-size: 46px;
	line-height: 1;
}

main#main-content .agent-metric-label {
	font-size: 17px;
	font-weight: 700;
	letter-spacing: .055em;
	margin-top: 15px;
	text-transform: uppercase;
}

main#main-content .agent-metric-note {
	color: #d9f2f5;
	font-size: 15px;
	line-height: 1.4;
	margin-top: 8px;
}

main#main-content .roadmap-status-key .home-kicker {
	color: var(--triton-gold);
}

@media (max-width: 767px) {
	main#main-content .agent-metric-grid > [class*="col-"] {
		width: 100%;
	}
	main#main-content .agent-metric-card {
		min-height: 0;
	}
}

main#main-content .home-ecosystem-callout .home-kicker,
main#main-content .home-latest-update .panel-heading .home-kicker {
	color: var(--triton-gold);
}

main#main-content .learning-access-standard .home-kicker {
	color: var(--triton-gold);
}

main#main-content .use-case-primary-guidance .home-kicker {
	color: var(--triton-blue);
	margin-bottom: 5px;
}

main#main-content .use-case-primary-guidance p:not(.home-kicker) {
	color: var(--triton-slate);
	font-size: 18px;
	line-height: 1.55;
	margin: 0;
	max-width: 850px;
}

main#main-content .use-case-overview .home-kicker {
	color: var(--triton-gold);
}

main#main-content .use-case-governance > .use-case-section-heading .home-kicker {
	margin-bottom: 5px;
}

main#main-content .symposium-intro .home-kicker {
	color: var(--triton-bright-blue);
}

main#main-content .developer-start-shared-service .home-kicker {
	color: #fff;
}

main#main-content .delivery-pathway-heading .home-kicker {
	grid-column: 1;
	margin-bottom: 0;
}

main#main-content .triton-updates-intro .home-kicker {
	color: var(--triton-gold);
}

main#main-content .triton-updates-intro .hub-lede {
	color: #e6f5f7;
	font-size: 20px;
	line-height: 1.55;
	margin: 0;
	max-width: 680px;
}

@media (max-width: 767px) {
	main#main-content .triton-updates-intro .hub-lede {
		font-size: 18px;
	}
}

main#main-content .hub-action-card {
	color: #334155;
}

main#main-content .hub-action-card p,
main#main-content .hub-action-card small,
main#main-content .hub-action-card li {
	color: #334155;
}

main#main-content .hub-action-card h3 {
	color: var(--triton-navy, #182b49);
}

main#main-content .hub-section-dark a:not(.btn) {
	color: #ffd100;
	font-weight: 600;
	text-decoration: underline;
}

main#main-content .hub-section-dark a:not(.btn):hover,
main#main-content .hub-section-dark a:not(.btn):focus {
	color: #ffe066;
	text-decoration: underline;
}

main#main-content .hub-section-dark .shared-compute-mini a:not(.btn),
main#main-content .hub-section-dark .hub-note-card a:not(.btn) {
	color: var(--triton-blue);
	text-decoration: underline;
}

main#main-content .hub-section-dark .shared-compute-mini a:not(.btn):hover,
main#main-content .hub-section-dark .shared-compute-mini a:not(.btn):focus,
main#main-content .hub-section-dark .hub-note-card a:not(.btn):hover,
main#main-content .hub-section-dark .hub-note-card a:not(.btn):focus {
	color: var(--triton-navy);
}

main#main-content .hub-section-dark .hub-quote-card a:not(.btn),
main#main-content .hub-section-dark .hub-note-card a:not(.btn),
main#main-content .hub-section-dark .hub-action-card a:not(.btn) {
	color: var(--triton-blue, #006a96);
	font-weight: 600;
	text-decoration: none;
}

main#main-content .hub-section-dark .hub-quote-card a:not(.btn):hover,
main#main-content .hub-section-dark .hub-note-card a:not(.btn):hover,
main#main-content .hub-section-dark .hub-action-card a:not(.btn):hover {
	color: #004b6e;
	text-decoration: underline;
}

main#main-content .training-video-journey-panel .home-kicker,
main#main-content .training-video-journey-panel .landing-section-heading .home-kicker {
	color: #00629b;
}

main#main-content .video-discussion-section .landing-section-heading .home-kicker {
	margin: 20px 0 0;
}

/* ---- Banner art ------------------------------------------------------- *
 * theme/partials/hero-banner.html puts site-hero--<key> on each banner,
 * the key coming from extra.hero in sites/parasol/mkdocs.yml. The art keeps
 * its motif on the right, so narrow screens crop toward it.
 */
main#main-content .intro-banner {
	background-position: 80% center;
	background-repeat: no-repeat;
	background-size: cover;
}

main#main-content .site-hero--home {
	background-image: url("/images/hero/home.webp");
}

main#main-content .site-hero--about {
	background-image: url("/images/hero/about.webp");
}

main#main-content .site-hero--why {
	background-image: url("/images/hero/why.webp");
}

main#main-content .site-hero--rename {
	background-image: url("/images/hero/rename.webp");
}

main#main-content .site-hero--works {
	background-image: url("/images/hero/works.webp");
}

main#main-content .site-hero--start {
	background-image: url("/images/hero/start.webp");
}

main#main-content .site-hero--docs {
	background-image: url("/images/hero/docs.webp");
}

main#main-content .site-hero--access {
	background-image: url("/images/hero/access.webp");
}

main#main-content .site-hero--storage {
	background-image: url("/images/hero/storage.webp");
}

main#main-content .site-hero--jobs {
	background-image: url("/images/hero/jobs.webp");
}

main#main-content .site-hero--gpu {
	background-image: url("/images/hero/gpu.webp");
}

main#main-content .site-hero--environments {
	background-image: url("/images/hero/environments.webp");
}

main#main-content .site-hero--grading {
	background-image: url("/images/hero/grading.webp");
}

main#main-content .site-hero--reference {
	background-image: url("/images/hero/reference.webp");
}

main#main-content .site-hero--support {
	background-image: url("/images/hero/support.webp");
}

/* ---- Home page rotator ------------------------------------------------ *
 * theme/partials/home-carousel.html: the Decorator rotator, which base.css
 * styles. These are the review site's additions (agent-site.css), re-scoped
 * from its body class: the slide titles are <h2>s where the Decorator expects
 * <h1>s, the art keeps the banner's proportions, and on phones the slides
 * stack in one grid cell so the banner keeps one height as they turn.
 */
main#main-content #heroslider .hero-slide-heading {
	color: #fff;
	font-family: Teko-SemiBold, sans-serif;
	font-size: 56px;
	font-weight: 700;
	line-height: .9;
	margin: 23px 0 11.5px;
}

main#main-content .home-hero-media,
main#main-content .home-hero-media .first-slide {
	display: block;
	width: 100%;
}

main#main-content #heroslider [data-module="hero-homepage"] {
	border-radius: 10px;
}

main#main-content #heroslider .carousel-control {
	z-index: 3;
}

@media (min-width: 768px) {
	main#main-content #heroslider .item > .first-slide,
	main#main-content #heroslider .item > .home-hero-media {
		aspect-ratio: 125 / 46;
	}

	main#main-content #heroslider .item > .first-slide,
	main#main-content #heroslider .item > .home-hero-media .first-slide {
		object-fit: cover;
	}

	main#main-content #heroslider .item > .home-hero-media {
		overflow: hidden;
	}

	main#main-content #heroslider .item > .home-hero-media .first-slide {
		height: 100%;
	}
}

@media (max-width: 1160px) {
	main#main-content #heroslider .hero-slide-heading {
		font-size: 40px;
	}
}

@media (max-width: 768px) {
	main#main-content #heroslider .hero-slide-heading {
		font-size: 2em;
	}
}

@media (max-width: 480px) {
	main#main-content #heroslider .hero-slide-heading {
		font-size: 1.2em;
	}
}

@media (max-width: 767px) {
	main#main-content #heroslider .carousel-inner {
		display: grid;
	}

	main#main-content #heroslider .item {
		display: grid;
		grid-area: 1 / 1;
		grid-template-columns: minmax(0, 1fr);
		min-height: max(160px, calc(100vw * 46 / 125));
		position: relative;
		visibility: hidden;
	}

	main#main-content #heroslider .item.active,
	main#main-content #heroslider .item.next,
	main#main-content #heroslider .item.prev {
		visibility: visible;
	}

	main#main-content #heroslider .item > .first-slide,
	main#main-content #heroslider .item > .home-hero-media {
		inset: 0;
		position: absolute;
		width: 100%;
	}

	main#main-content #heroslider .item > .first-slide,
	main#main-content #heroslider .item > .home-hero-media,
	main#main-content #heroslider .item > .home-hero-media .first-slide {
		height: 100%;
		object-fit: cover;
	}

	main#main-content #heroslider .item > .container {
		grid-area: 1 / 1;
		padding: 0;
		position: relative;
		width: 100%;
		z-index: 1;
	}

	main#main-content #heroslider .cr-item-container {
		margin: 20px 34px 60px;
		position: relative;
		top: auto;
		width: auto;
	}

	main#main-content #heroslider .herotextbg-dark-opaque {
		background: transparent;
		padding: 0;
	}

	main#main-content #heroslider .hero-slide-heading {
		margin: 0 0 12px;
	}

	main#main-content #heroslider [data-module="hero-homepage"] {
		font-size: 14px;
		line-height: 20px;
		max-width: 100%;
		min-height: 44px;
		padding: 10px 16px;
		white-space: normal;
	}

	main#main-content #heroslider .carousel-control {
		bottom: 12px;
		height: 44px;
		top: auto;
		width: 44px;
	}

	main#main-content #heroslider #indicators-container {
		align-items: center;
		bottom: 12px;
		display: flex;
		gap: 6px;
		left: 50%;
		min-height: 44px;
		padding: 0 6px;
	}

	main#main-content #heroslider .carousel-indicators {
		align-items: center;
		display: flex;
		gap: 4px;
		margin: 0;
		order: 0;
		position: static;
	}

	main#main-content #heroslider #toggleCarousel {
		float: none;
		min-height: 44px;
		min-width: 44px;
		order: 1;
	}
}

/* ---- Bands within the column ------------------------------------------ *
 * The review site ran the dark and sand bands edge to edge with a viewport
 * calculation; here they sit within the content column, so they carry their
 * own side padding instead.
 */
main#main-content .main-section > .hub-section.hub-section-dark,
main#main-content .main-section > .hub-section.hub-section-sand {
	padding-left: 30px;
	padding-right: 30px;
}

@media (max-width: 767px) {
	main#main-content .main-section > .hub-section.hub-section-dark,
	main#main-content .main-section > .hub-section.hub-section-sand {
		padding-left: 15px;
		padding-right: 15px;
	}
}
