BODY {
    FONT-SIZE: 1em;
    COLOR: #262626;
    font-family: "Open Sans", Arial, sans-serif;
    TEXT-DECORATION: none;
    margin: 0px;
    padding: 0px 0px 0px 0px;
  /*  background-image: url(../images/ftr_background_tile.gif);
    background-repeat: repeat-x;
    background-position: center bottom*/
}

.inner_body {
    background-image: url(../images/body_tile.jpg);
    background-repeat: repeat-x;
    background-position: center top;
    width: 100%;
}

.body_indent { /* This style is to indent the main body on the pages */
    margin-left: 20px;
}

/*.ftr {
	background-image:url(../images/ftr_background_tile.gif);
	background-repeat: repeat-x;
	background-position:center center;
	height:113px;
	background-color:#ebebeb; }*/

.captchaPanel {
    display: inline-block;
}

.invalid_date {
    font-size: .7em;
}

td.mast_head {
    height: 105px;
    border-collapse: collapse;
}

table#aboutYouTable tbody tr td {
    padding: 8px 0px 0px 15px;
}

img.AdjustedIconHeight {
    vertical-align: -4px;
}

table,
table#PassportWizard_NewerPassportTable { /* This style takes out all of the "cellpacing" out of the Table */
    border-collapse: collapse;
}


.FAQ {
    padding: 0px 0px 0px 20px;
    color: #ffffff;
    font-weight: normal;
    text-align: right;
    font-size: .9em;
    position: relative;
    top: 3px;
    text-decoration: none;
    background-image: url(../images/icon_need_help.gif);
    background-repeat: no-repeat;
    background-position: left center;
    width: 170px;
}

.TransparentDiv {
    position: fixed;
    background-color: #E8E8E8;
    background-color: rgba(176, 176, 176, 0.40);
    /*filter: alpha(opacity=60);  Transparency  
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";*/
    -moz-opacity: 0.40;
    -khtml-opacity: 0.40;
    width: 100%;
    height: 100%;
    display: block;
    left: 0;
    top: 0;
    z-index: 32000;
}

.LoadingDiv {
    position: fixed;
    top: 50%;
    left: 50%;
    margin-left: -100px;
    margin-top: -40px;
    text-align: center;
    background-color: white;
    background-color: rgba(255, 255, 255, 0.99);
    padding: 20px;
    box-shadow: 2px 2px 12px #888888;
    z-index: 32001;
    -moz-opacity: 0.99;
    -khtml-opacity: 0.99;
    /*filter: alpha(opacity=99);
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=99)";*/
}

/*table#PassportWizard,
table#PassportWizard tbody tr td,
#PassportWizard_spouseTable,
#PassportWizard_spouseTable tbody tr td {			
	border:solid 1px green; } */

/* This is for all tall Page Headers */
td.PageHeaderTall {
    height: 36px;
    width: 100%;
}

.PageHeaderTall h1 {
    display: inline;
}

.PageHeaderTall div span,
.PageHeaderTall span {
    display: block;
}

.PageHeaderTall h1,
.PageHeaderTall div span,
.PageHeaderTall span {
    color: #000d4a;
    font-family: Georgia, Times New Roman;
    font-size: 1.5em;
    font-weight: normal;
}

/* This is for all Page Headers */
.PageHeader {
    background-image: url(../images/hdr_line_618px.gif);
    background-position: 0px 33px;
    background-repeat: no-repeat;
    height: 40px;
    width: 100%;
}

    .PageHeader h1 {
        display: inline;
    }

    .PageHeader span {
        display: block;
    }

    .PageHeader h1,
    .PageHeader span {
        color: #000d4a;
        font-family: Georgia, Times New Roman;
        font-size: 1.5em;
        font-weight: normal;
    }

div.SubPageHeader {
    height: 30px;
}

.SubPageHeader div span,
.SubPageHeader span { /* This is for the Fees Summary Sub Page Header */
    font-size: 1em;
    font-family: Georgia, Times New Roman;
    color: #000d4a;
    height: 30px;
    width: 100%;
    display: block
}

.h2 {
    font-family: Georgia, Times New Roman;
    font-size: 1em;
    color: #000d4a;
    margin: 0px 20px 0px 0px;
}

span.h3,
span#PassportWizard_Label4 {
    font-size: .7em;
    color: #274686;
    background-image: url(../images/hdr_line_618px.gif);
    background-position: 0px 23px;
    background-repeat: no-repeat;
    height: 38px;
}

#PassportWizard_Table5 tbody tr td, /* This style turns the borders on all of the tables on */
#state_and_zip tbody tr td,
#mainTable tbody tr td {
    /*border:solid 1px orange;*/
}

input#PassportWizard_addressStep_addPhoneNumberButton { /* This is for the Add Another Number button */
    cursor: pointer;
    BACKGROUND-IMAGE: url(../images/btn_add_another_number.gif);
    border-style: none;
    WIDTH: 164px;
    border: 0px;
    BACKGROUND-REPEAT: no-repeat;
    HEIGHT: 31px
}

    input#PassportWizard_addressStep_addPhoneNumberButton:hover { /* This is for the Add Another Number button - Hover */
        cursor: pointer;
        BACKGROUND-IMAGE: url(../images/btn_add_another_number_on.gif);
        border-style: none;
        WIDTH: 164px;
        border: 0px;
        BACKGROUND-REPEAT: no-repeat;
        HEIGHT: 31px
    }


table#PassportWizard_otherNameStep_otherNameDataGrid tbody tr td input, /* This is for the remove button - Phone Numbers & Other Names */
table#PassportWizard_addressStep_phoneNumberDataGrid tbody tr td input {
    background-image: url(../images/btn_remove.gif);
    width: 89px;
    height: 31px;
    border: none 0 white;
    cursor: pointer
}

    table#PassportWizard_otherNameStep_otherNameDataGrid tbody tr td input:hover, /* This is for the remove button - Hover - Phone Numbers & Other Names */
    table#PassportWizard_addressStep_phoneNumberDataGrid tbody tr td input:hover {
        background-image: url(../images/btn_remove_on.gif);
        width: 89px;
        height: 31px;
        border: none 0 white;
        cursor: pointer
    }

table#PassportWizard_otherNameStep_otherNameDataGrid {
    table-layout: fixed;
    width: 781px;
}

    table#PassportWizard_otherNameStep_otherNameDataGrid tbody tr td {
        word-wrap: break-word;
    }

.otherNameDataGridHdr {
    font-family: Lucida Sans Unicode,Verdana,Arial;
    font-size: small;
    font: bolder;
    text-decoration: underline;
}

.Border_Open_right {
    border-bottom: 3px solid;
    border-top: 3px solid;
    border-left: 3px solid;
    border-right: none;
}

.Border_Open_left {
    border-bottom: 3px solid;
    border-top: 3px solid;
    border-right: 3px solid;
    border-left: none;
}

input#PassportWizard_otherNameStep_addButton { /* This is for the Add Another Name button */
    cursor: pointer;
    BACKGROUND-IMAGE: url(../images/btn_add_another_name.gif);
    border: none 0 white;
    WIDTH: 164px;
    BACKGROUND-REPEAT: no-repeat;
    HEIGHT: 31px;
    background-color: Transparent
}

    input#PassportWizard_otherNameStep_addButton:hover { /* This is for the Add Another Name button - Hover */
        background-image: url(../images/btn_add_another_name_on.gif);
        width: 164px;
        height: 31px;
        border: none 0 white;
        cursor: pointer
    }



/*--------- Your Passport History Styles ----------------------------------------------------------*/
.GrayRow {
    background-color: #e5e5e5;
}

span.CheckBoxLargeText label,
.SubHead {
    font-family: Georgia, Times New Roman, Serif;
    font-size: 1.2em;
    color: #001269
}

.SubHead {
    font-size: 1.1em;
    font-weight: normal;
    color: #001269;
    display: inline
}

table.wizard_wrapper { /* This table is wrapped around every step table individually */
    margin: 25px 0px 0px 15px;
}


    table.wizard_wrapper tbody tr td {
        vertical-align: top
    }

.lftcol { /* This is to style the far left table columns */
    width: 40px;
    display: block
}

.rtcol { /* This is to style the far right table columns */
    width: 40px;
}

td.body { /* This is to style all field labels that are aligned to the right */
    FONT-SIZE: .77em;
    COLOR: #262626;
    TEXT-DECORATION: none;
    /*border:solid 1px red;*/
    text-align: right;
    vertical-align: top
}

td.plain { /* This is to style all field labels that are aligned to the left */
    FONT-SIZE: .77em;
    COLOR: #262626;
    TEXT-DECORATION: none;
    /*border:solid 1px red;*/
    text-align: left;
    vertical-align: top
}

.FeeHeader {
    font-weight: bold;
}

td.body span {
    text-align: right;
    padding: 0px 5px 0px 0px;
}

td.bodylft { /* This is to style all field labels that are aligned to the left */
    FONT-SIZE: .77em;
    COLOR: #262626;
    TEXT-DECORATION: none;
    /*border:solid 1px red;*/
    text-align: left;
}

td.bodyctr { /* This is to style all field labels that are aligned at the middle */
    FONT-SIZE: .77em;
    COLOR: #262626;
    TEXT-DECORATION: none;
    /*border:solid 1px red;*/
    text-align: center;
}

    td.bodyctr span label { /* This is to style all labels that are aligned at the middle */
        FONT-SIZE: 1.0em;
        COLOR: #262626;
        TEXT-DECORATION: none;
        /*border:solid 1px red;*/
        text-align: center;
    }

td.bodylft span {
    height: 15px;
    vertical-align: 4px;
}

td.BodyIndent { /* This is to style all field labels that are aligned to the left */
    FONT-SIZE: .77em;
    COLOR: #262626;
    TEXT-DECORATION: none;
    /*border:solid 1px red;*/
    text-align: left;
    padding: 0px 0px 0px 8px
}

.AdjustedLabelHeight {
    vertical-align: 4px;
}

.AdjustedIconHeight {
    vertical-align: -4px;
}

td.field span,
td.field input,
td.field select,
td.field table tbody tr td label {
    FONT-SIZE: .77em;
    COLOR: #262626;
    TEXT-DECORATION: none;
    /*border:solid 1px red;*/
    text-align: left;
    margin: 0px 5px 0px 0px;
}

td.FieldText {
    FONT-SIZE: .77em;
    COLOR: #262626;
    TEXT-DECORATION: none;
    /*border:solid 1px red;*/
    text-align: left;
    margin: 0px 5px 0px 0px;
}

td.field div {
    text-align: left;
}

.EditBtn {
    text-align: left;
}

td.ReadOnly span {
    text-align: left;
    font-weight: bold;
    font-size: .77em;
    vertical-align: top;
}

.radio_btns {
    font-size: .77em;
    color: #262626;
    text-align: left
}

.RadioBtnsInline {
    color: #262626;
    text-align: left;
    display: inline
}

img.req,
.req {
    background-image: url(../images/icon_req.gif);
    background-repeat: no-repeat;
    width: 19px;
    height: 25px;
    display: inline;
}

.InformationalText {
    text-align: left;
    font-size: .8em;
    color: #27478a;
    font-family: Georgia, Times New Roman;
    line-height: 22px;
}

    .InformationalText span {
        font-size: 1.3em;
        color: #000d4a
    }

    .InformationalText ul {
        margin: 6px 0px 10px 12px;
        padding: 0px 0px 0px 10px
    }

        .InformationalText ul li {
            display: list-item;
            margin: 0px 0px 0px 8px;
        }

label.Incorrect {
    color: red;
    font-weight: bold;
}

.EmptyRow {
    height: 15px;
}

td#PassportWizard_TableCell166 {
    position: relative;
}

.text_box, select {
    BORDER-RIGHT: 1px solid #7f7f7f;
    BORDER-TOP: 1px solid #7f7f7f;
    BORDER-LEFT: 1px solid #7f7f7f;
    BORDER-BOTTOM: 1px solid #7f7f7f;
    TEXT-DECORATION: none;
    FONT-SIZE: 1em;
    font-family: Lucida Sans Unicode, Verdana, Arial
}

.text_box_sm {
    BORDER-RIGHT: 1px solid #7f7f7f;
    BORDER-TOP: 1px solid #7f7f7f;
    FONT-SIZE: .8em;
    BORDER-LEFT: 1px solid #7f7f7f;
    WIDTH: 80px;
    COLOR: #6b6b6b;
    BORDER-BOTTOM: 1px solid #7f7f7f;
    TEXT-DECORATION: none
}

.alert {
    FONT-SIZE: .8em;
    COLOR: red;
    TEXT-DECORATION: none
}

.dropdown {
    BORDER-RIGHT: 1px solid;
    BORDER-TOP: 1px solid;
    FONT-SIZE: .8em;
    BORDER-LEFT: 1px solid;
    COLOR: #8d8d8d;
    BORDER-BOTTOM: 1px solid;
    TEXT-DECORATION: none
}

.checkbox {
    FONT-SIZE: .7em;
    COLOR: #262626;
    TEXT-DECORATION: none;
}

    .checkbox label {
        vertical-align: baseline
    }

td.field span.checkbox input.PassportWizard_unknownParent1CheckBox {
    margin: 0px;
    vertical-align: baseline;
}

.label {
    VERTICAL-ALIGN: sub;
    COLOR: #303030;
    TEXT-DECORATION: none
}

.table_hdr {
    FONT-WEIGHT: bolder;
    FONT-SIZE: .8em;
    COLOR: #ffffff;
    TEXT-DECORATION: none
}

.table_text {
    FONT-SIZE: .8em;
    COLOR: #4a4848;
    TEXT-DECORATION: none
}

.button_text {
    font-weight: bolder;
    font-size: .8em;
    vertical-align: super;
    color: #ffffff;
    text-decoration: none;
}

table#NameInformation tbody tr td,
table#BirthInformationTbl tbody tr td,
table#PhysicalDescription tbody tr td {
    padding: 0px 0px 0px 0px;
}

tr.invalid_message_row td {
    height: 15px;
}

    tr.invalid_message_row td span {
        display: inline;
    }

span.invalid_icon {
    background-image: url(../images/invalid_icon.gif);
    background-repeat: no-repeat;
    height: 17px;
    width: 17px;
    padding: 0px 0px 0px 20px;
    font-size: .65em;
    display: block;
}

span.invalid_text {
    background-image: url(../images/invalid_icon.gif);
    background-repeat: no-repeat;
    padding: 0px 0px 0px 20px;
    font-size: .8em;
    /**color: red; */
    text-decoration: none;
    display: block;
}

span#PassportWizard_aboutYouStep_lblOccupation {
    width: 148px;
    display: block;
}

td.invalid_cell span {
    text-align: left;
    width: 51%;
    height: 100%;
    clear: both;
}

input.btn_prev:link, input.btn_prev:visited {
    background-image: url(../images/btn_next.gif);
    background-repeat: repeat;
    width: 112px;
    height: 31px;
}

input.btn_prev:hover {
    background-image: url(../images/btn_next_on.gif);
    background-repeat: repeat;
    width: 112px;
    height: 31px;
    border: solid 0px white
}

.EditPersonalInfo:link,
.EditPersonalInfo:visited {
    background-image: url(../images/btn_edit.gif);
    background-repeat: no-repeat;
    height: 31px;
    width: 69px;
    display: block;
    border: solid 0px white
}

.EditPersonalInfo:hover {
    background-image: url(../images/btn_edit_on.gif);
    background-repeat: no-repeat;
    height: 31px;
    width: 69px;
    display: block;
}

td.EditBtn a img {
    border: none 0px white;
}

table#permanentAddressTable {
    margin: 0px 0px 0px 25px;
}

.sep_line {
    background-image: url(../images/sep_line_671px.gif);
    background-repeat: no-repeat;
    background-position: center center;
    margin: 0px 0px 0px 0px;
    height: 40px;
}

.sep_line_short {
    background-image: url(../images/sep_line_671px.gif);
    background-repeat: no-repeat;
    background-position: center top;
    margin: 0px 0px 0px 0px;
    height: 22px;
}

fieldset {
    border-collapse: collapse;
    border: solid 0px #fff;
    padding: 0px;
    margin: 0px;
}


.req_icon {
    margin: 0px 4px 0px 0px;
    height: 15px;
    width: 13px;
}

#WizardTableCell {
    margin: 0px
}

table#PassportWizard_permanentAddressTable,
table#PassportWizard_ContactTable,
table#Table4,
table#Table2,
table#PassportWizard {
    margin-left: 15px;
}

/*---------------------- Next Steps Table Styles ----------------------------------------------*/
/*---------------------- Table Cell that contains the Next Steps Numbers ----------------------*/
td.StepNumberCell {
    width: 55px;
    height: 41px;
    vertical-align: top;
}

    td.StepNumberCell p {
        font-size: 1.5em;
        font-family: Georgia, Times New Roman, Sans Serif;
        font-weight: normal;
        margin: -8px 0px 0px 0px;
        padding: 0px;
        vertical-align: text-top;
    }

td.StepTextCell table.InnerTable tr td.NumberCell {
    width: 20px;
}

    td.StepTextCell table.InnerTable tr td.NumberCell p {
        font-size: 1.3em;
        font-family: Georgia, Times New Roman, Sans Serif;
        font-weight: normal;
        margin: -4px 0px 0px 0px;
        padding: 0px;
        vertical-align: text-top;
    }

td span.StepNum3Image {
    background-image: url(../images/next_steps_no3.gif);
    background-repeat: no-repeat;
    height: 41px;
    width: 41px;
    display: block;
}

    td span.StepNum3Image img {
        margin: 0px;
        padding: 0px
    }

.LocateBtn {
    background-image: url(../images/btn_locate.gif);
    background-repeat: no-repeat;
    width: 112px;
    height: 31px
}

/*---------------------- Travel Page Note ----------------------*/
.TravelNoteBlock {
    background-color: #e5e5e5;
    font-size: .75em;
    border: 1px solid #C2C2C2;
    padding: 2px 10px 2px 10px;
}

/*---------------------- Table Cell that contains the Next Steps Text ----------------------*/
td.StepTextCell,
td.StepTextCell table tr td {
    vertical-align: top;
}

    td.StepTextCell h2 {
        font-size: 1.1em;
        color: #000f55;
        font-family: Georgia, Times New Roman, Sans Serif;
        font-weight: normal;
        margin: 0px 0px 8px 0px;
    }

        td.StepTextCell h2 b {
            color: #1145b1;
            font-weight: bold;
        }

    td.StepTextCell h3,
    td.FeesSubHead h3 {
        font-size: .8em;
        margin: 10px 0px 6px 0px;
    }

    td.StepTextCell p {
        font-size: .8em;
        line-height: 20px;
    }

        td.StepTextCell p b {
            font-weight: bold;
            color: #658df8;
        }

    td.StepTextCell table.InnerTable tr td.TextCell h3 {
        font-size: 1.1em;
        color: #000f55;
        font-family: Georgia, Times New Roman, Sans Serif;
        font-weight: normal;
        margin: 0px 0px 6px 0px;
    }

    td.StepTextCell table.InnerTable tr td.TextCell p {
        font-size: .8em
    }

td.TblRowSpacer {
    height: 18px;
}


/*---------------- Passport Fees Styles -------------------------------------------*/
.FeesSubHeadLbl {
    font-family: Georgia, Times New Roman, Sans-Serif;
    font-size: 1em;
    color: #001269;
    width: 100%;
}

.FeesSubHeadNoteLbl {
    font-size: smaller;
    /*font-weight: bold;
	color:red;*/
    width: 100%;
}

#headerLabel {
    font-family: Georgia, Times New Roman, Sans-Serif;
    font-size: 1.1em;
    color: #001269;
    width: 100%;
}

.divider hr {
    border: #cfcfcf 1px solid;
}

table.TotalFeeLine {
    background-color: #b8ccf5;
}

    table.TotalFeeLine tr td {
        padding: 10px
    }

/*---------------- Span To Indicate Required Field ----------------------------------*/
span.required {
    position: absolute;
    left: -5000px;
}

/*---------------- Labels Headers of DataGrid Styles --------------------------------*/
td.DataGridHeader {
    font-family: Lucida Sans Unicode, Verdana, Arial;
    font-size: small;
}

/*---------------- Panels that show up based on the answer to questions -------------*/
.ConditionalContainerGray {
    background-color: #e5e5e5;
    padding: 10px 10px 10px 10px;
    margin: 15px 0px 0px 0px;
    /*display:none;*/
}

/*----- Hidden Text for 508 Screen Readers ------------------*/
.hiddentext {
    position: absolute;
    font-size: 0;
    left: -1000px;
}
/*-------------------------- USWDS ENHANCEMENTS  --------------------------*/


.ppw-header {
    background-color: #0a314d;
    color: #FFFFFF;
}

    .ppw-header a {
        color: #FFFFFF;
    }

        .ppw-header a:visited {
            color: #FFFFFF;
        }

.ppw-header-background {
    width: 100%;
    height: 100px;
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .ppw-header-background {
        height: 120px;
    }
}

.ppw-header .state-logo {
    width: 150px;
    padding-top: 10px;
    align-self: center;
}

    .ppw-header .state-logo img {
        max-width: 100%;
        height: auto;
        vertical-align: middle;
        border-style: none;
    }

.ppw-header .state-title .title {
    font-family: 'EB Garamond', sans-serif;
    font-size: 3em !important;
    font-weight: 400;
    font-style: normal;
    line-height: 1;
    margin-bottom: .1em;
}

.ppw-header .state-title .tagline {
    font-family: 'EB Garamond', sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: .9em;
    line-height: 1;
}

    .ppw-header .state-title .tagline .italic {
        font-style: italic;
        padding: 0 2px 0 2px;
        text-transform: lowercase;
    }

.ppw-header .help-link {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;
    align-self: center;
}

    .ppw-header .help-link .stack {
        align-self: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-decoration: none;
    }

.ppw-header .usa-link {
    color: #F0F000;
}

.grid-container {
    margin-left: 0px !important;
}

.ppw-header .header-link {
    display: flex;
    flex-direction: row;
    text-decoration: none;
}