@media (max-width: 1199px) {
  .body-content .Search input[type="text"],
  #footer .Search input[type="text"] {
      max-width: 200px;
 }
  #footer.footer-fr .Search input[type="text"] {
    max-width: 195px;
  }
  #footer.footer-fr .Search input[type="submit"] {
    padding: 8px 10px;
  }
}


@media (max-width: 1119px) {
  a.search_form_link {
      display: block;
      line-height: 40px;
      height: 40px;
      width: 40px;
  }
}

@media (max-width: 1400px) {
  .logo-fr p {
     display: none !important;
  }
}

@media (max-width: 1089px) {
#search_form {
  margin: 0 !important;
  }
  #search svg {
      width: 25px;
      height: 25px;
      position: relative;
      right: 7px;
      top: 12px;
  }
  #search_form input.formButton {
    margin-left: 5px;
  }

  #home-content hr {
    margin: 40px 0;
  }
  #footer, #footer .text-right {
    text-align: center;
  }
  #eventsNews .box {
    margin-bottom: 30px;
  }
  #eventsNews #becomeMember .box {
    margin-bottom: 0;
  }
}

@media (max-width: 767px) {
 #home-content img {
    margin-top: 20px;
 }
  #home-content p {
    margin-bottom: 20px;
  }
  #memberBoxes img {
    margin-top: 60px;
  }
  #recordedLectures img {
    margin-top: 0;
  }
  #memberBoxes h3 {
    margin-top: 15px;
  }
  .pmenu {
    padding: 20px 0;
  }
}


@media (max-width: 680px) {
 textarea, 
 input[type="text"], 
 select,
 input[type=file] {
  width: 100%;
 }
}


@media (max-width: 675px) {
  #search_form input#searchinput {
    width: 100%;
  }
  #search_form {
    right: 15px;
  }
  .utility {
      text-align: center;
      margin-top: 0;
      padding: 0;
      float: none;
  }
  .utility .button {
    display: block;
    margin: 0 0 10px;
    padding: 10px 20px;
  }
  .logo {
    text-align: center;
  }
  span.item-in-cart {
    position: static;
  }
}

@media (max-width: 600px) {
  .alignRight, .alignLeft {
    float: none;
    margin: 10px 0;
  }
  .EvtCal table.EvtCalSm {
    width: 100%;
  }
}

@media (max-width: 480px) {
 .banner-hero-home figcaption h1 br {
    display: none;
 }
}


@media screen and (max-width: 1090px) {
.js .main-navigation{display:none;}
.js .slicknav_menu{display:block;}
}

/* VERTICAL http://cssmenumaker.com/blog/css-flyout-menu-starter-kit */
/* changed from 40em width */
@media screen and (min-width: 1090px) {
.js .main-navigation{display:block;}
.js .slicknav_menu{display:none;}

.vertical-menu {padding: 0; margin: 0; border: 0;}
.vertical-menu ul,.vertical-menu ul li,.vertical-menu ul ul {list-style: none; margin: 0; padding: 0; border: 0;}
.vertical-menu ul {position: relative; z-index: 397;}
.vertical-menu ul li {min-height: 1px; line-height: 1em; vertical-align: middle;}
.vertical-menu ul li:hover {position: relative; z-index: 399; cursor: default;}
.vertical-menu ul ul {visibility: hidden; position: absolute; top: 100%; left: 0; z-index: 398;}
.vertical-menu ul ul ul {top: 0px; left: 99%;}
.vertical-menu ul li:hover > ul { visibility: visible;}
.vertical-menu ul ul {top: 0px; left: 99%;}
.vertical-menu ul li a{display: block;}

.horizontal-menu ul{list-style:none;padding:0;margin:0;}
.horizontal-menu ul li{display:block;position:relative;float:left;}
.horizontal-menu li ul{display:none;}
.horizontal-menu ul li a{display:block;white-space:nowrap;}
.horizontal-menu li:hover>ul{display:block;position:absolute;}
.horizontal-menu li:hover li{float:none;}
.horizontal-menu li ul li{border-top:0;}
.horizontal-menu ul ul ul{left:100%;top:0;}
.horizontal-menu ul:before,.horizontal-menu ul:after{content:" ";display:table;}
.horizontal-menu ul:after{clear:both;}
}



/* SMenu
   ========================================================================== */
@media screen and (min-width: 1090px) {
  .utility {
    float: none;
    margin: 0;
    padding: 0;
  }
  .logo {
    position: absolute;
    top: 14px;
    padding: 0;
  }
  #search_form {
    top: 46px !important;
    left: auto !important;
    right: 0 !important;
  }
  #search_form input#searchinput {
      width: 220px;
  }
  #search_form td {
    width: auto;
  }
  header .container {
    padding: 15px 25px;
  }  
  nav.main-navigation.horizontal-menu {
      display: inline-block;
      vertical-align: top;
  }
  #SMenu {
    display: block;
    padding: 0;
    margin: 0;
  }
  .slicknav_menu {
    display: none; 
    background: none;
  }

  #menu {
    margin-top: 65px;
    float: right;
  }  
  #menu a {
    color: #1e252b;
  }

  #SMenu li:last-child ul, 
  #SMenu li:nth-last-child(2) ul, 
  #SMenu li.page_205 ul, 
  #SMenu li.page_179 ul {
    left: auto;
    right: 0;
  }

  #SMenu li:last-child ul ul, 
  #SMenu li:nth-last-child(2) ul ul, 
  #SMenu li.page_205 ul ul, 
  #SMenu li.page_179 ul ul {
    left: auto;
    right: 221px;
  }

  #SMenu li ul ul {
    display: none;
  }

  #menu #SMenu > li {
    z-index: 999999;
  }

  #menu #SMenu a {
    text-align: center;
    text-decoration: none; 
    font-size:14px;
    padding: 0 17px 15px;
  }
  #menu #SMenu > li:first-child a {
      margin: 0;
  }
  #menu #SMenu > li:hover > a, 
  #menu #SMenu > li:focus > a, 
  #menu #SMenu > li:active > a {
    color: #df3227;
  }

  #menu #SMenu > li#thispage > a {
    color: #df3227;
  }

  #menu #SMenu li ul a {
    text-transform: none;
    text-align: left;
    margin: 0;
    font-size: 14px;
    padding: 10px 20px;
    background: #f4f4f5;
  }
  #menu #SMenu li ul li:last-child a {
    border: none;
  }
  #menu #SMenu li ul a:hover,
  #menu #SMenu li ul a:active,
  #menu #SMenu li ul a:focus {
    background: #df3227;
    color: #fff;
  }
  .slicknav_menu .slicknav_icon {
  margin-top: 5px; 
  }

  .slicknav_menu .slicknav_icon-bar {
  height: 0.145em !important;
  }
#search {
  display: inline-block;
  vertical-align: top;
  margin-left: 8px;
  position: static;
}  
  .logo {
    top: 14px;
  }

}




@media (min-width: 1199px) {
  #eventsNews .box {
    height: 270px;
    overflow: auto;
  }
  #eventsNews.events-news-fr .box {
     height: 290px;
  }
  #eventsNews.events-news-fr #becomeMember .box {
    height: 268px;
  }
}

@media (min-width: 1100px) {
 .logo p {
  font-size: 18px;
  padding-left: 20px;
  display: inline-block;
 }
}


@media (min-width: 1300px) {
  .logo p {
    font-size: 20px;
  }
}




/* Print
   ========================================================================== */
@media print {
  a:after { 
    content:''; 
  }
  a[href]:after { 
    content: none !important; 
  }
  #main, .body-content {
    margin: 0;
    padding: 0;
  }
  ul.Membership_update_profile_menu, .button, .banner-hero { 
    display: none; 
  }
  .footer {
    text-align: left;
  }
  .home-bottom {
    padding: 0 15px;
  }
}