
html {
  box-sizing: border-box;
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: transparent;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

footer, header, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-weight: normal;
  line-height: 1.5;
}

a {
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:hover {
  text-decoration: underline;
}

img {
  vertical-align: middle;
  border-style: none;
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

a {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

table {
  border-collapse: collapse;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    margin-bottom: 0.5rem;
    font-family: inherit;
    font-weight: 500;
    line-height: 1.1;
    color: inherit;
}

th {
  text-align: left;
}

.col-md-4, .col-md-6, .col-md-8  {
  position: relative;
  width: 100%;
  min-height: 1px;
}

.col-md-4, .col-md-6, .col-md-8 {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

@media (min-width: 768px) {
  .col-md-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
}

/* Padding utilities */
.pt-20 {
  padding-top: 2rem !important;
}

.pt-30 {
  padding-top: 3rem !important;
}

.pt-40 {
  padding-top: 4rem !important;
}

.pt-50 {
  padding-top: 5rem !important;
}

.pb-20 {
  padding-bottom: 2rem !important;
}

.pb-30 {
  padding-bottom: 3rem !important;
}

.pb-50 {
  padding-bottom: 5rem !important;
}

.pb-70 {
  padding-bottom: 7rem !important;
}

.pb-80 {
  padding-bottom: 8rem !important;
}

/* Text alignment */
.text-left {
  text-align: left !important;
}

.text-center {
  text-align: center !important;
}
