#strategies-hero.hero-grid {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 1fr;
		    grid-template: 1fr/1fr;
		    grid-template-areas: "stage";
		align-content: start;
		height: auto;
		width: 100%;
		position: relative;
		overflow: hidden;
		min-height: calc(100vh - var(--ccp-header-height, 100px));
}
@media (min-width: 768px) {
		#strategies-hero.hero-grid {
				align-content: center;
		}
}
#strategies-hero.hero-grid .hero-foreground-pane {
		display: -ms-grid;
		display: grid;
		place-items: center;
}
#strategies-hero.hero-grid .hero-background-pane::after {
		content: "";
		position: absolute;
		inset: 0;
		background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent);
}
#strategies-hero.hero-grid figcaption.blockquote-footer {
		font-size: unset;
}

.hero-img {
		object-fit: cover;
		object-position: center;
		width: 100%;
		height: 100%;
		display: block;
		margin-inline: auto;
		position: absolute;
}

.hero-arrow-indicator {
		position: absolute;
		bottom: 2rem;
		left: 50%;
		transform: translateX(-50%);
		translate: 0 50%;
		font-size: 2rem;
		animation: bounce 2s infinite;
		color: var(--bs-light);
}
@keyframes bounce {
		0%, 20%, 50%, 80%, 100% {
				transform: translateX(-50%) translateY(0);
		}
		40% {
				transform: translateX(-50%) translateY(-10px);
		}
		60% {
				transform: translateX(-50%) translateY(-5px);
		}
}

@property --icon-bg-color {
		syntax: "<color>";
		initial-value: rgba(248, 249, 250, 0.55);
		inherits: true;
}
@property --icon-color {
		syntax: "<color>";
		initial-value: rgba(19, 33, 73, 0.99);
		inherits: true;
}
.icon-wrapper {
		border-radius: 0.5rem;
		transition: --icon-bg-color 0.15s ease, --icon-color 0.15s ease, background-color 0.15s ease, color 0.15s ease;
		aspect-ratio: 1;
		display: -ms-inline-grid;
		display: inline-grid;
		place-items: center;
		width: 2.5rem;
}
.glass-box:has(.icon-wrapper) {
		background-color: color-mix(in srgb, color-mix(in srgb, var(--bs-primary) 50%, var(--bs-dark)), transparent 50%);
		backdrop-filter: blur(8px);
}

.glass-box:hover .icon-wrapper {
		--icon-bg-color: rgba(var(--bs-secondary-rgb), 0.99);
}
.icon-wrapper svg {
		display: block;
		width: 100%;
		height: 100%;
}

.two-layers {
		display: -ms-grid;
		display: grid;
		position: relative;
		overflow: hidden;
}
.two-layers :where(.layer-bg, .layer-fg) {
		grid-area: 1/1/-1/-1;
		position: relative;
}
.two-layers .layer-bg > :where(video, img, picture) {
		position: absolute;
		inset: 0;
		display: block;
		object-fit: contain;
		object-position: left center;
		width: 100%;
		height: 100%;
}
.two-layers.overlay .layer-bg::after {
		content: "";
		position: absolute;
		inset: 0;
		background: linear-gradient(to right, transparent, var(--bs-primary) 50%);
}

#section-steven-quote {
		background-repeat: space;
		background-size: contain;
		background-position: center 0%;
}
#section-steven-quote.has-multiple-backgrounds {
		background-repeat: no-repeat;
		background-size: contain, cover;
		background-position: center, center;
}
@media (max-width: 767.98px) {
		#section-steven-quote.has-multiple-backgrounds {
				background-size: auto 80%, cover;
		}
}

#strategies-hero .stat-number {
		font-family: var(--ccp-heading-font-family);
		font-weight: 600;
		font-size: clamp(2.25rem, 4vw, 4rem);
		line-height: 1.1;
		margin-bottom: 0.5rem;
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
}
#strategies-hero .stat-number sup {
		background: inherit;
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
}
#strategies-hero .glass-box.stat-box {
		background-color: color-mix(in srgb, color-mix(in srgb, var(--bs-primary) 50%, var(--bs-dark)), transparent 50%);
		backdrop-filter: blur(8px);
}
#strategies-hero .stat-label {
		font-size: 0.75rem;
		line-height: 1.3;
		margin-bottom: 0;
		color: rgba(255, 255, 255, 0.75);
}
#strategies-hero .stat-box {
		--stat-box-border-color: color-mix(in srgb, var(--bs-light) 20%, transparent);
		display: block;
		height: 100%;
		text-align: center;
		padding: 1.5rem 1rem;
}
@media (min-width: 576px) {
		#strategies-hero .stat-box {
				padding-inline: 2rem;
		}
		#strategies-hero .stat-box:not(:first-of-type) {
				border-left: 2px solid var(--stat-box-border-color);
		}
}

#portfolio-builder-widget {
		--bs-bg-opacity: 0.01;
		backdrop-filter: blur(2px);
}
#portfolio-builder-widget .progress {
		display: flex;
		overflow: hidden;
		background-color: var(--bs-secondary-bg, #e9ecef);
		border-radius: var(--bs-border-radius);
}
#portfolio-builder-widget .progress-bar {
		display: flex;
		flex-direction: column;
		justify-content: center;
		overflow: hidden;
		color: #fff;
		text-align: center;
		white-space: nowrap;
		transition: width 0.6s ease;
}

.pb-eyebrow {
		letter-spacing: 2.7px;
		font-weight: 600;
}

#pb-nav[hidden] {
		display: none !important;
}

.pb-option {
		cursor: pointer;
		border-color: var(--bs-border-color) !important;
		transition: border-color 0.15s ease, background-color 0.15s ease;
}
.pb-option:hover {
		border-color: var(--bs-secondary) !important;
}
.pb-option.is-selected {
		border-color: var(--bs-secondary) !important;
		background-color: color-mix(in srgb, var(--bs-secondary) 8%, transparent);
}
.pb-option input[type=radio],
.pb-option input[type=checkbox] {
		pointer-events: none;
}

#curation-philosophy,
#foundational-reading {
		position: relative;
		--stitch-dot-rgb: 150,150,150;
}
#curation-philosophy > .container,
#foundational-reading > .container {
		position: relative;
		z-index: 1;
}

#portfolio-builder {
		position: relative;
		--stitch-dot-rgb: 178,223,236;
}
#portfolio-builder > .container {
		position: relative;
		z-index: 1;
}

#curation-philosophy {
		position: relative;
		--stitch-dot-rgb: 150,150,150;
}
#curation-philosophy > .container {
		position: relative;
		z-index: 1;
}
#curation-philosophy .manager-selection-boxes {
		--bs-bg-opacity: 0.7;
		backdrop-filter: blur(2px);
}
@media (min-width: 992px) {
		#curation-philosophy .manager-selection-boxes {
				translate: 0 0;
				box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
				transition: translate 0.3s ease, box-shadow 0.3s ease;
		}
		#curation-philosophy .manager-selection-boxes:hover {
				translate: 0.75rem 0;
				box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
		}
}

.faq-accordion {
		--bs-accordion-color: var(--bs-primary);
		--bs-accordion-bg: transparent;
		--bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
		--bs-accordion-border-color: var(--bs-border-color);
		--bs-accordion-border-width: 1px;
		--bs-accordion-border-radius: var(--bs-border-radius-lg);
		--bs-accordion-inner-border-radius: calc(var(--bs-border-radius-lg) - 1px);
		--bs-accordion-btn-padding-x: 1.25rem;
		--bs-accordion-btn-padding-y: 1rem;
		--bs-accordion-btn-color: var(--bs-primary);
		--bs-accordion-btn-bg: transparent;
		--bs-accordion-btn-icon-width: 1.25rem;
		--bs-accordion-btn-icon-transform: rotate(-180deg);
		--bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
		--bs-accordion-btn-focus-box-shadow: none;
		--bs-accordion-body-padding-x: 1.25rem;
		--bs-accordion-body-padding-y: 1rem;
		--bs-accordion-active-color: var(--bs-secondary);
		--bs-accordion-active-bg: transparent;
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
}
.faq-accordion .accordion-item {
		border-radius: var(--bs-accordion-border-radius);
		overflow: hidden;
}
.faq-accordion .accordion-item .accordion-button {
		font-size: inherit;
		font-weight: 600;
}
.faq-accordion .accordion-item .accordion-button:not(.collapsed) {
		box-shadow: none;
}
.faq-accordion .accordion-item .accordion-button::after {
		flex-shrink: 0;
}
.faq-accordion .accordion-item:not(:first-of-type) {
		border-top: 1px solid var(--bs-border-color);
}
.faq-accordion .accordion-item:has(.accordion-button:not(.collapsed)) {
		border-color: #2F9DBC;
}