
/**
 * DOCUMENT SETUP
 */

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

* {
  margin: 0;
}

@media (pointer: coarse) {
  *:focus {
    outline: none;
  }
}

html,
body {
  height: 100%;
}

header,
nav, 
footer {
  width: 100%;
}

body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

img {
  max-width: 100%;
  border: 0;
}

h1,
h2,
h3,
h4,
h5 {
  margin-top: 0;
  margin-bottom: 10px;
  line-height: normal;
  -webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
p,
dl,
hr,
ol,
ul,
pre,
table,
address,
fieldset {
  margin-bottom: 10px;
}

p {
  margin-bottom: 10px;
}

strong {
  font-weight: bold;
}

em {
  font-style: italic;
}

pre {
  font-size: 13px;
  font-weight: bold;
}

dt {
  font-weight: bold;
}

ol {
  padding: 0;
  margin-left: 0;
  margin-bottom: 20px;
  text-indent: 0;
  list-style-position: inside;
}

ul {
  padding: 0;
  margin: 0 0 20px 0;
  list-style: disc inside;
}

hr {
  border: none;
  display: block;
  height: 1px;
  margin-top: 20px;
  width: 100%;
}




form {
  margin-bottom: 0;
}

.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
  width: 100%;
  max-width: 100%;
  border: none;
  -webkit-transition: background .5s ease,color .5s ease;
  -moz-transition: background .5s ease,color .5s ease;
  -o-transition: background .5s ease,color .5s ease;
  transition: background .5s ease,color .5s ease;
  -webkit-appearance: none;
  display: inline-block;
  font-size: 13px;
  font-weight: normal;
  text-decoration: none;
  cursor: pointer;
  margin-bottom: 15px;
  line-height: normal;
  height: 50px;
  letter-spacing: 1px;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
}

.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {

}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}


input[type="text"],
input[type="password"],
input[type="email"],
input[type="phone"],
textarea,
select {
  border: 1px solid #ccc;
  height: 44px;
  outline: none;
  margin: 0;
  width: 100%;
  max-width: 100%;
  display: block;
  margin-bottom: 20px;
}


select {
  padding: 0 9px;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
textarea:focus {
  color: #444;
  -moz-box-shadow: 0 0 3px rgba(0,0,0,.2);
  -webkit-box-shadow: 0 0 3px rgba(0,0,0,.2);
  box-shadow:  0 0 3px rgba(0,0,0,.2);
}

label,
legend {
  display: block;
  font-weight: bold;
  font-size: 13px;
  margin-bottom: 5px;
}

input[type="checkbox"] {
  display: inline;
}

label span,
legend span {
  font-weight: normal;
  font-size: 13px;
  color: #444;
}

::-webkit-input-placeholder { /* WebKit browsers */
  color: #aaa;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
  color: #aaa;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
  color: #aaa;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
  color: #aaa;
}


input[type=text],
input[type=password],
input[type=email],
input[type=url],
input[type=number] {
  width: 100%;
  height: 50px;
  margin: 0px;
  margin-bottom: 20px;
  max-width: 100%;
  text-indent: 10px;
  outline: none;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
}

textarea {
  width: 100%;
  background: #fff;
  border: 1px solid #000;
  height: 200px;
  margin: 0 0 20px 0;
  max-width: 100%;
  padding: 10px;
  outline: none;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  min-height: 60px;
  min-width: 300px;
}


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

a
a:active,
a:hover, 
a:visited, 
a:link {
  color: #000;
  text-decoration: none;
}


/**
 * END: DOCUMENT SETUP
 */




/**
 * 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: column-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;
}

.flexVerticalBottom {
  align-items: end;
}

.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
 */

