:root {
	/*--bs-primary: #0d112c;*/
	--bs-primary: #10163A;
	--bs-secondary: #ff4070;
	--bs-info: #21a7d0;
	--bs-light: #f7f7f7;
	--bs-dark: #010002;
	--bs-accent1: #413e63;
	--bs-accent2: #656c91;
	--bs-accent3: #a0a7b4;
	--bs-accent4: #f2efcc;
	--bs-primary-rgb: 16, 22, 58;
	--bs-secondary-rgb: 255, 64, 112;
	--bs-info-rgb: 33, 167, 208;
	--bs-light-rgb: 247, 247, 247;
	--bs-dark-rgb: 1, 0, 2;
	--bs-accent1-rgb: 65, 62, 99;
	--bs-accent2-rgb: 101, 108, 145;
	--bs-accent3-rgb: 160, 167, 180;
	--bs-accent4-rgb: 242, 239, 204;
   --bs-gradient: linear-gradient(0deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
	--bs-font-sans-serif: "PT Sans Regular", Helvetica, Arial, sans-serif;
	--bs-body-font-family: var(--bs-font-sans-serif);
	--bs-body-color: #383941;
	--bs-body-bg: #ffffff;
	--bs-body-bg-gradient: linear-gradient(to right top, #f2f2f2, #e1e1e1, #d1d1d1, #c1c1c1, #b1b1b1);
	--bs-heading-font:"Poppins Extra Bold", Helvetica, Arial, sans-serif;
	--bs-heading-font-black:"Poppins Black", Helvetica, Arial, sans-serif;
	--bs-heading-font-mid:"Poppins Medium", Helvetica, Arial, sans-serif;
	--bs-box-shadow-main: 0 30px 40px 0px rgba(var(--bs-primary-rgb), 0.15);
   --bs-breadcrumb-font-size: .75rem;
   --z-header: 99;
   --z-header-top: 100;
   --btn-padding-top-bottom: 1.5rem;
   --btn-padding-left-right: 3.125rem;
   --transition-duration: 0.3s;
}

/* ==========================================================================
   WEBFONTS
   ========================================================================== */
	
   .pop {font-family: 'Poppins Medium'!important;}
   .popex {font-family: 'Poppins Extra Bold'!important;}
   .popb {font-family: 'Poppins Black'!important;}
   .pts {font-family: 'PT Sans Regular'!important;}
   .ptsi {font-family: 'PT Sans Italic'!important;}
   .ptsb {font-family: 'PT Sans Bold'!important;}

/* ==========================================================================
   BASE: global styles
   ========================================================================== */

	:root {--indent: 0;}
	@media screen and (min-width: 40rem) {
		:root {
			--indent: clamp(1.5rem, 4vw, 2.5rem);
		}
	}

   /* Reboot */
   html, body {margin:0; padding:0; height: 100%;}
   body {font-family: var(--bs-body-font-family); display: flex; flex-direction: column; min-height: 100vh; overflow-x: clip;}

   b, strong {font-family: 'PT Sans Bold';}

   /* Paragraphs */
   p:not(:last-child) {margin-bottom:1.2rem;}
   p:last-child {margin-bottom:0;}
   .lead {font-weight: inherit;}

   /* Links */
   a {position: relative; text-decoration:none; cursor:pointer; color:var(--bs-secondary); -webkit-transition:all 300ms ease; -ms-transition:all 300ms ease; -o-transition:all 300ms ease; -moz-transition:all 300ms ease; transition:all 300ms ease;}
   a:hover {color: var(--bs-info);}
   button, a:hover, a:focus, a:visited{text-decoration:none; outline:none !important;}

   /* Horizontal rules */
   .divider {border-bottom:1px dashed #b8b8b8; margin:2rem 0; width:100%; border-top:0;}

   /* Lists */
   ul, ol {margin-bottom:0.75rem;}
   .list-flex {list-style: none; align-items: center; display: flex; padding: 0; margin: 0;}
   .list-flex li:not(:last-child) {margin-right: 1rem;}

   /* Headings */
   h1, h2, h3, h4, h5, h6 {color: var(--bs-primary); font-family:var(--bs-heading-font); text-transform: uppercase;}
   h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {font-family: var(--bs-heading-font); font-size: .75em;}
   h1 {position: relative; color: var(--bs-white); text-transform: uppercase; padding-bottom: .5rem; margin-bottom:0;}
   h1:before {content: ''; width: 2.5rem; height: .25rem; border-radius: .625rem; background: #c3c3c3; position: absolute; bottom: 0; margin-left: -1.25rem; left: 1.5rem;}

   /* Buttons */
   button:hover, button:focus, button:focus-visible, .btn:active, .btn:focus, .btn:focus-visible {text-decoration: none; outline: none; border: none; box-shadow: none;}
   .btn {font-family: var(--bs-heading-font); border: none; font-size:.875rem; padding: var(--btn-padding-top-bottom) var(--btn-padding-left-right); transition: all var(--transition-duration) ease-in-out; position: relative; text-transform: uppercase; border-radius: 0; z-index: 1; line-height: 1; text-align: center; box-sizing: border-box;}

   .lSSlideOuter .lSPager.lSpg>li a {background-color: var(--bs-primary);}
   .lSSlideOuter .lSPager.lSpg>li.active a, .lSSlideOuter .lSPager.lSpg>li:hover a {background-color: var(--bs-secondary);}

   /* Forms */
   input:focus, input:active, .form-control:focus, .form-control:active {box-shadow:none!important;}
   .form-control::placeholder {color:rgba(102,102,102,.5);}

   /* Helpers */
   .clearfix {line-height: 0;}
   .text-justify {text-align: justify;}
   .bg-cover {background-repeat: no-repeat; background-size: cover; position: relative; background-position: center;}
   .bg-repeat {background-repeat: repeat; position: relative;}
   .be4:before {position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: 30%; height: 100%; content: ""; background-color: #f4f4f4;}

/* ==========================================================================
   LAYOUT
   ========================================================================== */

   /* Typography */
   .section-title {margin-bottom: 1.25rem; margin-top: -.5rem;}
   .section-title span {font-size: 1.125rem; font-weight: 600; color: var(--bs-secondary); position: relative; display: inline-block; margin-bottom: .875rem;}
   .section-title span::before {content: "//"; display: inline-block; margin-right: .25rem;}

   /* Containers */
   section {position: relative;}
   main {margin: 2rem 0 0; flex: 1;}

   .fancybox-container {z-index: 100000;}
   .fancybox-content {background:rgba(255, 255, 255, 0.3); max-width:fit-content;}
   .fancybox-slide--html .fancybox-close-small {color: #FFFFFF;}

   .modal-backdrop {z-index: 1;}

   .content-container {padding: 2rem; background-color: var(--bs-white);}

   /* Animations */
   .img-custom-anim-left {animation: img-anim-left 1.3s forwards cubic-bezier(0.645, 0.045, 0.355, 1) 0.4s; opacity: 0;}
   .img-custom-anim-top {animation: img-anim-top 1.3s forwards cubic-bezier(0.645, 0.045, 0.355, 1); opacity: 0;}

   /* Header */
   /** Base Styles **/
   header {position: relative; left: 0; top: 0; right: 0; z-index: var(--z-header, 99); width: 100%; font-family: var(--bs-heading-font);}
   header a {color: var(--bs-accent4);}

   /** Containers & Flex Structure **/
   header .container-fluid {padding:0 .5rem;}
   header .inner-container {display: flex; flex-direction: row; align-items: center; justify-content: space-between;}
   @media (min-width: 768px) {
      header .container-fluid {padding: 0 clamp(1rem, 5vw, 2.75rem);}
   }
   @media (min-width: 1200px) {
      header .container-fluid {padding: 0 clamp(1rem, 5vw, 1.5rem);}
   }
   @media (min-width: 1441px) {
      header .container-fluid {padding: 0 clamp(1rem, 5vw, 2.75rem);}
   }

   /** Header Top **/
   header .header-top {position: relative; background-color: var(--bs-primary); font-size: 0.875rem; z-index: var(--z-header-top);}
   header .header-top .top-left {display: none; padding: .5rem 0; color: var(--bs-white); font-family: var(--bs-body-font-family);}
   header .header-top .top-left span {color: var(--bs-secondary);}
   header .header-top .top-right {display: flex; flex-direction: row; justify-content: flex-end; align-items: center; margin-left: auto;}

   @media (min-width: 768px) {
      header .header-top .top-left {display: block;}
      header .header-top .top-left ul li:not(:last-child) {display: none;}
   }
   @media (min-width: 992px) {
      header .header-top .top-left ul li:not(:last-child) {display: block;}
   }

   /** Header Social Icons **/
   header .header-top .social-box {display: flex; gap: 0; list-style: none; margin: 0; font-size: 1rem; padding: 0;}
   header .social-box li {position: relative;}
   header .social-box li a {display: inline-block; padding: .75rem; color: var(--bs-white); font-family: "FontAwesome"; font-weight: normal; text-decoration: none;}
   header .social-box li a::after {content: ''; position: absolute; top: .25rem; bottom: .25rem; right: 0; width: 1px; border-right: 1px solid rgba(var(--bs-white-rgb), 0.2);}
   header .social-box li:last-child a::after {display: none;}
   header .social-box li a:hover {color: var(--bs-white); background-color: var(--bs-secondary);}

   /** Logo Row **/
   header .logo-row {position: relative; display: flex; justify-content: space-between; align-items: center; padding: 1.5rem 0; background-color: rgba(var(--bs-white-rgb), 1);}
   /*header .logo-row::before {content: ""; position: absolute; top: 0; bottom: 0; right: 0; width: calc(100% - 1430px); width: clamp(10%, calc(100% - 20vw), 25%); background-color: var(--bs-secondary); z-index: 0;}*/
   /*** Left & Right Areas ***/
   header .logo-row .area-left, header .logo-row .area-right, header .logo-row .area-right form, header .logo-row .area-right .form-inner {display: flex; align-items: center;}
   header .logo-row {padding: .75rem 0;}
   header .logo-row .area-left {width: 100%; justify-content: space-between;}
   header .logo-row .area-left img {max-height: 3rem; margin: 0;}
   header .logo-row .area-left .navbar-outer {margin-right: 1rem;}
   header .logo-row .area-right {display: none;}
   .navigation-row {display: none;}

   @media (min-width: 768px) {
      header .logo-row .area-left img {max-height: 4rem;}
      header .logo-row .area-left .navbar-outer {margin-left: auto;}
      header .logo-row .area-right {display: block; justify-content: flex-end; z-index: var(--z-header, 99);}
      header .logo-row .area-right form {display: none;}
      header .logo-row .area-right a {padding: var(--btn-padding-top-bottom);}
   }
   @media (min-width: 992px) {
      header .logo-row:before {width: clamp(10%, calc(100% - 20vw), 21%);}
   }
   @media (min-width: 1200px) {
      header .logo-row .area-left .navbar-outer {margin-right: 0;}
      /*header .logo-row {padding: .75rem 0;}
      header .logo-row .area-left {width: auto;}
      header .logo-row .area-left img {max-height: 4.5rem;}
      header .logo-row .area-right form {display: flex; gap: 1rem;}
      header .logo-row .area-right .form-inner {flex-direction: column; gap: .5rem;}
      header .logo-row .area-right .form-control {padding: .675rem 1.25rem; background-color: var(--bs-white); border: none; border-radius: 0; line-height: 1; font-size: .875rem; box-sizing: border-box; font-family: var(--bs-body-font-family); align-self: stretch;}
      header .logo-row .area-right form .btn {padding: 1.25rem; align-self: stretch;}
      header .logo-row::before {width: clamp(10%, calc(100% - 20vw), 50%);}
      header .logo-row .area-right a, .navbar-outer {display: none;}
      .navigation-row {display: block;}*/
   }
   @media (min-width: 1400px) {
      header .logo-row::before {width: clamp(10%, calc(100% - 20vw), 11.75%);}
      header .logo-row .area-left {gap: 2.5rem;}
      header .logo-row .area-left img {max-height: 3rem;}
      header .logo-row .area-left .navbar-outer {display: block;}
      header .logo-row .area-right a {display: block;}
      .navigation-row, header .logo-row .area-right form {display: none;}
   }
   @media (min-width: 1441px) {
      header .logo-row .area-left img {max-height: 4.5rem;}
   }

   /** Navbar **/
   .main-nav {position: relative; transition: all 300ms ease; text-align: center; display: flex; justify-content: center; font-family: var(--bs-heading-font-mid);}
   .main-nav .sf-menu {display: flex; margin: auto;}
   .main-nav .sf-menu ul {list-style:none; padding-left:0; min-width:12em;*width:auto; white-space:nowrap; *white-space:normal;}
   .main-nav .sf-menu > li {position: relative; display: flex; align-items: center; transition: all 500ms ease; margin-right:0;}
   .main-nav .sf-menu > li:last-child {margin-right: 0;}
   .main-nav .sf-menu > li > a {position: relative; display: block; padding: 1rem 0; font-size: 1rem; text-transform: uppercase; color: var(--bs-primary); line-height: 1.875rem; letter-spacing: 0;}
   .main-nav .sf-menu > li:hover > a {color: var(--bs-secondary);}
   .main-nav .sf-menu > li > ul, .main-nav .sf-menu > li > ul > li > ul {position: absolute; top: 100%; left: 0; transform: perspective(300px) scaleY(0) translateZ(30px); transform-origin: top; opacity: 0; visibility: hidden; transition: all 300ms ease; border-radius: 0; background-color: var(--bs-white); box-shadow: 0px 0px 10px rgba(0,0,0,0.10); z-index: 10; border-top: 2px solid var(--bs-secondary);}
   .main-nav .sf-menu > li > ul > li > ul {top: 0; left: 100%;}
   .main-nav .sf-menu > li:hover > ul, .main-nav .sf-menu > li > ul > li:hover > ul {transform: perspective(300px) scaleY(1) translateZ(0); opacity: 1; visibility: visible;}
   .main-nav .sf-menu > li > ul > li:hover > ul {opacity: 0; visibility: hidden;}
   .main-nav .sf-menu > li > ul > li {position: relative; text-align:left; border-bottom:1px solid rgba(255,255,255,0.10);}
   .main-nav .sf-menu > li > ul > li:last-child {border-bottom: none;}
   .main-nav .sf-menu > li > ul li a {display: block; padding: .75rem 1.125rem; line-height: 1.5rem; text-transform: capitalize; color: var(--bs-primary); transition: all 500ms ease; padding-left: 1.125rem;}
   .main-nav .sf-menu > li > ul li a:before {position:absolute; content:'//'; left:.625rem; top:.75rem; opacity:0; font-weight:500; color:var(--bs-white); font-size:.625rem; transition: all 500ms ease;}
   .main-nav .sf-menu > li > ul li:hover > a:before {opacity:1;}
   .main-nav .sf-menu > li > ul li:hover > a {padding-left:2rem; color:var(--bs-white); background-color:var(--bs-primary);}

   @media (min-width: 768px) {}
   @media (min-width: 992px) {
      .main-nav .sf-menu > li > ul > li:hover > ul {opacity: 1; visibility: visible;}
   }
   @media (min-width: 1200px) {
      /*.main-nav .sf-menu {border-bottom: 1px solid rgba(var(--bs-white-rgb), .125);}
      .main-nav .sf-menu > li > a {color: var(--bs-white);}*/
   }
   @media (min-width: 1400px) {
      .main-nav .sf-menu > li > a {color: var(--bs-primary);}
   }

   /** Sticky Header **/
   header .sticky-header {position:fixed; opacity:0; visibility:hidden; left:0; top:0; width:100%; padding:0; z-index:0; transition:all 500ms ease; -moz-transition:all 500ms ease; -webkit-transition:all 500ms ease; -ms-transition:all 500ms ease; -o-transition:all 500ms ease; background-color:var(--bs-white); box-shadow:0px 0px 10px rgba(0,0,0,0.10); margin-top: -1px;}
   header.fixed-header .sticky-header {z-index: 100; opacity:1; visibility:visible; -ms-animation-name: fadeInDown; -moz-animation-name: fadeInDown; -op-animation-name: fadeInDown; -webkit-animation-name: fadeInDown; animation-name: fadeInDown; -ms-animation-duration: 500ms; -moz-animation-duration: 500ms; -op-animation-duration: 500ms; -webkit-animation-duration: 500ms; animation-duration: 500ms; -ms-animation-timing-function: linear; -moz-animation-timing-function: linear; -op-animation-timing-function: linear; -webkit-animation-timing-function: linear; animation-timing-function: linear; -ms-animation-iteration-count: 1; -moz-animation-iteration-count: 1; -op-animation-iteration-count: 1; -webkit-animation-iteration-count: 1; animation-iteration-count: 1;}
   header .sticky-header > .container-fluid {display: none; flex-direction: row; justify-content: space-between; align-items: center; padding: .5rem;}
   header.fixed-header .sticky-header > .container-fluid {display: flex;}
   header .sticky-header img {max-height: 3.75rem; margin:0 1rem 0;}
   header .sticky-header .main-nav {padding: 0;}
   header .sticky-header .main-nav .sf-menu > li > a {font-size: 1rem;}
   header .sticky-header .main-nav .sf-menu > li > a {padding: 1.75rem 0; margin:0 .5rem}

   @media (min-width: 768px) {
      header .sticky-header .container-fluid {padding: .5rem;}
      header .sticky-header img {max-height: 3.25rem;}
   }
   @media (min-width: 992px) {}
   @media (min-width: 1200px) {
      header .sticky-header img {max-height: 3.25rem;}
      header .sticky-header .main-nav .sf-menu > li > a {color: var(--bs-primary); font-size: 1rem;}
      header .sticky-header .navbar-outer {display: block;}
   }
   @media (min-width: 1400px) {
      header .sticky-header .main-nav .sf-menu > li > a {font-size: 1rem;}
   }

   /* Slider */
   /** Slider Hero Styles **/
   .hero-slider {position: relative; padding: 0; margin: 0;}
   .hero-slider .slider-hero {width: 100%; height: 40rem; display: flex; justify-content: center; align-items: center;}
   .hero-slider .slider-hero .container {position: absolute; width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; z-index:99; margin: auto; gap: 1rem;}
   .hero-slider .slider-hero .container img {max-height: 12.5rem;}
   .hero-slider .slider-hero .container h3 {color: var(--bs-accent4);}
   .hero-slider .slider-hero .container h4 {color: var(--bs-white);}
   .hero-slider .hero-slide {overflow: hidden; position: absolute !important; left: 0; top: 0; width: 100%; height: 100%; opacity: 1; z-index: -2; background-size: cover; transform: scale(1); -webkit-transition: all 8s ease-out 0s; -moz-transition: all 8s ease-out 0s; -ms-transition: all 8s ease-out 0s; -o-transition: all 8s ease-out 0s; transition: all 8s ease-out 0s;}
   .hero-slider .hero-slide:before {position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; content: ""; background-color: var(--bs-primary); opacity: .5;}
   .hero-slider .swiper-slide-active .hero-slide {-webkit-transform: scale(1.12); -moz-transform: scale(1.12); transform: scale(1.12);}
   .hero-slider .overlay-shape, .breadcrumb-container .overlay-shape {position: absolute; bottom: 0; left: 0; z-index:9;}
   .hero-slider .overlay-shape img, .breadcrumb-container .overlay-shape img {animation: floating 3s linear infinite;}

   @media (min-width: 768px) {}
   @media (min-width: 992px) {}
   @media (min-width: 1200px) {
      .hero-slider {margin-top: -5rem;}
      .hero-slider .slider-hero {height: 35rem;}
   }
   @media (min-width: 1400px) {
      .hero-slider {margin-top: 0;}
      .hero-slider .slider-hero {height: 40rem;}
   }

   /* Quicklinks */
   #quicklinks {background-color: var(--bs-primary); padding: 2rem 0; background-size: contain; background-position: right bottom; background-repeat: no-repeat; background-image: url(../../files/images/layout/general/bg-vertical-bar-waves.webp); background-blend-mode: luminosity;}
   #quicklinks .quicklinks {display: grid; grid-template-columns: repeat(auto-fit, minmax(min(300px, 50vw), 1fr)); grid-auto-rows: minmax(min(100px, 50vh), auto); gap: 1rem;}
   #quicklinks .quicklinks a {display: flex; flex-direction: column; gap:1rem; justify-content: center; align-items: center; text-decoration: none; color: var(--bs-white); padding: 1rem; box-sizing: border-box; flex-wrap: wrap;}
   #quicklinks .quicklinks a:not(:last-child)::after {content: ""; position: absolute; right: -.5rem; top: 0; bottom: 0; width: 1px; background-color: rgba(var(--bs-white-rgb), .125);}
   #quicklinks .quicklinks a:last-child:not(:nth-last-child(1))::after {display: none;}
   #quicklinks .quicklinks a h4 {transition: all 300ms ease; color: var(--bs-white); margin-bottom: 0; text-align: center; font-size: 1.5rem;}
   #quicklinks .quicklinks a:hover h4 {color: var(--bs-accent4); opacity:1;}
   #quicklinks .quicklinks a span {position:relative; flex-shrink: 0; text-align:center; font-size:2rem; opacity:.5; color:var(--bs-white); display:inline-block; transition: all 300ms ease; margin-right: .5rem;}
   #quicklinks .quicklinks a:hover span {opacity: 1; color:var(--bs-accent4);}
   @media (min-width: 992px) {
      #quicklinks .quicklinks {grid-template-columns: repeat(auto-fit, minmax(min(150px, 50vw), 1fr));}
      #quicklinks .quicklinks a {justify-content: space-between; flex-wrap: nowrap;}
   }
   @media (min-width: 1200px) {
      #quicklinks .quicklinks a h4 {font-size: 1.25rem;}
   }
   @media (min-width: 1400px) {
      #quicklinks .quicklinks a {justify-content: space-evenly;}
   }

/* ==========================================================================
   CONTENT
   ========================================================================== */
   /* TABLES */
   .table>:not(:first-child) {border-top: 1px solid #eaeaea;}

   thead.table-primary {--bs-table-bg: var(--bs-primary);}

   .responsive-data {border: 1px solid #eceeef; border-collapse: separate; border-spacing: .25rem; margin: 0; padding: 0; width: 100%; /*--bs-table-bg: #FFF; table-layout: fixed;*/}
   .responsive-data>:not(thead)>*>* {--bs-table-bg: #f8f8f8; border: 1px solid #eceeef;}
   .responsive-data>thead>*>* {border: none;}
   .responsive-data caption {font-size: 1.25rem; margin: .5rem 0 .75rem; font-family:var(--bs-alt-font); text-transform: uppercase;}
   .responsive-data caption small {font-size: 1rem; color: var(--bs-accent3);}
   .responsive-data th {text-transform: uppercase; font-size: .875rem;}
   .responsive-data td {text-align: center;}
   .responsive-data p:last-child {margin-bottom: 0;}
   @media screen and (max-width: 600px) {
      .responsive-data thead {border: none; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;}
      .responsive-data tr {display: block;}
      .responsive-data tr:not(:last-child) {margin-bottom: .625rem;}
      .responsive-data th, .responsive-data td {display: block; font-size: .875rem; text-align: left;}
      .responsive-data td::before {content: attr(data-label); float: left; font-weight: bold; text-transform: uppercase;}
      .responsive-data.table-bordered>:not(caption)>* {border: none;}
      .responsive-data.registration td::before {float: none; display: block;}
      .responsive-data.registration th {color: var(--bs-secondary);}
   }

   table.program tbody th {text-align: center;}
   table.program tbody td {text-align: left;}
   table.program h2 {font-size: 1rem; color: var(--bs-dark); text-transform: uppercase; font-family: var(--bs-heading-font);}
   table.program h2 span {font-size: 1rem; color: var(--bs-secondary);}
   /*table.program>:not(caption)>*>* {--bs-table-bg: #f8f8f8;}*/
   table.program .bg-break th, table.program .bg-break td {background-color: #ffe5e5; color: var(--bs-danger);}

/* ==========================================================================
   COMPONENTS
   ========================================================================== */	

   /* ACCORDION */
   .accordion {font-size: 1rem; width:100%; margin: 0 auto; border-radius: .25rem;}
	.accordion-header {padding: 1.5em; background: var(--bs-primary); color: var(--bs-white); cursor: pointer; font-size: .85rem; letter-spacing: .05em; transition: all .3s; text-transform: uppercase; display:flex; flex-direction:row; justify-content:space-between; align-items:center; font-weight: 600;}
	.accordion__item {margin-bottom: .5rem;}
	.accordion__item .accordion__item {border-bottom: 1px solid rgba(0, 0, 0, 0.08);}
	.accordion-header:hover {background: var(--bs-secondary); position: relative; z-index: 5;}
	.accordion-body {background: #fcfcfc; color: #353535; display: none; border: 1px solid #eaeaea;}
	.accordion-body__contents {padding: 1.5em 1.5em; font-size: 1rem;}
	.accordion__item.active:last-child .accordion-header {border-radius: 0;}
	.accordion:first-child > .accordion__item > .accordion-header {border-bottom: 1px solid transparent;}
	.accordion__item > .accordion-header:after {content: "\f150"; font-family: "Font Awesome 6 Free"; font-size: 1.2em; right:1rem; transition: .3s all;}
	.accordion__item.active > .accordion-header:after {transform: rotate(-180deg);}
	.accordion__item.active .accordion-header {background: var(--bs-info);}
	.accordion__item .accordion__item .accordion-header {background: #f1f1f1; color: #353535;}

   /* BUTTONS */
   /** Global Button Styles **/
   .btn:before, .btn:after {content: ""; width: 0; height: 50%; position: absolute; z-index: -1; transition: all var(--transition-duration) cubic-bezier(0.785, 0.135, 0.15, 0.86); border-radius: inherit;}
   .btn:before {top: 0; left: 0;}
   .btn:after {bottom: 0; right: 0;}
   .btn:hover:before, .btn:hover:after {width: 100%;}
   /* Respect for users with reduced motion */
   @media (prefers-reduced-motion: reduce) {
      .btn, .btn:before, .btn:after {transition: none;}
   }
   /** Spesific Button Styles **/
   .btn-primary, .btn-primary:hover {background-color: var(--bs-primary); color: var(--bs-white);}
   .btn-primary::before, .btn-primary::after, .btn-dark::before, .btn-dark::after {background-color: var(--bs-secondary);}
   .btn-secondary, .btn-secondary:hover {background-color: var(--bs-secondary); color: var(--bs-white);}
   .btn-secondary::before, .btn-secondary::after {background-color: var(--bs-primary);}
   .btn-dark, .btn-dark:hover {background-color: var(--bs-dark); color: var(--bs-white);}
   .btn-light, .btn-light:hover {background-color: var(--bs-white); color: var(--bs-primary);}
   .btn-light::before, .btn-light::after {background-color: var(--bs-primary);}
   .btn-light:hover {color: var(--bs-white);}
   
   
   .scroll2top {position:fixed; bottom:1rem; right:1rem; width:2.5rem; height:2.5rem; color:var(--bs-primary); text-transform:uppercase; font-size: 1.25rem; line-height:2.375rem; text-align:center; z-index:100; cursor:pointer; background:var(--bs-white); display:none; box-shadow:0px 0px 10px rgba(0,0,0,0.15); transition:all 300ms ease;}
   .scroll2top:hover {color:var(--bs-white); background:var(--bs-primary);}

   /* CARD */
   .shadowy {margin-bottom: 5.5rem; background: var(--bs-white); box-shadow: var(--bs-box-shadow-main); border-radius: var(--bs-border-radius-sm);}


/* ==========================================================================
   HELPERS
   ========================================================================== */

   /* ANIMATIONS */
   @-webkit-keyframes zoom-fade {
      0% {-webkit-transform: scale(0.8); transform: scale(0.8);}
      50% {-webkit-transform: scale(1); transform: scale(1);}
      100% {-webkit-transform: scale(0.8); transform: scale(0.8);}
   }
    
    @keyframes zoom-fade {
      0% {-webkit-transform: scale(0.8); transform: scale(0.8);}
      50% {-webkit-transform: scale(1); transform: scale(1);}
      100% {-webkit-transform: scale(0.8); transform: scale(0.8);}
   }

   @keyframes rotateit {
      0% {transform: rotate(0deg); opacity: 1;}
      50% {transform: rotate(-180deg);}
      100% {transform: rotate(-360deg); opacity: 1;}
   }
   @-webkit-keyframes floating {
      0% {-webkit-transform: translateY(0px); transform: translateY(0px); opacity: 1;}
      50% {-webkit-transform: translateY(30px); transform: translateY(30px); opacity: 1;}
      100% {-webkit-transform: translateY(0px); transform: translateY(0px); opacity: 1;}
   }
   @keyframes floating {
      0% {transform: translateY(0px); transform: translateY(0px); opacity: 1;}
      50% {transform: translateY(30px); transform: translateY(30px); opacity: 1;}
      100% {transform: translateY(0px); transform: translateY(0px); opacity: 1;}
   }

   @-webkit-keyframes ripple {
      70% {box-shadow: 0 0 0 70px rgba(253, 167, 0, 0);}
      100% {box-shadow: 0 0 0 0 rgba(253, 167, 0, 0);}
   }
   @keyframes ripple {
      70% {box-shadow: 0 0 0 70px rgba(253, 167, 0, 0);}
      100% {box-shadow: 0 0 0 0 rgba(253, 167, 0, 0);}
   }

   @-webkit-keyframes shine {
      100% {left: 125%;}
   }
   @keyframes shine {
      100% {left: 125%;}
   }
   @keyframes img-anim-left {
      0% {transform: translateX(-5%); clip-path: inset(0 100% 0 0); opacity: 0;}
      100% {transform: translateX(0); clip-path: inset(0 0 0 0); opacity: 1;}
   }
   @keyframes img-anim-top {
      0% {transform: translateY(-5%); clip-path: inset(0 0 100% 0); opacity: 0;}
      100% {transform: translateY(0); clip-path: inset(0 0 0 0); opacity: 1;}
   }

   /* CLEARFIX */

   /* COLOR & BACKGROUND */
   .text-accent1 {color: var(--bs-accent1);}
   .text-accent2 {color: var(--bs-accent2);}
   .text-accent3 {color: var(--bs-accent3);}
   
   .bg-halfgrey {
		background: #fcfcfc; /* Old browsers */
		background: -moz-linear-gradient(top,  #ffffff 0%, #ffffff 29.99%, #f6f7fb 30%, #f6f7fb 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(top,  #ffffff 0%,#ffffff 29.99%,#f6f7fb 30%,#f6f7fb 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to bottom,  #ffffff 0%,#ffffff 29.99%,#f6f7fb 30%,#f6f7fb 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f6f7fb',GradientType=0 ); /* IE6-9 */
	}

   .bg-accent1 {background-color: var(--bs-accent1);}
   .bg-accent2 {background-color: var(--bs-accent2);}
   .bg-accent3 {background-color: var(--bs-accent3);}
   .bg-accent4 {background-color: var(--bs-accent4);}
   .bg-lighter {background-color: rgba(var(--bs-light-rgb),.5);}

/* ==========================================================================
   UTILITIES
   ========================================================================== */

   /* BORDERS */
   /* COLORS */
   
   /* SHADOWS */
   .box-shadow-lg {-webkit-box-shadow: 0 0 30px 0 rgba(0,0,0,.30); box-shadow: 0 0 30px 0 rgba(0,0,0,.30);}
   .box-shadow-md {-webkit-box-shadow: 0 0 15px 0 rgba(0,0,0,.20); box-shadow: 0 0 15px 0 rgba(0,0,0,.20);}
   .box-shadow-sm {-webkit-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.15); box-shadow: 0 2px 2px 0 rgba(0,0,0,0.15);}

   /* TEXT */
   

	
/* ==========================================================================
   List Styles
   ========================================================================== */

	/* Side Bar Listing */
	ul.page-menu {padding: 0; margin: 0; font-family:var(--bs-body-font-family); font-weight: 600; font-size: 1rem; list-style-type: none; background-color: var(--bs-white); border:1px solid var(--bs-white);}
   ul.page-menu li {padding:.125rem .5rem;}
	ul.page-menu li:not(:last-child) {margin-bottom: .5rem;}
	ul.page-menu li a {background-image: linear-gradient(to right,var(--bs-primary), var(--bs-primary) 50%, var(--bs-dark) 50%); background-size: 200% 100%; background-position: -100%; display: block; padding: .75rem 0; position: relative; background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; transition: all 0.3s ease-in-out;}
	ul.page-menu li a::before {content: ''; background:var(--bs-primary); display: block; position: absolute; bottom: -3px; left: 0; width: 0; height: 3px; transition: all 0.3s ease-in-out;}
	ul.page-menu li a:hover {background-position: 0;}
	ul.page-menu li a:hover::before {width:100%;}

   /* Check List */
   ul.check-list {list-style: none; padding: 0;}
   ul.check-list li {padding-left: 1.3em;}
   ul.check-list li:before {
     content: "\f00c"; /* FontAwesome Unicode */
     font-family: 'Font Awesome 6 Free';
    font-weight: 900;
     display: inline-block;
     margin-left: -1.3em; /* same as padding-left set on li */
     width: 1.3em; /* same as padding-left set on li */
     color: var(--bs-secondary);
   }

   /* Default Listing Template */
   .default-listing {counter-increment: slides-num;}
   .default-listing .inner-box:before {content: "0" counter(slides-num) ""; position: absolute; left: 2.75rem; top: 3rem; font-size: 3rem; line-height: 1em; color: var(--bs-white); opacity: 0.07; font-family: var(--bs-heading-font-black);}
   .default-listing {position: relative; margin-bottom: 2rem;}
   .default-listing .inner-box {position: relative; display: block; padding: 2.25rem 1.75rem; background: var(--bs-primary); min-height: 100%; border-radius: 0; overflow: hidden; -webkit-transition: all 500ms ease; transition: all 500ms ease;}
   .default-listing .inner-box:hover {background: var(--bs-secondary);}
   .default-listing .inner-box .bottom-curve {position: absolute; right: -4.5rem; bottom: 0; width: 6.25rem; height: 80%; background: var(--bs-dark); opacity: 0.2; z-index: 0; -webkit-transform: skewX(0deg) scaleX(0); transform: skewX(0deg) scaleX(0); transition: all 0.5s ease; -moz-transition: all 0.5s ease; -webkit-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease;}
   .default-listing .inner-box:hover .bottom-curve {-webkit-transform: skewX(-35deg) scaleX(1); transform: skewX(-35deg) scaleX(1);}
   .default-listing .inner-box .count {position: relative; display: block; font-size: 3.25rem; line-height: 1em; color: var(--bs-white); opacity: 0.07; margin-bottom: 2.5rem;}
   .default-listing .inner-box .icon-box {position: absolute; right: 2.75rem; top: 2.25rem; color: var(--bs-white); font-size: 4rem; line-height: 1em; transition: all 0.5s ease; -moz-transition: all 0.5s ease; -webkit-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease;}
   .default-listing .inner-box:hover .icon-box {color: var(--bs-white);}
   .default-listing .inner-box h6 {position: relative; margin: 0; margin-top: 5.625rem; font-size: 1.25rem; text-transform: uppercase; color: var(--bs-white); font-weight: 400; letter-spacing: 1px; line-height: 1.1em;}
   .default-listing .inner-box h6 a {color: var(--bs-white); transition: all 0.5s ease; -moz-transition: all 0.5s ease; -webkit-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease;}
   .default-listing .inner-box:hover:before, .default-listing .inner-box:hover .count, .default-listing .inner-box:hover h6, .default-listing .inner-box:hover h6 a {color: var(--bs-white);}
   .default-listing .inner-box h6 a:hover {text-decoration: underline;}

   /* Important Dates Listing Template */
   .important-dates {justify-content:center; align-content: center; margin-bottom:2rem;}
   .important-dates [class*="col-"], .important-dates p {display: flex;}
   .important-dates [class*="col-"] > div {width: 100%; background-color:var(--bs-white); padding:1rem; align-self: stretch;}
   .important-dates h4 {font-size: 1.25rem; color: var(--bs-accent2);}
   .important-dates p {flex-direction: row; align-items: center; gap: .5rem;}
   .important-dates p span {color: var(--bs-secondary);}
   @media (min-width: 768px) {
      .important-dates {flex-direction: row;}
   }

/* ==========================================================================
   SITE SPESIFIC SECTIONAL STYLES
   ========================================================================== */
   /* WELCOME MESSAGE */
   #welcome-message {position: relative; padding: 6.5rem 0;}
   #welcome-message .curved-dottes {position:absolute; background-repeat:no-repeat;right: -7.5rem; bottom: -2rem; width: 20rem; height: 15.375rem; background-image: url(../../files/images/layout/general/bg-curved-dottes.webp); animation: floating 5s linear infinite;}
   #welcome-message .welcome-image {position: relative; display: flex; justify-content: center;}
   #welcome-message .welcome-image > img {position: relative; top: -1rem;}
   #welcome-message .welcome-image .border-shape {position: absolute; left: 1rem; bottom: -5.25rem; z-index: 7;}
   #welcome-message .welcome-image .welcome-image-2 {position: absolute; right:0; bottom: -5.25rem; border: 1.25rem solid var(--bs-white); z-index: 9;}
   #welcome-message .welcome-content {padding: 6.5rem 2rem 0;}
   @media (min-width: 768px) {
      /*#welcome-message .welcome-image  {justify-content: start;}*/
      #welcome-message .welcome-content {padding-top: 5.5rem;}
   }
   @media (min-width: 992px) {
      #welcome-message .welcome-image .border-shape {left: -.5rem;}
      #welcome-message .welcome-image .welcome-image-2 {right: -3rem; bottom: -8.25rem;}
      #welcome-message .welcome-content {padding: 0 0 0 3.25rem;}
   }
   @media (min-width: 1200px) {
      #welcome-message .welcome-image .border-shape {left: -4rem; bottom: -3.25rem;}
      #welcome-message .welcome-image .welcome-image-2 {right: 0;}
      #welcome-message .welcome-content {padding-left: 1.25rem;}
   }
   @media (min-width: 1400px) {
      #welcome-message .welcome-image .border-shape {left: 0; bottom: -5.25rem;}
      #welcome-message .welcome-image .welcome-image-2 {right: 1rem;}
   }

   /* COUNTDOWN */
   #cd-section {background: var(--bs-white); padding: 0;}
   #cd-section > .container-fluid {padding: 0;}
   #cd-section .cd-container {overflow: hidden; position: relative; z-index: 1;}
   #cd-section .cd-container h3 {font-size: 1.5rem;}
   #cd-section .cd-container .cd-column .content {position:relative; padding:3rem 2.5rem 2.5rem; background-image: url(../../files/images/layout/general/bg-cd.webp); background-repeat: no-repeat; background-position: right bottom; background-blend-mode: multiply;}
   #cd-section .cd-container .cd-column .content:before {position:absolute; content:''; left:0; top:0; right:-9.375rem; bottom:0; z-index:-1; transform: skewX(0deg); background-color:var(--bs-primary);}

   div.timeblock div.timer {font-family: var(--bs-heading-font); color: var(--bs-white); font-size: 2.5rem; line-height: 1.2em; width: 100%;}
	div.timeblock div.timer ul {display: inline-block; list-style:none; -webkit-margin-before: 0; -webkit-margin-after: 0; -webkit-margin-start: 0; -webkit-margin-end: 0; -webkit-padding-start: 0; margin-bottom: 0;}
	div.timeblock div.timer ul li {float: left; text-align: center; position: relative;}
	div.timeblock div.timer ul li.seperator {font-size: 1.5rem; color: var(--bs-white);}
	div.timeblock div.timer ul li p {font-family: var(--bs-body-font-family); font-size: .75rem; line-height: 1em; margin-bottom:0px; opacity: .5; color: #FFFFFF;}
   @media (min-width: 992px) {
      #cd-section .cd-container .cd-column .content:before {transform: skewX(10deg);}
      div.timeblock div.timer {font-size: 3rem; text-shadow: 1px 1px #000000;}
   }

   /* SPEAKERS */
   #speakers {padding: 4rem 0; background-color: var(--bs-light);}
   #speakers h2 {margin-bottom: 2.5rem;}
   .speaker-container {margin-bottom: 3rem; display: flex;}
   .speaker-box {position: relative; padding: 2rem 2rem 0 0;}
   .speaker-box .thumb {position: relative;}
   .speaker-box .thumb:before {position: absolute; content:''; background-color: var(--bs-white); width: 100%; height: 100%; top: -2rem; right: -2rem; z-index: 0;box-shadow: rgba(100, 100, 111, 0.2) 0 .5rem 1.75rem 0; background-image: url(../../files/images/layout/general/bg-curved-dottes.webp); background-position: -80% -70%; background-size: auto; background-repeat: no-repeat; -webkit-transition: all 0.3s ease; transition: all 0.3s ease;}
   .speaker-box .thumb img {position: relative; width: 100%; height: 100%; z-index: 10;}
   .speaker-box .content {position: absolute; background-color: var(--bs-white); padding: 1rem; bottom: 0; width: 80%; z-index: 11;}
   .speaker-box .content h3 {font-size: 1rem; text-transform: uppercase; margin-bottom: 0;}
   .speaker-box .content span {font-size: .75rem; color: var(--bs-accent2); text-transform: uppercase;}
   .speaker-box:hover .thumb:before {background-color: var(--bs-secondary);}
   .speaker-box:hover h3 {color: var(--bs-secondary);}

   /* NEWSLETTER */
   #newsletter > div {padding: 7.5rem 0;}
   #newsletter .container {max-width: 48rem;}
   #newsletter h3 {margin-bottom:2.5rem;}
   #newsletter form {display: flex; flex-direction: column; gap: 1rem;}
   #newsletter form .form-control {padding: .675rem 1.25rem; background-color: var(--bs-white); border: none; border-radius: 0; line-height: 1; font-size: .875rem; box-sizing: border-box; font-family: var(--bs-body-font-family); align-self: stretch;}
   #newsletter form .btn {padding: 1.25rem; align-self: stretch;}
   @media (min-width: 768px) {
      #newsletter form {flex-direction: row;}
   }

   /* CONTENT PAGE */
   .breadcrumb-container {position: relative; display: flex; overflow: clip; padding: 0; z-index: 9; /*height: 100%; max-height: 15rem;*/ min-height: 15rem;}
   .breadcrumb-container:before {position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; content: ""; background-color: var(--bs-primary); opacity: .5;}
   /*.breadcrumb-container * {width: 100%;}*/
   .breadcrumb-container > .container {position: relative; height: 100%; width: 100%; z-index: 10; display: flex; flex-direction: column; justify-content: center; align-self: center;}
   .breadcrumb-container .breadcrumb li , .breadcrumb a, .breadcrumb-item+.breadcrumb-item::before {color: rgba(var(--bs-white-rgb), .75);}
   .breadcrumb a:hover {color: rgba(var(--bs-secondary-rgb), 1);}

   .div-on-img {/*padding: 2.75rem 2.5rem;*/ padding: .75rem; background-color: var(--bs-white); border-top: .625rem solid var(--bs-secondary); margin: 0 auto; box-shadow: 0 .625rem 2rem 0 rgba(0, 0, 0, 0.1); position: relative; z-index: 9; display: flex; flex-wrap:wrap; align-items: center; justify-content: start; gap: 2rem;}
   .div-on-img h3 {font-size: 1.125rem; margin-bottom: 0;}
   .div-on-img+* {margin-top: 2rem;}
   @media (min-width: 1200px) {
      .div-on-img {max-width: calc(100% - 10rem); padding: 2.75rem 2.5rem; margin-top: -3.25rem; flex-wrap: nowrap; justify-content: space-between;}
      .div-on-img h3 {font-size: 1.5rem;}
   }
   .skewd-img {clip-path: polygon(20% 0, 100% 0, 80% 100%, 0% 100%); width: 100%; height: auto;}
   .side-img {display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 2rem;}
   .side-img img {max-height: 15rem; width: auto;}
   .side-img .content {background-color: var(--bs-white); padding: 0;}
   .side-img.right img {order: 1;}
   .side-img.right .content {order: 2;}
   *+.side-img {margin-bottom: 3rem;}
   @media (min-width: 768px) {
      .side-img {flex-direction: row; gap: 0;}
      .side-img .content {padding: 2rem;}
      .side-img.right .content {order: 1!important;}
   }
   @media (min-width: 992px) {
      .side-img img {max-height: 20rem;}
      .side-img .content {padding: 3rem; margin-left: -5rem; box-shadow: 0 .625rem 2rem 0 rgba(0, 0, 0, 0.1); z-index: 9;}
      .side-img.right .content {margin-left:0; margin-right: -5rem;}
   }

   /* NAME TAG */
   .name-tag {background-color: rgba(var(--bs-light-rgb), .5); border-radius: .25rem; padding: 1rem 1rem 0; text-align: center;-webkit-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.15); box-shadow: 0 2px 2px 0 rgba(0,0,0,0.15); margin-bottom: 2rem;}
   .name-tag h5 {text-transform: uppercase; font-size: .875rem; color: var(--bs-secondary); margin: .5rem auto 0;}
   .name-tag > div {background-color: var(--bs-white); padding: 1.5rem; width: 90%; margin:auto; transform: translateY(1.5rem); -webkit-box-shadow: 0 0 15px 0 rgba(0,0,0,.20); box-shadow: 0 0 15px 0 rgba(0,0,0,.20); display: flex; justify-content: center; align-items: center;}
   .name-tag > div > p {margin-bottom: 0; font-style: italic;}
   .name-tag > div > p > span {font-weight: bold; font-style: normal;}

   .name-tag.lil {padding: 1rem; margin-bottom: 0;}
   .name-tag.lil > div {transform: translateY(0); width: 100%; padding: .75rem;}
		
   /* FOOTER */
   footer {font-size: .75rem; color:rgba(255,255,255,.6); background-color: var(--bs-primary); border-top: 1px dashed var(--bs-light);}
   footer h2 {font-size: 0.875rem; color:#FFFFFF;}
	footer a {color:rgba(255,255,255,1);}
	footer a:hover {color:var(--bs-accent4);}

   @media (min-width: 992px) {
      .wow {visibility: hidden;}
   }