body {
  font: 400 15px "Open Sans",Lato, sans-serif;
  line-height: 1.7em;
  color: #555; /*#818181;*/
  padding-top: 90px;
  overflow-x: hidden;
}
.jumbotron {
  background-color: #f9f9f9;
  height: 90px; overflow: hidden;
  padding: 20px 0 !important;
  position: fixed;
  top: 0; left: 0;
  width: 100%;
  z-index: 400;
}
a {color: #378f3b}
.content {
  min-height: 80vh;
}
.content h3, .content h4 { font-weight: bold; padding-top: 20px; padding-bottom: 10px}
.wrapper {
  width: 98%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 4px;
 }
@media screen and (max-width: 767px) {
  .row {margin-left: 0; margin-right: 0 }
}

/* Tables */
.content table.table { margin-bottom: 20px; border-bottom: solid 1px #ddd !important }
th,td { vertical-align: top; padding: 2px 3px }
#result-table-container .td-hidden { display: none }
@media screen and (max-width: 767px) {
  #result-table-container td { display: block }
  #result-table-container thead { display: none !important }
  #result-table-container tr { before: ' '; display: block; padding-bottom: 30px !important}
  #result-table-container .td-hidden { display: inline-block; font-weight: bold; text-transform: uppercase }
}

/* Cards */
.card-deck { margin-bottom: 20px }
.card-deck.mx-auto { width: 600px; margin-top: 20px; margin-bottom: 20px }
.card-right { max-width: 320px; float: right; margin-left: 20px; margin-bottom: 20px; }
.card-left { max-width: 320px; float: left; margin-right: 20px; margin-bottom: 20px; }
.card.mx-auto { width: 800px; max-width: 800px; margin-top: 20px; margin-bottom: 20px }
.card.idle img{ max-height: 350px; overflow: hidden } 
.card-img-top { opacity: 1; transition: .3s ease; backface-visibility: hidden; }
.card-img-top:hover { opacity: 0.6; }
.card-title { font-weight:bold; color:#fff; padding-top: 0 !important; padding-bottom: 0 !important; text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000; opacity: 1 !important}
.card-text {font-style: italic}
#cart-panel .list-group-item.cart_request { line-height: 22px !important; padding: 8px 14px !important }
.w-33 { width: 33% }
.card-img-overlay { opacity: 1; transition: .3s ease; backface-visibility: hidden;}
.card-img-overlay:hover {  background-color:rgb(81,81,81,0.4); opacity: 0.9; }

@media screen and (max-width: 991px) {
  .card-columns { column-count: 2 !important }
  .card-columns .card { display: inline-block; width: 100% !important; position: relative }
}
@media screen and (max-width: 767px) {
  .card.mx-auto, card-deck, .card-deck.mx-auto { width: 100% !important; max-width: 100% !important; }
  .card-right, .card-left { float: none !important; width: 100% !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important;}
  .card-columns { column-count: 1 !important }
  .w-33 { width: 50% !important }
  .w-50 { width: 100% !important } 
} 
@media screen and (max-width: 575px) {
  .w-50, .w-33 { width: 100% !important }
} 

/* Modal facilities */
.modal { display: none; position: fixed; z-index: 1040; padding-top: 60px; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0,0,0,0.4); }
.img-modal {background-color: rgba(0,0,0,0.9) !important;}
.closea { position: absolute;top: 20px;right: 20px; color: #fff !important; font-size: 50px;font-weight: bold;transition: 0.3s; cursor: pointer;}
.closea:hover,.closea:focus { color: #fff;text-decoration: none;}
.img-content { padding: 0 6px} 
.img-viewer-text { color: #fff; }
#img-viewer-slide { width: 100%; height: 100%;}

/* Gallery */
.gallery-item { width: 25%; padding: 8px; min-height: 258px; }
.gallery-item a { width: 100%; height: 100%; display: block; background-color: #f9f9f9; padding: 6px; text-align: left !important }
@media screen and (max-width: 992px) {
  .gallery-item { width: 50%; padding: 8px; min-height: 200px; }
}
@media screen and (max-width: 576px) {
  .gallery-item { width: 100%; padding: 8px; min-height: 278px; }
}
.list-group-container { height: 24vh; min-height: 250px; overflow-y: auto; border-top: solid 1px #ddd; border-bottom: solid 1px #ddd; background-color: #f8f9fa }
.list-group-small .list-group-item { padding: 4px 7px !important; font-size: 13px !important; cursor: pointer; }
.list-group-small .list-group-item.active:hover{ background-color: #03a9f4; color: white }

.top-main-title {
  display: inline-block;
  font-size: 28px; font-weight: bold; margin-bottom: 0;
  letter-spacing: 2px; 
  color:#4ec653;
  background-image: url(/ibbr/img/logos/ibbr-logo-thumb.png); background-position: center left; background-repeat: no-repeat;
  background-size: 50px 50px;
  padding-left: 70px; 
  text-shadow: -1px -1px 0 green, 1px -1px 0 green, -1px 1px 0 green, 1px 1px 0 green; /*, 1px 2px 10px #bbb;*/
  cursor:pointer;
}
.bottom-main-title {
  font-weight:normal; font-size: 22px; letter-spacing: 0; color:#595959; text-shadow: 0 0 0 #000000
}
@media screen and (max-width: 480px) {
  .top-main-title { font-size: 20px; padding-left: 0px !important; background: transparent !important }
  .bottom-main-title { font-size: 16px }
}
.mgd { color:#5ade60; text-shadow: -1px -1px 0 green, 1px -1px 0 green, -1px 1px 0 green, 1px 1px 0 green; /*, 1px 2px 10px #bbb;*/}

/* Carousel */
.carousel-inner>.carousel-item { height: 400px !important; overflow: hidden !important; }
.carousel-inner>.carousel-item>img { width: 100%; height: 400px !important; object-fit: cover !important;}
.carousel-caption { right: 0 !important; left: 0 !important; bottom: 0 !important; background: rgb(0, 0, 0);background: rgba(0, 0, 0, 0.5); padding-top: 0 !important; padding-bottom: 10px !important }
.carousel-caption>p { margin-bottom: 0 !important; padding-bottom: 0 !important; }
.carousel-caption>h3  { margin-top: 0 !important; padding-top: 10px !important; }
.carousel-indicators { top: 10px !important }

.carousel-container { position: relative }
.carousel-overlay { position: absolute; bottom: 0; width: 100%; background: rgba(0, 0, 0, 0.3); color: #fff}

/* Scroll Bars */
::-webkit-scrollbar { width: 11px; }
::-webkit-scrollbar-track { background: #f1f1f1;}
::-webkit-scrollbar-thumb { background: #ccc; }
::-webkit-scrollbar-thumb:hover { background: #888; }

select { border: solid 1px #ddd }
.bold { font-weight: bold }
.large {font-size: 108%}
.nopad {padding: 0; margin: 0}

.cursor {cursor: pointer !important}
.list-group-item label { display: block }
.list-group-item:hover { background-color: #f8f9fa; }
.list-group-item.alert-warning { background-color: #fff3cd; }
.well { background-color: #f9f9f9 !important; border: solid 1px #f9f9f9 !important }
.list-group-item h4 { font-weight: bold !important }
.caption { display: block; font-style: italic; line-height: 16px !important; font-size: 12px }
.error { color: red; font-size: 14px; }
.d-3 .flex-fill {width: 33% !important; padding: 6px; height: 120px !important; overflow: hidden; }
.btn-full {display: block; height: 100%; vertical-align: middle; margin: auto 0; padding-top: 10px }
.legend { font-size: 88% }
.ellipse {white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}

#waiter { z-index: 65537; position:fixed; top: calc(50% - 25px); left: calc(50% - 25px); border: 10px solid #c0e2ff; border-top: 10px solid #3250e4;border-radius: 50%; width: 50px; height: 50px; animation: spin 1s linear infinite; -webkit-animation: spin 1s linear infinite;}
@-webkit-keyframes spin { 0% { -webkit-transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); }}
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); }}

/* Lateral Menu */
#layered { position: fixed; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(0,0,0,0.4); z-index:1002; }
.overlay {position: fixed; z-index: 1003;right: 0;top: 0;bottom:0;width: 0;min-height: 100%;max-height: none; transition: 0.5s;padding-bottom: 60px;background-color: #f8f9fa;}
.overlay .list-group-item { text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 8px 10px }
.overlay-content { top: 2%;width: 100%;text-align: left;margin-top: 50px; margin-bottom: 20px; padding: 0 20px; }
.overlay-content h3 { font-size: 20px; color: #595959; text-align: left !important }
.overlay .closebtn { display: block; color: #545454 !important; text-decoration: none; }

.rc-anchor-light.rc-anchor-normal,
.g-recaptcha>div { border: solid 1px #f5f5f5 !important; background: #f5f5f5 !important; margin: 0 auto !important; cursor: pointer !important }