/*
	PARTS
	- defined by 'ALL CAPS'
	- parts within parts, will cause styles to conflict & cascading issues
	- seperate into different files, eg: parts-main, parts-singles, parts-blog
*/



/* HEADER */

.HEADER {
	height: 100%;
	transition: background 0.25s;
}

.HEADER .b-frame {
	padding-top: 0;
	padding-bottom: 0;
	height: 100%;
	max-width: var(--frame-width-wide);
}

.HEADER .inset {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 100%;
}


.HEADER .logo {
	text-indent: -9999rem;
	flex: 0 0 auto;
	width: var(--s11);
	height: var(--s6);
	background: url(../img/innovate-calgary.svg) no-repeat center / 100% auto;
}

.HEADER .nav-trigger {
	display: none;
	flex: 0 0 auto;
	width: var(--s5);
	height: var(--s5);
	text-indent: -9999rem;
	cursor: pointer;
	background: url(../img/ui-nav.svg) no-repeat center;
}

.HEADER .a,
.HEADER a {
	position: relative;
	z-index: 1;
}

.HEADER nav .a {
	display: inline;
	appearance: none;
	overflow: hidden;
	padding: 0;
	margin: 0;
	background: transparent;
	border: none;
	font: inherit;
	color: var(--black);
	cursor: pointer;
	text-decoration: underline;
	text-transform: uppercase;
	text-underline-offset: 0.3em;
	text-decoration-thickness: 2rem;
	text-decoration-color: transparent;
	transition: text-decoration 0.25s;
}

.HEADER nav .a::after {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: var(--s2);
	height: var(--s2);
	background: no-repeat center url(../img/ui-expand.svg);
	margin: -1rem 0 0 6rem;
}

.HEADER nav li[data-focus-within="true"] > .a::after,
.HEADER nav li:focus-within > .a::after {
	transform: scaleY(-1);
}


.HEADER nav a:not(.b-button) {color:var(--black); text-decoration: none;}
.HEADER nav a:not(.b-button):hover {color:#EA7926;}

.HEADER .b-button {line-height:44px; height:44px; padding:0 16rem; text-decoration: none;}


.HEADER nav > ul {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.HEADER nav > ul > li {
	flex: 0 0 auto;
	position: relative;
	margin: 0 0 0 var(--s5);
	font-size: 18rem;
	line-height: var(--s6);
}

/* teir 1 */

.HEADER nav > ul > li {
	flex: 0 0 auto;
	position: relative;
	margin: 0 0 0 var(--s3);
	font-size: 18rem;
	line-height: var(--s6);
	font-weight: 700;
	font-size: 14rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.HEADER nav > ul > li:nth-last-child(2) {
	margin-left: var(--s5);
}

/* teir 2 */

.HEADER nav ul ul {
	display: block !important;
	position: absolute;
	overflow: hidden;
	top: 44rem;
	left: -20rem;
	background: #fff;
	box-shadow: 0 20rem 25rem 0 rgba(0,0,0,0.05);
	width: 200rem;
	opacity: 0;
	transform: translate(0, 40rem);
	pointer-events: none;
	transition: opacity 0.25s, transform 0.25s;
}

.HEADER nav ul ul > li {
	padding: 8rem 20rem;
	line-height: 18rem;
	letter-spacing: 0;
	text-transform: none;
	font-size: 14rem;
	font-weight: 600;
}

.HEADER nav > ul > li:first-child ul {width:240rem;}
.HEADER nav ul ul > li:first-child {padding-top:18rem;}
.HEADER nav ul ul > li:last-child {padding-bottom:18rem;}
.HEADER nav ul ul > li a {color:#5A5A5E !important;}
.HEADER nav ul ul > li a:hover {color:#000 !important;}

/* teir 2 toggle functionality */

.HEADER nav > ul > li:hover > ul,
.HEADER nav > ul > li:focus-within > ul {
	opacity: 1;
	transform: translate(0, 0);
	pointer-events: auto;
}

.HEADER nav > ul > li:hover .a::after,
.HEADER nav > ul > li:focus .a::after
{transform:scaleY(-1);}



/* @media screen and (max-width: 1320px) {
	.HEADER nav > ul > li {font-size:12px; margin:0 0 0 20rem;}
	.HEADER .a::after {display:none;}
	.HEADER .b-button {line-height:44px; height:44px; font-size:12px;}
}

@media screen and (max-width: 1100px) {
	.HEADER .logo {transform:translate(0, -50%) scale(0.8);}
	.HEADER nav > ul > li {margin:0 0 0 10rem;}
	.HEADER .b-button {padding:0; background:none; box-shadow:none; color:#101820;}
} */

@media screen and (max-width: 960px) {
	.HEADER .b-frame {max-width: 960rem;}
	.HEADER .nav-trigger {display:block;}
	.HEADER nav {display:none;}
}



/* FOOTER */

.FOOTER {
	background: #15181F;
	color: #fff;
	font-weight: 500;
}

.FOOTER a:not(.b-button) {color:#fff; font-weight:600; text-decoration: none;}
.FOOTER a:not(.b-button):hover {color:#EA7926;}

.FOOTER .notice {border-bottom:1rem solid #292B32; color:#B9BABC;}
.FOOTER .notice .b-frame {padding-top:60rem; padding-bottom:60rem;}

.FOOTER .legal {background:#222630; color:#fff; font-size:14rem;}
.FOOTER .legal .b-frame {padding-top:20rem; padding-bottom:20rem;}
.FOOTER .legal .b-column:last-child {text-align:right;}
.FOOTER .legal a {padding-right: 20rem;}

.FOOTER .sitemap .b-frame {padding-top:60rem; padding-bottom:60rem;}
.FOOTER .sitemap .b-button {padding:0; width:100%;}
.FOOTER .sitemap .b-button {padding:0; width:100%;}
.FOOTER .sitemap ul {list-style:none; padding:0; margin:0;}
.FOOTER .sitemap li:not(:first-child) .b-button {margin-top:10rem;}

.FOOTER .sitemap .logo {
	max-width: 182rem;
	height: 60rem;
	background: url(../img/innovate-calgary-footer.svg) no-repeat top left;
	background-size: contain;
}

.FOOTER .sitemap .footer-btn {
	margin-top: 30rem;
	max-width: 265rem;
}

.FOOTER .sitemap .contact {
	margin-top: 30rem;
	font-size: 14rem;
	font-weight: 500;
	list-style: none;
	padding: 0;
}

.FOOTER a:focus:not(.b-button) {
	border: 2rem solid #fff;
}

.FOOTER .sitemap .contact a {
	font-weight: inherit;
}

.FOOTER .sitemap .contact li {
	background: no-repeat 0 2rem;
	padding-left: 28rem;
}

.FOOTER .sitemap .contact a:hover {
	color: #EA7926;
}

.FOOTER .sitemap .a {
	display: block;
	font-size: 14rem;
	color: #8893A9;
	border-bottom: 1rem solid #292B32;
	padding-bottom: 10rem;
	margin-bottom: 10rem;
}

.FOOTER .sitemap a.alt-break-above {
	display: block;
	border-top: 1rem solid #292B32;
	padding-top: 10rem;
	margin-top: 10rem;
}

@media screen and (max-width: 1200px) {
	.FOOTER .sitemap {font-size:14rem; line-height:24rem;}
	.FOOTER .sitemap .a {font-size:12rem;}
	.FOOTER .sitemap .b-button {font-size:12rem;}
}

@media screen and (max-width: 960px) {
	.FOOTER .notice .b-frame {padding-top:40rem; padding-bottom:40rem;}
	.FOOTER .sitemap .b-frame {padding-top:40rem; padding-bottom:40rem;}
	.FOOTER .legal .b-column:last-child {text-align:left; padding-top:0; margin-top:-10rem;}
}



/* SUBNAV */

.SUBNAV {
	background: #222630;
	position: relative;
}

.SUBNAV::before {
	content: "";
	display: block;
	position: absolute;
	top: -100rem;
	bottom: 100%;
	left: 0;
	right: 0;
}

.SUBNAV .b-frame {
	padding-top: 0;
	padding-bottom: 0;
}

.SUBNAV ul {
	list-style: none;
	margin: 0;
	padding: 20rem 0;
	display: flex;
	justify-content: space-between;
	overflow: hidden;
}

.SUBNAV li {
	position: relative;
	margin: 0;
	padding: 0;
	font-weight: 500;
	font-size: 16rem;
}

.SUBNAV li:first-child {
	font-size: 18rem;
	width: 320rem;
}

.SUBNAV a {
	color: #fff;
}

.SUBNAV a:hover {
	text-decoration: underline;
}

.SUBNAV a.alt-active {
	font-weight: 700;
}

/* .SUBNAV a.alt-active,
.SUBNAV a:hover {
	text-decoration: underline;
} */

.SUBNAV input,
.SUBNAV label {
	display: none;
}

.SUBNAV input ~ .b-frame label {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 18rem;
	background: url(../img/ui-expand-light.svg) no-repeat right 3rem center;
}

.SUBNAV input:checked ~ .b-frame ul {max-height:360rem;}
.SUBNAV input:checked ~ .b-frame label {transform:scaleY(-1); width:28rem;}

.SUBNAV.alt-life-sciences-innovation {background-color:#AE1966;}
.SUBNAV.alt-creative-studio,
.SUBNAV.alt-social-innovation {background-color:#1168A0;}
.SUBNAV.alt-energy-transition {background-color:#0f9038;}
.SUBNAV.alt-aerospace-innovation {background-color:#FFE57B; color: #101820;}
.SUBNAV.alt-aerospace-innovation a {color: #101820;}


/* Social Innovation Hub */


.SUBNAV.alt-social-innovation ul {
	align-items: center;
	position: relative;
	padding-left: var(--s5);
}

.SUBNAV.alt-social-innovation ul::before {
    content: "";
    display: block;
    position: absolute;
    top: -20rem;
    left: -70rem;
    width: 590rem;
    height: 200rem;
    background: #FDDADD;
}

.SUBNAV.alt-social-innovation li:first-child {
	position: relative;
	display: flex;
	flex-grow: .2;
	align-items: center;
	gap: var(--s1);
	width: var(--col-4);
}

.SUBNAV.alt-social-innovation li:first-child strong {
	color: var(--black);
}

.SUBNAV.alt-social-innovation li:first-child .b-button.alt-arrow:after  {
	display: none;
}

.SUBNAV.alt-social-innovation li:first-child .b-button.alt-arrow {
	border-bottom: none;
	font-size: 14rem;
	background: none;
}

.SUBNAV.alt-social-innovation li:first-child .b-button.alt-arrow {
	padding-right: 0;
	border-bottom: 1rem solid var(--black);
}

.SUBNAV.alt-social-innovation li:first-child a:hover {
	text-decoration: none;
}



@media screen and (max-width: 1200px) {
	.SUBNAV li {font-size:14rem;}
	.SUBNAV li:first-child {font-size:16rem; width:280rem;}
}

@media screen and (min-width: 961px) {
	.SUBNAV.alt-social-innovation li:first-child strong {
		/* width: 100%; */
		flex: 0 0 auto;
	}
	.SUBNAV.alt-social-innovation li:first-child .b-button.alt-arrow {
		display: block;
		position: static;
		background: none;
		height: 100%;
		width: auto;
		line-height: 1.7;
		flex: 0 0 auto;
	}
}

@media screen and (max-width: 960px) {
	.SUBNAV + section .b-frame.alt-first {padding-top:40rem;}
	.SUBNAV label {display:block;}
	.SUBNAV ul {display:block; max-height:18rem; transition: max-height 0.25s; padding:10rem 0;}
	.SUBNAV li {margin-top:5rem; font-size:16rem;}
	.SUBNAV li:first-child {width:auto;align-items: flex-start;flex-direction: column; gap: 0;}
	.SUBNAV.alt-social-innovation ul {padding-left: 0;max-height: var(--s6); display: flex; flex-direction: column; align-items: flex-start;}
	.SUBNAV.alt-social-innovation ul::before {display: none;}
	.SUBNAV.alt-social-innovation li:first-child {width: 100%; flex-grow: 0; align-items: flex-start; gap: 0;}
	.SUBNAV.alt-social-innovation li:first-child strong {width: auto;color: var(--white);/* position: absolute; */}
	.SUBNAV.alt-social-innovation li:first-child .b-button.alt-arrow {width: auto;top: 0rem;height: 40rem;color: var(--white); border-bottom: none;}
}



/* NAV */
/*  44 -> 72 */
.announcement {
	position: fixed;
	top: 0;
	width: 100%;
	background-color: #8E2C91;
	display: flex;
	align-items: center;
	z-index: 10;
}
.announcement a {
	color: white;
	font-weight: bold;

}
.announcement a:hover {
	color: rgba(255, 255, 255, 0.80);
	font-weight: bold;

}
.announcement a svg {
display: inline;
transition: all 0.25s;
}
.announcement a:hover svg {
	opacity: 0.8;
	transform: translateX(2.5rem);

}
.announcement .b-frame {
padding-top: 8rem ;
padding-bottom: 8rem ;
}
/* no announcement bar */
.NAV {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background: #fff;
	transform: translate(0, -80rem);
	transition: transform 0.25s;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	-ms-overflow-style: none;
}



.NAV::-webkit-scrollbar {
	display: none;
}

.NAV .b-frame {
	padding-top: 20rem;
}

.NAV nav {
	overflow: hidden;
}

.NAV nav input {
	display: none;
}

.NAV nav input ~ label {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 50rem;
	background: url(../img/ui-expand.svg) no-repeat right 3rem center;
}

.NAV nav label + a {
	padding-right: 40rem;
}

.NAV nav a:not(.b-button) {color:#101820;}
.NAV nav a:not(.b-button):hover {color:#101820;}

.NAV .a {color:#101820;}

/* teir 1 */

.NAV nav > ul > li {
	position: relative;
	line-height: 50rem;
	font-weight: 700;
	font-size: 14rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.NAV nav > ul > li > a {
	display: block;
	padding: 0;
}

.NAV nav > ul > li:nth-last-child(2) {
	margin-top: var(--s6);
}

.NAV nav > ul > li:last-child {
	border-bottom: none;
	margin-top: var(--s3);
}

/* teir 2 */

.NAV nav ul ul {
	position: relative;
	line-height: 40rem;
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.25s;
}

.NAV nav ul ul::before {
	content: "";
	position: absolute;
	top: 10rem;
	bottom: 20rem;
	width: 1rem;
	background: #dcdcdc;
}

.NAV nav ul ul li {letter-spacing:0; text-transform:none; font-size:16rem; font-weight:600;}
.NAV nav ul ul li:first-child {margin-top:0rem !important;}
.NAV nav ul ul li:last-child {margin-bottom:10rem !important;}

.NAV nav ul ul li a {
	color: #5A5A5E !important;
	display: block;
	padding: 0 0 0 20rem;
}

/* teir 2 show/hide functionality */

.NAV nav input:checked ~ ul {max-height:360rem;}
.NAV nav input:checked ~ label {transform:scaleY(-1);}

#toggle-nav:checked ~ .b-nav .NAV {transform:translate(0, 0);}
#toggle-nav:checked ~ .b-page .HEADER {background:#fff;}
#toggle-nav:checked ~ .b-page .HEADER .nav-trigger {background-image:url(../img/ui-dismiss.svg);}

/* fix to make sure the nav can always be closed */

#toggle-nav:checked ~ .b-page .HEADER .nav-trigger {display:block;}
#toggle-nav:checked ~ .b-page[data-scroll] .b-page-head {transform:translate(0, 100%);}
#toggle-nav:checked ~ .b-page .HEADER nav {display:none;}



/* MODAL */

.MODAL {
	position: relative;
	transform: translate(0, 80rem);
	transition: transform 0.25s;
}

.MODAL .close {
	position: absolute;
	top: -40rem;
	right: 0;
	width: 40rem;
	height: 40rem;
	background: no-repeat center #000 url(../img/ui-dismiss-light.svg);
}

.MODAL .content {
	box-sizing: border-box;
	background: #fff;
	width: 1200rem;
	max-width: calc(100vw - 80rem);
	max-height: calc(100vh - 80rem);
	padding: 40rem;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.MODAL .video {
	max-width: 100%;
	max-height: 85vh;
	width: 1200rem;
	margin: 0 auto;
	position: relative;
	background: #000;
}

.MODAL .video::before {
	content: "";
	display: block;
	padding-bottom: 56.25%;
}

.MODAL .video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#toggle-modal:checked ~ .b-modal .MODAL {
	transform: translate(0, 0);
}

.MODAL.alt-social-innovation {
	transform: translate(0, 0);

}

.MODAL.alt-social-innovation .content {
    max-width: 910rem;
    min-height: 748rem;
    background: no-repeat center url(../img/social-hub-modal-bg.svg);
    background-size: 910rem 748rem;
    padding: var(--s8) var(--s7);
	font-size: 16rem;
	line-height: 1.6;
}

.MODAL.alt-social-innovation .close {
    top: var(--s4);
	right: var(--s4);
	background: no-repeat center url(../img/social-hub-modal-x.svg);
}

@media screen and (max-width: 960px) {
	.MODAL .content {width:400rem; max-width:calc(100vw - 40rem); padding:20rem;}
	.MODAL .video {width:400rem;}
	.MODAL.alt-social-innovation .content {background: #BBD3E4; padding: var(--s6) var(--s5); min-height: auto; font-size: 16rem;}
}



/* PFA */

.PFA {
	margin: -80rem 0;
	padding: 0.01em 0;
	position: relative;
	z-index: 1;
}

.PFA .content {
	padding: 80rem 0;
}

.PFA h1 {
	margin-top: 20rem;
}

.PFA .media {
	position: relative;
	background: no-repeat center;
	background-size: contain;
	margin: 0 0 0 auto;
}

.PFA .image {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.PFA .b-hexagon.alt-pfa-1 {position:absolute; top:3%; left:0; width:80%;}
.PFA .b-hexagon.alt-fp-1 {position:absolute; top:0; left:0; width:69%;}
.PFA .b-hexagon.alt-fp-2 {position:absolute; bottom:0; right:0; width:47%;}
.PFA .b-hexagon.alt-fp-3 {position:absolute; bottom: 300rem; right:0; width:47%;}

.PFA.alt-1 {margin: -40rem 0;}

.PFA.alt-3 {opacity: 0;}

.PFA.alt-3 .b-hexagon.alt-fp-1 {width: 50%; top: 160rem;}
.PFA.alt-3 .b-hexagon.alt-fp-2 {width: 36%; bottom: 50rem;}
.PFA.alt-3 .b-hexagon.alt-fp-3 {width: 36%; bottom: 400rem;}

.PFA.alt-3.alt-triangle .b-hexagon.alt-fp-1 {width: 45%;top: 106rem;}
.PFA.alt-3.alt-triangle .b-hexagon.alt-fp-2 {width: 45%;bottom: 0;right: 28%;}
.PFA.alt-3.alt-triangle .b-hexagon.alt-fp-3 {width: 45%;bottom: 42%;right: 0rem;}

.PFA .flex {
	display: flex;
}

.PFA .icon {
	max-width: 18rem;
	flex-grow: 0.8;
}

.PFA .flex .container {
	display: flex;
	gap: 7rem;
	min-width: 136rem;
	align-items: center;
}


.PFA.alt-simple {
	margin: 0;
}

.PFA.alt-simple .content {
	width: min(100%, 575rem);
	margin: 0 auto;
	padding: 0;
}

.PFA.alt-simple .background {
	position: absolute;
	inset: 0 auto auto 0;
	width: 100%;
	height: 100%;
}

.PFA.alt-simple .b-hexagon:nth-child(1) {
	position: absolute;
	width: 223rem;
	height: 257rem;
	max-width: 224rem;
	top: 0;
	/* right: 100%; */
	right: calc(100% - (50% - 600rem));
	transform: translate(100%, 175rem) rotate(120deg);
}

.PFA.alt-simple .b-hexagon:nth-child(2) {
	position: absolute;
	width: 168rem;
	height: 192rem;
	max-width: 168rem;
	top: 0;
	/* left: 100%; */
	left: calc(100% - (50% - 600rem));
	transform: translate(calc(-100% - 35rem), 155rem) rotate(120deg);
}

@media screen and (max-width: 960px) {
	.PFA.alt-simple .b-hexagon { display: none; }
}


@media screen and (max-width: 1500px) {
	.PFA .media {margin:0;}
}

@media screen and (max-width: 960px) {
	.PFA {margin:0 !important;}
	.PFA .content {padding:0;}
	.PFA.alt-3 .b-hexagon.alt-fp-1 {top: 100rem;}
	.PFA.alt-3 .b-hexagon.alt-fp-2 {bottom: 0;}
	.PFA.alt-3 .b-hexagon.alt-fp-3 {bottom: 00rem;}
	.PFA .content h1 {margin-top: 20rem;}
	.PFA .flex {flex-direction: column;}
	.PFA.alt-simple .background .b-hexagon { display: none; }
}



/* CTA */

.CTA {
	background: #fff;
	position: relative;
}

.CTA .b-frame {
	padding-top: 0;
	padding-bottom:0;
}

.CTA .content {
	padding-right: 20rem;
	margin: 0 auto;
}

.CTA .image {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 60%;
	background: no-repeat center;
	background-size: cover;
}

.CTA .image[style="background-image:url();"] {background-color:#eee;}
.CTA .spacer::after {display:block; content:""; padding-bottom:153%;}

@media screen and (min-width: 961px) {
	.CTA .b-columns {flex-direction:row-reverse;}
	.CTA.alt-fp .b-columns {flex-direction:row;}
	.CTA.alt-fp .b-column {width:50% !important;}
	.CTA.alt-fp .content {padding-left:20px; max-width:380px;}
	.CTA.alt-fp .image {left:0; right:50%;}
	.CTA.alt-fp .spacer::after {padding-bottom:120%;}
}

@media screen and (max-width: 1200px) {
	.CTA .content br {display:none;}
}

@media screen and (max-width: 960px) {
	.CTA .b-frame {padding-bottom:40rem;}
	.CTA .image {position:static; max-width:480rem; margin:0 auto -30rem;}
	.CTA .image::after {display:block; content:""; padding-bottom:75%;}
	.CTA .content {padding:0; max-height:400rem;}
	.CTA .spacer {display:none;}
}

.CTA-GRADIENT {
	position: sticky;
	top: 0;
}

.CTA-GRADIENT .image {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.CTA-GRADIENT .media {
	position: relative;
	background: no-repeat center;
	background-size: contain;
	margin: 0 0 0 auto;
}

.CTA-GRADIENT .b-hexagon.alt-pfa-1 {position:absolute; top:3%; left:0; width:80%;}
.CTA-GRADIENT .b-hexagon.alt-fp-1 {position:absolute;bottom: 0;right: 0;width: 50%;}
.CTA-GRADIENT .b-hexagon.alt-fp-2 {position:absolute;bottom: 360rem;width: 43%;right: 187rem;}
.CTA-GRADIENT .b-hexagon.alt-fp-3 {position:absolute;bottom: 357rem;right: -100rem;width: 30%;}

.CTA-GRADIENT .b-spacer.alt-images {
	padding-bottom:115.47%;
}

.CTA-GRADIENT p {
	font-size: 28rem;
	line-height: 1.4;
	font-weight: 600;
	color: var(--black);
}

@media screen and (max-width: 960px) {
	.CTA-GRADIENT {margin:0 !important;}
	.CTA-GRADIENT .content {padding:0;}
	.CTA-GRADIENT .b-hexagon {display: none;}
	.CTA-GRADIENT .b-spacer.alt-images {padding-bottom: 0;}
	.CTA-GRADIENT p {font-size: 18rem;}
}


/* POSTS */

.POSTS .heading {
	margin: 60rem 0 40rem;
}

.POSTS .heading:first-child {
	margin-top: 0;
}

.POSTS .filter {
	margin: 0 0 40rem;
}

.POSTS .filter input,
.POSTS .filter select {font-weight:600;}

.POSTS .search {
	margin: 0 0 0 auto;
	max-width: 285rem;
}

.POSTS .b-column:first-child .search {
	max-width: 500rem;
	margin: 0 auto;
}

.POSTS .search input {
	background: url(../img/ui-search.svg) no-repeat 14rem 14rem #fff;
	padding-left: 44rem;
}

.POSTS .search.alt-full {
	max-width: none;
	margin: 0;
}

.POSTS .results {
	margin: 60rem 0 40rem;
}

.POSTS .results .search-query {
	display: inline-block;
	font-size: 42rem;
	line-height: 1.25;
	font-weight: 800;
	color: #101820;
}

.POSTS .results .alm-results-text::before {content:"|"; padding:0 8rem 0 5rem;}
.POSTS .results .alm-results-text {display:inline-block;}

.POSTS .posts {
	padding: 0.01em 0;
}

.POSTS .post {
	background: #fff;
	box-shadow: 0 40rem 50rem 0 rgba(0,0,0,0.05);
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.POSTS .image {
	position: relative;
}

.POSTS .content {
	padding: 20rem;
	flex-grow: 1;
}

.POSTS .title {
	margin-top: var(--s2);
	font-size: 20rem;
	line-height: 28rem;
}

.POSTS .excerpt {
	margin-top: 15rem;
	display: none;
}

.POSTS .bottom {
	margin-top: -5rem;
	padding: 0 20rem 20rem;
}

.POSTS .link .b-button::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.POSTS .meta {
	display: flex;
	flex-flow: row wrap;
	gap: var(--s1) var(--s2);
	max-width: 300rem;
	text-transform: uppercase;
	font-size: 16rem;
	color: rgba(16, 24, 32, 0.70);
	font-weight: 600;
}
/* Bullet before every child except the first and third */
.POSTS .meta > *:not(:first-child):not(:nth-child(3))::before {
    content: "•";
    margin: 0 var(--s1) 0 0;
    color: currentColor;
    font-weight: 900;
    font-size: 1em;
    vertical-align: middle;
}

.POSTS .hub span {white-space:nowrap;}
.POSTS .hub span:not(:last-child)::after {content:",";}


.POSTS .categories:empty {
	display: none;
}

.POSTS .categories a {
	color: rgba(16, 24, 32, 0.70);
	display: inline-block;
}


.POSTS .post.alt-tech_transfer .categories a {
	background: transparent;
	color: var(--black);
	font-weight: 500;
	border: 1rem solid var(--grey);
}



.POSTS .resource-types {
	position: absolute;
	top: 0;
	right: 0;
	color: #fff;
	padding: 10rem;
	height: 20rem;
	background: #15181F;
}

.POSTS .resource-types span {
	display: inline-block;
	vertical-align: top;
	width: 20rem;
	height: 20rem;
	background: no-repeat center url(../img/ui-resource-type.svg);
}

.POSTS .resource-types .article {background-image:url(../img/ui-article.svg);}
.POSTS .resource-types .download {background-image:url(../img/ui-download.svg);}
.POSTS .resource-types .manual-procedure {background-image:url(../img/ui-manual.svg);}
.POSTS .resource-types .video {background-image:url(../img/ui-video.svg);}
.POSTS .resource-types .webinar {background-image:url(../img/ui-webinar.svg);}

.POSTS .post.alt-programs .excerpt {display:block;}

.POSTS .b-button.alt-arrow {
	border-bottom: 0;
	width: auto;
}

/* team */

.POSTS .profile {
	background: #fff;
	overflow: hidden;
	position: relative;
	/* box-shadow: 0 40rem 50rem 0 rgba(0,0,0,0.05); */
}

.POSTS .profile .image {
	margin-top: -20rem;
	transform: translate(0, 20rem);
	transition: transform 0.5s;
}

.POSTS .profile:hover .image {
	transform: translate(0, -50rem);
}

.POSTS .profile .image::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0.5;
	background: linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,1));
}

.POSTS .profile .content {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 30rem 0 60rem;
	transform: translate(0, calc(100% - 115rem));
	transition: transform 0.25s;
	background: var(--white);
}

.POSTS .profile .content p {
	margin-top: 10rem;
	line-height: 26rem;
	height: 50rem;
}

.POSTS .profile .title {/* color:#fff; *//* height: 87rem; */}
.POSTS .profile .excerpt {display:block;}
.POSTS .profile:hover .content {transform: translate(0, 0rem);}

.POSTS .profile .link {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}


/* EXPERT ADVISORY */ 

.POSTS .filter.alt-checkbox ul {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: 1fr;
}

.POSTS .filter.alt-checkbox ul li {
	margin: 0 var(--s2);
	box-sizing: content-box;
	padding: var(--s1);
	width: 100%;
	max-width: 100%;
	list-style: none;
	position: relative;
	cursor: pointer;
}

.POSTS .filter.alt-checkbox ul li:nth-child(4n+1) {
	margin-left: 0;
}

.POSTS .filter.alt-checkbox ul li input {
	display: none;
}

.POSTS .filter.alt-checkbox label {
	font-size: 15rem;
	color: var(--black);
	font-weight: 600;
	transition: .25s cubic-bezier(.8,0,.2,1);
	padding: var(--s1);
}

.POSTS .filter.alt-checkbox ul li:hover label {
	border-bottom: 2rem solid var(--black);
}

.POSTS .filter.alt-checkbox ul li:has(input:checked) label {
	border: 1rem solid var(--black);
}

/* .POSTS .filter.alt-checkbox ul li:has(input:checked) label::after {
	content: '';
	position: absolute;
	top: var(--s2);
	right: var(--s2);
	width: 20rem;
	height: 20rem;
	background: no-repeat center url('data:image/svg+xml,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.9899 0C12.4134 0 16 3.5866 16 7.9899C16 12.4134 12.4134 16 7.9899 16C3.5863 16 0 12.4134 0 7.9899C0 3.5863 3.5866 0 7.9899 0ZM7.9899 7.05355L11.2775 3.76591L12.214 4.70239L8.92638 7.99002L12.214 11.2777L11.2775 12.2141L7.9899 8.9265L4.70227 12.2141L3.76579 11.2777L7.05343 7.99002L3.76579 4.70239L4.70227 3.76591L7.9899 7.05355Z" fill="%232F353B"/></svg>');
} */
 

.POSTS .filter.alt-checkbox .mobile-dropdown {display: none;}

@media screen and (max-width: 960px) {
	.POSTS .filter.alt-checkbox .desk-check {display: none;}
	.POSTS .filter.alt-checkbox .mobile-dropdown {display: block;}
}


/* fallback images */

.POSTS .alm-item:nth-child(5n + 1) .b-image-fallback {background-image:url(../img/fb-img-1.png);}
.POSTS .alm-item:nth-child(5n + 2) .b-image-fallback {background-image:url(../img/fb-img-2.png);}
.POSTS .alm-item:nth-child(5n + 3) .b-image-fallback {background-image:url(../img/fb-img-3.png);}
.POSTS .alm-item:nth-child(5n + 4) .b-image-fallback {background-image:url(../img/fb-img-4.png);}
.POSTS .alm-item:nth-child(5n + 5) .b-image-fallback {background-image:url(../img/fb-img-5.png);}


/* ajax load more */

.POSTS .alm-reveal,
.POSTS .featured-posts,
.POSTS .alm-listing {
	display: flex;
	flex-wrap: wrap;
	margin: -20rem;
}
.POSTS .featured-posts {
	margin-bottom: 20rem;
}
.POSTS .alm-item {
	padding: 20rem;
	box-sizing: border-box;
	flex: 0 0 auto;
	align-items: stretch;
	width: 33.33%;
}

.POSTS .ajax-load-more-wrap[data-total-posts="0"] .alm-listing:empty::before {content: "No results found.";}
.POSTS .results + .posts .ajax-load-more-wrap[data-total-posts="0"] .alm-listing:empty::before {display:none;}

.POSTS .alm-reveal + .alm-reveal, 
.POSTS .alm-listing + .alm-listing {padding-top:20rem;}
.POSTS .alm-btn-wrap {text-align:center; overflow:hidden;}
.POSTS .alm-load-more-btn {margin-top:60rem;}
.POSTS .alm-load-more-btn.done {display:none;}

.POSTS.alt-events .ajax-load-more-wrap[data-total-posts="0"] .alm-listing:empty::before {content: "Watch this space for future events.";}

.POSTS .alm-reveal .post.alt-tech_transfer,
.POSTS .alm-listing .post.alt-tech_transfer,
.POSTS .posts .post.alt-tech_transfer {
	background: no-repeat center url(../img/tech-transfer-bg.png); 
	background-size: cover;
	border: 1rem solid var(--grey);
	transition: .25s ease;
	box-shadow: none;
}

.POSTS .alm-reveal .post.alt-tech_transfer:hover,
.POSTS .alm-listing .post.alt-tech_transfer:hover {
	border: 1rem solid var(--black);
}

.POSTS .alm-reveal .post.alt-tech_transfer .content,
.POSTS .alm-listing .post.alt-tech_transfer .content {
	padding: 20rem 20rem 50rem;
}

/* no results */ 

.NORESULT {
	background: no-repeat center url(../img/no-results-bg.png);
	background-size: cover;
}

.NORESULT .container {
	padding: 80rem;
	text-align: center;
	max-width: 430rem;
	margin: auto;
}

.NORESULT h3 {
	font-size: 28rem;
}

.NORESULT p {
	margin: 10rem 0 15rem 0;
}

.NORESULT .b-button {
	font-size: 14rem;
	padding: 0 80rem;
}

@media screen and (min-width: 1201px) {
	.POSTS.alt-small .alm-item {width:25%;}
	.POSTS.alt-small .profile .excerpt {display:none;}
}

@media screen and (min-width: 961px) {
	.POSTS .alm-reveal, .POSTS .alm-listing {margin-bottom:-20rem;}
}

@media screen and (max-width: 960px) {
	.POSTS .heading {margin:40rem 0 20rem;}
	.POSTS .filter .b-columns {margin:-5rem;}
	.POSTS .filter .b-columns > .b-column {padding:5rem;}
	.POSTS .results {margin:0 0 40rem;}
	.POSTS .results .search-query {display:none;}
	.POSTS .results .alm-results-text::before {display:none;}
	.POSTS .results .alm-results-text {display:block;}
	.POSTS .search {max-width:100%;}
	.POSTS .profile .content {transform:translate(0,0); padding:20rem;}
	.POSTS .alm-item {width:100%;}
	.POSTS .alm-reveal + .alm-reveal,
	.POSTS .alm-listing + .alm-listing {padding-top:20rem;}
	.POSTS .alm-load-more-btn {margin-top:40rem;}
	.NORESULT .container {padding: 40rem 20rem; max-width: 430rem;}
}



/* ROWS */

.ROWS .row {padding: 0.01em 0;}
.ROWS .row:not(:last-child) {margin-bottom:120rem;}

.ROWS .b-image {
	box-shadow: 0 40rem 50rem 0 rgba(0,0,0,0.05);
	background: no-repeat center;
	background-size: cover;
}

.ROWS label {
	display: block;
	position:relative;
}

.ROWS label::after {
	content: "";
	display: block;
	width: 80rem;
	height: 80rem;
	background: url(../img/ui-play.svg);
	opacity: 0.75;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: opacity 0.25s;
}

.ROWS label:hover::after {opacity:1;}

.ROWS.alt-no-shadow .b-image {box-shadow: none;}

@media screen and (min-width: 961px){
	.ROWS.alt-tight .row:not(:last-child) {margin-bottom:80rem;}

	.ROWS.alt-flipped .b-columns {flex-direction:row-reverse;}

	.ROWS.alt-alternating .row:nth-child(odd) .b-columns {flex-direction:row;}
	.ROWS.alt-alternating .row:nth-child(even) .b-columns {flex-direction:row-reverse;}

	.ROWS.alt-alternating-flipped .row:nth-child(odd) .b-columns {flex-direction:row-reverse;}
	.ROWS.alt-alternating-flipped .row:nth-child(even) .b-columns {flex-direction:row;}
}

@media screen and (max-width: 960px){
	.ROWS .row:not(:last-child) {margin-bottom:60rem;}
}



/* ROW new */

.ROW.alt-border-bottom .b-columns {
	border-bottom: 1rem solid var(--grey);
}

.ROW.alt-border-bottom .row:not(:first-child) .b-columns {
	margin-top: 30rem;
}

.ROW.alt-img-offset .row:not(:has(> .b-columns.reverse)) .wrapper .b-columns.alt-flickity { margin-bottom: 0; }

.ROW.alt-img-offset .row:not(:has(> .b-columns.reverse)) .wrapper .flickity-button {
	background: no-repeat center url(../img/flickity-arrow.svg) var(--white) !important;
	border: 1rem solid var(--black);
	top: unset;
	right: unset;
	bottom: var(--s5);
	left: calc(20rem + var(--s5));
}

.ROW.alt-img-offset .flickity-button {
	width: 42rem;
	height: 42rem;
}

.ROW.alt-img-offset .row:not(:has(> .b-columns.reverse)) .wrapper .flickity-button.next { transform: translate(100%, 0); }
.ROW.alt-img-offset .row:not(:has(> .b-columns.reverse)) .wrapper .flickity-button.previous { transform: translate(0, 0) scaleX(-1); }

@media screen and (min-width: 961px) {
	.ROW.alt-img-offset .row:not(:has(> .b-columns.reverse)) .wrapper,
	.ROW.alt-img-offset .row:not(:has(> .b-columns.reverse)) .image {
		margin-right: calc(-50vw + (100% + var(--scrollbar-width) + 20rem))
	}

	.ROW.alt-img-offset .row:has(> .b-columns.reverse) .wrapper, 
	.ROW.alt-img-offset .row:has(> .b-columns.reverse) .image {
		margin-left: calc(-50vw + (100% + var(--scrollbar-width) + 20rem))
	}
	
}

@media screen and (min-width: 961px) {
	.ROW.alt-border-bottom h3 {font-size: 28rem;}
	.ROW .b-columns.reverse {flex-direction: row-reverse;}
	.ROW.alt-border-bottom .b-column {padding: 20rem 0 48rem 0;}
	.ROW:not(.alt-img-offset) .content {padding: 50rem;}
}

@media screen and (max-width: 960px) {
	.ROW:not(.alt-img-offset) .content {padding: 40rem 20rem;}
	.ROW.alt-img-offset .row:not(:has(> .b-columns.reverse)) .wrapper .b-columns.alt-flickity .b-column { padding-bottom: 0; }
	.ROW.alt-img-offset .row:not(:has(> .b-columns.reverse)) .wrapper .flickity-button {
		bottom: var(--s3);
		left: calc(20rem + var(--s3));
	}
}


/* POINTS */

.POINTS p {
	margin: 10rem 0 0;
}

.POINTS h2 {
	margin-left: auto;
	margin-right: auto;
}

.POINTS .point {
	padding: 30rem;
	background: #fff;
	box-shadow: 0 40rem 50rem 0 rgba(0,0,0,0.05);
	box-sizing: border-box;
	height: 100%;
}

.POINTS .icon {
	margin: -88rem 0 20rem;
	width: 100rem;
}

.POINTS .b-hexagon-in2 {
	background-color: #239AE3;
}

.POINTS .b-column {
	margin-top:58rem;
}

.POINTS.alt-simple .point {padding:0; background:none; box-shadow:none;}
.POINTS.alt-simple .icon {margin:0 0 20rem;}
.POINTS.alt-simple .b-column {margin-top:0;}

.POINTS.alt-center .point {text-align:center; padding-left:10rem; padding-right:10rem;}
.POINTS.alt-center .icon {margin-left:auto; margin-right:auto;}

.POINTS.alt-green .b-hexagon-in2 {background-color:#60D686;}
.POINTS.alt-orange .b-hexagon-in2 {background-color:#E27429;}
.POINTS.alt-yellow .b-hexagon-in2 {background-color:#FFCD00;}
.POINTS.alt-dark-blue .b-hexagon-in2 {background-color:#1168A0;}
.POINTS.alt-dark-green .b-hexagon-in2 {background-color:#0D9038;}
.POINTS.alt-pink .b-hexagon-in2 {background-color:#AE1966;}

.POINTS.alt-border-left .point {border-left: 1rem solid var(--grey); box-shadow: none; padding: 10rem 30rem;}
.POINTS.alt-border-left .icon {margin: 0 0 20rem;}

.POINTS.alt-card .b-column {margin-top: 0;}
.POINTS.alt-card .icon {margin-top: 0; width: 60rem;}
.POINTS.alt-card .intro {margin-top: 60rem;}

.POINTS.alt-borders {text-align: center;}
.POINTS.alt-borders .b-columns {margin: 0;}
.POINTS.alt-borders .b-column {padding: 0; margin-top: 0; position: relative;}
.POINTS.alt-borders .point {box-shadow: none; border-top: 1rem solid #CFD2D4;}
.POINTS.alt-borders .icon {margin: 0 auto 20rem;}
.POINTS.alt-borders .content {max-width: 440rem; margin: 0 auto;}

.POINTS .cards-container { 
	/* background: #4D8AB1;  */
	box-sizing: border-box;
	padding: var(--s5);
}

@media screen and (min-width: 961px) {
	.POINTS .cards-container { 
		margin-right: calc(-50vw + (100% + var(--scrollbar-width) + 20rem)); 
	}
}


.POINTS.alt-padding-32 .point {
	padding: var(--s5);
	padding-left: var(--s5);
	padding-right: var(--s5);
}

@media screen and (min-width: 960px) {
	.POINTS.alt-border-left .b-column:nth-child(5n + 1) .point,  
	.POINTS.alt-border-left .b-column:nth-child(5n + 4) .point
	{border-left: none;}

	.POINTS.alt-borders .b-column:nth-child(odd) .point {border-right: 1px solid #CFD2D4;}
	.POINTS.alt-borders .b-column:nth-child(odd) .point::after {
		content: '';
		position: absolute;
		top: 0;
		left: 100%;
		width: 40rem;
		height: 40rem;
		background: #fff;
		margin-left: -20rem;
		z-index: 1;
	}
}

@media screen and (max-width: 960px){
	.POINTS.alt-border-left .b-column {margin-top: 0;}
	.POINTS .point {padding:30px 20px 20px; height:auto;}
	.POINTS.alt-simple .content {text-align:center;}
	.POINTS.alt-simple .content h6 {font-size:15px;}
	.POINTS.alt-simple .icon {margin:0 auto 10px;}
	.POINTS.alt-simple .b-column[data-width="1/3"] {width:50%;}
	.POINTS.alt-card .intro {margin-top: 20px;}
	.POINTS .cards-container { padding: 0; }
	:is(.alt-no-pad-top-desktop, .alt-no-pad-bottom-desktop) .POINTS .intro { margin-top: 0; }
}



/* PAGE */

.PAGE {
	margin: 0 auto;
	max-width: 787rem;
}



/* NOT-FOUND */

.NOT-FOUND .image {
	background: no-repeat center url(../img/404.svg);
	background-size: contain;
	margin: -60rem 0;
}

.NOT-FOUND .image::after {
	content: "";
	display: block;
	padding-bottom: 115.47%;
}

.NOT-FOUND .content {
	max-width: 404rem;
	margin: 0 auto;
}

@media screen and (max-width: 960px){
	.NOT-FOUND .image {margin:0 auto -10rem; max-width:200rem;}
	.NOT-FOUND .content {text-align:center;}
}




/* MID PAGE CAROUSEL */

.MID-CAROUSEL { 
	position: relative; 
	width: 100%;
}

.MID-CAROUSEL > .b-frame {
	width: 100%;
	max-width: 1120rem;
	box-sizing: border-box;
	position: absolute;
	inset: auto auto auto 50%;
	transform: translateX(calc(-50% - 80rem));
	z-index: 2;
}

.MID-CAROUSEL .content * { color: var(--white); }

.MID-CAROUSEL .carousel { z-index: 1; }
.MID-CAROUSEL .carousel-item { width: 100%; }
.MID-CAROUSEL .carousel-item .image { max-height: 742rem; }
.MID-CAROUSEL .carousel-item .image .b-image { max-height: inherit; }

.MID-CAROUSEL .flickity-button {
	top: 80rem;
	right: unset;
	left: calc(100% - (50% - 600rem) - var(--scrollbar-width));
	background: no-repeat center url(../img/flickity-arrow.svg) var(--white) !important;
	border: 1px solid var(--black);
	width: 42rem;
	height: 42rem;
}

.MID-CAROUSEL .flickity-button.next { transform: translate(-100%, 0); }
.MID-CAROUSEL .flickity-button.previous { transform: translate(-200%, 0) scaleX(-1); }

@media screen and (max-width: 1280px) {
	.MID-CAROUSEL > .b-frame {
		width: calc(100% - 120rem);
		inset: auto auto auto 0;
		transform: translateX(0);
	}

	.MID-CAROUSEL .flickity-button { left: calc(100% - 40rem - var(--scrollbar-width)); }
}

@media screen and (max-width: 960px) {
	.MID-CAROUSEL { 
		background: var(--white);
	}
	.MID-CAROUSEL > .b-frame { 
		position: static;
		transform: none;
		width: 100%;
		padding-bottom: var(--s3);
		padding-top: 0;

		/* width: 100%;
		max-width: 440px; 
		inset: auto auto auto 50%;
		transform: translateX(-50%); */
	}
	.MID-CAROUSEL .content * { color: var(--black); }
	/* .MID-CAROUSEL .carousel { padding-bottom: calc(42rem + var(--s3));} */

	/* .MID-CAROUSEL .carousel-item .image, .b-image) {
	.MID-CAROUSEL .carousel-item :is(.image, .b-image) {
		min-height: 400rem;
	} */

	.MID-CAROUSEL .flickity-button {
		left: 0;
		top: unset;
		bottom: 0;
	}

	/* .MID-CAROUSEL .flickity-button.next { transform: translate(calc(-50% + 20.5px), calc(-100% - 30px)); }
	.MID-CAROUSEL .flickity-button.previous { transform: translate(calc(-50% - 20.5px), calc(-100% - 30px)) scaleX(-1); } */
	.MID-CAROUSEL .flickity-button.next { transform: translate(calc(20rem + 100%), var(--ns3)); }
	.MID-CAROUSEL .flickity-button.previous { transform: translate(20rem, var(--ns3)) scaleX(-1); }
}