/* Site presentation retained across the Bootstrap 5 migration.
 * Component behavior and transitions come exclusively from Bootstrap 5.
 */
body { font-size: 14px; line-height: 1.42857143; color: #333; }
h1, h2, h3, h4, h5, h6 { font-family: inherit; font-weight: 500; line-height: 1.1; }
h1, h2, h3 { margin-top: 20px; margin-bottom: 10px; }
h4, h5, h6 { margin-top: 10px; margin-bottom: 10px; }
h1 { font-size: 36px; }
h2 { font-size: 30px; }
h3 { font-size: 24px; }
h4 { font-size: 18px; }
h5 { font-size: 14px; }
h6 { font-size: 12px; }
p, ul, ol { margin-top: 0; margin-bottom: 10px; }
ul, ol { padding-left: 0; }
a { color: #337ab7; text-decoration: none; }
a:hover, a:focus { color: #23527c; text-decoration: underline; }
address { margin-bottom: 20px; font-style: normal; line-height: inherit; }
.container, .container-fluid, .row { --bs-gutter-x: 30px; }
.row { align-items: flex-start; }
.container { max-width: none; }
.row > [class*="col-"] { position: relative; min-height: 1px; }
.img-fluid { display: block; }
.list-inline { margin-left: -5px; }
.list-inline > li { display: inline-block; padding-left: 5px; padding-right: 5px; }
.list-inline-item:not(:last-child) { margin-right: 0; }
.nav { margin-bottom: 0; }
.nav-link { padding: 10px 15px; line-height: 1.42857143; }
.nav-tabs { border-bottom: 1px solid #ddd; }
.nav-tabs .nav-item { margin-bottom: -1px; }
.nav-tabs .nav-link { border-radius: 4px 4px 0 0; margin-right: 2px; }
.navbar-collapse {
  flex-basis: auto;
  padding: 0 15px;
  border-top: 1px solid transparent;
}
.navbar-toggle {
  position: relative;
  float: right;
  padding: 9px 10px;
  margin: 8px 15px 8px 0;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 4px;
}
button.menu_icon { width: 67px; height: 65px; }
button.menu_icon img { width: 45px; height: 45px; padding: 0; }
.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}
.modal { --bs-modal-padding: 15px; --bs-modal-border-radius: 6px; }
.modal-dialog { width: auto; margin: 10px; }
.modal-body { padding: 15px; }
/* Keep dialogs within small viewports without changing the desktop media layout. */
#GalleryModal .modal-dialog, #GalleryModal1 .modal-dialog,
#vmodal1 .modal-dialog, #vmodal2 .modal-dialog, #vmodal3 .modal-dialog,
#vmodal4 .modal-dialog, #vmodal5 .modal-dialog, #cor_video_modal .modal-dialog {
  max-width: calc(100vw - 30px);
}
.carousel-item img { max-width: 100%; }
@media (min-width: 768px) {
  .container { max-width: 750px; }
  .navbar-toggle { display: none; }
  .navbar-collapse, .navbar-collapse.collapse:not(.show) {
    display: block !important;
    height: auto !important;
    border-top: 0;
  }
  .modal-dialog { width: 600px; max-width: calc(100vw - 30px); margin: 30px auto; }
}
@media (min-width: 992px) {
  .container { max-width: 970px; }
  .modal-lg { width: 900px; }
}
@media (min-width: 1200px) {
  .container { max-width: 1170px; }
}
