/* COLORS */
.gar--hero,
.gar--section,
.gar--cs {
	--theme-color-rose: #d93954;
	--theme-color-red: #e0301e;
	--theme-color-burgundy: #a32020;
	--theme-color-orange: #d04a02;
	--theme-color-tangerine: #eb8c00;
	--theme-color-yellow: #ffb600;
	--theme-color-digital-grey: #f0f0f0;
	--theme-color-grey: #bababa;
	--theme-color-light-grey: #dedede;
}

.page-primary-col--red :is(.gar--section, .gar--cs) {
	--theme-color-base: #e0301e;
}

.page-primary-col--rose :is(.gar--section, .gar--cs) {
	--theme-color-base: #d93954;
}

.page-primary-col--orange :is(.gar--section, .gar--cs) {
	--theme-color-base: #d04a02;
}

.page-primary-col--burgundy :is(.gar--section, .gar--cs) {
	--theme-color-base: #a32020;
}

/* Menu */
@media (min-width: 1400px) {
	#wrapper .crosspage .crosspage-menuwrap {
		padding: 0px 40px;
		width: auto;
		justify-content: center;
	}
}

/* HERO */
#title .hero-card-wrapper .hero-card-wrapper--with-image .hero-card__primary-wrapper {
	min-height: calc(100vw / 32 * 9);
}
.gar--hero {
	display: flex !important;
	flex-flow: row;
	align-items: stretch;
}

@media (min-aspect-ratio: 3 / 2) {
	html:not(.aem-AuthorLayer-Edit) .gar--hero {
		min-height: calc(100vh - 127px);
	}
}

.gar--hero .title,
.gar--hero .hero-card.hero-card-wrapper--no-image {
	margin: 0px;
	height: 100%;
}

.gar--hero .hero-card.hero-card-wrapper--no-image .hero-card__primary {
	display: flex;
	flex-flow: column;
	justify-content: flex-start;
	height: 100%;
	background: transparent !important;
}

html:not(.aem-AuthorLayer-Edit) .gar--hero .hero-card.hero-card-wrapper--no-image .hero-card__primary {
	padding-top: 15vh;
}

.gar--hero .hero-card.hero-card-wrapper--no-image .hero-card__secondary {
	display: none;
}

.gar--hero .hero-card.hero-card-wrapper--no-image .hero-card__primary .card__primary-wrap {
	display: flex;
	flex-flow: column-reverse;
	flex-wrap: wrap;
	padding: 50px;
	width: 100% !important;
}

.gar--hero.gar--hero-flip .hero-card.hero-card-wrapper--no-image .hero-card__primary .card__primary-wrap {
	flex-flow: column;
}

.gar--hero .hero-card.hero-card-wrapper--no-image .hero-card__primary .hero-card__primary-title {
	font-family: "PwC Helvetica Neue Light", Arial, sans-serif;
	font-size: 4rem;
	line-height: 5rem;
	font-weight: normal;
}

.gar--hero.gar--hero-flip .hero-card.hero-card-wrapper--no-image .hero-card__primary .hero-card__primary-title {
	margin: 50px 0px 0px 50px;
	font-size: 2rem;
	line-height: 2.5rem;
}

.gar--hero.gar--hero-flip .hero-card.hero-card-wrapper--no-image .hero-card__primary .hero-card__primary-eyebrow {
	font: normal normal 4rem/5rem "PwC Helvetica Neue Light", Arial, sans-serif;
}

.gar--hero .hero-card.hero-card-wrapper--no-image .hero-card__primary :is(.hero-card__primary-title, .hero-card__primary-eyebrow) strong {
	font-family: "PwC Helvetica Neue", Arial, sans-serif;
}

/* SECTION */
.gar--section {}

.gar--section .parsys {
	overflow: hidden;
}

.gar--section.gar--section-primary-color-heading h2 {
	color: var(--theme-color-base) !important;
}

.gar--section .parsys_column.pwccol1-longform { /* Fix section overflow, leaking outside viewscreen */
	margin: 0px;
	width: 100%;
}

/* SECTION - Chapter heading */
.gar--section .chapterheading {
	margin-top: 0px;
	width: 100%;
	max-width: 1920px;
}

.gar--section .chapterheading .chapter-heading {
	padding: 60px 0;
	overflow: hidden;
}

.gar--section .chapterheading .chapter-heading .chapter-heading-wrapper,
.gar--section .chapterheading .chapter-heading .chapter-heading-title {
	position: relative;
	overflow: visible;
}

.gar--section .chapterheading .chapter-heading .chapter-heading-wrapper::before,
.gar--section .chapterheading .chapter-heading .chapter-heading-wrapper h2::before,
.gar--section .chapterheading .chapter-heading .chapter-heading-wrapper h2::after {
	content: "";
	position: absolute;
}

.gar--section .chapterheading .chapter-heading .chapter-heading-wrapper::before {
	width: 60px;
	height: 60px;
	background: var(--theme-color-tangerine);
	top: -60px;
	left: -60px;
}

.gar--section .chapterheading .chapter-heading .chapter-heading-wrapper h2 {
	display: inline-block;
	position: relative;
}

.gar--section .chapterheading .chapter-heading .chapter-heading-wrapper h2::before {
	width: 30px;
	height: 30px;
	background: var(--theme-color-tangerine);
	right: -90px;
	bottom: 0;
}

.gar--section .chapterheading .chapter-heading .chapter-heading-wrapper h2::after {
	width: 60px;
	height: 60px;
	background: var(--theme-color-rose);
	bottom: -60px;
	right: -60px;
}

/* SECTION - Quote */
.gar--section .parsys > .quote {
	margin: 0px auto;
	max-width: 1400px;
}

.gar--section .parsys_column.pwccol1-longform-c0 .quote-component blockquote {
	margin: 0px auto;
	padding-right: 24px !important;
	max-width: 768px;
}

/* SECTION - Numbered list */
.gar--section.gar--list .text .text-component ol {
	position: relative;
	display: flex;
	flex-flow: column;
	gap: 60px;
	margin: 30px auto 60px auto;
	padding: 0px;
	list-style: none;
	counter-reset: custom-numbered-list-counter;
}

.gar--section.gar--list .text .text-component ol > li {
	position: relative;
	display: grid;
	grid-template-columns: 60px auto;
	gap: 40px;
	margin: 0px 0px;
	padding: 0px;
	counter-increment: custom-numbered-list-counter;
}

.gar--section.gar--list .text .text-component ol > li .gar--list-decoration {
	position: absolute;
	inset: 0px auto auto 0px;
}

.gar--section.gar--list .text .text-component ol > li::before {
	content: counter(custom-numbered-list-counter);
	display: flex;
	justify-content: center;
	align-items: center;
	grid-row-start: 1;
	grid-row-end: -1;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	font-size: 1.75rem;
	font-weight: normal;
	text-align: center;
	color: #fff;
	background: var(--theme-color-base);
	overflow: hidden;
	transition: all 0.25s ease;
	transition-delay: inherit;
}

.gar--section.gar--list .text .text-component ol.gar--visibility-observed:not(.gar--visible) > li::before  {
	margin: 0px 100% 0px 0px;
	width: 0px;
}

.gar--section.gar--list .text .text-component ol.gar--visibility-observed:not(.gar--visible) > li:nth-child(even)::before  {
	margin: 0px 0px 0px 100%;
}

.gar--section.gar--list .text .text-component ol > li:nth-child(6n + 1)::before {
	background: var(--theme-color-rose);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(6n + 2)::before {
	background: var(--theme-color-red);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(6n + 3)::before {
	color: #000;
	background: var(--theme-color-tangerine);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(6n + 4)::before {
	color: #000;
	background: var(--theme-color-yellow);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(6n + 5)::before {
	color: #000;
	background: var(--theme-color-digital-grey);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(6n + 6)::before {
	background: var(--theme-color-orange);
}

/* SECTION - Numbered list, pixels */
.gar--section.gar--list .text .text-component ol > li .gar--list-decoration > * {
	position: absolute;
	display: block;
	top: 60px;
	width: 30px;
	height: 30px;
	transition: width 0.25s ease;
}

.gar--section.gar--list .text .text-component ol.gar--visibility-observed:not(.gar--visible) > li .gar--list-decoration > * {
	width: 0px;
}

.gar--section.gar--list .text .text-component ol > li:nth-child(5n + 1) .gar--list-decoration > :nth-child(1) {
	left: -30px;
	background: var(--theme-color-yellow);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(7n + 1) .gar--list-decoration > :nth-child(2) {
	left: 0px;
	background: var(--theme-color-orange);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(5n + 2) .gar--list-decoration > :nth-child(1) {
	top: -30px;
	left: -30px;
	background: var(--theme-color-orange);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(5n + 2) .gar--list-decoration > :nth-child(2) {
	left: 60px;
	background: var(--theme-color-yellow);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(5n + 3) .gar--list-decoration > :nth-child(1) {
	top: -30px;
	left: 60px;
	background: var(--theme-color-yellow);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(5n + 3) .gar--list-decoration > :nth-child(2) {
	left: 0px;
	background: var(--theme-color-digital-grey);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(5n + 4) .gar--list-decoration > :nth-child(1) {
	top: 0px;
	left: -30px;
	background: var(--theme-color-grey);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(5n + 4) .gar--list-decoration > :nth-child(2) {
	left: 30px;
	background: var(--theme-color-rose);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(5n + 5) .gar--list-decoration > :nth-child(1) {
	top: -30px;
	left: 60px;
	background: var(--theme-color-yellow);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(5n + 5) .gar--list-decoration > :nth-child(2) {
	left: 0px;
	background: var(--theme-color-grey);
}

.gar--section.gar--list .text .text-component ol > li:nth-child(6n + 6) .gar--list-decoration > :nth-child(2) {
	top: 0px;
	left: 60px;
	background: var(--theme-color-digital-grey);
}

/*  */
.gar--section.gar--scroll-ti .gar--fade-in {
	opacity: 0;
	transform: translateY(100px);
	transition: opacity 0.25s ease, transform 0.5s ease;
}

.gar--section.gar--scroll-ti .gar--visible .gar--fade-in {
	opacity: 1;
	transform: translateY(0px);
}

/* Case studies */
.gar--cs .pwccol1-longform .pwccol1-longform-c0 {
	position: relative;
	padding: 0px;
}

@media (min-width: 768px) {
	.gar--cs .pwccol1-longform .pwccol1-longform-c0 {
		width: 720px;
	}

	.gar--cs .pwccol1-longform .pwccol1-longform-c0 .text {
		padding-left: 0px;
		padding-right: 0px;
	}
}

@media (min-width: 992px) {
	.gar--cs .pwccol1-longform .pwccol1-longform-c0 {
		width: 778px;
	}
}

@media (min-width: 1200px) {
	.gar--cs .pwccol1-longform .pwccol1-longform-c0 {
		width: 750px;
	}
}

@media (min-width: 1400px) {
	.gar--cs .pwccol1-longform .pwccol1-longform-c0 {
		width: 768px;
	}
}

.gar--cs .text-component-lead p {
	position: relative;
	display: inline-block;
	padding: 0.5rem 1rem;
	color: #fff;
	background: #464646;
}

.gar--cs .text.spacer_both, .gar--cs .text.spacer_after {
	position: relative;
	margin: 0px;
	border: 0px;
	background: var(--theme-color-digital-grey);
	border-left: 2px solid var(--theme-color-light-grey);
}

.gar--cs .text.spacer_after {
	margin: 0px 0px 60px 0px;
}

.gar--cs .text.spacer_both .text-component,
.gar--cs .text.spacer_after .text-component {
	padding: 1rem !important;
}

.gar--cs .textimage {
	border: 0px;
}

.gar--cs .textimage img {
	width: 200px;
	height: auto;
	max-width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	transition: all 0.25s ease;
}

.gar--cs .textimage .textimage-image {
	margin: 0px;
	overflow: visible;
	flex-shrink: 0;
}

.gar--cs .textimage:is(.spacer_before, .image_left) {
	display: flex;
	flex-flow: row;
	justify-content: stretch;
	align-items: stretch;
	gap: 20px;
	width: 100%;
}

.gar--cs.gar--cs-flip .textimage:is(.spacer_before, .image_left) {
	flex-direction: row-reverse;
}

.gar--cs .textimage:is(.spacer_before, .image_left) > *:empty {
	display: none;
}

.gar--cs .textimage:is(.spacer_before, .image_left) .image-asset {
	position: relative;
	display: flex;
}

.gar--cs .textimage.spacer_before .image-asset {
	justify-content: end;
}

.gar--cs .textimage:is(.spacer_before, .image_left) .textimage-text {
	display: flex;
	flex-flow: column;
}

.gar--cs .textimage:is(.spacer_before, .image_left) .textimage-text p {
	text-align: left !important;
}

@media (min-width: 992px) {
	.gar--cs .textimage.spacer_before,
	.gar--cs.gar--cs-flip .textimage.spacer_before {
		margin-left: 20px;
		flex-flow: column;
		width: 200px;
	}

	.gar--cs .text.spacer_after {
		margin: 0px 0px 40px 0px;
	}

	html:not(.aem-AuthorLayer-Edit) .gar--cs .textimage.spacer_before {
		position: absolute;
		top: 3rem;
		left: -240px;
	}

	html:not(.aem-AuthorLayer-Edit) .gar--cs.gar--cs-flip .textimage.spacer_before {
		right: -240px;
		left: unset;
	}
}

.gar--cs .inlinequote {
	padding: 0px !important;
	overflow: visible;
}

.gar--cs blockquote {
	border-left: 2px solid var(--theme-color-light-grey) !important;
	position: relative;
}

.gar--cs blockquote::before {
	content: '';
	display: block;
	position: absolute;
	width: 1px;
	height: 200px;
	top: -200px;
	left: -1px;
	border-left: 2px solid var(--theme-color-light-grey);
}

.gar--section-quote .quote .inlinequote {
	margin-bottom: 0 !important;
}

.gar--section-quote .quote ~ .textimage {
	margin: 0 auto 2rem;
	max-width: 768px;
	padding: 2rem 0 0 25px !important;
	border-left: 1px solid #d04a02;
}

.gar--section-quote .quote ~ .textimage .textimage-image {
	width: 200px;
	line-height: 0;
	margin-bottom: 1rem;
}

.gar--section-quote .quote ~ .textimage .text-component * {
	font-size: 1rem;
}

/* Case studies - pixels */
.gar--cs .text-component-lead p::after,
.gar--cs .text.spacer_after::before,
.gar--cs .text.spacer_after::after,
.gar--cs .textimage.spacer_before .image-asset::after,
.gar--cs .textimage.spacer_before + .textimage.image_left .image-asset::after {
	content: "";
	position: absolute;
	display: block;
	height: auto;
	aspect-ratio: 1 / 1;
	transition: all 0.25s ease;
}

.gar--cs .text-component-lead p::after {
	top: -20px;
	right: -20px;
	width: 20px;
	background: var(--theme-color-rose);
}

.gar--cs .text-component-lead.gar--visibility-observed:not(.gar--visible) p::after {
	width: 0px;
}

.gar--cs .text.spacer_after::before {
	right: -60px;
	bottom: 0px;
	width: 60px;
	background: var(--theme-color-orange);
}

.gar--cs.gar--cs-flip .text.spacer_after::before {
	left: -60px;
	right: unset;
}

.gar--cs .text.spacer_after::after {
	right: 0px;
	bottom: -60px;
	width: 60px;
	background: var(--theme-color-tangerine);
}

.gar--cs.gar--cs-flip .text.spacer_after::after {
	left: 0px;
	right: unset;
}

.gar--cs .text.spacer_after.gar--visibility-observed:not(.gar--visible)::before,
.gar--cs .text.spacer_after.gar--visibility-observed:not(.gar--visible)::after {
	width: 0px;
}

.gar--cs .textimage.spacer_before .image-asset::after {
	left: -20px;
	top: 100%;
	width: 20px;
	background: var(--theme-color-yellow);
	transition-delay: 250ms;
}

.gar--cs.gar--cs-flip .textimage.spacer_before .image-asset::after {
	right: -20px;
	left: unset;
}

.gar--cs .textimage.spacer_before + .textimage.image_left .image-asset::after {
	right: -20px;
	bottom: -20px;
	width: 20px;
	background: var(--theme-color-grey);
}

.gar--cs .textimage.spacer_before.gar--visibility-observed:not(.gar--visible) .image-asset::after,
.gar--cs .textimage.spacer_before + .textimage.image_left.gar--visibility-observed:not(.gar--visible) .image-asset::after {
	left: 0px;
	width: 0px;
}

.gar--cs.gar--cs-flip .textimage.spacer_before.gar--visibility-observed:not(.gar--visible) .image-asset::after,
.gar--cs.gar--cs-flip .textimage.spacer_before + .textimage.image_left.gar--visibility-observed:not(.gar--visible) .image-asset::after {
	right: 0px;
	left: unset;
}

.gar--cs .textimage.spacer_before.gar--visibility-observed:not(.gar--visible) img {
	margin: 0px 200px 0px 0px;
	width: 0px;
}

.gar--cs.gar--cs-flip .textimage.spacer_before.gar--visibility-observed:not(.gar--visible) img {
	margin: 0px 0px 0px 200px;
}

.gar--cs .textimage.spacer_before + .textimage.image_left.gar--visibility-observed:not(.gar--visible) img {
	margin: 200px 200px 0px 0px;
	width: 0px;
}

/* Collapsable content */
.gar--is-collapsable {
	overflow: hidden;
	transition: height 0.5s ease;
}

.gar--is-collapsable.gar--collapsed {
	overflow: hidden;
}

html.aem-AuthorLayer-Edit .gar--is-collapsable.gar--collapsed {
	height: auto !important;
}

.gar--collapse-expand-button {
	display: block;
	margin: 10px auto;
	padding: 10px 15px;
	width: max-content;
	font-weight: bold;
	text-decoration: none;
	cursor: pointer;
	transform: translateY(-10px);
	transition: background 0.25s ease;
}

.gar--is-collapsable + .gar--collapse-expand-button::after {
	content: "";
	display: inline-block;
	margin: 0.35em 10px 0px 10px;
	width: 0.6em;
	height: 0.6em;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	vertical-align: middle;
	transform: rotate(225deg);
	transition: all 0.25s ease;
}

.gar--is-collapsable.gar--collapsed + .gar--collapse-expand-button::after {
	margin-top: -0.35em;
	transform: rotate(45deg);
}

.gar--collapse-expand-button:hover,
.gar--collapse-expand-button:focus {
	text-decoration: underline;
}

/* Countup animations */
.gar--section .gar--move-up p:last-of-type,
.gar--section:not(.gar--section_2x2) .gar--move-up {
	display: block;
	opacity: 0;
	transform: translateY(100px);
	transition: opacity 0.25s ease, transform 0.5s ease;
}

.gar--section .gar--move-up.gar--visible p:last-of-type,
.gar--section:not(.gar--section_2x2) .gar--move-up.gar--visible {
	opacity: 1;
	transform: translateY(0px);
}

/* C3 Prev/Next */
div.c3_prevnext {
	display: block;
	position: relative;
	width: 100%;
	height: 100px;
	background-color: #fff;
	margin-top: 15px;
}

@media only screen and (max-width: 767px) {
	div.c3_prevnext {
		width: calc(100% - 15px);
	}
}

div.c3_prevnext a.c3_a_prevchapter {
	display: block;
	padding-left: 100px;
	height: 100px;
	line-height: 100px;
	background-color: #ffffff;
	position: absolute;
	top: 0px;
	left: 0px;
	transition: all 0.5s ease;
	width: 50%;
	border-bottom-width: 0px !important;
}

div.c3_prevnext a.c3_a_prevchapter::before, div.c3_prevnext a.c3_a_nextchapter::before {
	content: " ";
	display: block;
	width: 40px;
	height: 3px;
	background-color: #000000;
	position: absolute;
	top: 48px;
	left: 30px;
}

@media only screen and (max-width: 767px) {
	div.c3_prevnext a.c3_a_prevchapter::before, div.c3_prevnext a.c3_a_nextchapter::before {
		left: 5px;
	}
}

div.c3_prevnext a.c3_a_nextchapter::before {
	left: auto;
	right: 30px
}

@media only screen and (max-width: 767px) {
	div.c3_prevnext a.c3_a_nextchapter::before {
		right: 5px;
	}
}

div.c3_prevnext a.c3_a_prevchapter::after, div.c3_prevnext a.c3_a_nextchapter::after {
	content: " ";
	display: block;
	width: 30px;
	height: 30px;
	border-top: 3px solid #000000;
	border-left: 3px solid #000000;
	position: absolute;
	top: 34px;
	left: 32px;
	transform: rotate(-45deg);
}

@media only screen and (max-width: 767px) {
	div.c3_prevnext a.c3_a_prevchapter::after, div.c3_prevnext a.c3_a_nextchapter::after {
		left: 9px;
	}
}

div.c3_prevnext a.c3_a_nextchapter::after {
	left: auto;
	right: 32px;
	transform: rotate(135deg);
}

@media only screen and (max-width: 767px) {
	div.c3_prevnext a.c3_a_nextchapter::after {
		right: 9px;
	}
}

div.c3_prevnext a.c3_a_nextchapter {
	display: block;
	padding-right: 100px;
	height: 100px;
	line-height: 100px;
	background-color: #ffffff;
	position: absolute;
	top: 0px;
	right: 0px;
	text-align: right;
	transition: all 0.5s ease;
	width: 50%;
	border-bottom-width: 0px !important;
}

@media only screen and (max-width: 767px) {
	div.c3_prevnext a.c3_a_nextchapter {
		padding-right: 50px;
	}

	div.c3_prevnext a.c3_a_prevchapter {
		padding-left: 50px;
	}
}

div.c3_prevnext a:hover {
	background-color: #ebebeb; 
}

div.c3_prevnext a strong {
	display: block;
	width: 100%;
	overflow: hidden;
	background-color: #ffffff;
	height: 100px;
	line-height: 100px;
	padding-left: 20px;
	padding-right: 20px;
}

@media only screen and (max-width: 767px) {
	div.c3_prevnext a.c3_a_nextchapter strong, div.c3_prevnext a.c3_a_prevchapter strong {
		line-height: 20px;
		padding-top: 30px;
	}
}

.contactCol .contact-info {
    max-width: 26rem;
}