/*
This CSS file contains the CSS needed for the Hopp Header.

@package Hopp FAW Header
@since 1.0.0
@version 1.0.10

*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
Header (HE)
	HE - Blocks
	HE - All FAW Toggle
	HE - Links
	HE - Media
	HE - Search
		HE_SE - Opening
		HE_SE - Open
		HE_SE - Closing
		HE_SE - Responsive
		HE_SE - Icon Swap
	HE - Site Specific Menu
		HE_S - Flickity
		HE_S - All sections drop down - Mega menu
		HE_S - Greedy Nav
	HE - Call to Action (Ad)

--------------------------------------------------------------*/
/*--------------------------------------------------------------
Header (HE)
--------------------------------------------------------------*/
/*--------------------------------------------------------------
HE - Blocks
--------------------------------------------------------------*/

.site-header {
	position: relative;
	z-index: 99998; // to try and ensure above EVERYTHING as this has been used elsewhere
	border-radius: 0 0 10px 10px;
    box-shadow: 0px 0px 5px #2C2C2C34;
    padding: 0 1rem;

	#ad-header {
		margin: 0 -1rem;
	}

	.site-header__main {
		padding: 1rem 0;
	}

	.site-header__main,
	.site-header__sub .nav-root {
		margin: 0 -1rem;
	}
}

.faw-popup--header #mob-nav-bg.mob-nav-bg--global {
	background: #fff;
}

.site-header--global .logo-mob-menu-open {
	display: none;
}

.faw-popup--header .site-header--global .logo-mob-menu-closed {
	opacity: 1;
}

.site-header--global.in-page-menu,
.in-page-menu {
	overflow: hidden;
}

/*--------------------------------------------------------------
HE - All FAW Toggle
--------------------------------------------------------------*/
.site-header--global .faw-acc__header span strong:before,
.site-header--global .faw-acc__header span strong:after,
.site-header--global .mob-menu__inner,
.site-header--global .mob-menu__inner:before,
.site-header--global .mob-menu__inner:after {
	background: #221E1B;
	border-color: #221E1B;
}

.mob-menu--global {
	width: 100%;
	height: 100%;
	padding-left: 3.5rem;
}

.mob-menu--global .mob-menu__inner,
.mob-menu--global .mob-menu__inner:before,
.mob-menu--global .mob-menu__inner:after {
	width: 2.5rem;
	height: .2rem;
	left: 0;
}

.mob-menu--global .mob-menu__inner:before {
	top: .8rem;
}

.mob-menu--global .mob-menu__inner:after {
	top: 1.6rem;
}

.faw-popup--header .mob-menu__inner {
	transform: translate3d(0,0.8rem,0) rotate(45deg);
}

.faw-popup--header .mob-menu--global .mob-menu__inner:after {
	transform: translate3d(0,-1.6rem,0) rotate(-90deg);
}

.mob-menu-icon-wrap {
	position: absolute;
	height: 1.8rem;
	width: 2.5rem;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

#primary-menu-mob li {
	-webkit-animation-delay: 0s;
			animation-delay: 0s;
}

#primary-menu-mob > :nth-child(2) {
	-webkit-animation-delay: .05s;
			animation-delay: .05s;
}

#primary-menu-mob > :nth-child(3) {
	-webkit-animation-delay: .1s;
			animation-delay: .1s;
}

#primary-menu-mob > :nth-child(4) {
	-webkit-animation-delay: .15s;
			animation-delay: .15s;
}

#primary-menu-mob > :nth-child(5) {
	-webkit-animation-delay: .2s;
			animation-delay: .2s;
}

#primary-menu-mob > :nth-child(6) {
	-webkit-animation-delay: .25s;
			animation-delay: .25s;
}

#primary-menu-mob > :nth-child(7) {
	-webkit-animation-delay: .3s;
			animation-delay: .3s;
}

#primary-menu-mob > :nth-child(8) {
	-webkit-animation-delay: .35s;
			animation-delay: .35s;
}

#primary-menu-mob > :nth-child(9) {
	-webkit-animation-delay: .4s;
			animation-delay: .4s;
}

#primary-menu-mob > :nth-child(10) {
	-webkit-animation-delay: .45s;
			animation-delay: .45s;
}

#primary-menu-mob > :nth-child(11) {
	-webkit-animation-delay: .5s;
			animation-delay: .5s;
}

#primary-menu-mob > :nth-child(12) {
	-webkit-animation-delay: .55s;
			animation-delay: .55s;
}

/*--------------------------------------------------------------
HE - Links
--------------------------------------------------------------*/
/* #primary-menu-mob a,
#supplementary-menu-mob a {
	color: inherit;
} */

.site-header a {
	background-image: none !important;
}

.in-page-menu a {
	padding: 1rem 0 1rem 2rem;
}

.in-page-menu li:first-child a {
	padding-left: 0;
}

.faw-sub-menu .current-menu-item a,
.faw-sub-menu a:hover,
.faw-sub-menu a:active,
.faw-sub-menu a:focus {
	color: #221E1B;
	position: relative;
	background-image: none;
}

.faw-sub-menu .current-menu-item a:before,
.faw-sub-menu a:hover:before,
.faw-sub-menu a:active:before,
.faw-sub-menu a:focus:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 2rem;
	width: calc(100% - 2rem);
	height: 0.3rem;
	background: #F4241D;
}

.faw-sub-menu .current-menu-item:first-child a:before,
.faw-sub-menu li:first-child a:hover:before,
.faw-sub-menu li:first-child a:active:before,
.faw-sub-menu li:first-child a:focus:before {
	left: 0;
	width: 100%;
}

.faw-sub-menu .current-menu-item:last-child a:before,
.faw-sub-menu li:last-child a:not([target="_blank"]):hover:before,
.faw-sub-menu li:last-child a:not([target="_blank"]):active:before,
.faw-sub-menu li:last-child a:not([target="_blank"]):focus:before {
	width: calc(100% - 3rem);
}

.faw-sub-menu a:hover:before,
.faw-sub-menu a:active:before,
.faw-sub-menu a:focus:before {
	background: #DBDBDB;
}

.faw-sub-menu a[target="_blank"],
.faw-sub-menu li:last-child a[target="_blank"] {
	padding-right: 2rem;
	position: relative;
}

.faw-sub-menu a[target="_blank"]:after {
	position: absolute;
	content: "";
	top: 0.1rem;
	bottom: 0;
	right: 0;
	margin: auto;
	height: 1.2rem;
	width: 1.2rem;
	background-image: url(../img/lib/external-link-icon.svg);
	background-repeat: no-repeat;
}

@media (min-width: 992px) {
	.faw-sub-menu li:not(:first-child) a {
		margin-left: 3rem;
	}
}

/*--------------------------------------------------------------
HE - Media
--------------------------------------------------------------*/
.site-logo__icon {
	width: 3rem;
	height: 3.5rem;
}

#site-logo img {
	display: block;
}

.site-header__s-img {
	width: 1.4rem;
    display: block;
    max-width: 4rem;
    margin: auto;
}

.site-header__s-img--link {
	min-width: 3rem; 
	display: block;
	padding: 0;
}

/*--------------------------------------------------------------
HE - Search
--------------------------------------------------------------*/
.site-header--global .site-header__search-js {
	position: relative;
}

.site-header--global input.search-field,
.faw-search__pseudo-button-wrapper .search-field {
	border-radius: .4rem;
	border: 0;
	background-color: #F1F1F1;
	padding-left: 5.5rem;
}

#header-search-btn {
	height: 100%;
	width: 4rem;
	position: absolute;
	border: 0;
	border-radius: .4rem 0 0 .4rem;
	background-color: #F1F1F1;
}

#header-search-btn span {
	overflow: hidden;
	text-indent: -999rem;
	display: block;
	pointer-events: none;
}

#header-search-btn svg,
.site-header-btn--search-js svg,
.site-header__search-wrapper--close svg {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	pointer-events: none;
	width: 1.6rem;
}

.header-search-divider {
	height: 50%;
	margin: auto;
	width: 0.1rem;
	background: #2C2C2C;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 4rem;
	pointer-events: none;
}

body .searchwp-live-search-results {
	border-radius: 0 0 0.4rem 0.4rem;
	background: #f1f1f1;
	margin-top: -10px;
	box-shadow: none;
	max-height: 100%;
	padding: 0;
	min-height: 13rem;
}

.searchwp-live-search-results__content {
	overflow-y: scroll;
	min-height: 12rem;
	max-height: 29.3rem;
	border-top: 0.1rem dashed #ccc;
	margin-top: 0.7rem;
	padding-bottom: 1.5rem;
}

.searchwp-live-search-no-min-chars .spinner {
	top: 4rem !important;
}

.searchwp-live-search-no-min-chars:after {
	padding: 6.5rem 2rem 0 !important;
	margin-bottom: 2rem;
}

.site-header__search-wrapper,
.site-header__search-wrapper--close {
	border-left: none;
	padding-left: 1.5rem !important;
}

.site-header-btn--search-js {
	background-image: none;
}

.site-header-btn--search-js--close:before, 
.site-header-btn--search-js--close:after {
	content:none;
}

/*--------------------------------------------------------------
HE_SE - Opening
--------------------------------------------------------------*/


/*--------------------------------------------------------------
HE_SE - Open
--------------------------------------------------------------*/

/*--------------------------------------------------------------
HE_SE - Closing
--------------------------------------------------------------*/

/*--------------------------------------------------------------
HE_SE - Responsive
--------------------------------------------------------------*/
@media (max-width: 767px) {
	.site-specific-nav__search-wrap {
		position: absolute
	}
}

@media (min-width: 768px) {
	.site-header--global .site-header__search-js {
		opacity: 1;
		display: block;
		position: relative;
		visibility: visible;
	}
}

/*--------------------------------------------------------------
HE_SE - Icon Swap
--------------------------------------------------------------*/
/* Pure CSS animated SVG icon swap with button */
/* https://bbbootstrap.com/snippets/animated-search-input-close-button-58907192 */
.icon-swap-wrapper {
	height: 3rem;
	width: 3rem;
}

.icon-swap-wrapper button {
	transition: 0.2s cubic-bezier(.4, 0, .2, 1);
	position: absolute;
}

.icon {
	left: 1.5em;
	transition: 0.2s cubic-bezier(.4, 0, .2, 1);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}

.swap-off {
	transform: rotate(-80deg);
	opacity: 0;
	visibility: hidden;
}



.site-header-btn--search-js--close svg{
	position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    pointer-events: none;
}

/*--------------------------------------------------------------
HE - Site Specific Menu
--------------------------------------------------------------*/
/* .menu-item-wrap {
	padding: 1rem 2rem;
	background: #eee;
	display: block;
	border-radius: 0.5rem;
} */

.in-page-menu a {
	display: block;
}

.nav-section.mobile {
	overflow: hidden;
}

.nav-section.mobile .site-logo {
	z-index: 1;
	transition: all 0.3s ease-in-out;
}

/*--------------------------------------------------------------
HE_S - Flickity
--------------------------------------------------------------*/
.in-page-menu .faw-sub-menu ul {
	padding: 0;
}

.in-page-menu .flickity-button:disabled {
	display: none;
}

.in-page-menu .flickity-prev-next-button {
	box-shadow: none;
	background: #fff;
	opacity: 1;
	height: 100%;
	width: 9.5266%;
}

.in-page-menu .flickity-prev-next-button:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
	height: 70%;
	width: .1rem;
	background: #ccc;
}

.in-page-menu .flickity-prev-next-button.next {
	right: -9.5266%;
	min-width: 2.5rem;
}

.in-page-menu .flickity-prev-next-button.next:after {
	left: -0.3rem;
}

.in-page-menu .flickity-prev-next-button.previous {
	left: -9.5266%;
	min-width: 2.5rem;
}

.in-page-menu .flickity-prev-next-button.previous:before {
	left: auto;
	right: 0;
}

@media (min-width: 576px) {
	.in-page-menu .flickity-prev-next-button:before,
	.in-page-menu .flickity-prev-next-button.previous:before {
		content: '';
		position: absolute;
		height: 100%;
		width: 5rem;
		top: 0;
		right: -5rem;
		pointer-events: none;
		background: linear-gradient(to right,#fff 20%,rgba(255,255,255,0) 80%);
	}
	
	.in-page-menu .flickity-prev-next-button.next:before {
		right: auto;
		left: -5rem;
		background: linear-gradient(to left,#fff 20%,rgba(255,255,255,0) 80%);
	}

	.in-page-menu .flickity-prev-next-button {
		width: 2rem;
		height: 100%;
	}

	.in-page-menu .flickity-prev-next-button.next {
		right: 0;
		left: auto;
		border: 0;
	}
	
	.in-page-menu .flickity-prev-next-button.previous {
		left: 0;
		border: 0;
	}

}

/*--------------------------------------------------------------
HE_S - All sections drop down - Mega menu
--------------------------------------------------------------*/

.mega-menu {
	max-width: 84%!important;
    margin: auto;
}

.container .mega-menu .container {
    max-width: 2100px !important;
}

/* Click the link not the contents of the link */
.mega-menu__link > *,
.mega-menu__icons-wrapper svg {
	pointer-events: none;
}

/* .mega-menu a:link,
.mega-menu a:hover,
.mega-menu a:active,
.mega-menu a:focus {
	color: #2C2C2C;
} */

.mega-menu p {
    white-space: normal;
}

#primary-menu .mega-menu .wp-block-social-links .wp-social-link.wp-social-link.wp-social-link {
    margin: 0 0.4rem 0;
    display: inline-block;
	padding-left: 0;
}

/* This padding was removed in a WordPress update and breaking the look of our icons, so added this back in. */
#primary-menu .mega-menu .wp-block-social-links .wp-social-link.wp-social-link.wp-social-link .wp-block-social-link-anchor {
	padding: 0.25em;
}

#masthead .mega-menu .site-header__sub__border-top {
    padding-bottom: 0;
}

#masthead .site-header__sub__border-top.site-header__sub__border-top-menu-divider {
    position: absolute;
    z-index: 10;
    margin: auto;
    left: 0;
    right: 0;
    padding: 0;
}

.mega-menu__advert {
	width:100%;
}

.mega-menu--bg-light {
	background:#f4f4f4;
	border-radius: 1rem;
}

.mega-menu__sub-section-wrapper-inner {	
	height: 100%;	
}

.mega-menu__inside-faw-wrapper {
	flex-wrap: wrap;
	align-items: flex-start;
}

.mega-menu__inside-faw-wrapper > .row {
	flex: 1 0 100%;
}

.mega-menu__icon-main {
	width:100%;
	max-width: 2.5rem;
	max-height: 2.5rem;
}

.mega-menu__icon-sub {
	width:100%;
	max-width: 2rem;
	max-height: 2rem;
}

a.faw-text--border-ani,
a.faw-text--icon-border-ani {
	padding-bottom: 0.5rem;
}

.faw-text--border-ani:after {
    content: '';
    display: block;
    position: relative;
    width: 3rem;
	bottom: -0.55rem;
	height: .4rem;
}

.faw-text--border-ani:after {
	transition: all 0.3s ease;
	width: 0;
	opacity: 0;
}

.faw-text--icon-border-ani:hover .faw-text--border-ani:after,
.faw-text--icon-border-ani:active .faw-text--border-ani:after,
.faw-text--icon-border-ani:focus .faw-text--border-ani:after,
.faw-text--border-ani:hover:after,
.faw-text--border-ani:active:after,
.faw-text--border-ani:focus:after {
	width: 3rem;
	opacity: 1;
}

.faw-text--border-ani > p {
	font-size: 1.6rem;
	line-height: 1.2;
}


@media (min-width: 576px) {

	.mega-menu__icon-sub {
		max-width: 3rem;
		max-height: 3rem;
	}

}

@media (min-width: 768px) {
	
	.faw-dropdown--mega-menu .in-page-menu__nav {
		margin-left: -15px;
		margin-right: -15px;
	}

}

/* Main menu / Navigation menu updates */
.site-header-menu a,
.faw-dropdown--mega-menu .faw-acc__header > span > strong {
    font-weight: normal;
}

.site-header-menu a:hover,
.site-header-menu a:active,
.site-header-menu a:focus {
	color: inherit;
}

.mega-menu .is-style-faw-h5 {
	font-weight: 600;
}

.site-header-menu-wrapper,
#primary-menu .menu-item .faw-dropdown--mega-menu {
	position: static;
}

/* We need to see the menu outside the header */
.site-header--global {
    overflow: visible;
}

/* Animation menu updates */
.faw-dropdown--mega-menu .faw-acc__panel {
	position:absolute;
	background-color: #fff;
}

/* Start: Initial style, slide down effect */
/* .faw-dropdown--mega-menu .faw-acc__panel {
	transition: transform .5s ease-in-out;
}

.faw-dropdown--mega-menu .faw-acc__panel[aria-hidden=true] {
    display: block;
	transform: translateY(-100%);
	overflow: hidden;
}

.faw-dropdown--mega-menu .faw-acc__panel[aria-hidden=false] {
	display: block;
	transform: translateY(2.4rem);
	overflow: visible;
} */
/* End: Initial style, slide down effect */


/* Start: New experimental animation*/
.faw-dropdown--mega-menu .faw-acc__panel {
	transition: all .5s ease-in-out;
	opacity: 0;
	visibility: hidden;
}

.faw-dropdown--mega-menu .faw-acc__panel[aria-hidden=true] {
	display: block !important;
	visibility: hidden;
	animation: invisible .4s;
	pointer-events: none;
}

.faw-dropdown--mega-menu .faw-acc__panel[aria-hidden=false] {
	visibility: visible;
	opacity: 1;
	animation: visible .4s;
	top: 9.5rem;
	pointer-events: all;
	padding-top: 0;
}
/* End: New experimental animation*/

/* New animation*/
@keyframes visible {
	from {
	  /* transform: translateY(-24px); */
	  top:-9.5rem;
	  opacity: .5;
	  /* transform: scale(0); */
	}
	to {
		/* transform: translateY(24px); */
	  opacity: 1;
	  top:9.5rem;
		/* transform: scale(1); */
	}
   }

   @keyframes invisible {
	from {
		/* transform: translateY(24px); */
	  opacity: 1;
	  top:9.5rem;
	  /* transform: scale(1); */
	}
	to {
		/* transform: translateY(-24px); */
	  opacity:  0;
	  top:-9.5rem;
	  /* transform: scale(.1); */
	}
}

.faw-dropdown--mega-menu .faw-acc__panel {
	z-index: -2;
}

/* Menu icons */

.faw-svg-icon {
    width: 3rem;
    height: 3rem;
    display: inline-block;
}

.faw-svg-icon--medium {
    width: 2.5rem;
    height: 2.5rem;
}

.faw-svg-icon--small {
    width: 2rem;
    height: 2rem;
}

a:hover .faw-svg-icon path,
a:active .faw-svg-icon path,
a:focus .faw-svg-icon path,
.faw-svg-icon:hover path,
.faw-svg-icon:active path,
.faw-svg-icon:focus path,
button:hover .faw-svg-icon path,
button:active .faw-svg-icon path,
button:focus .faw-svg-icon path {
	fill:  currentColor;
}

/*--------------------------------------------------------------
HE_S - Greedy Nav
--------------------------------------------------------------*/
.site-header__sub {
	/* position: relative; */
	background: #fff;
	z-index: 2;
	padding: 1rem 0;
}

.site-header__sub > .container,
.site-header__sub__border-top {
	position: relative;
	z-index: 3;
}

#masthead .site-header__sub__border-top {
	z-index: 4;
	background: #fff;
}

#masthead.display-search .site-header__sub__border-top {
	z-index: 3;
}

#faw-greedy-nav {
	position: relative;
	background: #fff;
	display: block;
	overflow: hidden;
}

#faw-greedy-nav ul,
#faw-greedy-nav__hidden-links__wrapper ul {
	padding: 0;
	margin: 0;
}

#faw-greedy-nav li,
#faw-greedy-nav__hidden-links__wrapper li {
	list-style: none;
}

#faw-greedy-nav a,
#faw-greedy-nav__hidden-links__wrapper a {
	display: inline-block;
	position: relative;
}

#faw-greedy-nav a:hover,
#faw-greedy-nav a:active,
#faw-greedy-nav a:focus,
#faw-greedy-nav__hidden-links__wrapper a:hover,
#faw-greedy-nav__hidden-links__wrapper a:active,
#faw-greedy-nav__hidden-links__wrapper a:focus {
	color: inherit;
}

.in-page-menu__nav a,
#faw-greedy-nav .current-menu-item a,
#faw-greedy-nav__hidden-links__wrapper .current-menu-item a {
	color: #221E1B;
}

#faw-greedy-nav__hidden-links__wrapper {
	border: none;
}

#faw-greedy-nav__hidden-links__wrapper .js-accordion__header {
	display: none;
}

.faw-greedy-nav__pseudo-button-wrapper {
	background-color: inherit;
}

#faw-greedy-nav__pseudo-button {
	font-family: ff-good-headline-web-pro, sans-serif;
	font-size: 1.6rem;
	padding: 0 0 0 2.6rem;
	position: relative;
	background: none;
	border: none;
	height: 2.4rem;
	display: block;
	margin-left: auto;
}

#faw-greedy-nav__pseudo-button > span {
	pointer-events: none;
	font-weight: normal;
}

#faw-greedy-nav .faw-acc__header > span > strong:before,
#faw-greedy-nav .faw-acc__header > span > strong:after {
	content: none;
}

#faw-greedy-nav__pseudo-button svg {
    position: absolute;
    left: 0;
	right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

/* Pure CSS animated SVG icon swap with button */
/* https://bbbootstrap.com/snippets/animated-search-input-close-button-58907192 */
#faw-greedy-nav__pseudo-button .icon-swap-wrapper--greedy-nav {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

#faw-greedy-nav__pseudo-button .icon-swap-wrapper--greedy-nav .swap-on,
#faw-greedy-nav__pseudo-button .icon-swap-wrapper--greedy-nav .swap-off {
	transition: 0.2s cubic-bezier(.4, 0, .2, 1);
	position: absolute;
	left: 0;
    right: 0;
}

.nav-section.wpmmPopupActive .icon-swap-wrapper--greedy-nav .swap-off {
	transform: rotate(-80deg);
	opacity: 0;
	visibility: hidden;
}

.nav-section.wpmmPopupActive .icon-swap-wrapper--greedy-nav .icon,
.nav-section.wpmmPopupActive .icon-swap-wrapper--greedy-nav .icon {
	transform: rotate(80deg) scale(1);
}

.nav-section.wpmmPopupActive .icon-swap-wrapper--greedy-nav .swap-off,
.nav-section.wpmmPopupActive .icon-swap-wrapper--greedy-nav .swap-off {
	opacity: 1;
	transform: rotate(-80deg);
	visibility: visible;
}

.nav-section.wpmmPopupActive .icon-swap-wrapper--greedy-nav .swap-on,
.nav-section.wpmmPopupActive .icon-swap-wrapper--greedy-nav .swap-on {
	opacity: 0;
	visibility: hidden;
}
/* Pure CSS animated SVG icon swap with button */

.screen-reader-text .hamburger {
	display: none;
}

#faw-greedy-nav .faw-greedy-nav__visible-links {
	display: inline-table;
}

#faw-greedy-nav .faw-greedy-nav__visible-links li {
	display: table-cell;
	white-space: nowrap;
}

#faw-greedy-nav__hidden-links__wrapper .js-accordion__panel {
	position: absolute;
	left: 0;
	top: calc(100% + 1rem);
	width: 100%;
	margin: 0;
	padding: 0 1.5rem;
	z-index: -1;
	border: none;
	transform: translateY(-100%);
	transition: transform 0.3s ease-in-out;
}

#faw-greedy-nav__hidden-links__wrapper .js-accordion__panel[aria-hidden=true] {
	display: block;
}

#faw-greedy-nav__hidden-links__wrapper .js-accordion__panel[aria-hidden=false] {
	transform: translateY(0);
	transition: transform 0.3s ease-in-out;
}

.site-header__sub .hidden,
#faw-greedy-nav__hidden-links__wrapper .hidden {
	visibility: hidden;
}

#faw-greedy-nav a {
	padding: 1rem 0 1rem 2rem;
}

#faw-greedy-nav__hidden-links a {
	padding: 1rem 0 1rem 1rem;
}

#faw-greedy-nav li:first-child a,
#faw-greedy-nav__hidden-links__wrapper li:first-child a,
#faw-greedy-nav__hidden-links__wrapper li a {
	padding-left: 0;
}

#faw-greedy-nav .current-menu-item a:before,
#faw-greedy-nav__hidden-links__wrapper .current-menu-item a:before,
#faw-greedy-nav a:hover:before,
#faw-greedy-nav a:active:before,
#faw-greedy-nav a:focus:before,
#faw-greedy-nav__hidden-links__wrapper a:hover:before,
#faw-greedy-nav__hidden-links__wrapper a:active:before,
#faw-greedy-nav__hidden-links__wrapper a:focus:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 2rem;
	width: calc(100% - 2rem);
	height: 0.3rem;
	background: #F4241D;
}

#faw-greedy-nav a:hover:before,
#faw-greedy-nav a:active:before,
#faw-greedy-nav a:focus:before,
#faw-greedy-nav__hidden-links__wrapper a:hover:before,
#faw-greedy-nav__hidden-links__wrapper a:active:before,
#faw-greedy-nav__hidden-links__wrapper a:focus:before {
	background: #DBDBDB;
}

#faw-greedy-nav li:first-child a:hover:before,
#faw-greedy-nav li:first-child a:active:before,
#faw-greedy-nav li:first-child a:focus:before {
	left: 0;
	width: 100%;
}

#faw-greedy-nav__hidden-links__wrapper a:hover:before,
#faw-greedy-nav__hidden-links__wrapper a:active:before,
#faw-greedy-nav__hidden-links__wrapper a:focus:before {
	left: 0;
	width: calc(100% - 1.5rem);
}

#faw-greedy-nav__hidden-links__wrapper .current-menu-item a:before {
	left: 0;
	width: 100%;
}

.faw-greedy-nav__pseudo-button-wrapper {
	z-index: 3;
}

@media (max-width: 767px) {

	.faw-greedy-nav-wrapper {
		visibility: hidden;
		position: absolute;
	}

	#masthead.display-search .site-header__sub:after {
		z-index: 2;
	}

	#faw-greedy-nav__hidden-links__wrapper li:not(.current-menu-item) a:hover:before,
	#faw-greedy-nav__hidden-links__wrapper li:not(.current-menu-item) a:active:before,
	#faw-greedy-nav__hidden-links__wrapper li:not(.current-menu-item) a:focus:before {
		opacity: 1;
		width: 3rem;
	}

	#faw-greedy-nav__hidden-links__wrapper li a:hover,
	#faw-greedy-nav__hidden-links__wrapper li a:active,
	#faw-greedy-nav__hidden-links__wrapper li a:focus {
		color: #2C2C2C;
	}

	#masthead.display-search #faw-greedy-nav__hidden-links__wrapper .js-accordion__panel {
		visibility: hidden;
	}

	#faw-greedy-nav__hidden-links__wrapper .js-accordion__panel {
		top: calc(100%);
	}

}

@media (min-width: 768px) {
	#faw-greedy-nav__hidden-links li {
		display: inline-block;
	}

	#faw-greedy-nav__hidden-links__wrapper li a {
		padding-right: 1.5rem;
	}

	#faw-greedy-nav__hidden-links__wrapper .current-menu-item a:before {
		left: 1.5rem;
		width: calc(100% - 1.5rem);
	}

	#faw-greedy-nav__pseudo-button {
		padding: 0 0 0 3.5rem;
		height: auto;
		display: inline-block;
	}

	#faw-greedy-nav .current-menu-item:first-child a:before {
		left: 0;
		width: 100%;
	}

	#faw-greedy-nav__hidden-links__wrapper .current-menu-item a:before,
	#faw-greedy-nav__hidden-links__wrapper .current-menu-item:first-child a:before {
		left: 0;
	}
}

@media (min-width: 992px) {

	#faw-greedy-nav__pseudo-button {
		padding: 0 2rem 0 3.5rem;
	}

	#faw-greedy-nav li:not(:first-child) a {
		margin-left: 3rem;
	}

	#faw-greedy-nav__hidden-links__wrapper li a {
		margin-right: 3rem;
	}

	#site-logo .col-auto {
		margin-right: 2rem;
	}
}

/*--------------------------------------------------------------
HE - Call to Action (Ad)
--------------------------------------------------------------*/
#mega-menu__ad-cta,
#mega-menu__cta,
#mega-menu__ad,
#mega-menu__ad-cta.ad-visible #mega-menu__cta__link,
#mega-menu__ad-cta .mega-menu__ad-text__wrapper {
	display: none;
}

#mega-menu__ad-cta {
	overflow: hidden;
}

#mega-menu__ad-cta.cta-visible,
#mega-menu__ad-cta.ad-visible,
#mega-menu__ad-cta.cta-visible #mega-menu__cta,
#mega-menu__ad-cta.ad-visible .mega-menu__ad-text__wrapper {
	display: block;
}

#mega-menu__ad-cta.ad-visible #mega-menu__ad {
	display: flex;
}

#mega-menu__ad-cta.cta-visible img,
#mega-menu__ad-cta.cta-visible .wp-block-cover__background {
	border-radius: 1rem;
}

#mega-menu__ad-cta.cta-visible .wp-block-cover__inner-container {
	margin-top: auto;
}

#mega-menu__ad-cta {
	position: relative;
}

#mega-menu__ad-cta #mega-menu__cta__link {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 999;
}

#mega-menu__cta__link:hover + #mega-menu__cta .wp-block-button__link, 
#mega-menu__cta__link:active + #mega-menu__cta .wp-block-button__link, 
#mega-menu__cta__link:focus + #mega-menu__cta .wp-block-button__link {
	transform: scale(1.05);
}

.mega-menu__ad-text {
	font-size: 1.2rem;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 7rem;
    height: 1.8rem;
    margin: auto;
}

.mega-menu__ad-text__wrapper {
	height: 2.8rem;
	position: relative;
}