html, body, div, span, applet, object, iframe, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    border: 0;
    margin: 0;
    outline: 0;
    padding: 0;
    vertical-align: baseline;
}

header, section, footer, aside, nav, article, figure, figcaption {
    display: block;
}

html, body {
    font-family: 'Helvetica Neue', serif;
    font-size: 100%;
    min-height: 100%;
    width: 100%
}

hr {
    border: 0;
    height: 1px;
}

.bg-black {
    background-color: #404040;
}

.bg-orange {
    background-color: #ff9d00;
}
a {
    color: #ff9d00;
}

.bg-white {
    background-color: #FCFCFC;
}

.bg-shadow {
    background-color: rgba(32, 32, 32, 0.6);
}

body, h1, h2, h3, h4, h5, h6, p, a {
    font-family: 'Helvetica Neue', serif;
}

h1, h2, h3, h4, h5, h6 {
    clear: both;
    font-weight: 600;
    line-height: 1.4em;
    margin: 0;
    text-transform: uppercase;
    color: #FCFCFC;
}

h1, h2 {
    font-family: 'Helvetica Neue', serif;
}

h1 a, h2 a {
    border-bottom: 0px;
}

h3, h4, h5, h6, p {
    font-family: 'Helvetica Neue', serif;
}

li, span {
    font-family: inherit;
}

h1 {
    font-size: 4em;
}

h2 {
    font-size: 2.6em;
}

h3 {
    font-size: 2.1em;
}

h4 {
    font-size: 1.8em;
}

h5 {
    font-size: 1.6em;
}

h6 {
    font-size: 1.4em;
}

p {
    font-size: 1em;
    letter-spacing: 0.025em;
    margin: 0.5em 0px;
    line-height: 1.4em;
}

ul {
    list-style-type: circle;
}

ul li {
    margin-left: 2em;
}

a {
    border-bottom: 1px solid #ff9d00;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    color: inherit;
    cursor: pointer;
    text-decoration: none;
}

a:hover, a:focus {
    color: #ff9d00;
}

a:visited:hover {
    color: #ff9d00;
}

b, strong {
    font-weight: bold;
}

dfn, cite, em, i {
    font-style: italic;
}

blockquote {
    border-left: 4px solid #ff9d00;
    box-sizing: border-box;
    margin: 0 1.5em;
    padding-left: 20px;
}

.text-black {
    color: #404040;
}

.text-orange {
    color: #ff9d00;
}

.text-white {
    color: #FCFCFC;
}

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

ul li {
    list-style: none;
    margin-left: 1em;
    padding: 10px 0;
}

ul li ul {
    margin-left: 1.5em;
}

ul li ul li {
    margin-left: 2em;
}

#navbar {
    background: #252525;
    box-shadow: 0 1px 1px 1px rgba(37, 37, 37, 0.8);
    -moz-box-shadow: 0 1px 1px 1px rgba(37, 37, 37, 0.8);
    -webkit-box-shadow: 0 1px 1px 1px rgba(37, 37, 37, 0.8);
    display: block;
    height: 50px;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 5;
    transition: all 0.25s ease-in-out;
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
}

#navbar li {
    border-bottom: 1px solid transparent;
    display: inline-block;
    float: left;
    list-style: none;
    margin-left: 7px;
    text-align: center;
    transition: all 0.1s ease-in;
    -moz-transition: all 0.1s ease-in;
    -o-transition: all 0.1s ease-in;
    -webkit-transition: all 0.1s ease-in;
}

#navbar li a {
    color: #FCFCFC;
}

#navbar li:hover {
    border-bottom: 1px dotted #ff9d00;
    transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    -webkit-transform: scale(1.1, 1.1);
}

#navbar li:hover a {
    color: #ff9d00;
}

#navbar #navicon {
    cursor: pointer;
    height: 30px;
    margin: 0 auto;
    overflow: hidden;
    padding: 0;
    position: relative;
    width: 30px;
    z-index: 20;
    transition: width 0.25s ease-out;
    -moz-transition: width 0.25s ease-out;
    -o-transition: width 0.25s ease-out;
    -webkit-transition: width 0.25s ease-out;
}

#navbar #menu_title {
    cursor: pointer;
    margin-top: 10px;
    z-index: 15;
}

#navbar #menu_title img {
    display: inline-block;
    padding: 0px 10px 0px 25px;
    vertical-align: middle;
}

#navbar #menu_title h6 {
    display: inline-block;
    font-family: 'Cuprum', sans-serif;
    vertical-align: middle;
}

#navbar #logo_container {
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

#navbar #logo_container #logo {
    display: block;
    height: 50px;
    margin: 3px auto 0px auto;
    width: 50px;
}

#navbar #emergency_phone_no {
    position: absolute;
    right: 25px;
    top: 8px;
    text-align: right;
}

#nav_menu {
    background: #434343;
    display: none;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 300px;
    z-index: 10;
}

#nav_menu ul li.active {
    height: 300px;
}

#nav_menu ul li {
    border-bottom: 1px solid #FCFCFC;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    height: auto;
    list-style: none;
    margin: 0;
    padding: 10px 0px;
}

#nav_menu ul li a {
    border: 0;
    margin-left: 2em;
}

footer .copy {
    margin: 0;
}

hr {
    height: 2px;
    margin: 40px auto;
    width: 75%;
}

button {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: transparent;
    border: 2px solid #FCFCFC;
    border-radius: 4px;
    color: #FCFCFC;
    text-decoration: underline #ff9d00;
    cursor: pointer;
    font-size: 100%;
    outline: 0;
    padding: 20px 40px;
    transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    -webkit-transition: all 0.15s ease-in-out;
}

button:hover, button:focus, button:active {
    background: #FCFCFC;
    color: #ff9d00;
}

.btn-orange {
    border-color: #ff9d00;
    color: #ff9d00;
}

.btn-orange:hover, .btn-orange:focus, .btn-orange:active {
    background: #ff9d00;
    color: #FCFCFC;
}

.clearfix {
    *zoom: 1;
}

.clearfix::before, .clearfix::after {
    content: " ";
    display: table;
}

.clearfix::after {
    clear: both;
}

.no-float {
    float: none;
}

.pull-right {
    float: right;
}

.pad-xs {
    padding: 10px;
}

.pad-sm {
    padding: 20px;
}

.pad-md {
    padding: 40px;
}

.pad-lg {
    padding: 80px;
}

.pad-xl {
    padding: 120px;
}

.pad-vert-xs {
    padding: 10px 0px;
}

.pad-vert-sm {
    padding: 20px 0px;
}

.pad-vert-md {
    padding: 40px 0px;
}

.pad-vert-lg {
    padding: 80px 0px;
}

.pad-vert-xl {
    padding: 120px 0px;
}

.pad-vert-xxl {
    padding: 160px 0px;
}

.pad-horiz-xs {
    padding: 0px 10px;
}

.pad-horiz-xs {
    padding: 0px 10px;
}

.pad-horiz-sm {
    padding: 0px 20px;
}

.pad-horiz-md {
    padding: 0px 40px;
}

.pad-horiz-lg {
    padding: 0px 80px;
}

.pad-horiz-xl {
    padding: 0px 120px;
}

.pad-top-xs {
    padding-top: 10px;
}

.pad-top-sm {
    padding-top: 20px;
}

.pad-top-md {
    padding-top: 40px;
}

.pad-top-lg {
    padding-top: 80px;
}

.pad-top-xl {
    padding-top: 120px;
}

.pad-right-xs {
    padding-right: 10px;
}

.pad-right-sm {
    padding-right: 20px;
}

.pad-right-md {
    padding-right: 40px;
}

.pad-right-lg {
    padding-right: 80px;
}

.pad-right-xl {
    padding-right: 120px;
}

.pad-bot-xs {
    padding-bottom: 10px;
}

.pad-bot-sm {
    padding-bottom: 20px;
}

.pad-bot-md {
    padding-bottom: 40px;
}

.pad-bot-lg {
    padding-bottom: 80px;
}

.pad-bot-xl {
    padding-bottom: 120px;
}

.pad-left-xs {
    padding-left: 10px;
}

.pad-left-sm {
    padding-left: 20px;
}

.pad-left-md {
    padding-left: 40px;
}

.pad-left-lg {
    padding-left: 80px;
}

.pad-left-xl {
    padding-left: 120px;
}

#header {
    background-attachment: fixed;
    background-image: url('../img/bg-header-forge.jpg');
    background-repeat: no-repeat;
    background-size: cover;
}
#header .pad-vert-xxl {
    height: 320px;
}

#about p {
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
}

#latest {
    background-image: url('../img/bg-download-fire.jpg');
    border-bottom: 15px inset rgba(32, 32, 32, 0.4);
    border-top: 15px inset rgba(32, 32, 32, 0.4);
    box-sizing: border-box;
    transition: all 0.05s ease-in-out;
    -moz-transition: all 0.05s ease-in-out;
    -o-transition: all 0.05s ease-in-out;
    -webkit-transition: all 0.05s ease-in-out;
}

#release button {
    margin-bottom: 5px;
}
#release ul {
    padding-top: 15px;
}
#release li {
    font-size: .8em;
    padding: 0;
}
#news li {
    color: white;
}

#development {
    background: url('../img/bg-developers-fire.jpg');
    background-position: center center;
    background-size: cover;
}

#development p {
    margin-left: auto;
    margin-right: auto;
    max-width: 800px !important;
}

#development ul {
    width: 300px;
}

#apache .button-container {
    max-width: 700px;
}

.icon {
    display: block;
    margin: 15px auto 0px auto;
}

.tm{
  font-size: small;
  vertical-align: 40%;
}

a {
          color: white;

}

.bg-white a{
      color: #ff9d00;
}

.logo-proto {
    margin: 30px;
    list-style: none;
    display: block;
    margin-left: auto;
    margin-right: auto;
}


.post-info {
    margin: 0 auto;
    width: 200px;
    width: intrinsic;           /* Safari/WebKit uses a non-standard name */
    width: -moz-max-content;    /* Firefox/Gecko */
    width: -webkit-max-content; /* Chrome */
}