/*
.wf-merriweather--loaded .main-nav,
.no-js .main-nav,.wf-merriweather--loaded .search-filter,
.no-js .search-filter{
  font-family: "BenchNine";
}

body:not(.wf-merriweather--loaded):not(.no-js) .main-nav, body:not(.wf-merriweather--loaded):not(.no-js) .search-filter {
    font-family: Arial, sans-serif;
font-family: arial;
font-size: 14px;

letter-spacing: -0.3px;
word-spacing: -2px;
}
*/


@font-face{font-family:"ZapfHumnst BT";src:url(../fonts/zapf/ZapfHumanist601BT-Roman.eot);src:url(../fonts/zapf/ZapfHumanist601BT-Roman.eot?#iefix) format("embedded-opentype"),url(../fonts/zapf/ZapfHumanist601BT-Roman.woff) format("woff"),url(astonassets/fonts/zapf/ZapfHumanist601BT-Roman.ttf) format("truetype"),url(../fonts/zapf/ZapfHumanist601BT-Roman.svg#ZapfHumanist601BT-Roman) format("svg");font-weight:400;font-style:normal;font-display:swap}



.hidden {
  position: absolute; 
  overflow: hidden; 
  clip: rect(0 0 0 0); 
  height: 1px; width: 1px; 
  margin: -1px; padding: 0; border: 0; 
}


.logo2024 {
    float: left;
    text-align:left;
    width: 185px;

        margin-bottom: 0!important;
  position: relative;
box-sizing: border-box;}

.logo2024 a{display:inline-block;position: relative;}

  
.header2024 {
    padding: 0!important;
    position: fixed;
    top:0;left:0;right:0;
    background:#000;
    z-index:5005;

    box-sizing:border-box

}





.navigation2024 {display:block;    background:#000;}

.main-nav2024, .main-nav2024 .sub-menu ul, .footer-nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    box-sizing:border-box
}
.main-nav2024 {
    box-sizing:border-box;
	font: 400 18px/1.2 "BenchNine";
    display:inline-block;


  
}


.main-nav2024 > li {
	text-transform: uppercase;
   
}




.main-nav2024 .menu-opener:hover {
	opacity: .8;
}

.main-nav2024 .menu-opener:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}

.main-nav2024 .menu-opener span {
	display: inline-block;
	vertical-align: middle;
}


.main-nav2024 a {
	display: none;
	padding: 33px 10px;
	color: #fff;
	-webkit-transition: background .3s;
	transition: background .3s;
    position: relative;
    box-sizing:border-box;
    text-decoration: none;
}

.main-nav2024 .hold, .main-nav2024 .hold-non {
    position: relative;
}
.main-nav2024 .menu-opener {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    text-align: right;
    white-space: nowrap;
    cursor: pointer;
    z-index: 4;
}

.main-nav2024 .menu-opener:after{content: url(../images/menu-arr.png); right:20px; top:10px; position: absolute;}
	.main-nav2024 .ui-accordion-header-active .menu-opener:after{transform: rotate(90deg);}






.navigation2024 .sub-menu {font: 13px/1.54 "Open Sans", "Arial", "Helvetica Neue", "Helvetica", sans-serif;text-transform: none; text-align:left; }
.navigation2024 .sub-menu ul, .navigation2024  .sub-menu .cols{display:flex;flex-direction: column;width:100%;gap:2%;}

.navigation2024 .sub-menu h2 {
	font-family:"BenchNine", "Arial", "Helvetica Neue", "Helvetica", sans-serif; text-transform: uppercase; font-weight:700;
    font-size:20px;color:#000;   margin: 0 0 10px;
}
.navigation2024  .sub-menu ul li a{color:#000;padding:0 0 20px 0;height:auto;display: block!important;width:100%;}
.navigation2024  .sub-menu .col{color:#000; padding:0 0 20px 0}

.navigation2024  .sub-menu .newmap{margin:10px 0;padding:0;}
.navigation2024  .sub-menu ul li a:hover{background:none;}

.navigation2024  .sub-menu ul li .link{display:block; text-decoration: underline;padding-top:5px;}

.navigation2024  .sub-menu ul li .link{display:block; margin-top:10px;font-size:14px;transition: all 0.5s ease;text-decoration: underline;}
.navigation2024  .sub-menu ul li .link:hover{color:#999}



.navbox{ position: absolute; right:10px; top:0;width:50px;height:80px;padding:20px 10px 0 10px;transition: right 0.5s ease-in-out;    box-sizing: border-box;}

    

.nav-opener {
    width: 30px;
    height: 20px;
    position: relative; 
    z-index: 10002;
    display:inline-block;
    margin-top:10px;
}


.nav-opener:before, .nav-opener:after, .nav-opener span {
    position: absolute;
    left: 0;
    right: 0;
    height: 2px;
    top: 50%;
    background: #fff;
    margin-top: -1px;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.nav-opener:before, .nav-opener:after {
    content: "";
    top: 0;
    margin: 0;
}
.nav-opener:before {
    top: auto;
    bottom: 0;
}

.nav2024-active .nav-opener span {
	opacity: 0;
}

.nav2024-active .nav-opener:before,
.nav2024-active .nav-opener:after {
	top: 50%;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.nav2024-active .nav-opener:before {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.navigation2024  .sub-menu {
    box-sizing:border-box;
    background: #fff;
    padding: 30px 1% 10px;
        color:#000;
	}




.navigation2024 .social-icons{
    display: inline-block;
    height: 91px;
    vertical-align: top;
    padding: 34px 0 27px 20px;
    margin:0;
}
.navigation2024 .social-icons a{margin-right:15px!important;width:auto;}
.navigation2024 .social-icons a img{width:auto;height:23px;}
.navigation2024 .social-icons a:last-child{margin-right:0!important;}







.navigation2024  .sub-menu li, .navigation2024  .sub-menu .col{  box-sizing:border-box;}
    .navigation2024  .sub-menu .col {padding-bottom:20px;}
 .navigation2024  .sub-menu ul li img{width:100%; margin-bottom:20px; height:auto;}










.main-nav2024 .sub-menu ul.contacts li{display:block; padding:0 0 8px;width:100%;}
.main-nav2024 .sub-menu ul.contacts li a{padding:0;}
.main-nav2024 .sub-menu  li a:after{display:none;}
.main-nav2024 .sub-menu ul.contacts li a:hover{text-decoration: underline;}
.soclinks a{color:#000;display:block!important;padding:12px 0!important; border-bottom:1px solid #ddd;}
.soclinks a:hover{color:#aaa!important;}
.soclinks a:last-child{border:none;}
.soclinks a img{display:inline-block; width:30px; vertical-align: middle; margin-right:10px;}
.main-nav2024 .sub-menu .wtw{display:block; padding-left:45px; background:url(../images/whatthreewords.jpg) no-repeat left center;}







.searchbox .sub-menu .container{display:flex;  box-sizing:border-box;}

.searchbox .sub-menu .col{
   color:#000;
    vertical-align: top;
        font: 400 18px/1.2 "BenchNine", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}

.searchbox .sub-menu ul{width:100%;}
.searchbox .sub-menu ul li{width:auto; display:inline-block;}

.searchbox .sub-menu h2{color:#000;   text-transform: uppercase; font: 700 22px/1.2 "BenchNine", "Arial", "Helvetica Neue", "Helvetica", sans-serif;}



.searchbox .sub-menu .suggesthold{padding:25px 30% 30px 0; min-height:360px;}

.search-message{padding:25px 0 20px 30px;text-align:right; color:#fff;white-space:normal;}
.searchbox .sub-menu .search-message h2{color:#fff;}

.searchbox .sub-menu ul{margin:0;padding:0;}
.searchbox .sub-menu li{padding:0;}
.searchbox .sub-menu ul.suggestions{border-top:1px solid #bbb; border-bottom:1px solid #bbb;padding:10px 0;margin-bottom:20px}
.searchbox .sub-menu ul.suggestions li{background:url(../images/suggest-marker.png) no-repeat left top; font-family: "BenchNine", "Arial", "Helvetica Neue", "Helvetica", sans-serif; font-size:18px;
font-weight: 700;text-transform: uppercase;margin:3px 25px 5px 0; padding:3px 0 4px 0; }
.searchbox .sub-menu ul.suggestions li a{padding:0;color:#000;text-decoration: none;}
.searchbox .sub-menu ul.suggestions li a:hover{color:#999}

.navigation2024 .searchbox .sub-menu ul.search-models li{padding:0 32px 8px 0;font-size:14px; width:auto;}
.searchbox .sub-menu ul.search-models li a{cursor: pointer;padding:0;color:#000}
.searchbox .sub-menu ul.search-models li a:hover{opacity:0.4}

.navigation2024 .searchbox .sub-menu ul, .navigation2024 .searchbox .sub-menu .cols{margin:0 0 20px}


 .searchbox .sub-menu {

    box-sizing:border-box;
    display: none;
    left: 0;
    top: 91px;
    right: 0;
    transition: all .3s;
        z-index: -1;}
    
   


    .navigation2024 {  top:0; right:0; width: 100%;  vertical-align: top;  display: inline-block;list-style: none;
padding-top:80px;

    margin: 0;
    box-sizing:border-box;
        
    }


.search-filter{background:#fff;padding:12px 0;overflow: hidden}
.search-filter ul{list-style: none;margin:0;padding:0 0 5px;margin-bottom:10px;border-bottom:1px solid #ddd;display:block;width:100%;overflow:hidden}
.search-filter li{float:left;background:url(../images/suggest-marker.png) no-repeat left top; font-family: "BenchNine", "Arial", "Helvetica Neue", "Helvetica", sans-serif; font-size:18px;vertical-align: middle;
font-weight: 700;text-transform: uppercase;margin:3px 0 3px 0; padding:1px 31px;color:#000;cursor:pointer;}
.search-title{padding:30px 0 20px;}
.search-filter li:hover{color:#999;}

.search-results {
    padding: 0 20px 25px 20px;
    display: none;
    max-height: 310px;
    overflow-y: auto;
    margin-top: 30px;
}
.search-results a{color:#fff; text-decoration: none;border-bottom:1px solid #ccc;display:block;padding:5px 0;}
.search-results a:last-child{border:0}
.search-results a:hover{color:#999}
.search-filter li.active{background:#000; color:#fff;transform: skewX(-35deg);display: flex;float:left;
	justify-content: center;
	align-items: center;transform-origin: top;}
.search-filter li.active span{transform: skewX(35deg);}

.search-filter ul.search-models{width:auto;padding:0;border:0;margin:0;}
.search-filter ul.search-models li{padding:2px 10px; margin:0 10px 5px 0;font-size:14px; width:auto;font-family: "Open Sans", "Arial", "Helvetica Neue", "Helvetica", sans-serif;text-transform: none;font-weight:400;background:none;}
.search-filter ul.search-models li.active{background:#ddd;color:#000;margin:0 1px 5px 1px;}

.search-filter .display-all{float:right;margin-left:40px; color:#000; padding:0 0 0 25px; font-size:19px;border-left:1px solid #ddd;}



.navigation2024  .sub-menu ul, .navigation2024  .sub-menu .cols{margin:0 ;}


@media(min-width:500px){
    .navigation2024  .sub-menu ul, .navigation2024  .sub-menu .cols{flex-wrap: wrap;flex-direction: row;}
.navigation2024  .sub-menu ul li, .navigation2024  .sub-menu .col {
        display:inline-block;
        vertical-align: top;
        width:49%;

	}   


}








@media(min-width:651px){
  
    .main-nav2024 li a:after {bottom:-20px;}
.navigation2024  .sub-menu ul li, .navigation2024  .sub-menu .col {
 
        vertical-align: top;
        width:23.5%;

	}   
    
   

    
.searchbox .sub-menu:after{
	content:"";
    width: 0; 
  height: 0; 
    opacity:0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  transition: all .1s;
  border-bottom: 15px solid #fff;
    position:absolute; left:50%; margin-left:-15px;
        top:-15px;

}
    
       .searchbox .sub-menu:after{

  border-bottom: 15px solid #6f6f6f;

}
    
   
    
 
   
}


@media(min-width:1024px){
    .searchbox .sub-menu .container{position: relative}
        .searchbox .sub-menu .container:before{
	content:"";
    width: 0; 
  height: 0; 

  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  transition: all .1s;
    position:absolute;  margin-left:-15px;
  border-bottom: 15px solid #6f6f6f;
right:23px;top:-15px;
}
 
    .searchbox .sub-menu .left{width:calc(100% - 310px);}
.searchbox .sub-menu .right{background:#6f6f6f;float:right;width:310px;}
 .searchbox .sub-menu{padding:0; }   
}






@media(min-width:1276px){
  .main-nav2024 li a:after {bottom:-20px;}
   
}


@media(min-width:1346px){
	.navbox {
		display: none;
	}

    .main-nav2024 a{height:91px}
     .navigation{ width: calc(100% - 185px);}
    
    .main-nav2024{display:inline-block!important;}
    .searchbox{display: inline-block; width:55px;text-align:right; transition: width 0.5s ease-in-out;transform-origin: right;padding:25px 0 20px;height:80px;overflow: hidden;box-sizing: border-box;white-space: nowrap;}
  
    .searchbox img{width:30px; cursor:pointer; height:auto;display: inline-block; vertical-align: middle; max-width:30px;}
    .searchbox:hover {width:271px;}
    .search-message{width:320px;}
.searchbox input{vertical-align: middle; width:0px; opacity:0;transition: width 0.65s ease-in-out;transform-origin: right;display:none;height:30px;padding:0 8px;border:0;box-shadow: none;}
    .searchbox:hover input{width: calc(100% - 70px);margin-right:10px;margin-bottom:0;opacity:1;display: inline-block; }
    .navigation .searchbox .sub-menu{text-align:left; padding:0;}
 
    .searchbox .sub-menu{padding:0; background: linear-gradient(90deg, #fff 79.5%, #6f6f6f 20%);}
    .searchbox .sub-menu .left{width:calc(100% - 320px);}
.searchbox .sub-menu .right{background:#6f6f6f;float:right;width:320px;}
    
    .searchbox:hover .sub-menu {
		opacity: 1;
		visibility: visible;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
        display:block;
        z-index:2000
	}
    
    .searchbox .sub-menu .container:before{right:166px}
    
    .searchbox .sub-menu{padding:0; background: linear-gradient(90deg, #fff 81.5%, #6f6f6f 18%);}
    
    
    
    
    
       
      .navigation2024 {  vertical-align: top;  display: inline-block;list-style: none;
height:80px;
padding-top:0;
    margin: 0;
        text-align:right;
      }





.searchbox{vertical-align: top;}

	.navigation2024 {
		vertical-align: top;
	}
.main-nav2024 {
 height:89px;
    }
    
     .main-nav2024 > li.end .hold{ z-index:3;}   

    .header2024 {
    padding: 0!important;
    border: none;
    height:91px;
}
.header2024 .wrap2024{
    max-width: 1600px;
    margin-right: auto;
    margin-left: auto;
    width:98%
}
    .logo2024{margin-left:0;padding:17px 0 0;height:74px;width:195px;}


	.main-nav2024 > li {
	display: inline-block;
   vertical-align: middle;
        font-size:18px;
	}
        .main-nav2024 li.end{padding:0;}
  
    .main-nav2024 > li.end a{padding:0;white-space: nowrap; height:91px;padding:33px 20px;box-sizing: border-box;}
    .main-nav2024 > li.end .hold{display:inline-block;background:url(../images/menu-bg.svg);background-size:cover; width:167px; text-align: center;	height:91px;box-sizing: border-box;padding-right:15px;margin-right:-25px;margin-left:10px}
    
  

    



	.main-nav2024 > li:hover .sub-menu {
		opacity: 1;
		visibility: visible;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
        display:block;
        z-index:2000
	}
    

    
    .main-nav2024 > li.drop a:after{
	content:"";
    width: 0; 
  height: 0; 
    opacity:0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  transition: all .1s;
  border-bottom: 15px solid #fff;
    position:absolute; left:50%; margin-left:-15px;
        bottom:0px;
}
    
 
    

    
   

.main-nav2024 > li.drop:hover a:after, .searchbox:hover .hold:after,  .main-nav2024 > li.end:hover .hold a span:after  {
    opacity:1;
}

	.main-nav2024 .menu-opener {
		display: none;
	}

	.navigation2024 .sub-menu {
		position: absolute;
        visibility: hidden;
        opacity: 0;
        width: 100%;
        display: none;
        left: 0;
        top: 91px;
        right: 0;
        transition: all .3s;
        z-index: -1;
          padding: 30px 0 20px;
        }
 
    
  



    
    
    
    .logo2024{position: absolute;height:90px;z-index:10}
    .navigation2024{width:100%}

}






@media(min-width:1596px){
   
  .main-nav2024 > li {
	display: inline-block;

       vertical-align: middle;
        font-size:20px;
	}

    
   
     .searchbox:hover {width:305px;}

   .searchbox .sub-menu .left{width:calc(100% - 305px);}
.searchbox .sub-menu .right{background:#6f6f6f;float:right;width:305px;}
  
}



@media(min-width:2300px){.searchbox .sub-menu{background: linear-gradient(90deg, #fff 70%, #6f6f6f 30%);}}

@media(min-width:3700px){.searchbox .sub-menu{background: linear-gradient(90deg, #fff 65%, #6f6f6f 35%);}}

@media(max-width:1595px){  .header2024 .container{width:98%!important;padding:0!important;max-width: 1600px;
    margin-right: auto;
    margin-left: auto;}.main-nav a{padding:33px 10px}}
@media (max-width: 1390px){

    .main-nav2024{font-size:16px;}



    .main-nav2024 > li.end a{padding-left:0;}
    
    
}


@media(max-width:1345px){
   .searchbox .sub-menu .suggesthold{padding-right:23%}
    .searchbox .sub-menu ul{padding-right:15%;}


   
.nav-holder {
    overflow-y: auto;
}

  .main-nav2024 > li.end .hold{margin-left:2.5%}   
    .logo2024 {
    display: inline-block;
    padding:12px 0;

        height:80px;
        z-index:3;
    
}
    .navigation2024{z-index:2;height:80px}
    
    .search-message{padding-right:20px}


    .navigation2024 .sub-menu{display:none}
    
    .main-nav2024{display:none;text-align:left;}
    
    .main-nav2024 > li {
 font-size:20px;
    padding: 0;
	}
    .main-nav2024 li .ui-accordion-header-active {background:#111;}
    .main-nav2024 > li a {
        display:block;
    padding: 10px 2.5%;
       
	}
  /* CHANGE TO FIX MENU WITH CHAT  */  .header2024.active{bottom:0; overflow-y:scroll; background:rgba(43,43,43,1);z-index:10001;-webkit-overflow-scrolling:touch;}
   
    
    .header2024 .main-nav{display:none;}
    .header2024.active .main-nav{display:block;z-index:16;position: relative}
    
.searchbox{position:absolute; top:0;right:210px;  display: inline-block; width:120px;text-align:right; transition: width 0.5s ease-in-out;transform-origin: right;padding:18px 20px 27px 20px;height:80px;box-sizing: border-box;}
  
    .searchbox img{width:25px; cursor:pointer; height:auto;display: inline-block; vertical-align: middle; max-width:25px;}
    .searchbox.active {width:310px;}
.searchbox input{display: inline-block; vertical-align: middle; width:0px; opacity:0;transition: width 0.65s ease-in-out;transform-origin: right;height:auto;}
    .searchbox.active input{width: calc(100% - 90px);margin-right:10px;opacity:1;}


    
    .navigation2024 .social-icons{position: absolute;top:0;right:70px;padding: 28px 10px 17px 25px;height:80px;}

  
    
        .main-nav2024{width:100%;}
    .navigation2024{position:absolute;}
    
    .searchbox .sub-menu{position:fixed;left:0;right:0;padding:0;}
    
    .searchbox .sub-menu {
  top: 84px;
}
    
    .searchbox .sub-menu .suggesthold{padding-left:20px;}
  
}




@media(max-width:1023px){
    .searchbox .sub-menu .suggesthold{padding-right:20px; background:#fff;}
    .searchbox .sub-menu .container{flex-direction: column-reverse; padding:0!important;}
    .searchbox .sub-menu .left, .searchbox .sub-menu .right{width:100%; background:#6f6f6f}
       .search-message{text-align:left}
    .searchbox .sub-menu ul.suggestions li{font-size:18px}
 .searchbox .sub-menu ul{padding-right:20px;}
}



@media(max-width:650px){
    .searchbox{padding-top:25px;}
    .searchbox .sub-menu{top:120px; text-align:left;bottom:0;overflow-y: auto;z-index:10;}

.searchbox input[type=text]{position:fixed;top:80px; left:0; right:0;padding:0 20px; height:46px; width:100%;clear:both;background:#111; box-sizing: border-box; color:#999; outline:0;font-size:15px; z-index:15;}
    .searchbox.active{width:120px}
    .searchbox.active input{display:block;}


    .searchbox .sub-menu{background:#fff}
    .searchbox .sub-menu ul.suggestions li{width:40%;}
    .searchbox .sub-menu ul.search-models li{0 40px 18px 0}
    
    .searchbox img{width:30px;max-width:30px;}

.search-filter li{background-size:20px;font-size:16px;
padding:0 26px 0 26px;line-height:18px;margin:5px 10px 5px 0;}

}




@media(max-width:645px){


    .nav-holder {
    z-index: 2001;
}

}


.navigation2024 .searchbox .sub-menu h2{margin:0}




@media(max-width:415px){
    .logo2024{width:140px;}   
}

.navigation2024 span.title{opacity: 1;}
.main-nav2024 a:hover{color:#fff}

form span.title{margin-left:0}



/*   EDITED STYLES FOR SOCIAL MOBILE VIEW  */
.social-icons span{display:none}

@media(max-width:1023px){
    .searchbox .sub-menu .container{width:100%}
}

@media (max-width: 650px){
    .searchbox input[type=text]{z-index:0;}
.searchbox.active input {
    z-index: 20;}
}

.navigation2024 .social-icons a{margin-left:0}

@media(max-width:600px){
    .searchbox{right:60px;}  
 /*  MENU CHANGE  >> */   .navigation2024 .social-icons{display:none}
    .header.active .main-nav{padding-bottom:40px;}
    .social-icons span{float:left;font-family: "ZapfHumnst BT",Arial,"Helvetica Neue",Helvetica,sans-serif;color:#ccc;font-size:17px;display:inline-block;}
    
}
@media(max-width:450px){
    .social-icons span{font-size:16px;}
}

@media(max-width:380px){
    .social-icons span{font-size:14px;}
    .navigation2024 .social-icons{padding:12px}
}

/*  CONTACT MENU UPDATES FEB 2024  */

.navigation2024 .sub-menu .col{box-sizing: border-box;}
.navigation2024 .sub-menu .col a{padding:5px 0;height:auto;display:block!important;color:#000}
.navigation2024 .sub-menu .col a:after{display:none}
.navigation2024 .sub-menu .col a.btn{color:#fff;font-size:18px;margin-top:20px}
.navigation2024 .sub-menu .col a img{display: inline-block; vertical-align: middle; margin-right:10px;}

 @media (min-width: 500px) {

 .navigation2024 .sub-menu .inner-cols{
     display:flex;    
    }
   .navigation2024 .sub-menu .inner-cols div{width:50%}
  .navigation2024 .sub-menu .col:nth-child(3) {
    width: 100%;
  }
} 


@media (min-width: 651px) {
    
    .navigation2024 .sub-menu h2{font-size:26px; line-height:26px}

    .navigation2024 .sub-menu .col{width:50%;}

}

@media (min-width:920px){
  .navigation2024 .sub-menu .col:first-child {
    width: 28%;
  }
  .navigation2024 .sub-menu .col:nth-child(2) {
    width: 19%;
  }
   .navigation2024 .sub-menu .col:nth-child(3) {
    width: 23.5%;padding-top:38px;
  }
    .navigation2024 .sub-menu .col{width:23.5%} 
}

.main-nav2024 .sub-menu ul.contacts li{
 padding: 0 0 13px;   
}
   .navigation2024 .sub-menu input[type=text],  .navigation2024 .sub-menu input[type=email]{
     border:1px solid #999;
        height:36px;
        font-size:14px;
        color:#000;padding:10px;
    }

.navigation2024 .sub-menu input[type=checkbox]{
    width:20px; height:20px;padding:0;margin:3px 5px 0 0;display: inline-block;vertical-align: top;border:1px solid #ddd;
}

 .navigation2024 .sub-menu .button{font-size:16px}
    .navigation2024 .sub-menu .input-hold{
     padding:10px 0 0;   
    }
      .navigation2024 .sub-menu .inner-cols div.soclinks {width:100%;padding-bottom:0;}
    .soclinks a {
  color: #000;
  display: block !important;
  padding: 6px 0 !important;
  border-bottom: 0;
}

@media(max-width:767px){
 .navigation2024 .sub-menu .col, .navigation2024 .sub-menu .inner-cols div{padding-bottom:30px}   
}



.navigation2024 .sub-menu .row{width:auto}



.navigation2024 .sub-menu .container{
    padding:0;
    max-width:1500px;
    margin:0 auto;
}

@media(min-width:1700px){
    .navigation2024 .sub-menu .container{
        max-width:1600px;
    }
}
@media(max-width:1345px){
.main-nav2024 .hold-non a{z-index:5;display:block!important;}
}
/*   MENU DROPDOWN UPDATES   */


.navigation2024 .sub-menu ul{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  /* explicit repeated row tracks so subgrid can align per visual row */
  grid-template-rows: repeat(12, auto auto auto auto);

  /* avoid row-gaps here: parent rows are used for subgrid */
  column-gap: 35px;
  row-gap: 0;

  align-items:start;
  margin: 0;
  padding: 0;
}

/* neutralise legacy spacing that fights grid gaps */
.navigation2024 .sub-menu ul > li{
  padding: 0;
  width: auto;
  margin-bottom:10px;
}

/* neutralise legacy .six li padding rules */
.navigation2024 .sub-menu.six ul > li{
  padding: 0;
}

/* keep images behaving nicely */
.navigation2024 .sub-menu .menu-image img{
  width: 100%;
  max-width:none;
  height: 100%;
  display: block;
  margin-bottom:0;
object-fit: cover;
}

/* 6-column menus only at very wide widths */
@media (min-width: 1401px) {
  .navigation2024 .sub-menu.six ul{
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

@media(min-width:1301px){
    .navigation2024 .sub-menu{
        max-height:calc(100vh - 91px);
        overflow-y:auto;
    }
}

/* responsive step-down */
@media (max-width: 1023px) {
  .navigation2024 .sub-menu ul,
  .navigation2024 .sub-menu.six ul{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 650px) {
    .navigation2024 .sub-menu ul,
  .navigation2024 .sub-menu.six ul{
    grid-template-columns: 1fr;
  }
}

/* subgrid alignment: aligns h2/desc/link per visual row of cards */
@supports (grid-template-rows: subgrid) {
  .navigation2024 .sub-menu ul > li{
    /* force grid even if legacy CSS sets inline-block */
    display:grid !important;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;
    grid-row: span 4;
    width: auto !important; /* override legacy .six width:16.66% */
  }

  .navigation2024 .sub-menu ul > li > a{
    /* force grid even if JS injects inline style display:inline-block */
    display:grid !important;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;
    grid-column: 1 / -1;
    grid-row: 1 / -1;
  }

  .navigation2024 .sub-menu ul > li .menu-image{ grid-row: 1; height:205px; overflow: hidden;}
  .navigation2024 .sub-menu ul > li h2{ grid-row: 2; margin: 15px 0 0; }
  .navigation2024 .sub-menu ul > li .menu-desc{ grid-row: 3; margin:5px 0 0; line-height: 1.3; font-size:13px; }
  .navigation2024 .sub-menu ul > li .link{ grid-row: 4; margin-top:5px; }
}

/* legacy .six image cropping can stay, but ensure widths don't break grid */
@media (min-width: 651px) {
  .navigation2024 .sub-menu.six ul li{
    width: auto;
  }
  .navigation2024 .sub-menu h2 {
    font-size: 24px;
    line-height:1;
  }
}

/* contact menu adjustments */

.navigation2024 .sub-menu ul.contacts,   .navigation2024 .sub-menu ul.contacts > li, .navigation2024 .sub-menu ul.contacts > li > a{
        display:block !important;
        margin-bottom:0;
    }
    .navigation2024 .sub-menu ul.contacts > li{
        padding-bottom:13px;
    }
 .navigation2024 li.end .sub-menu h2{
        text-align: left!important;
    }