html,
body {
  padding: 0;
  margin: 0;
  overflow: hidden;
  width: 100vw;
  height: 100vh;
}

/**
 * TABLE LAYOUT
 */

.ttable {
  display: table;
  width: 100%;
}

.trow {
  display: table-row;
}

.trow.headerRow {
	font-weight: bold;
}

.tcell {
  display: table-cell;
}



/**
 * END TABLE LAYOUT
 */




/**
 * FLEXBOX ATTRIBUTES
 */

.displayFlex {
  display: flex;
}

.flexColumn {
  flex-direction: column;
}

.flexColumnReverse {
  flex-direction: row-reverse;
}

.flexRow {
  flex-direction: row;
}

.flexRowReverse {
  flex-direction: row-reverse;
}

.flexFullHeight {
  top: 0;
  bottom: 0;
  height: 100%;
}

.flexFullWidth {
  left: 0;
  right: 0;
  width: 100%;
}

.flexGrow {
  flex: 1 0 0;
}

.flexVerticalMiddle {
  align-items: center;
}

.flexHorizontalCenter {
  justify-content: center;
}

.flexWrap {
  flex-wrap: wrap;
}

.flexLeft {
  justify-content: flex-start;
}

.flexRight {
  justify-content: flex-end;
}


.flexSpaceBetween {
  justify-content: space-between;
}

.positionRelative {
  position: relative;
}


@media screen and (max-width: 600px) {
  .mobileFlexColumn {
    flex-direction: column !important;
  }
}


/**
 * end FLEXBOX ATTRIBUTES
 */




.displayNone {
  display: none;
}

.overflowHidden {
  overflow: hidden;
}

.containerWrapper {
  width: 100%;
  max-width: 1170px;
  margin: auto;
}

.noScroll {
  overflow: hidden;
}

.scroll {
  overflow: auto;
}


/**
 * MARGIN
 */

.containerMargin {
  margin: 10px;
}

.marginLeft {
  margin-left: 10px;
}
.marginRight {
  margin-right: 10px;
}

.marginTop {
  margin-top: 10px;
}

.marginBottom {
  margin-bottom: 10px;
}

.marginVertical {
  margin-top: 10px;
  margin-bottom: 10px;
}

.marginHorizontal {
  margin-left: 10px;
  margin-right: 10px;
}


/**
 * END - MARGIN
 */




/**
 * PADDING
 */

.containerPadding {
  padding: 10px;
}

.paddingLeft {
  padding-left: 10px;
}
.paddingRight {
  padding-right: 10px;
}

.paddingTop {
  padding-top: 10px;
}

.paddingBottom {
  padding-bottom: 10px;
}

.paddingVertical {
  padding-top: 10px;
  padding-bottom: 10px;
}

.paddingHorizontal {
  padding-left: 10px;
  padding-right: 10px;
}

/**
 * END - PADDING
 */




/**
 * TEXT HANDLERS
 */

.textRight {
  justify-content: left;
  text-align: left;
}

.textCenter {
  text-align: center;
}

.textRight {
  justify-content: right;
  text-align: right;
}

.textBold {
	font-weight: bold;
}

/**
 * END - TEXT HANDLERS
 */




.containerBorder {
	border: 1px solid #977d44;
}

img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}

.button {
  padding: 5px 10px;
  background-color: red;
  color: white;
  text-align: center;
  text-decoration: none;
}

.hidden {
  display: none;
}

.button {
  display: inline-block;
  padding: 12px 24px;
  background-color: #4CAF50;
  color: white;
  text-decoration: none;
}