/* 
LS Helper Classes 20.05.2020
*/

body { overflow-x: hidden; }
.ls-sticky-top { z-index: 900; position: fixed; top: 0; left: 0; right: 0; }

/* Korrekturen */
.container-fluid > .container-fluid { margin-left: -15px; padding-left: 15px; padding-right: 15px; margin-right: -15px; width: calc(100% + 30px); }      
.container > .container { padding-left: 0; padding-right: 0; }
.text-center > img { margin-left: auto; margin-right: auto; }    
article, section { width: 100%; max-width: 100%; overflow-x: hidden; }
p { margin-bottom: 1.5rem; }
p.text-white a { color: #fff !important; }  

.alert { margin: 1rem 0; }  
.alert.alert-hidden { display: none; }
.alert p { margin: 0.5rem 0; }

/* Schriften */      
.ls-text-shadow { text-shadow: 0 0 5px rgba(0,0,0,0.9); }       
.ls-font-smaller { font-size: 85%; } 

/* Hintergrund */    
.bg-img-hero, .ls-bg-img-hero { background-size: cover; background-repeat: no-repeat; background-position: center center; }     
.ls-bg-transparent  { background-color: transparent !important; }
.ls-bg-white  { background-color: #fff !important; }
.ls-bg-black  { background-color: #000 !important; }
.ls-bg-light  { background-color: #CFD8DC !important; }
.ls-bg-dark  { background-color: #191919 !important; }   
.bg-primary, .ls-bg-primary  {background-color: #3B3B3A !important; }       
.ls-bg-gradient-overlay { position: relative; z-index: 1; }    
.ls-bg-gradient-overlay::before, .ls-bg-gradient-overlay::after { position:absolute;  top:0;  right:0;  bottom:0;  left:0;  z-index:-1;  width:100%;  height:100%;  content:""; }
.ls-bg-gradient-overlay::before { background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%); background-repeat: repeat-x; }    
.ls-bg-gradient-overlay-fromtop { position: relative; z-index: 1; }    
.ls-bg-gradient-overlay-fromtop::before, .ls-bg-gradient-overlay-fromtop::after { position:absolute;  top:0;  right:0;  bottom:0;  left:0;  z-index:-1;  width:100%;  height:100%;  content:""; }
.ls-bg-gradient-overlay-fromtop::before { background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%); background-repeat: repeat-x; }       
.ls-bg-gradient-overlay-frombottom { position: relative; z-index: 1; }    
.ls-bg-gradient-overlay-frombottom::before, .ls-bg-gradient-overlay-frombottom::after { position:absolute;  top:0;  right:0;  bottom:0;  left:0;  z-index:-1;  width:100%;  height:100%;  content:""; }
.ls-bg-gradient-overlay-frombottom::before { background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%); background-repeat: repeat-x; }   
.ls-bg-gradient-color  { background-image: linear-gradient(90deg, #CF0006 0%, #F30B00 100%); }                
.ls-bg-gradient-primary  { background-image: linear-gradient(90deg, #CF0006 0%, #F30B00 100%); }         

.ls-image-copy { position: absolute; bottom: 0; right: 0; display: block; padding: 0.2rem 1rem; font-size: 0.6rem; background: #f5f5f5; background: rgba(255,255,255,0.5); color: #000; width: auto; }

.ls-circle-btn, .ls-circle-btn:focus { min-width: 2rem; height: 2rem; border-radius: 360px; background: rgba(0, 97, 156, 0.2); text-align: center; position: relative; outline: none !important; box-shadow: none; border: 0; padding: 0; cursor: pointer; }    
.ls-circle-btn:disabled { cursor: not-allowed; opacity: 0.8; }   
.ls-circle-btn.choosen { box-shadow: 0 0 4px 4px rgba(0,0,0,0.3); }   
.ls-circle-btn i { line-height: 2rem; font-size: 1.0rem; }
.ls-circle-btn .badge-pill { position: absolute; top: -8px; right: -7px; }

/* Button */
.btn-wide { min-width: 10rem; }  
.btn.focus, .btn:focus { box-shadow: none; }

/* Abmessungen */
.ls-half-container { position: relative; max-width: 600px; } 
.container-fluid.ls-full-no-gutters { margin: 0; padding: 0; }
                                         
.ls-minh-50px { min-height: 50px; }
.ls-minh-15vh { min-height: 15vH; }
.ls-minh-20vh { min-height: 20vH; }
.ls-minh-25vh { min-height: 25vH; }    
.ls-minh-40vh { min-height: 40vH; }
.ls-minh-50vh { min-height: 50vH; }
.ls-minh-66vh { min-height: 66vH; }  
.ls-minh-75vh { min-height: 75vH; }
.ls-minh-100vh { min-height: 100vH; }     
.ls-minh-100vh-50p { min-height: calc( 100vH - 50px); }

.ls-square-100px { min-width: 100px; min-height: 100px; }
                                                           
.ls-space-1 { padding-top: 1rem; padding-bottom: 1rem; }
.ls-space-2 { padding-top: 2rem; padding-bottom: 2rem; }
.ls-space-3 { padding-top: 3rem; padding-bottom: 3rem; }
.ls-space-4 { padding-top: 4rem; padding-bottom: 4rem; }
.ls-space-5 { padding-top: 5rem; padding-bottom: 5rem; }     
    
.ls-w-40 { width: 40% !important; }  
.ls-w-50 { width: 50% !important; } 
.ls-w-75 { width: 75% !important; }  
.ls-w-100 { width: 100% !important; }   
.ls-w-40p { width: 40px !important; }  
.ls-w-50p { width: 50px !important; } 
.ls-w-75p { width: 75px !important; }    
.ls-w-max-7r { max-width: 7rem; }

/* Navi und Header */
#top { background: #000; color: #fff; height: 50px; font-size: 25px; line-height: 50px; font-weight: 500; text-decoration: none !important; }    
#top span { color: rgba(255,255,255,0.5); font-weight: 100; text-transform: uppercase; font-size: 24px; border-left: 1px solid rgba(255,255,255, .15); }
#navtoggle { width: 50px; color: #fff; font-size: 30px; line-height: 50px; padding: 0; margin: 0; text-align: center; background: #ED0817 !important; border-radius: 0;  }         
main { margin-top: 51px; }

/* Menü */
#mainheader .nav-link { color: #fff; text-transform: uppercase; min-height: 50px; line-height: 50px; font-size: 18px; margin: 0; padding: 0 1rem; }    
#mainheader .nav-link.active { background: #3B3B3A; color: #fff; }     
#mainheader .nav-link:hover { color: rgba(255,255,255,0.7); }    
#mainheader .ls-nav-lang { width: 50px; border-right: 1px solid #3B3B3A; }      
#mainheader .ls-nav-lang.active { background: #3B3B3A; color: #fff !important;  } 
#mainheader .btn-menusize { height: 50px; text-align: center; }        

#mobil-navi .navfooter { border-top: 1px solid #3B3B3A; border-bottom: 1px solid #3B3B3A; line-height: 40px; }      
#mobil-navi .navfooter h6 { margin: 0; padding: 0; }      
#mobil-navi .navfooter ul { border-left: 1px solid #3B3B3A; }      
#mobil-navi .navfooter .ls-nav-lang { width: 40px; border-right: 1px solid #3B3B3A; font-size: 18px; }      
#mobil-navi .navfooter .ls-nav-lang.active { background: #3B3B3A; color: #fff !important; }   
#mobil-navi .navfooter .btn-menusize { height: 40px; text-align: center; padding: 0;  }      

/* Footer */
.ls-social br { display: none; }
.ls-social > a { display: inline-block; width: 36px; height: 36px; line-height: 36px; font-size: 20px; text-align: center; margin: 0 2px 2px 0; background: rgba(255,255,255,0.2); border-radius: 3px; }
.ls-social > a:hover { background: #ED0817; }
#footer ul.list-group-transparent li a { color: rgba(255, 255, 255, 0.7); margin: 2px 0 0 0; line-height: 1.2;  }
#footer ul.list-group-transparent li a:hover, #footer ul.list-group-transparent li a:focus { color: #3B3B3A;  }
#footer .h6 { font-size: 1.1rem; font-weight: 600; }


/* Position */
.ls-pos-absolute-top-right-0 { position: absolute; top: 0; right: 0; }
.ls-pos-absolute-top-left-0 { position: absolute; top: 0; left: 0; }

/* Icons */
.ls-icon { display: inline-bock; text-align: center; line-height: 0.7; position: relative; }   
.ls-icon-primary { background-color: #95c11f; border-color: #95c11f; color: #fff; }   
.ls-icon-sm { width: 2rem; height: 2rem; font-size: 0.9rem; }                         
.ls-icon-md { width: 3rem; height: 3rem; font-size: 0.9rem; }                       
.ls-icon-light { background-color: #fff; border-color: #fff; color: #151b26;  width: 2.5rem; height: 2.5rem; font-size: 1rem; }       
.ls-icon-medium { background-color: #aaa; border-color: #aaa; color: #fff;  width: 2.5rem; height: 2.5rem; font-size: 1rem; }     
.ls-icon-dark { background-color: #151b26; border-color: #151b26; color: #fff;  width: 2.5rem; height: 2.5rem; font-size: 1rem; }              
.ls-icon-inner { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }  
                                                        
.ls-border-dark-1 { border: 1px solid rgba(0,0,0,.25) !important; }
.ls-border-dark { border-color: rgba(0,0,0,.25); }     
.ls-shadow-1 { box-shadow: 0 0 20px 5px rgba(0,0,0,.25); } 

/* Cards */
.ls-card-v1 .card-footer { background: transparent; }      
.ls-card-v1 .card-footer a:hover { text-decoration: none; }
.ls-card-v1 .card-footer .text-muted, .ls-card-v1 .card-footer i.fas { font-size: 1.5rem; color: #95c11f !important; }

.card.ls-cardclick { cursor: pointer; }

.ls-fulltext { display: block; }
.ls-eingeklappt .ls-fulltext { display: none; }   
.ls-fulltext { display: block; }                          
.ls-showmore { display: none; }
.ls-eingeklappt .ls-showmore { display: inline-block; }         
.ls-showless { display: inline-block; }
.ls-eingeklappt .ls-showless { display: none; }

/* Listen */
.textitem ul { list-style: none; margin-left: 0; padding-left: 0; margin: 1em 0;  }    
.textitem ul li { list-style: none; margin-left: 0; padding: 3px 0 8px 1.5rem; position: relative; } 
.textitem ul li:before { font-family: "Font Awesome 5 Free"; content:"\f35a";  display: inline-block; width: 1.5rem; font-size: 1rem; color: #97BE0D; position: absolute; top: 0.2rem; left: 0; }  

ul.list-group, ul.list-group li { list-style: none; margin: 0; padding: 0; }
ul.list-group li { margin-bottom: 3px; }
ul.list-group-transparent li a { background: transparent; color: #fff; padding: 2px; margin: 5px 0; border: 0; }    
ul.list-group li a { background: transparent; padding: 0.5rem; margin: 0; border: 0; text-decoration: none; font-weight: bold; }   
ul.list-group li a i { font-size: 1.2rem; } 

/* Accordion */    
.seitenliste .card .card-header { background: #737878; }
.seitenliste .card h3 button, .seitenliste .card h3 button:active { background: #737878; color: #fff; border: 0; border-bottom-left-radius: 0; border-bottom-right-radius: 0; font-size: 1.2rem; text-decoration: none; }    
.seitenliste .card h3 button { background: #b4143c; color: #fff; text-decoration: none; }          
.seitenliste .card h3 button.collapsed { background: #b4143c; color: #fff;}          
.seitenliste .card h3 button.collapsed:hover { background: #737878; color: #fff; text-decoration: none; }      

.seitenliste .card h3 button span.less { display: inline-block; } 
.seitenliste .card h3 button span.more { display: none; } 
.seitenliste .card h3 button.collapsed span.less { display: none; }    
.seitenliste .card h3 button.collapsed span.more { display: inline-block; }

/* Media */                          
.ls-clients { max-width: 300px; }
.bilditem.text-full figure.figure, .bilditem.text-full figure.figure img { width: 100%; }

/* Divider */
.ls-divider{position:relative;  display:inline-block;}
.ls-divider::before,.ls-divider::after{position:absolute;  top:50%;  background-color:#d4d7dd;  content:"";}
.ls-divider::before{right:100%;}
.ls-divider::after{left:100%;}
.ls-divider-wrapper{overflow:hidden;}
.ls-divider-xs{font-size:0.75rem;}
.ls-divider-xs::before,.ls-divider-xs::after{width:999px;  height:0.0625rem;  -webkit-transform:translateY(-50%);          transform:translateY(-50%);}
.ls-divider-xs::before{margin-right:.625rem;}
.ls-divider-xs::after{margin-left:.625rem;}

/* Avatare */
.ls-avatar { width: 5rem; height: 5rem; }         
.ls-avatar-sm { width: 3.5rem; height: 3.5rem; }  
.ls-avatar-xs { width: 2.5rem; height: 2.5rem; }   
.ls-avatar-bordered { border: 4px solid #fff; }   
.ls-avatar-bordered-xs { border: 2px solid #fff; }
.ls-avatar-shadow { box-shadow: 0 0 2.1875rem rgba(140, 152, 164, 0.25) !important; }
.u-divider-text{color:#8c98a4;}

/* Audio-player */    
.ls-player-height { min-height: 60px; }
.ls-audio-player { z-index: 100; position: fixed; display: block; bottom: 0; left: 0; right: 0; height: 60px; background: #000; color: #fff; }
.ls-audio-player.inactive { display: none; }
.ls-audio-controls > .inactive { display: none; }
.ls-audio-play, .ls-audio-pause { height: 38px; width: 38px; border-radius: 50%; background: #fff; color: #000; line-height: 38px; font-size: 19px; text-align: center; padding-left: 3px; }
.ls-audio-progress { position: absolute; top: -1px; left: 0; right: 0;  height: 1px; background: rgba(255,255,255,0.2); }     
.ls-audio-progress-current { position: absolute; top: 0; left: 0; height: 1px; background: #fff;}
.ls-audio-title { line-height: 1.1; }

/* Lightbox */    
#libcover { display: none; }
body.mitlib #libcover { display: block; }
html.mitlib, body.mitlib { /*height: 100%; overflow-x: hidden; overflow-y: visible; */ }
.libcover { z-index: 1500; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: #eeeeee; background: rgba( 50,50,50,0.7); }
.libclose { position: relative; top: 0; left: 0; right: 0; bottom: auto; height: 50px; width: 100%; margin: 0 auto; width: calc(100% - 160px); max-width: 880px; cursor: pointer; background: url('../media/navi-close.svg') top right no-repeat #fff; background-size: contain;  border-radius: 12px 12px 0 0; }
.libcontent { position: fixed; z-index: 1510; top: 90px; left: 30px; right: 30px; bottom: 0; overflow: visible; }
.libinner { position: relative; width: 100%; width: calc(100% - 160px); max-width: 880px; background: #ffffff; overflow-y: auto; padding: 0 50px 50px 50px; margin: 0 auto; height: calc(100vH - 140px); }    
       
@media only screen and (min-width:576px) and (max-width:991.98px){    

.libinner { width: calc(100% - 40px); max-width: 100%; padding: 0 20px 50px 20px;  }  
.libclose { width: calc(100% - 40px);  max-width: 100%;  }

}  
       
@media only screen and (max-width:575.98px){       

.libcontent { top: 25px; left: 0; right: 0; bottom: 0; padding: 0; }   
.libcontent > .container { padding: 0; }
.libinner { width: calc(100% - 20px); max-width: 100%; padding: 0 10px 20px 10px;  height: calc(100vH - 75px); }  
.libclose { margin-right: 10px; top: 0; z-index: 1550;  width: calc(100% - 20px); max-width: 100%;  }   
.libinner .container-fluid { padding: 0; }

}  


/* Zeitleiste */  
.ls-zeitleiste-item{position:relative;  display:-ms-flexbox;  display:flex;  -ms-flex-direction:row;      flex-direction:row;  -ms-flex-wrap:wrap;      flex-wrap:wrap;  margin-right:-.9375rem;  margin-left:-.9375rem;}
.ls-zeitleiste-icon{position:absolute;  top:0;  left:.9375rem;}    
.ls-zeitleiste-content, .ls-zeitleiste-info{width:calc(100% - 4rem);}
.ls-zeitleiste-info, .ls_zeitleiste-spacer{display:block;}      
.ls-zeitleiste-info, .ls-zeitleiste-content, .ls-zeitleiste-spacer{padding-right:.9375rem;  padding-left:.9375rem;}     
.ls-zeitleiste-info, .ls-zeitleiste-content{position:relative;}
.ls-zeitleiste-info::before, .ls-zeitleiste-content::before{position:absolute;  top:.5rem;  bottom:0;  left:1.875rem;  height:100%;  border-left:3px dashed #e3e6f0;  content:"";}   
.ls-zeitleiste-info.icon-md::before, .ls-zeitleiste-content.icon-md::before{left:2.375rem; }      
.ls-zeitleiste-content{padding-bottom:2rem;}    
.ls_zeitleiste-info{padding-bottom:2rem;}
         
@media only screen and (max-width:991.98px){
.ls-zeitleiste-info, .ls-zeitleiste-content, .ls-zeitleiste-spacer{ padding-left:0;  }
.ls-zeitleiste-content .media-body { padding-left: 4rem; }
.ls-zeitleiste-content, .ls-zeitleiste-info { width:calc(100%); }
}

@media only screen and (min-width:992px){
.ls-zeitleiste-item{-ms-flex-wrap:nowrap;        flex-wrap:nowrap;    -ms-flex-align:start;        align-items:flex-start;    -ms-flex-pack:justify;        justify-content:space-between;  }
.ls_zeitleiste-icon{left:0;  }
.ls-zeitleiste-info, .ls-zeitleiste-spacer { width:20%;  }  
/* .ls-zeitleiste-info::before, .ls-zeitleiste-content::before{left:.9375rem;  }
*/
.ls-zeitleiste-content{ padding-left:5rem; margin-left:15%; }         
.ls-zeitleiste-info{padding-bottom:0;  }
.ls-zeitleiste-info::before{display:none;  }
}

        
@media only screen and (min-width:576px){
/* Media Sponsoren */                          
.ls-clients { width: 100%; padding: 1rem; }
.ls-perrow-1 li { max-width: calc(100% - 2rem); }
.ls-perrow-2 li { max-width: calc(50% - 2rem); }
.ls-perrow-3 li { max-width: calc(33.33% - 2rem); }
.ls-perrow-4 li { max-width: calc(25% - 2rem); }
.ls-perrow-5 li { max-width: calc(20% - 2rem); }      
.ls-perrow-6 li { max-width: calc(16.66% - 2rem); }
}         
@media only screen and (max-width:575.98px){      
.ls-clients { width: 100%; }   
.ls-perrow-1 li { max-width: calc(100% - 2rem); }
.ls-perrow-2 li, .ls-perrow-3 li, .ls-perrow-4 li, .ls-perrow-5 li, .ls-perrow-6 li { max-width: calc(50% - 2rem); }
}       
@media only screen and (max-width:575.98px){      
.ls-btn-xs-block { width: 100%; }
}        
      
@media only screen and (max-width:991.98px){          
.ls-btn-md-block { width: 100%; }
}        

/* Navigation */
#mobil-navi { display: none; }   
#navtoggle { display: none; } 
      
@media only screen and (max-width:991.98px){ 
                 
header li.nav-item { display: none !important; }    
header li.nav-item.ls-nav-mobil { display: list-item !important; }     
#navtoggle { display: inline-block; background: transparent; border: 0;  }    

#mobil-navi { display: block; }       
#mobil-navi.eingeklappt { display: none; }   
#mobil-navi { z-index: 990; position: fixed; top: 0; left: auto; right: 0; bottom: 0; overflow: hidden; overflow-y: auto; display: block; color: #fff; width: 300px; max-width: 100%; box-shadow: 0 0 50px 50px rgba(0,0,0,0.2); }
#mobil-navi .navhead { z-index: 995; position: fixed; top: 0; left: auto; right: 0; bottom: 0; display: block; width: 300px; max-width: 100%; color: #fff; height: 64px; padding: 20px 60px 10px 20px; }
#mobil-navi .navhead {}
#mobil-navi .navhead span.navitoggle { cursor: pointer; display: block; position: absolute; right: 0; top: 0; bottom: auto; left: auto; width: 64px; height: 64px; font-size: 30px; line-height: 64px; color: #fff; text-align: center; }


#mobil-navi .navbody { padding: 90px 0 0 0;}                                                         
#mobil-navi .navbody ul { display: block; list-style: none; margin: 0; padding: 0; border: 0; position: relative; }   
#mobil-navi .navbody ul li { display: block; list-style: none; margin: 0; padding: 0; border: 0; position: relative; }     
#mobil-navi .navbody ul li a { display: block; font-size: 1.5rem; line-height: 2rem; letter-spacing: 0; color: #fff; padding: 10px 20px 10px 20px; text-transform: uppercase; border-bottom: 0; position: relative; text-align: right; font-weight: 300; }     
#mobil-navi .navbody ul li.active > a { color: #fff; }     
#mobil-navi .navbody > ul > li.active > a { font-weight: bold; }   
                                                     
#mobil-navi .navbody ul li.active > a { }  

#mobil-navi .navbody > ul ul { display: none; }   
#mobil-navi .navbody > ul li.active > ul { display: block; padding: 10px 0; }                             
#mobil-navi .navbody > ul li.active > ul li a { font-size: 1.0rem; line-height: 1.1rem; padding: 5px 20px 5px 20px; text-transform: none; }      
#mobil-navi .navbody > ul li.active > ul li.active > a { } 
                                                          
                                      
#mobil-navi .navfooter { display: block; color: #fff; padding: 0 20px; text-align: right; }
#mobil-navi .navfooter { font-size: 0.9rem; line-height: 1.2rem; letter-spacing: 0; color: #fff; text-transform: none; }    
#mobil-navi .navfooter .nav-link, #mobil-navi .navfooter a { padding: 6px 0px; color: #fff;  }        
#mobil-navi .navfooter form { float: right; width: auto; margin-top: 1rem; }                                             
}


.pl-9 {padding-left:4rem !important;  }    
.ls-mt-n1 { margin-top: -2rem; }   
.ls-mr-n1 { margin-right: -0.375rem;}     

.card-columns.ls-two-columns { column-count: 2; }       
                                    
@media only screen and (min-width: 576px) and (max-width: 991.98px) {  
.card-columns { column-count: 2; }     
}           

@media only screen and (min-width: 768px) and (max-width: 991.98px) {     
/* MD */                                
}          

@media only screen and (min-width: 576px) and (max-width: 767.98px) {     
/* SM */                              
.card-columns.ls-two-columns { column-count: 2; }     
}               
       
@media only screen and (max-width: 575.98px) {    
/* XS */  
.ls-d-xs-25vh { min-height: 25vH; }   
.card-columns.ls-two-columns { column-count: 1; }     
}
@media only screen and (min-width: 576px) {  
/* SM */  
.m-sm-0{margin:0 !important;  }
.mt-sm-0,.my-sm-0{margin-top:0 !important;  }
.mr-sm-0,.mx-sm-0{margin-right:0 !important;  }
.mb-sm-0,.my-sm-0{margin-bottom:0 !important;  }
.ml-sm-0,.mx-sm-0{margin-left:0 !important;  }
.m-sm-1{margin:0.25rem !important;  }
.mt-sm-1,.my-sm-1{margin-top:0.25rem !important;  }
.mr-sm-1,.mx-sm-1{margin-right:0.25rem !important;  }
.mb-sm-1,.my-sm-1{margin-bottom:0.25rem !important;  }
.ml-sm-1,.mx-sm-1{margin-left:0.25rem !important;  }
.m-sm-2{margin:0.5rem !important;  }
.mt-sm-2,.my-sm-2{margin-top:0.5rem !important;  }
.mr-sm-2,.mx-sm-2{margin-right:0.5rem !important;  }
.mb-sm-2,.my-sm-2{margin-bottom:0.5rem !important;  }
.ml-sm-2,.mx-sm-2{margin-left:0.5rem !important;  }
.m-sm-3{margin:1rem !important;  }
.mt-sm-3,.my-sm-3{margin-top:1rem !important;  }
.mr-sm-3,.mx-sm-3{margin-right:1rem !important;  }
.mb-sm-3,.my-sm-3{margin-bottom:1rem !important;  }
.ml-sm-3,.mx-sm-3{margin-left:1rem !important;  }
.m-sm-4{margin:1.5rem !important;  }
.mt-sm-4,.my-sm-4{margin-top:1.5rem !important;  }
.mr-sm-4,.mx-sm-4{margin-right:1.5rem !important;  }
.mb-sm-4,.my-sm-4{margin-bottom:1.5rem !important;  }
.ml-sm-4,.mx-sm-4{margin-left:1.5rem !important;  }
.m-sm-5{margin:2rem !important;  }
.mt-sm-5,.my-sm-5{margin-top:2rem !important;  }
.mr-sm-5,.mx-sm-5{margin-right:2rem !important;  }
.mb-sm-5,.my-sm-5{margin-bottom:2rem !important;  }
.ml-sm-5,.mx-sm-5{margin-left:2rem !important;  }
.m-sm-6{margin:2.5rem !important;  }
.mt-sm-6,.my-sm-6{margin-top:2.5rem !important;  }
.mr-sm-6,.mx-sm-6{margin-right:2.5rem !important;  }
.mb-sm-6,.my-sm-6{margin-bottom:2.5rem !important;  }
.ml-sm-6,.mx-sm-6{margin-left:2.5rem !important;  }
.m-sm-7{margin:3rem !important;  }
.mt-sm-7,.my-sm-7{margin-top:3rem !important;  }
.mr-sm-7,.mx-sm-7{margin-right:3rem !important;  }
.mb-sm-7,.my-sm-7{margin-bottom:3rem !important;  }
.ml-sm-7,.mx-sm-7{margin-left:3rem !important;  }
.m-sm-8{margin:3.5rem !important;  }
.mt-sm-8,.my-sm-8{margin-top:3.5rem !important;  }
.mr-sm-8,.mx-sm-8{margin-right:3.5rem !important;  }
.mb-sm-8,.my-sm-8{margin-bottom:3.5rem !important;  }
.ml-sm-8,.mx-sm-8{margin-left:3.5rem !important;  }
.m-sm-9{margin:4rem !important;  }
.mt-sm-9,.my-sm-9{margin-top:4rem !important;  }
.mr-sm-9,.mx-sm-9{margin-right:4rem !important;  }
.mb-sm-9,.my-sm-9{margin-bottom:4rem !important;  }
.ml-sm-9,.mx-sm-9{margin-left:4rem !important;  }
.p-sm-0{padding:0 !important;  }
.pt-sm-0,.py-sm-0{padding-top:0 !important;  }
.pr-sm-0,.px-sm-0{padding-right:0 !important;  }
.pb-sm-0,.py-sm-0{padding-bottom:0 !important;  }
.pl-sm-0,.px-sm-0{padding-left:0 !important;  }
.p-sm-1{padding:0.25rem !important;  }
.pt-sm-1,.py-sm-1{padding-top:0.25rem !important;  }
.pr-sm-1,.px-sm-1{padding-right:0.25rem !important;  }
.pb-sm-1,.py-sm-1{padding-bottom:0.25rem !important;  }
.pl-sm-1,.px-sm-1{padding-left:0.25rem !important;  }
.p-sm-2{padding:0.5rem !important;  }
.pt-sm-2,.py-sm-2{padding-top:0.5rem !important;  }
.pr-sm-2,.px-sm-2{padding-right:0.5rem !important;  }
.pb-sm-2,.py-sm-2{padding-bottom:0.5rem !important;  }
.pl-sm-2,.px-sm-2{padding-left:0.5rem !important;  }
.p-sm-3{padding:1rem !important;  }
.pt-sm-3,.py-sm-3{padding-top:1rem !important;  }
.pr-sm-3,.px-sm-3{padding-right:1rem !important;  }
.pb-sm-3,.py-sm-3{padding-bottom:1rem !important;  }
.pl-sm-3,.px-sm-3{padding-left:1rem !important;  }
.p-sm-4{padding:1.5rem !important;  }
.pt-sm-4,.py-sm-4{padding-top:1.5rem !important;  }
.pr-sm-4,.px-sm-4{padding-right:1.5rem !important;  }
.pb-sm-4,.py-sm-4{padding-bottom:1.5rem !important;  }
.pl-sm-4,.px-sm-4{padding-left:1.5rem !important;  }
.p-sm-5{padding:2rem !important;  }
.pt-sm-5,.py-sm-5{padding-top:2rem !important;  }
.pr-sm-5,.px-sm-5{padding-right:2rem !important;  }
.pb-sm-5,.py-sm-5{padding-bottom:2rem !important;  }
.pl-sm-5,.px-sm-5{padding-left:2rem !important;  }
.p-sm-6{padding:2.5rem !important;  }
.pt-sm-6,.py-sm-6{padding-top:2.5rem !important;  }
.pr-sm-6,.px-sm-6{padding-right:2.5rem !important;  }
.pb-sm-6,.py-sm-6{padding-bottom:2.5rem !important;  }
.pl-sm-6,.px-sm-6{padding-left:2.5rem !important;  }
.p-sm-7{padding:3rem !important;  }
.pt-sm-7,.py-sm-7{padding-top:3rem !important;  }
.pr-sm-7,.px-sm-7{padding-right:3rem !important;  }
.pb-sm-7,.py-sm-7{padding-bottom:3rem !important;  }
.pl-sm-7,.px-sm-7{padding-left:3rem !important;  }
.p-sm-8{padding:3.5rem !important;  }
.pt-sm-8,.py-sm-8{padding-top:3.5rem !important;  }
.pr-sm-8,.px-sm-8{padding-right:3.5rem !important;  }
.pb-sm-8,.py-sm-8{padding-bottom:3.5rem !important;  }
.pl-sm-8,.px-sm-8{padding-left:3.5rem !important;  }
.p-sm-9{padding:4rem !important;  }
.pt-sm-9,.py-sm-9{padding-top:4rem !important;  }
.pr-sm-9,.px-sm-9{padding-right:4rem !important;  }
.pb-sm-9,.py-sm-9{padding-bottom:4rem !important;  }
.pl-sm-9,.px-sm-9{padding-left:4rem !important;  }

                                        
.ls-d-sm-25vh { min-height: 25vH; }      
.ls-w-sm-40 { width: 40% !important; }  
.ls-w-sm-50 { width: 50% !important; }  
.ls-w-sm-75 { width: 75% !important; } 
  
.ls-space-sm-1 { padding-top: 1rem; padding-bottom: 1rem; }
.ls-space-sm-2 { padding-top: 2rem; padding-bottom: 2rem; }
.ls-space-sm-3 { padding-top: 3rem; padding-bottom: 3rem; }
.ls-space-sm-4 { padding-top: 4rem; padding-bottom: 4rem; }
.ls-space-sm-5 { padding-top: 5rem; padding-bottom: 5rem; }
}

@media only screen and (min-width: 768px) {     
/* MD */                              
.ls-d-md-100p { min-height: 100%; }      
.ls-w-md-40 { width: 40% !important; }  
.ls-w-md-50 { width: 50% !important; } 
.ls-w-md-75 { width: 75% !important; }
}

@media only screen and (min-width: 992px) {     
/* LG */           
.ls-d-lg-100p { min-height: 100%; }                         
.ls-w-lg-40 { width: 40% !important; }  
.ls-w-lg-50 { width: 50% !important; } 
.ls-w-lg-75 { width: 75% !important; }   
.ls-pos-absolute-top-right-0-lg { position: absolute; top: 0; right: 0; }    
.ls-pos-absolute-top-left-0-lg { position: absolute; top: 0; left: 0; }


body.mitlib #libinner .ls-w-lg-50 { width: 100% !important; } 
body.mitlib #libinner .ls-w-lg-75 { width: 100% !important; }   
}

@media only screen and (min-width: 1200px) {   
/* XL */     
.ls-h-xl-100p  { min-height: 100%; }                 
}
