@charset "UTF-8";
@import url("https://use.typekit.net/kfx6jfo.css?v=1.0.0.1");
@import url("scroll-reveal.css?v1.2");

.text-error {color: red !important;}

*, *:focus, *:active, 
.btn:focus, .btn:active,
.nav-link:focus, .nav-link:active {
	outline: none !important;
	box-shadow: none !important;
}


body {
    font-family: "gesta", sans-serif;
	background: #fff;
	font-size: 18px; line-height: 21px; color: #465675; font-weight: 300;
}


body.cms_true {
	background: #fff;
}


section h1 { font-weight: 400;}
section h2 { font-weight: 600;}
section h3 { font-weight: 300; font-size:21px; text-transform: uppercase;}
section h4 {}
section h5 {color:rgb(35,211,238); font-size: 14px; line-height: 21px; letter-spacing: 0.5px; font-weight: 600; text-transform: uppercase;}
section h6 {font-size: 14px;}
section p, section li, section td, section label { color: #9BA3AF; font-weight: 300;}
section span {font-size: 14px; line-height: 21px;}
section p strong, section li strong, section td strong { font-weight: 600;}
section h1, section h2, section h3, section h4, section p, section table {margin: 0px;padding:0;}
section h1, section h2, section h3, section h4, section p, section table {margin-bottom: 25px;}

section h6 strong {  font-weight: 600;}

strong {font-weight: 600;}

@media (max-width: 767px) {
	section h1 {font-size: 33px; line-height: 100%;}
	section h2 {font-size: 35px; line-height: 100%;}	
	section p, section li, section td, section label { font-size: 16px; line-height: 23px;}
}
 
/* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */
@media (min-width: 768px) {
	section h1 {font-size: 46px; line-height: 100%;}
	section h2 {font-size: 33px; line-height: 100%;}	
	section p, section li, section td, section label { font-size: 16px; line-height: 23px;}
}
 
/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
	section h1 {font-size: 55px; line-height: 100%;}
	section h2 {font-size: 33px; line-height: 100%;}	
	section p, section li, section td, section label { font-size: 16px; line-height: 23px;}
}
 
/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
	section h1 {font-size: 66px; line-height: 110%;}
	section h2 {font-size: 40px; line-height: 100%;}	
	section p, section li, section td, section label { font-size: 16px; line-height: 23px;}
}
 
/* Extra extra large devices (extra large desktops, 1400px and up) */
@media (min-width: 1400px) {  
	section h1 {font-size: 77px; line-height: 110%;}
	section h2 {font-size: 50px; line-height: 100%;}	
	section p, section li, section td, section label { font-size: 16px; line-height: 23px;}
}



@media all and (max-width: 1400px) { 
	.container {width: 100%; max-width: 100%;}
}

section li { margin-bottom: 10px; }

section small {font-size:80%;}

section strong {font-wight:700;}

.bg-dirty {
	background:#020617;
	background: linear-gradient(-78deg, 
        #050817,
        #070C1E,
        #10172A,
        #010617,
        #10172A,
        #070C1E,
        #050817
    );
	background-size: 600% 600%;
	animation: gradient 3000s ease-in-out infinite;
    box-shadow: inset 250px 150px 250px rgba(6,19,37,0.21) !important;
}
@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 800% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

.navbar-brand {	display:table;}

body.home .navbar {height: 150px; padding: 0; border: none;box-shadow: none; background: none;transition: all .3s ease-in-out, transform .3s ease-in-out;}
body.page .navbar {height: 150px; padding: 0; border: none;box-shadow: none; background: none;transition: all .3s ease-in-out, transform .3s ease-in-out;}


.navbar li {text-transform: uppercase; padding:0 !important;} 
.navbar li li {text-transform: none;} 
.navbar li li a:hover {background-color: transparent;}

body.page .navbar li a {padding: 10px 5px; display:table; width: 100%;}
body.home .navbar li a {padding: 10px 5px; display:table; width: 100%;}

body.home .navbar li:first-child a {}
body.home .navbar li:last-child a {}

body.home {padding-top:0px;}
body.page {padding-top:0px;}
body.iframe {padding-top:0px;}

body.scrolled {}
body.scrolled .navbar-brand { background: none; border-radius: 50% !important; box-shadow:none;}

body.home .navbar-brand img {height: 110px !important; }
body.page .navbar-brand img {height: 110px !important; }
body.home.scrolled .navbar-brand img {height: 80px !important; margin: 20px;}
body.page.scrolled .navbar-brand img {height: 80px !important; margin: 20px;}



body.cms_true.page .navbar {}
body.cms_true.scrolled .navbar {}

body.cms_true.page .navbar-brand img, 
body.cms_true.page.scrolled .navbar-brand img {}

@media (max-width: 992px) { 
	body.home .navbar-brand img {height: 50px !important; margin: 15px 0px;}
	body.page .navbar-brand img {height: 50px !important; margin: 15px 0px;}
}

body.home .navbar-brand {box-shadow: none;}
body.page .navbar-brand {box-shadow: none;}

body .navbar-brand { background: none; box-shadow: 0px 0px 30px rgba(0,0,0,0.25) !important; padding: 30px; padding-bottom: 30px; margin-left: 60px;}
body.scrolled .navbar-brand { background: none; box-shadow: none !important; padding:0px; margin-left: 0px;}

body .navbar-brand img {display:none;}

body.home .navbar-brand img 	        {display:none;}
body.home .navbar-brand img.logo_rgb 	{display:table;}

body.page .navbar-brand img 	        {display:none;}
body.page .navbar-brand img.logo_rgb 	{display:table;}

body.home.mobile .navbar-brand img,
body.home.scrolled .navbar-brand img,
body.page.scrolled .navbar-brand img {display:none;}

body.home.mobile .navbar-brand img,
body.home.scrolled .navbar-brand img.logo_rgb {display:table; background: none; padding: 0px;}

body.page.mobile .navbar-brand img,
body.page.scrolled .navbar-brand img.logo_rgb {display:table; background: none; padding: 0px;}


body.scrolled .navbar {height:110px;}

body .navbar li a {border-radius: 30px; padding: 10px 20px !important;}
body .navbar li a:hover {}
body .navbar li a.active {}
body .navbar li a.active:hover {}

body #navbar_main .container-fluid {padding: 30px;}
body.scrolled #navbar_main .container-fluid {padding:0;padding-left:5px;}

body.scrolled .navbar {
    height:auto;
    box-shadow: 0px 0px 15px rgba(0,0,0,0.15) !important;
    margin:30px;
    -webkit-border-radius: 60px;
    -moz-border-radius: 60px;
    border-radius: 60px;
}
body.scrolled .navbar li a {}
body.scrolled .navbar li a:hover {}
body.scrolled .navbar li a.active {}
body.scrolled .navbar li a.active:hover {}


.navbar .nav-item .dropdown-menu {border: none; box-shadow: 5px 5px 10px rgba(0,0,0,0.15);}
.navbar .nav-item .dropdown-menu, .navbar .nav-item .dropdown-menu * {-webkit-border-radius: 0px;-moz-border-radius: 0px;border-radius: 0px;}

body.scrolled .navbar .nav-item .dropdown-menu a {color: #333;}

body.page .navbar .nav-item .dropdown-menu {background: rgba(0,0,0,0.78) !important;} 
body.page.scrolled .navbar .nav-item .dropdown-menu {background: #fff !important;} 

@media (max-width: 992px) {  
	XXXbody .navbar li a.active {color:#fff; }
}


body.home .navbar li { font-size: 25px;padding: 5px 10px;} 
body.home.scrolled .navbar li {font-size: 21px;padding: 5px 10px;} 

body.page .navbar li {font-size: 21px;padding: 5px 10px;} 
body.page.scrolled .navbar li {font-size: 21px;padding: 5px 10px;}

body.home .navbar li li { padding: 5px 10px;} 
body.home.scrolled .navbar li li { padding: 5px 10px;} 

body.page .navbar li li { padding: 5px 10px;} 
body.page.scrolled .navbar li li { padding: 5px 10px;} 

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {  
}
 
/* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */
@media (min-width: 768px) {  
}
 
/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { 
	body.home .navbar li { font-size: 18px;padding: 0px 0px; font-weight: 600;} 
	body.home.scrolled .navbar li {font-size: 18px;padding: 0px 0px; font-weight: 600;} 
	
	body.page .navbar li {font-size: 18px;padding: 0px 0px; font-weight: 600;}
	body.page.scrolled .navbar li {font-size: 18px;padding: 0px 0px; font-weight: 600;}	
}
 
/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {  
	body.home .navbar li { font-size: 16px;padding: 0px 5px; font-weight: 300;} 
	body.home.scrolled .navbar li {font-size: 16px;padding: 0px 5px; font-weight: 300;}
	
	body.page .navbar li {font-size: 16px;padding: 0px 5px; font-weight: 300;} 
	body.page.scrolled .navbar li {font-size: 16px;padding: 0px 5px; font-weight: 300;} 	
}
 
/* Extra extra large devices (extra large desktops, 1400px and up) */
@media (min-width: 1400px) {  
	body.home .navbar li { font-size: 16px;padding: 0px 0px;} 
	body.home.scrolled .navbar li {font-size: 16px;padding: 0px 0px;} 
	
	body.page .navbar li {font-size: 16px;padding: 0px 0px;} 
	body.page.scrolled .navbar li {font-size: 16px;padding: 0px 0px;} 	
}

/* MEGA Extra extra large devices (extra large desktops, 1500px and up) */
@media (min-width: 1600px) {  
	body.home .navbar li { font-size: 16px;padding: 0px 0px;} 
	body.home.scrolled .navbar li {font-size: 16px;padding: 0px 0px;} 
	
	body.page .navbar li {font-size: 16px;padding: 0px 10px;} 
	body.page.scrolled .navbar li {font-size: 16px;padding: 0px 0px;} 	
}


.navbar .nav-cms span {font-size: 10px !important;padding: 0px !important;}
.navbar .nav-cms a { font-size: 18px !important; line-height: 18px; text-align: center !important; }
.navbar .nav-cms li a { font-size: 18px !important; line-height: 18px; text-align: left !important;}

body.home #navbar_main.navbar .navbar-nav {margin-top: 15px;}
body.page #navbar_main.navbar .navbar-nav {margin-top: 15px;}



/************************************************/
/************************************************/

hr {
	margin: 45px 0px;
    height: 1px;
    background: #4CB2E4;
    font-size: 0;
    border: 0;
}

hr.footer_style {
    margin-top: 60px;
    margin-bottom: 20px;
    height: 1px;
    background: #4CB2E4;
    opacity: 1;
    font-size: 0;
    border: 0;
}


textarea,
select,
input:not([type="checkbox"]):not([type="radio"]) {}

textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus, 
.page-link:focus 
{   
  border: solid 0.5px rgba(164,213,229,0.46) !important;
  box-shadow: 0 1px 1px rgba(164,213,229,0.46) inset, 0 0 8px rgba(164,213,229,0.46) !important;
  outline: 0 none;
}

.has-error input, .has-error textarea, #COVER.has-error {box-shadow:0px 0px 15px rgba(255,0,0,0.46) !important;}
.has-error input:focus, .has-error textarea:focus, #COVER.has-error:focus {border: solid 1px rgba(164,213,229,0.46) !important;}

.well {background: rgba(0,0,0,0.025); padding: 30px;}
@media all and (max-width: 991px) {
	.well {padding: 15px;}
}



.form-floating, .form-check, .checkbox {margin-bottom: 20px;}


section a {color: #333; text-decoration:none;}
section a:hover {color: #000; text-decoration:underline;}
section a:active, content a:focus {text-decoration:none;}

section .btn {
	-webkit-transition: all 300ms ease-out;
	-moz-transition: all 300ms ease-out;
	-o-transition: all 300ms ease-out;
	-ms-transition: all 300ms ease-out;
	transition: all 300ms ease-out;	
}


.control-label,
.form-check-label {}

label .alert {color:#333333;}



/* SITEMAP start */
/*
.section-content ul {padding: 0px 25px;}
.section-content li {
	list-style-type: '\02C3';
	padding-inline-start: 1ch;
	margin-left: 20px;
}
*/

.sitemap ul, .sitemap li {list-style: none;margin:0;padding:0;}
.sitemap a {text-decoration:none; display:table; padding: 5px 0px; padding-right:10px; border: none !important;}
.sitemap a:hover {background:rgba(255,255,255,0.25); border: none !important;}
.sitemap ul ul {margin-left: 15px;}
.sitemap ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
  position: relative;
}
.sitemap li {
  list-style-type: none;
  border-left: 2px solid #666666;
  margin-left: 1em;
}
.sitemap li a {
  padding-left: 1em;
  position: relative;
}
.sitemap li a::before {
  content:'';
  position: absolute;
  top: 0;
  left: -2px;
  bottom: 50%;
  width: 0.75em;
  border: 2px solid #666666;
  border-top: 0 none transparent;
  border-right: 0 none transparent;
}
.sitemap ul > li:last-child {
  border-left: 2px solid transparent;
}

/* SITEMAP end */



body.offcanvas-active{
	overflow:hidden;
    padding-top:0px;
}

.offcanvas-header{ display:none; }

.screen-darken {
	height: 100%;
	width:0%;
	z-index: 30;
	position: fixed;
	top: 0;
	right: 0;
	opacity:0;
	visibility:hidden;
	background-color: rgba(34, 34, 34, 0.9);
	transition:opacity .2s linear, visibility 0.2s, width 2s ease-in;
}

.screen-darken.active{
	z-index:10; 
	transition:opacity .3s ease, width 0s;
    opacity:1;
    width:100%;
    visibility:visible;
}

	.section-header {z-index: 500;position: fixed; width: 90%; top: 0;}





/* ============ mobile view ============ */
@media all and (max-width: 991px) {
	
	.mobile-header {background: transparent; width: 100%;}
	
	.mobile-logo img {width: 70px;}
	
	.navbar .nav-item .dropdown-menu {background: none;}

	XXXbody .navbar-brand {margin-top:100px !important; margin-bottom: 25px;}
	
	body.page .navbar li a { padding: 10px 15px;}
	body.home .navbar li a { background: none; border: none;padding: 10px 15px;}
	
	body.page .navbar li a:hover {background: rgba(0,0,0,0.5);}
	body.home .navbar li a:hover {background: rgba(0,0,0,0.5);}
		
	body.page .navbar li a.active {}
	body.home .navbar li a.active {}
	
	body.home #navbar_main {z-index: 600; background: #fff; max-height: 100%; height: 100%; opacity:1;}
	body.page #navbar_main {z-index: 600; background: #fff; max-height: 100%; height: 100%; opacity:1;}
	
	body.page {padding-top:0px;}
    
	.offcanvas-header{ display:block; }

	.mobile-offcanvas{
		visibility: hidden;
		transform:translateX(-100%);
	    border-radius:0; 
		display:block;
	    position: fixed;
	    top: 0; left:0;
	    height: 100%;
	    z-index: 1200;
	    width:100%;
	    overflow-y: scroll;
	    overflow-x: hidden;
	    transition: visibility .3s ease-in-out, transform .3s ease-in-out;
	}

	.mobile-offcanvas.show{
		visibility: visible;
    	transform: translateX(0);
	}
	.mobile-offcanvas .container, .mobile-offcanvas .container-fluid {
		display: block;
	}
	
}
/* ============ mobile view .end// ============ */




body.home header.cms {background:rgba(255,255,255,0.78); padding: 5px; margin-top: -45px; height: 45px;  position: fixed; left:0; z-index: 1000; width: 100%;}
body.page header.cms {background:rgba(255,255,255,0.78); padding: 5px; height: 45px; position: fixed; bottom:0; left:0; z-index: 1000; width: 100%;}

.cms_toolbar {font-size: 12px;}
.cms_toolbar * {border-radius: 0;}

.cms_container { display:table; width: 100%; max-width: 1500px; margin: 0 auto;}
.cms_container h3 {margin: 15px 0px; color: #666666;}

.dashboard {}

.bg-default {background:#D7D7D7;}

.custom-col {width: 70px;}
.custom-col i {font-size: 21px;}

.text-grey {color:#ccc;}
.text-white {color:#fff;}

.btn-dashboard {padding: 25px; margin: 15px 0px;}
.dashboard_menu .btn {margin-bottom:10px;}

.dataTables_paginate.paging_simple_numbers {margin: 15px 0px;}

.table a { text-decoration: none;}
.table th {font-size:14px !important; font-weight: 600 !important; color:#333; text-transform: uppercase;}
.table th { padding: 5px 10px !important;} 
.table td { padding: 5px 10px !important; font-size:18px !important;} 

 .dropdown-menu.show {z-index: 3000; width:100%;}


.nav-item button small {text-transform: uppercase; letter-spacing: 0.5px;}
.cms.modal .nav-link {color:#666; font-weight: 500;}
.cms.modal .nav-link.active {color:#000;}

.edit_icon {margin-right: 15px;}

.preformatted {
    white-space: pre;
}



ul.columns-2 {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
	
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    -mx-column-break-inside: avoid;
    column-break-inside: avoid;	
	
}
ul.columns-3 {
  columns: 3;
  -webkit-columns: 3;
  -moz-columns: 3;
	
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    -mx-column-break-inside: avoid;
    column-break-inside: avoid;	
	
}
ul.columns-4 {
  columns: 4;
  -webkit-columns: 4;
  -moz-columns: 4;
	
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    -mx-column-break-inside: avoid;
    column-break-inside: avoid;	
	
}
ul.columns-5 {
  columns: 5;
  -webkit-columns: 5;
  -moz-columns: 5;
	
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    -mx-column-break-inside: avoid;
    column-break-inside: avoid;	
	
}

.tag {text-decoration: none; display: inline-block;margin-right: 15px;}
.tag i {margin-right: 10px;}

.badge {font-weight: 400;}

.nav.nav-tabs .nav-link {font-size: 18px; font-weight: 400; color:#222;}
.nav.nav-tabs .nav-link.active {color:#333333;}
.nav.nav-tabs .nav-link .badge {background:#ccc !important;}
.nav.nav-tabs .nav-link.active .badge {background:#333333 !important;}

.page-item .page-link {
  color: #333333 !important;
  background: #fff !important;
}
.page-item.active .page-link {
  color: #fff !important;
  background: #333333 !important;
}
.page-item.disabled .page-link {
  color: #ccc !important;
  background: #fff !important;
}


.justify {text-align: justify;}
.justify-p p {text-align: justify;}

 
@media (max-width: 768px) {  
	.row {padding: 0px !important;}
}

.section-intro {
	display:table; width: 100%; height:100vh; position: fixed; top:0px;
}

.section-content {
	display:table; width: 100%; position: relative; z-index: 100;
}


.cms_true .section-content {background:#fff; padding-top:120px;}

XXXbody.home .section-content {margin-top: 100vh;}
body.home .section-content {margin-top: 0px;}
body.page .section-content {margin-top: 0px;}


footer {background:#fff; border-top: solid 0.5px #ccc; min-height: 300px; position: relative; z-index: 101;}
.cms_true footer {background:#fff;}

@media (max-width: 768px) {
	.table-responsive .table * {padding:0 !important; margin: 0 !important;}
	.table-responsive .table td, 
	.table-responsive .table th 
		{
			padding: 5px;
		}

	.table-responsive .table td, 
	.table-responsive .table th, 
	.table-responsive .table td p, 
	.table-responsive .table th p 
		{
			font-size: 11px;
		}
}

.sublevels_list, .sublevels_list li {
	margin:0; padding:0; list-style: none;
}

.sublevels_list a {text-decoration: none;}
.sublevels_list .active {font-weight: 600;}

.flag {width: 20px;}
@media all and (max-width: 768px) {
	.flag {width: 60px;}
}



.table, .table td, .table th {background:none !important;}
.table th {background: #F6F6F6 !important;}
.table-hover > tbody > tr:hover {
  background-color: #F8F8F8 !important;
}

.flatpickr-calendar {display:none;}

.member_toolbar a {text-decoration: none;}

.subscription_details p {font-size: 12px;}

@media (max-width: 991px) { #pricelist button {font-size: 12px;} }

.rsvp_name {font-size: 18px;}
.rsvp-toolbar a {text-decoration: none;}
.rsvp-toolbar a:hover {text-decoration: underline;}

.truncate-text {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  /* You must define a width or max-width */
  width: 100%; 
  /* Or a fixed width, e.g., width: 300px; */
}

.bg-light-to-dark {
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#1e5799+0,2989d8+2,7db9e8+100&0+0,1+100 */
    background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(0,0,0,0.005) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */    
}
.bg-dark-to-light {
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#1e5799+0,2989d8+2,7db9e8+100&0+0,1+100 */
    background: linear-gradient(to bottom, rgba(0,0,0,0.005) 0%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */    
}

#mainOffcanvas a small {display:block; text-transform: uppercase; font-size:12px;}

#form {padding-top: 30px;}

#form .nav-link {color:#858585 !important;}
#form .nav-link.active {color:#000 !important; background:#fff !important;}
#form .tab-content {background:#fff !important;}


#form .tab-pane .nav-link {color:#858585 !important;}
#form .tab-pane .nav-link.active {color:#000 !important; background:#f9f9f9 !important;}
#form .tab-pane .tab-content {background:#f9f9f9 !important;}



#form label {font-weight: 500; border-left: 5px solid #4CB2E4; padding-left: 10px; margin-bottom: 10px; margin-left: 5px;}
#form label:has(+ select),
#form label:has(+ .btn-group),
#form label:has(+ input[type="text"]),
#form label:has(+ input[type="date"]),
#form label:has(+ input[type="email"]),
#form label:has(+ input[type="number"]),
#form label:has(+ textarea) {
  display: block;
  width: 100%;
}

#form input[type="text"],
#form input[type="date"],
#form input[type="email"],
#form input[type="number"],
#form textarea[keySave],
#form select[keySave]
{
    width: 75%;
    display: inline-block;   /* was inline-table */
    box-sizing: border-box;  /* keep the 90% honest with padding/border */
}
#form textarea {height: 150px;}
#form input[type="checkbox"],
#form input[type="radio"] 
    {display: inline-table;}

#form .row {margin-bottom: 30px;}

#form legend { border-bottom: solid 0.5px #ccc; padding-bottom: 15px; margin-bottom: 30px; border-left: 20px solid #4CB2E4; padding-left: 20px; font-size: 25px; font-weight: 500; line-height: 33px;}
#form .accordion-button {border-left: 15px solid #4CB2E4; padding-left: 15px; font-size: 21px; font-weight: 500;}

#form .btn.active,
#form .btn.active:hover
{background:#4CB2E4; color:#FFF !important;}

#form .btn.active:disabled
{background:#4CB2E4; color:#000 !important;}

.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translateY(-50px);
}
.modal.show .modal-dialog {
  transform: translateY(0);
}

/* CMS full-screen modals : header + footer stay put, only the body scrolls
   (a wrapper such as <form> between .modal-content and .modal-body breaks Bootstrap's
   own flex chain, so it is made part of the chain here) */
.cms.modal .modal-dialog.modal-fullscreen { height:100vh; height:100dvh; max-height:100vh; max-height:100dvh; }
.cms.modal .modal-content { height:100%; max-height:100vh; max-height:100dvh; display:flex; flex-direction:column; overflow-y:auto; }
.cms.modal .modal-content > form,
.cms.modal .modal-content > div:not(.modal-header):not(.modal-body):not(.modal-footer) { display:flex; flex-direction:column; flex:1 1 auto; min-height:0; }
.cms.modal .modal-header,
.cms.modal .modal-footer { flex:0 0 auto; }
.cms.modal .modal-body { flex:1 1 auto; min-height:0; overflow-y:auto; -webkit-overflow-scrolling:touch; }






.liquid-glass,
.welcome,
body .navbar .dropdown-menu,
body.scrolled .navbar
{
    /* translucent fill — the lower the alpha, the more "glass" */
    background: rgba(0, 0, 0, 0.25) !important;
    /* the actual glass: blur + saturation makes colours behind pop */
    backdrop-filter: blur(24px) saturate(130%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(130%) !important; /* Safari/iOS */
    /* faint outline keeps the edge crisp against busy backgrounds */
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
    /* depth + a faint inner top highlight (the "lip" of the glass) */
    box-shadow:
        0 8px 32px rgba(255, 255, 255, 0.36),
        inset 0 1px 0 rgba(0, 0, 0, 0.46),
        0 15px rgba(255, 255, 255, 0.46); 
     animation: dropdownBlurIn 0.33s ease-out both;
}
body .navbar .dropdown-menu {
    border-radius: 30px !important;
    border: none;
    padding: 10px;
}
body.scrolled .navbar .dropdown-menu {
    background-color: rgba(255, 255, 255, 0.9) !important;
    box-shadow: inset 0px 0px 150px rgba(255, 255, 255, 0.78), 0px 0px 25px rgba(0,0,0,0.33) !important;
}

body.cms_true .navbar .dropdown-menu,
body.cms_true.scrolled .navbar
{
    /* translucent fill — the lower the alpha, the more "glass" */
    background: rgba(255, 255, 255, 0.33) !important;
    /* the actual glass: blur + saturation makes colours behind pop */
    backdrop-filter: blur(24px) saturate(130%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(130%) !important; /* Safari/iOS */
    /* faint outline keeps the edge crisp against busy backgrounds */
    border-bottom: 1px solid rgba(255, 255, 255, 0.25) !important;
    /* depth + a faint inner top highlight (the "lip" of the glass) */
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.46),
        0 15px rgba(0, 0, 0, 0.46); 
     animation: dropdownBlurIn 0.33s ease-out both;
}



@keyframes dropdownBlurIn {
  from {
    filter: blur(12px);
    opacity: 0;
  }
  to {
    filter: blur(0);
    opacity: 1;
  }
}



.welcome {
  position: fixed;                
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) !important;
  width: 90%;
  max-width: 800px;                
  text-align: center;
    border-radius: 30px;
    box-shadow: 0px 0px 30px rgba(0,0,0,0.5) !important;
    border: solid .5px rgba(255,255,255,.25) !important;
    padding: 45px;
}
@media (max-width: 767px) {
  .welcome {
    padding: 15px;
    width: 100%;
    max-width: none;
    border-radius: 0px;
  }
}

.welcome h2 {
    font-size: 120px;
    color:#fff;
    line-height: 100px;
    font-weight: 700;
}
.welcome h2 em { font-style: normal; color:rgba(35,211,238,1);}

.fa-special { background: rgba(35,211,238,.50); color: rgba(2,28,32,0.84); border-radius: 50%; font-size: 23px; padding: 10px; }

@media (min-width: 991px) {
    .showoff_1 {}
    .showoff_2 {border-left: solid 0.5px #666;border-right: solid 0.5px #666;}
    .showoff_3 {}
}







.thing, .thing-madmax {
  transition: filter 0s; /* no lingering transition */
}

.thing:hover {
  animation: blur-snap 1.2s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.thing-madmax:hover {
  animation: blur-snap 0.5s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes blur-snap {
  0%   { filter: blur(0); }
  6%   { filter: blur(12px); }   /* spike — ~70ms in */
  100% { filter: blur(0); }      /* long ease back to sharp */
}



