html, body {
  height: 100%;
}

body {
  margin: 0;
  padding: 0;
  /*font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;*/
  font-family:"Lucida Sans Unicode", "Lucida Grande", sans-serif;
  font-size:0.875em;
  line-height: 1.5;
  color:#333;
}

img {
  border:none;
}

p, div.p {
  margin-bottom: 1.5em;
}

h1 {
  font-size: 1.8em;
  color:#000;
  margin-bottom:1em;
}

h2 {
  font-size: 1.125em;
  color:#000;
  line-height:2em;
}

h3 {
  font-size: 1.5em;
  line-height: 1;
}

legend {
  font-size:1.125em;
  line-height:2em;
  margin-bottom:0.5em;
}

form li {
  margin-bottom: .5em;
  position: relative;
}

input, select, textarea {
  font-size: 1em;
}

textarea {
  font-size: 1em;
  /*font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;*/
  font-family:"Lucida Sans Unicode", "Lucida Grande", sans-serif;
}

form li.helper label, form li.killQuestion label {
  display: inline;
}

label {
  /*display: block;*/
}

.label:after {
  content: ":";
}

.nowrap { white-space:nowrap; }


/* links */

a:link, a:visited, a:active {
  color:#003e7e;
  text-decoration:none;
}

a:hover {
  text-decoration:underline;
}

/* floating columns */
.column-25 {
  float:left;
  width:24.99%;
}

.column-33 {
  float:left;
  width:33.32%;
}
.column-45 {
  float:left;
  width:45.99%;
}
.column-50 {
  float:left;
  width:49.99%;
}

.column-55 {
  float:left;
  width:54.01%;
}

.column-66 {
  float:left;
  width:66.65%;
}

.column-75 {
  float:left;
  width:74.99%;
}

a.pdf-icon {
  background:url(../img/pdf.png) no-repeat right center;
  padding-right:20px;
}

/* progress meter */

ul.progress-horizontal {
  margin:0 0 2.5em;
  padding:0;
}

ul.progress-horizontal li {
  margin:0;
  padding:0;
  float:left;
  list-style:none;
}

ul.progress-horizontal li div {
  font-size: 0.928em;
  padding: 0 1.0em 35px 1.5em;
  text-shadow: 0 -1px 1px rgba(204,204,204,0.25);
  color: #333;
  cursor:default;
  outline:none;
  background:url(../img/progress_h_center_grey.png) no-repeat center bottom;
}

ul.progress-horizontal li.first div {
  background:url(../img/progress_h_left_grey.png) no-repeat center bottom;
}

ul.progress-horizontal li.last div {
  background:url(../img/progress_h_right_grey.png) no-repeat center bottom;
}

ul.progress-horizontal li.current div {
  background:url(../img/progress_h_center_blue.png) no-repeat center bottom;
}

ul.progress-horizontal li.first.current div {
  background:url(../img/progress_h_left_blue.png) no-repeat center bottom;
}

ul.progress-horizontal li.last.current div {
  background:url(../img/progress_h_right_blue.png) no-repeat center bottom;
}

ul.default li {
  list-style:disc;
  list-style-position:outside;
  margin:0 0 0.5em 2em;
}


/* buttons */
.buttonContainer {
  margin-top: 2em;
}

.buttonContainer li {
  float: left;
  margin-right: 1em;
  clear:none !important;
  width:auto !important;
}

.buttonContainer li .primary {
  margin-right:4em;
}

.button, a.button {
  background-color: #0559af;
  font-size: 0.928em;
  border:0;
  -moz-border-radius: .4em;
  -webkit-border-radius: .4em;
  border-radius: .4em;
  padding: .35em .5em;
  -moz-box-shadow: 0 1px 3px rgba(0,0,0,0.5);
  -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.5);
  text-shadow: 0 -1px 1px rgba(0,0,0,0.25);
  border-bottom: 1px solid rgba(0,0,0,0.25);
  text-decoration: none;
  color: #fff;
  font-weight:bold;
  cursor:pointer;
  font-family:"Lucida Sans Unicode", "Lucida Grande", sans-serif;
}

a.button {
  display:inline-block;
}

li > .button, div > .button, p > .button, td > .button { /*ignored by IE6 */
  background-image:url(../img/alert-overlay.png);
  background-repeat:repeat-x;
}

.button:hover {
  background-color: #0777e9;
}

.button.primary {
  background-color: #056728;
}

.button.primary:hover {
  background-color: #219443;
}

.button.table, .button.edit {
  font-size: .7em;
}

/* Headers / Footers */
.body-header {
  height:31px;
  line-height:31px;
  background:url(../img/body_header.png) repeat-x 0 0;
}

.body-footer {
  height:31px;
  line-height:31px;
  background:url(../img/body_footer.png) repeat-x 0 0;
  text-align: center;
}

.body-footer, .push {
  height: 31px; /* .push must be the same height as .footer */
}

.body-footer .inner {
  margin:0 auto;
  width: 970px;
  font-size: .857em;
}

.body-footer .right {
  float:right;
}

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

.wrapper {
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin: 0 auto -31px; /* the bottom margin is the negative value of the footer's height */
}

.content-header, .content-center, .content-footer, .body-header-content {
  width:970px;
  margin:0 auto;
  text-align:left;
}

.content-header {
  background:url(../img/content_header.png) no-repeat 0 19px;
  margin-top:1.5em;
}

.content-header .service {
  width:275px;
  height:36px;
  float:right;
  margin:40px -7px 0 0;
  background:url(../img/content_header_label.png) no-repeat 0 0;
}

.content-header h1 {
  background:url(../img/app_icon_generic.png) no-repeat 0 0;
  padding: 0 0 0 160px;
  height:108px;
  line-height:108px;
  margin:0 1.5em;
  color:#003e7e;
  font-size:2em;
}


.content-header h1.app-chl {
  background: url(../img/DPS-logo_ltc.svg) bottom left no-repeat;
  background-size: 150px 150px;
  line-height: normal;
  height: 5.75em;
}

.content-header h1.app-chl span {
  font-size: 0.5em;
  display: block;
  padding-top: 64px;
  margin-bottom: -5px;
}

.content-footer {
  height:15px;
  line-height:15px;
  background:url(../img/content_footer.png) no-repeat 0 0;
  margin-bottom:1.5em;
}

.content-center {
  background:url(../img/content_bg.png) repeat-y 0 0;
  padding:20px 35px 30px 35px; /* Needs to add up to 1045px width */
  width:900px;
}

.content-right {
  float:right;
  width:18em;
  min-height:30em;
}

.content-center .rightside {
  float:right;
  width: 223px;
}

.rightside + .leftside {
  float:left;
  width: 662px;
  margin-right:14px;
}

.content-bottom {
  clear:both;
  padding:1px 0;
  position:relative;
}

.content-bottom a.txgovlink {
  float:right;
}

.content-bottom .support {
  color:#666;
  font-size:0.857em;
  position:absolute;
  bottom:0;
}

/* Tooltip */
.splain {
  position: relative;
  display: inline-block;
  height: 16px;
  width: 13px;
  text-indent: -9999px;
  background: url('../img/splain.png') no-repeat left 2px;
}

.tooltip {
  position: absolute;
  left: -35px;
  bottom: 28px;
  padding: 6px;
  width: 15em;
  text-indent: 0;
  font-weight: normal;
  font-size: 1em;
  border: 1px solid rgb(204,204,204);
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  text-shadow: none;
  background: url('../img/tooltip.gif') rgb(255,255,255) repeat-x bottom left;
}

.tooltip .tail {
  position: absolute;
  bottom: -13px;
  left: 32px;
  width: 16px;
  height: 14px;
  background: url('../img/tooltipTail.png') no-repeat left bottom;
}

.tooltip .txt {
  padding: 10px;
  color: rgb(0,0,0);
  background: rgb(255,255,255);
}

/* Generic layout styles */

ul.list-a li {
  margin-bottom:0.5em;
}

/* Generic Box Style A - blue gradient */
.box-a { }

.box-a-header { }

.box-a-content {
  background: #fff url(../img/box_a_bg.png) repeat-x left top;
  margin-bottom:1.5em;
  padding:1em;
}

.box-a-content  p {
    margin-bottom:0;
}

/* Generic Box Style B - no bg, just padding */
.box-b { }

.box-b-header { }

.box-b-content {
  padding-left:1.5em;
  padding-bottom:1.5em;
}

/* Sidebar Box C Stlying with shade - 223 pixels wide */
.box-c {
  width: 223px;
  margin-bottom:2em;
}

.box-c-header {
  background:url(../img/box_c_header.png) no-repeat 0 0;
  padding:6px 6px 1px 6px;
}

.box-c-header h2 {
  background:url(../img/box_c_header_title.png) repeat-x 0 0;
  height:31px;
  line-height:31p;
  margin:0;
  padding:0 0 0 0.75em;
  color:#000;
  font-weight:normal;
}

.box-c-content {
  padding:0.75em 1.4em;
  background:url(../img/box_c_bg.png) repeat-y 0 0;
}

.box-c-footer {
  background:url(../img/box_c_footer.png) no-repeat 0 0;
  height:5px;
}


/* Form Styles */

form.default span.required {
  color:#F00;
  padding-left:0.3em;
  float:none;
  margin:0;
  white-space:normal;
  width:auto;
}
#email-message {
    margin-top: 0.2em;
    margin-left: 18em;
    max-width: 28em;
}

form.default li {
  float: left;
  clear: left;
  width: 100%;
  padding-bottom: 0.5em;
}

form.default li li {
  float:none;
}
form.default label {
  float: left;
  width: 17em;
  margin-right: 1em;
}

form.default li fieldset legend {
  color: #333;
  padding:0;
  margin:0;
  width: 17em;
  margin-right: 1em;
  float:left;
}

form.default .history-item li fieldset legend {
  width:auto;
}


form.default li fieldset legend span {
  /*width: 12em;   */
  margin-right: 1em;
  /*white-space:normal;
  float:left;*/
}

form.default li fieldset ul {
  /*margin-left:13em;
  margin-top:-2em;*/
  margin-top:.2em;
  width:auto;
}

form.default li.conditional label {
  float:none;
  margin:0;
  position:static;
  width:auto;
  padding-right:1em;
}

form.default .affirm label, form.default label.auto {
  width:auto;
}

form.default input.type-text,
form.default input.type-text-small,
form.default input.textarea,
form.default input.type-select {
  border:1px solid #ccc;
  padding:0.2em;
  color:#333;
  width:13em;
  background:#fff;
}

form.default select {
  color:#333;
  width:13em;
}

form.default input.field-small, form.default select.field-small {
  width:6em;
}

form.default input.field-medium, form.default select.field-medium {
  width:8em;
}

form.default input.field-xsmall, form.default select.field-xsmall {
  width:2em;
}

form.default input.state {
  width:2em;
  text-transform:uppercase;
}

form.default input.type-select {
  background: #fff url(../img/select_arrow.png) no-repeat right center;
  cursor:pointer;
}

form.default textarea {
  border:1px solid #ccc;
  padding:0.2em;
  color:#333;
  width:25em;
  height:7em;
  background:#fff;
}

div.error { /* form server side validation */
  margin:0 0 2em;
  border:2px solid #F00;
  color:#F00;
  padding:1em;
  width:70%;
}

div.error h2 {
  color:#F00;
}

div.error ul li {
  list-style:disc;
  list-style-position:inside;
  float:none;
  margin:auto;
}

div.notice {
  margin-bottom:1em;
}

.ajax-indicator {
  padding-left:30px;
  color:#999;
  background:url(../img/ajax_indicator.gif) no-repeat 0.75em center;
  font-size:0.75em;
}

/* Legend Style */

fieldset.subsection {
  background-color:#e6f7fd;
  padding:1em 1em 2em;
  margin:0;
  /*width:70%;*/
  position: relative;
}

fieldset.subsection .subsection-legend {
  padding:0;
  color: #003E7E;
  font-size:1.428em;
  width: 100%;
  display: block;
}

fieldset.subsection .subsection-legend span {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  display: block;
}

fieldset.subsection .subsection-content {
  padding-top:4em;
}

fieldset.subsection .error {
  width:90%;
  border:none;
  padding-top:0;
}

fieldset.history-item {
  margin-bottom:3em;
}

fieldset.history-item > legend {
  font-size:1.25em;
}

.address {
  position:relative;
}

.address-suggestion {
  position:absolute;
  z-index:1;
  right:0;
  padding:1em;
  background-color:#e6f7fd;
  width:43%;
}

form.default .address-suggestion li fieldset ul {
  margin:0;
}

.address-suggestion legend {
  color: #003E7E;
}

form.default .address-suggestion fieldset fieldset legend {
  width:auto;
}

/* Table Styles */

table caption {
  display:none;
}


/* Affirmation Pages */

#affidavit {
  /*height:20em;
  overflow:auto;
  border:1px solid #CCC;
  position: relative;*/
  padding:0.5em;
}

.license-options {
  margin:1.5em 0;
}

.affirm {
  margin: 1.5em 0;
  clear: both;
}

.affirm .txt {
  width: 90%;
  float: right;
}

.signature {
  width: 10%;
  float: left;
  vertical-align: top;
}

.pay .txt {
  /*width: 98%;*/
}

.pay .signature {
  width: 2%;
}

body#pay div#affirmation label, body#affidavitName div#affirmation label {
    float: none;
    margin-left: 1em;
}
body#pay div#affirmation p, body#affidavitName div#affirmation p {
    margin-left: 2.3em;
}

.affidavit .signature label {
  display: inline;
  margin-left: .5em;
}

.affidavit .buttonContainer {
  clear: both;
}

.review div.edit-section {
  position: relative;
  border-bottom:1px solid #CCCCCC;
  margin-bottom:2em;
}

.review-list span.label {
  float:left;
  width:8em;
}

.review .edit {
  position: absolute;
  top: 0.2em;
  right:15em;
}

.condA li {
  float: left;
  margin-right: 2em;
}

.clearfix:after, .columns:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix {
  zoom:1;
}

.hidden {
  display:none;
}

.altFlow {
  margin-top: 3em;
}

table {
  border: none;
  margin-bottom: 2em;
  vertical-align: top;
  border-collapse: separate;
  border-spacing: 0;
  width:100%;
}

table thead th {
  background: #0559AF;
  color:#FFF;
}

table th, table td {
  border-bottom:1px solid #fff;
  font-size:0.857em;
  padding: .5em .5em;
}

table td {
  background: #E6F7FD;
}

table tr.employer th.employer {
  width:20%;
}

table tr.employer th.street {
  width:20%;
}

table tr.employer th.city {
  width:15%;
}

table tr.employer th.state {
  width:8%;
}

table tr.employer th.zip {
  width:8%;
}

table tr.employer th.county {
  width:8%;
}

table tr.employer th.date {
  width:21%;
}


table tr.residence th.street {
  width:28%;
}

table tr.residence th.city {
  width:20%;
}

table tr.residence th.state {
  width:10%;
}

table tr.residence th.zip {
  width:10%;
}

table tr.residence th.county {
  width:10%;
}

table tr.residence th.date {
  width:22%;
}

#specialCondTable .title {
  width: 8em;
}

#specialCondTable label {
  font-weight: bold;
}

#specialCondTable .selected td {
  background: rgb(255, 255, 230);
}

#specialCondTable td ul{
  list-style: disc outside;
  margin-left: 1.1em;
}
#specialCondTable td ul ol{
  list-style: decimal;
  margin-left: 2em;
}
#specialCondTable td ul ol li{
  display: list-item;
}

li legend {
  font-size: 1em;
}

li li {
  display: inline;
}

li li label {
  position: absolute;
  left: -9999px;
}

li .hint {
  /*position: absolute;
  left: 14.5em;*/
  font-size:77%;
  color: rgb(95, 95, 95);
}

/* login page */
#login #renew {
  border-left: 1px solid rgb(175, 175, 175);
  padding-left: 2em;
}

#renew-trigger {
  display: none;
}

.login .nonrefundable {
  font-weight:bold;
}

.pending {
  font-size: 1.25em;
}

.pending .status {
  background: rgb(255, 255, 195);
  color: rgba(0, 0, 0, .85);
  font-weight: bold;
  padding: .2em .5em;
}

#reqDocs {
  width: 30em;
  color: rgba(0, 0, 0)
}

#reqDocs li, .statusGraphic1, .statusGraphic  {
  padding: .5em 2em;
}

#reqDocs .completed, .statusGraphic2 {
  background: rgb(195, 255, 195) url('../img/accepted.png') no-repeat 5px center;
  padding: .5em 36px;
}

#reqDocs .rejected, .statusGraphic3 {
  background: rgb(255, 195, 195) url('../img/rejected.png') no-repeat 5px center;
  padding: .5em 36px;
}

#reqDocs .notReceived, .statusGraphic4 {
  background: rgb(255, 255, 195) url('../img/notReceived.png') no-repeat 5px center;
  padding: .5em 36px;
}

#reqDocs p {
  margin: 0;
}

#landing h2 {
  clear: both;
}

/* Choose Service */
#apply ul, #changeInfo ul{
  list-style: disc outside none;
  margin-left: 1.1em;
}

/* Receipt Page */
#fingerprintSubmissions ul{
  list-style: disc outside none;
  margin-left: 1em;
}

#fingerprintSubmissions ol{
  list-style: decimal outside none;
  margin-left: 2em;
}

#fingerprintSubmissions ol li, #fingerprintSubmissions ul li{
  display:  list-item;
  padding: .5em 0;
}

.past.q, .past.a {
  display: inline;
}

.past.a {
  margin-left: 1em;
}
.receipt-screen-area {
  height: 100%;
}
.receipt-screen-area h2.receipt-section {
  font-size:1.5em;
}

#receipt #steps {
  list-style-type: decimal;
  list-style-position:outside;
  margin-left:3em;
}

#receipt #steps li {
  margin-bottom:1em;
}

.receipt-action {
  text-align: center;
  margin:1.5em 0 3em;
}

.print-page {
  display:none;
}

/* Autocomplete */

.ac_results {
  padding: 0px;
  border: 1px solid black;
  background-color: white;
  overflow: hidden;
  z-index: 99999;
}

.ac_results ul {
  width: 100%;
  list-style-position: outside;
  list-style: none;
  padding: 0;
  margin: 0;
}

.ac_results li {
  margin: 0px;
  padding: 2px 5px;
  cursor: default;
  display: block;
  /*
  if width will be 100% horizontal scrollbar will apear
  when scroll mode will be used
  */
  /*width: 100%;*/
  font: menu;
  font-size: 12px;
  /*
  it is very important, if line-height not setted or setted
  in relative units scroll will be broken in firefox
  */
  line-height: 16px;
  overflow: hidden;
}

.ac_results li span {
  display:none;
}

.ac_loading {
  background: white url('indicator.gif') right center no-repeat;
}

.ac_odd {
  background-color: #eee;
}

.ac_over {
  background-color: #0A246A;
  color: white;
}
/****************************************************************************
    Body Footer:

    #wrapper should be whatever element is sybling to .footer and has las-child of .push

****************************************************************************/

.footer {
  background-color: #e6e6ef;
  color: #333;
}
.footer_left {
  float: left;
}
.footer_right {
  float: right;
}
.footer-column {
  float: left;
  padding: 0;
  width: 100%;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.footer-column h4 {
  margin: 0 auto .3em;
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 600;
  font-size: 20px;
  font-size: 1.25em;
  font-size: 1.25rem;
}
.footer-column ul {
  margin: 0;
  padding: 0 1.5em;
}
.footer-column li {
  padding: .1em 0;
}
.footer-column p {
  margin: .5em 0 0;
}
.footer-column a[title="Helpline"] {
  display: inline-block;
}
#support.footer-column ul {
  list-style: none;
}
#support.footer-column li {
  padding-bottom: 1em;
}
#agencylinks.footer-column ul {
  margin: 0 1.5em;
  list-style: disc;
}
#txgov.footer-column ul {
  list-style: none;
}
#txgov.footer-column > span:last-of-type {
  text-align: center;
  min-width: 100%;
  display: inline-block;
}
#txgov.footer-column > span:last-of-type {
  margin: 0;
  text-align: left;
}

img#TexasGovTaglineLogo {
  margin-top: 1em auto;
  display: block;
  text-align: center;
  max-width: 80%;
  padding: .7em 0 .1em 0;
  margin: 0 auto;
}

img#TexasGovTaglineLogo {
  margin: 0;
}


.footer-column {
  padding-bottom: 1.5em;
}

.footer_left {
  float: left;
}
.footer_right {
  float: right;
  margin-right: 70px;
}
.footer-column {
  float: left;
  width: 20em;
  padding: 1.2em 1.5em;
}
.footer-column:nth-of-type(3n-2) {
  padding-left: .8em;
}
.footer-column:nth-of-type(3n) {
  padding-right: .8em;
}
.footer-column ul {
  padding: 0;
}
.footer-column a,
.footer-column a:visited,
.footer-column a:active {
  text-decoration: none;
}
.footer-column a:hover {
  text-decoration: underline;
}
#support.footer-column {
  width: 28em;
}

.footer-content {
  max-width: 68em;
  margin: 0 auto;
}


/****************************************************************************
    Sticky Footer:

    #wrapper should be whatever element is sybling to .footer and has las-child of .push

****************************************************************************/
html,
body {
  height: 100%;
}
.wrapper {
  clear: both;
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin-bottom: -180px;
}
.wrapper .push {
  height: 180px;
}
.footer {
  clear: both;
  position: relative;
  min-height: 180px;
}
.clearfix:after, .columns:after {
  height: auto;
}
.applicationcondition {
  	margin-left: 50px;
}
.applicationfontlabel{
	font-weight:bold;
}
.applicationconditiontbl {
	style: 2px solid black;
}
.military-service-question2-categories {margin-top:1em;}

.military-service-question-seperator {font-size:1.8em; display:block;text-align:center;margin:1em 0;}

/* Changes for iFrame project */
#inframe {
  width: 500px;
  height: 1650px;
}

/* Spinner on iframe*/
.centered {
  text-align: center;
}

.spinner.loading {
  display: none;
  text-align: center;
}

.loading-text {
  width: 90px;
  position: absolute;
  top: calc(50% - 15px);
  left: calc(50% - 45px);
  text-align: center;
}

.spinner.loading:before {
  content: "";
  height: 90px;
  width: 90px;
  margin: -15px auto auto -110px;
  position: absolute;
  left: calc(50% - 45px);
  border-width: 8px;
  border-style: solid;
  border-color: #0559AF #ccc #ccc;
  border-radius: 100%;
  animation: rotation .7s infinite linear;
}

@keyframes rotation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}