/* BA components. Based on Bootstrap 5.3. Jan 2023. */
/*	
	1.	main navigation
	2.	aside nav
	4.	page-content-nav
	5.	section-header
	10.	accordion
	11.	breadcrumbs
	12.	tables
	14.	side-col-banner
	17. listing-showing-info
	20. post card
	21. tags-listing
	22. listing nav
*/



/* ************************* */
/* 1. MAIN NAVIGATION		 */
/* ************************* */

/* navbar */
#header{height:var(--header-height);}

#header .navbar{ position: fixed; top:0px; left:0; width:100vw; padding:0; background:#fff; z-index: 1030; transition:box-shadow 0.8s ease, top 0.8s ease;}
.navbar-brand{width:12.1875rem; padding:0; flex:none; margin:0.25rem 0; transition:margin-top 0.8s ease, width 0.8s ease; }
.navbar-brand:focus{outline:0;}
.navbar-brand img{width:100%;}

#header .navbar.affix{box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.2); top:calc(var(--header-height-sticky) - var(--header-height));}
.affix .navbar-brand{margin-top:3rem; width:10rem;}

/*navigation */
#navigation{justify-content: flex-end;}
#navigation > .inner-wrap{height:var(--header-height); top:0; flex:none; display: flex; flex-direction: column-reverse; justify-content: flex-end; align-items: flex-end; }

.navbar-nav .placeholder-item {cursor: default;}
.navbar-nav li{display: flex; align-items: center;}
.navbar-nav > li > a{line-height:1.2; display: block; text-decoration: none;}
.navbar-nav .dropdown-toggle{z-index: 2; text-align: right;}
.navbar-nav .dropdown-toggle:after{content: '\f078'; font: var(--font-icon); transition:transform 0.4s ease; border:0;}
.navbar-nav .dropdown-toggle.show:after{ transform:rotate(-180deg);}

.navbar-nav .dropdown-menu{top:100%; background: #fff; min-width:14rem; max-width: 15rem; padding:0; margin:0; border:0; border-radius:var(--radius-normal); box-shadow: 0 0 1.25rem 0 rgba(0,7,41,0.2);}
.navbar-nav .dropdown-menu > li{align-items: flex-start;}
.navbar-nav .dropdown-menu > li > a{line-height: 1.2; display: block; text-decoration: none; flex-grow:1;}
.navbar-nav .dropdown-menu.open-left {left:auto; right:-1px;}
.navbar-nav .dropdown-menu .dropdown-menu{left:100%;}
.navbar-nav .dropdown-menu .dropdown-menu.open-left{left:auto; right:100%;}
.navbar-nav .dropdown-menu .dropdown-toggle:after{transform:rotate(-90deg);}
.navbar-nav .dropdown-menu .dropdown-toggle.show:after{ transform:rotate(90deg);}

/* main-nav */
#main-nav{height: 4.125rem; align-items: center; font-size: 0.9375rem; gap:2.75rem; font-weight: 500; letter-spacing: 0.05625rem; text-transform: uppercase;}
#main-nav > li{padding:1.5rem 0;}
#main-nav > li > a{padding:0; }
#main-nav > li > a:before{content: ''; position: absolute; left:0; width:0; height:4px; bottom:-4px; background: var(--color-hover); transition:width 0.2s ease;}
#main-nav > .dropdown > a:not(.dropdown-toggle){padding-right:1.12rem;}
#main-nav > .dropdown > .dropdown-toggle{position: absolute; right:0; padding-left:0; padding-right:0;}
#main-nav > .dropdown > .dropdown-toggle:before{display: none;}
#main-nav > .dropdown > .dropdown-toggle:after{font-size: 0.8125rem; vertical-align: 10%;}

#main-nav > li > a{color:var(--color-base);} 
#main-nav > li > a:hover, #main-nav > li > a:focus, #main-nav > .show > a{color:var(--color-hover);}
#main-nav > .active > a{color:var(--color-active);}

#main-nav > li > a:hover:before, #main-nav > li > a:focus:before, #main-nav > .show > a:before{width:100%;}

#main-nav .dropdown-menu{font-size:1rem; font-weight: 400; text-transform: none; letter-spacing: normal; padding: 0;}
#main-nav .dropdown-menu > li > a{padding:0.9rem 3rem 0.9rem 1rem;}
#main-nav .dropdown-menu .dropdown-menu{top:0;}
#main-nav .dropdown-menu .dropdown-menu > li > a{padding-right:1.5rem;}
#main-nav .dropdown-menu > .dropdown > a{padding-right:0.5rem;}
#main-nav .dropdown-menu > .dropdown > .dropdown-toggle{ padding-left:0.5rem; padding-right:1rem; flex:none;} 
#main-nav .dropdown-menu > .dropdown > .dropdown-toggle:after{font-size: 0.75rem; vertical-align: 10%;}

#main-nav .dropdown-menu > li > a{color:var(--color-base);}
#main-nav .dropdown-menu > .active > a{color:var(--color-active);}
#main-nav .dropdown-menu > li > a:hover, #main-nav .dropdown-menu > li > a:focus, #main-nav .dropdown-menu > .show > a{color:var(--color-hover);}
#main-nav .dropdown-menu > li:hover{background: var(--color-light-grey);}

/* top-nav */
#top-nav{align-items: center; height:2.5rem; gap:3.5rem; font-size: 1rem; font-weight: 700; border-bottom:1px solid var(--color-light-grey);}
#top-nav > li > a{padding:0; color:var(--color-dark-grey);}
#top-nav > .light > a{font-weight: 400;}
#top-nav > li > a:after{content:''; position: absolute; left:0; width:0; height:2px; bottom:-2px; background: var(--color-hover); transition:width 0.2s ease;}

#top-nav > .active > a, #top-nav > li > a:hover, #top-nav > li > a:focus{color:var(--color-hover);}
#top-nav > .active > a:after, #top-nav > li > a:hover:after, #top-nav > li > a:focus:after{width:100%;}

@media (max-width: 1399.98px) {
	#main-nav{gap:2rem;}
	#top-nav{gap:2rem;}
}
@media (max-width: 1199.98px) {
	#main-nav{gap:1rem;}
	#top-nav{gap:2rem;}
	.navbar-brand{width:10rem;}
	#main-nav > .dropdown > .dropdown-toggle::after {font-size: 0.62rem; vertical-align: 15%;}
	#main-nav > .dropdown > a:not(.dropdown-toggle){padding-right:0.8rem;}
}
@media (max-width: 991.98px) {
	#header{height:var(--header-height-mobile);}
	#navigation > .inner-wrap{height:auto;}
	
	.navbar-toggler {padding:0.7rem 1rem; color:inherit; margin:0.25rem 0; height:3.5rem; width:3.5rem; line-height:1; border:0; border-radius:50%; box-shadow:none!important; transition:color 0.2s ease, background-color 0.2s ease; }
	[aria-expanded='true'].navbar-toggler [class*='fa']:before{ content:'\f00d';}
	.navbar-toggler:hover, [aria-expanded='true'].navbar-toggler{ background-color:var(--color-hover); color:#fff;}
	.navbar-toggler:focus{ background-color:transparent; color:inherit;}
	[aria-expanded='true'].navbar-toggler:focus{ background-color:var(--color-hover); color:#fff;}

	#header .navbar{ position:relative; width:auto; padding:0;}
	#header .navbar > .container{display: flex; align-items: center; flex-wrap: nowrap; padding-left:calc(var(--bs-gutter-x)*0.5); padding-right:calc(var(--bs-gutter-x)*0.5);}
	
	#header .navbar.affix{transition: none; top:0; box-shadow:none;}
	.affix .navbar-brand, .navbar-brand{width:9rem; margin-top:0.25rem; transition: none;}

	#navigation{position:absolute; top:100%; width:100%; left:0; padding-left:0; padding-right:0; box-shadow:0 1rem 1rem rgba(0,0,0,0.3); background-color: #fff;}
	#navigation > .inner-wrap{display: block;}
	#navigation.has-search > .inner-wrap{padding-right:0;}
	.navbar-nav{margin:0;}
	.navbar-nav li{display: block;}
	.navbar-nav li a:not(.dropdown-toggle){margin-right:3.5rem; display: inline-block;}
	.navbar-nav .dropdown-toggle{margin-left:auto; position: absolute; top:0;}
	.navbar-nav .dropdown-toggle:after{content: '\2b';}
	.navbar-nav .dropdown-toggle.show:after{ transform:rotate(135deg);}
	.navbar-nav .dropdown-menu{width:100%; position:relative; padding:0; float:none; box-shadow:none; min-width:auto; max-width: none; background-color:transparent; margin-top:1px;}
	.navbar-nav .dropdown-menu .dropdown-toggle:after{transform:rotate(0);}
	.navbar-nav .dropdown-menu .dropdown-toggle.show:after{ transform:rotate(135deg);}
	.navbar-nav .dropdown-menu .dropdown-menu{left:0;}
	.navbar-nav .dropdown-menu.open-left {left:0; right:0;}
	.navbar-nav .dropdown-menu .dropdown-menu.open-left{left:0; right:0;}

	/* main-nav */
	#main-nav{align-items:stretch; height:auto; padding:1rem 0.75rem; gap:0; font-size: 1.2rem;}
	#main-nav > li{padding:0; display: flex; flex-wrap:wrap;}
	#main-nav > li > a{padding:1rem; }	
	#main-nav > li > a:before{display: none;}
	#main-nav > .dropdown > a:not(.dropdown-toggle){padding-right:1rem;}
	#main-nav > .dropdown > .dropdown-toggle{position: relative; width:3.5rem; padding-left:1rem; padding-right:1rem; right:0; text-align: center;}
	#main-nav > .dropdown > .dropdown-toggle::after{font-size: 1rem; vertical-align: 0;}
	
	#main-nav .dropdown-menu{ font-size: 1rem; background-color: transparent; padding:0 0 0 2rem;}
	#main-nav .dropdown-menu > li:hover{background: transparent;}
	#main-nav .dropdown-menu > li > a{padding:1rem; flex:none;}
	#main-nav .dropdown-menu > .dropdown > a{padding-right:1rem;}
	#main-nav .dropdown-menu > .dropdown > .dropdown-toggle{ width:3.5rem; right:0; padding-left:1rem; padding-right:1rem; text-align: center;}
	#main-nav .dropdown-menu > .dropdown > .dropdown-toggle:after{font-size: 1rem;}
	#main-nav .dropdown-menu .dropdown-menu{top:0;}
	
	#main-nav > li > a,
	#main-nav .dropdown-menu > li > a{color:var(--color-black);}
	
	#main-nav > .show > a, #main-nav .dropdown-menu > .show > a{color:inherit;}

	#main-nav > li > a:hover, 
	#main-nav > li > a:focus,
	#main-nav > .active > a,
	#main-nav .dropdown-menu > li > a:focus,
	#main-nav .dropdown-menu > li > a:hover,
	#main-nav .dropdown-menu > .active > a{color:var(--color-active);}

	/* top-nav */
	#top-nav{height:auto; gap:0; font-size: 1rem; align-items: stretch; background-color: var(--color-light-grey); padding:1rem 0.75rem;}
	#top-nav > li > a{padding:1rem;}	
	#top-nav > li > a:after{display: none;}

	#top-nav > li > a{color:var(--color-black);}
	
	#top-nav > li > a:hover, 
	#top-nav > li > a:focus,
	#top-nav > .active > a{color:var(--color-active);}
}



/* ************************* */
/* 2. ASIDE NAV   			 */
/* ************************* */
.side-nav-title{font-size: var(--h4);}
.side-nav-wrap{font-size: 0.9375rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.05625rem;}
.side-nav-wrap .sublevel{padding-left:1.5rem;}
.side-nav-wrap a{display:block; padding:0.8rem 1rem; text-decoration: none; flex-grow:1;}
.side-nav-wrap .item:not(.has_sublevel) a{padding-right:3rem;}
.side-nav-wrap .sublevel-toggle{color:var(--color-dark-grey); margin-top:0.25rem; padding-left:0.5rem; padding-right:1rem; flex:none; }
.side-nav-wrap .sublevel-toggle:focus{outline: 0;}
.side-nav-wrap .sublevel-toggle:after{ content: '\f078'; display: block; font:var(--font-icon); font-size: 0.81rem; transition: transform 0.4s ease; }
.side-nav-wrap .sublevel-toggle[aria-expanded='true']:after{transform:rotate(180deg);}

.side-nav-wrap .item{display: flex; align-items: flex-start; border-bottom:1px solid var(--color-grey); transition:background 0.2s ease;}
.side-nav-wrap .item:hover{background-color:var(--color-hover);}
.side-nav-wrap .item:hover a{color:#fff;}
.side-nav-wrap a{color:var(--color-black);}
.side-nav-wrap .active a{color:var(--color-active);}
.side-nav-wrap a:hover{color:#fff;}



/* ************************* */
/* 4. PAGE-CONTENT-NAV 		 */
/* ************************* */
.sticky-side-column{position: sticky; top:calc(var(--header-height-sticky) + var(--margin-big));}
#page-content-nav .content-nav-wrap{font-size:var(--text-lead);}
#page-content-nav .content-nav-wrap ol{padding:0; list-style-type: none; display: flex; flex-direction: column; gap:1rem;}
#page-content-nav .content-nav-wrap .item a{color:var(--color-link); display:inline-block; padding:0; line-height: 1.2;}
#page-content-nav .content-nav-wrap .active a{color:var(--color-active);}
#page-content-nav .content-nav-wrap .item a:hover, #page-content-nav .content-nav-wrap .item a:focus{color:var(--color-hover);}
#page-content-nav .content-nav-wrap ol ol{padding-left:1.5rem;}
@media (max-width: 991.98px) {
	.sticky-side-column{top:var(--margin-normal);}	
}



/* ************************* */
/* 5. SECTION HEADER 		 */
/* ************************* */
.section-header{display: flex; align-items:baseline ; justify-content: space-between; gap:3.5rem;}
.section-header h2{margin-bottom:0;}
.section-header .options{display: flex; align-items: center; gap:1.5rem;}
.section-header .slick-arrow{position: relative;}
.section-header .slick-prev{order:10;}
.section-header .slick-next{order:11;}
@media (max-width: 767.98px) {
	.section-header{flex-direction: column; gap:var(--margin-small);}
}



/* ************************* */
/* 10. ACCORDION	 		 */
/* ************************* */
.accordion .accordion-item{border:0; background: transparent;}
.accordion .accordion-item + .accordion-item{margin-top:-1px;}
.accordion .accordion-header {margin:0; border-top:1px solid var(--color-grey); border-bottom:1px solid var(--color-grey);}
.accordion .accordion-button{border-radius:0!important;  background:transparent; box-shadow: none; font-size: var(--h5); font-weight: 700; padding:0.9rem 1rem;}
.accordion .accordion-button::after {content: '\2b'; font:var(--font-icon); background: none; width:auto; height:auto; transition-duration:0.4s;}
.accordion .accordion-button[aria-expanded='true']{background-color:transparent; color:var(--color-black);}
.accordion .accordion-button:not(.collapsed)::after {transform: rotate(135deg);}
.accordion .accordion-button:focus, .accordion .accordion-button:hover{color:#fff; background-color: var(--color-hover); box-shadow: none;}
.accordion .accordion-body {padding:1.5rem; position:static;}



/* ************************* */
/* 11. BREABCRUMBS			 */
/* ************************* */
.breadcrumbs-section{font-size: var(--text-small); padding:1rem 0; border-top:1px solid var(--color-light-grey); border-bottom:1px solid var(--color-light-grey);}
.breadcrumbs-section ol{color:var(--color-dark-grey); padding:0; list-style-type: none; display: flex; align-items: center; flex-wrap:wrap;}
.breadcrumbs-section ol li+li:before{content: '\f054'; color:var(--color-black); font:var(--font-icon); font-size: 0.62rem; margin:0 1rem;}
.breadcrumbs-section ol li a{color:var(--color-black);}
.breadcrumbs-section ol li a:hover, .breadcrumbs-section ol li a:focus{color:var(--color-hover);}
.breadcrumbs-section .placeholder-item{cursor: default;}

@media (max-width: 991.98px) {
	.breadcrumbs-section{padding:0.5rem 0;}
	.breadcrumbs-section ol li+li:before{margin:0 0.5rem;}
}



/* ************************* */
/* 12. TABLES				 */
/* ************************* */
.textbox table{font-size: inherit; max-width: 100%; width: 100%; border-bottom:1px solid var(--color-light-grey);}
.textbox table td, .textbox table th{padding:1rem 1rem;}
.textbox table thead th{ vertical-align:bottom; background-color: var(--color-midnight); color:#fff; }
.textbox table td{ vertical-align:top;}
.textbox table tr:nth-child(even){background-color:var(--color-light-grey);}
.textbox table tr{transition:background 0.2s ease;}
.textbox table tr:hover{background-color:var(--color-grey);} 
.textbox table th{position: sticky; top:var(--header-height-sticky); z-index: 2;}

.textbox table.content-table{border:0;}
.textbox table.content-table:not(:last-child){margin-bottom:var(--margin-normal);}
.textbox table.content-table tr{background: transparent;}
.textbox table.content-table td{padding:0; vertical-align: middle;}
.textbox table.content-table td img{max-width: 100%;}
@media (max-width: 991.98px) {
	.textbox table th{top:0;}
}
@media (max-width: 767.98px) {
	.textbox table{border-top:1px solid var(--color-grey);}
	.textbox table, .textbox table tbody, .textbox table tfoot, .textbox table tr, .textbox table caption{ display: block;}
	.textbox table thead {display: none;}
	.textbox table tr{ padding-top:0.5rem; padding-bottom:0.5rem; margin:0;}
	.textbox table td {display: flex; padding:0.5rem; text-align: left; border:0; margin:0;}
	.textbox table td:before{ content: attr(data-th); display: block; font-weight: bold; padding-right:1rem; width:40%; flex:none;}
	
	.textbox table.content-table tr{padding:0;}
	.textbox table.content-table tr:not(:last-child), .textbox table.content-table td:not(:last-child){margin-bottom:var(--margin-normal);}
	.textbox table.content-table td{display: block;}
}



/* ************************* */
/* 14. SIDE-COL-BANNER		 */
/* ************************* */
.side-col-banner{overflow: hidden; padding:var(--padding-normal) 2rem; transition:box-shadow 0.2s ease; border-radius:var(--radius-normal);}
.side-col-banner .image{position: absolute; top:0; right:0; bottom:0; left:0;}
.side-col-banner .image img{object-fit: cover; width:100%; height:100%;}
.side-col-banner .image:after{content: ''; background: rgba(1, 3, 32, 0.40); position: absolute; top:0; right:0; bottom:0; left:0; transition:background 0.4s ease;}
.side-col-banner:hover .image:after, .side-col-banner .area-link:focus ~ .image:after{background: rgba(1, 3, 32, 0.80);}
.side-col-banner .title{font-size: var(--h4);}
.side-col-banner .cta-link{ z-index:3;}



/* ************************* */
/* 17. LISTING-SHOWING-INFO  */
/* ************************* */
.listing-showing-info{font-weight: 700; color:var(--color-dark-grey);}



/* ************************* */
/* 20. POST CARD 			 */
/* ************************* */
.post-card{display: flex; flex-direction: column; gap:var(--margin-normal);}
.post-card .image{width:100%; aspect-ratio:1.35/1; flex:none; overflow: hidden; border-radius:var(--radius-normal); transform: scaleZ(1);}
.post-card .image img{transition:transform 2s ease; }
.post-card:not(.no-hover):hover .image img, .post-card .area-link:focus ~ .image img{transform: scale(1.2);}
.post-card .tags-listing{margin-bottom:var(--margin-small);}
.post-card .title{font-size: var(--h5); transition:color 0.2s ease;}
.post-card:not(.no-hover):hover .title:not(.unclickable), .post-card .area-link:focus ~ .content .title:not(.unclickable){color:var(--color-hover);}
.post-card .textbox{margin-bottom:var(--margin-normal);}
.post-card a:not(.area-link){z-index: 5;}

/* post-info */
.post-info{font-size: var(--text-small); flex-wrap:wrap; display: flex; align-items: center; gap:0.25rem 0.5rem; color:var(--color-dark-grey);}
.post-info > div:not(:last-child):after{content: '•'; margin-left:0.5rem;}
.post-info a:not(:hover):not(:focus){color:inherit;}
@media (max-width: 767.98px){
	.post-card .title{font-size: var(--h4);}
}



/* ************************* */
/* 21. TAGS LISTING 		 */
/* ************************* */
.tags-listing{display: flex; flex-wrap:wrap; gap:0.25rem; line-height: 1.2;}
.tags-listing a{color:var(--color-base); font-size: var(--text-small); height:1.37rem; display: flex; align-items: center; padding:0.13rem 0.5rem; background: var(--color-light-grey); text-decoration: none; border-radius:var(--radius-small);}
.tags-listing a:hover, .tags-listing a:focus{color:#fff; background: var(--color-hover);}
.text-center .tags-listing, .tags-listing.text-center{justify-content:center;}
.color-white .tags-listing a:not(.btn):not(:hover):not(:focus){color:var(--color-link);}



/* ************************* */
/* 22. LISTING NAV 			 */
/* ************************* */
.listing-nav-section .listing-nav-inner{display: flex; align-items: flex-start; gap:3rem; padding-top:var(--margin-big); padding-bottom:var(--margin-big); border-top:1px solid var(--color-grey); border-bottom:1px solid var(--color-grey);} 
.listing-nav-section .listing-item-link.prev:before, .listing-nav-section .listing-item-link.next:after{content: ''; font:var(--font-icon); font-size: 1.5rem; margin-top:1.45rem;}
.listing-nav-section .listing-item-link{max-width: 50%; text-decoration: none; display: flex; align-items:flex-start; gap:1rem;}
.listing-nav-section .listing-item-link:not(:hover):not(:focus){color:var(--color-base);}
.listing-nav-section .listing-item-link .inner{display: flex; flex-direction: column;}
.listing-nav-section .listing-item-link .nav-label{font-size: var(--text-small); color:var(--color-dark-grey);}
.listing-nav-section .listing-item-link .nav-title{font-size:var(--h5); font-weight: 700;}
.listing-nav-section .listing-item-link.next{margin-left:auto;}
.listing-nav-section .listing-item-link.next .inner{align-items: flex-end; text-align: right;}
.listing-nav-section .listing-item-link.prev:before{content: '\f053';}
.listing-nav-section .listing-item-link.next:after{content: '\f054';}
@media (max-width: 767.98px) {
	.listing-nav-section .listing-item-link .nav-title{font-size: 1.18rem;}
}
@media (max-width: 575.98px){
	.listing-nav-section .listing-item-link.prev::before, .listing-nav-section .listing-item-link.next::after {display: none;}
	.listing-nav-section .listing-nav-inner{ align-items: center; flex-direction: column-reverse; gap:var(--margin-normal);}
	.listing-nav-section .listing-item-link{width:100%; max-width: none; text-align: center; justify-content: center;}
	.listing-nav-section .listing-item-link .inner{align-items: center;}
	.listing-nav-section .listing-item-link.next .inner{text-align: center; align-items: center;}
	.listing-nav-section .listing-item-link.next{margin-left:0;}
}









































