/*
    Layout v2.5 Mark 2

    Table of Contents

    1. Variables
	2. Defaults & General Elements
	3. Page
		3.1 Layout Header
		3.2 Layout Page Content
		3.3 Layout Footer
		3.4 Accordians
		3.5 General Classes
    4. Inputs
		4.1 Flex Config
		4.2 Input Default Classes
		4.3 Control Validator
		4.4 Label
		4.5 Checkboxes/Radio Buttons
	5. Buttons
		5.1 Navigation Button Container
		5.2 Primary Button
		5.3 Minor Button
		5.4 Next & Back Button
		5.5 Other Buttons
    6. Control Specific
		6.1 Panel
		6.2 Product Services
		6.3 Address
		6.4 Employment History
		6.5 Income
		6.6 Documents
		6.7 Disclosures
		6.8 Product Relationship
		6.9 Default ACH
		6.10 Credit Card
		6.11 One Time Passcode
		6.12 HMDA
		6.13 ProductFunding
		6.14 Individual Details
		6.15 Individual List
		6.16 IDAuth
		6.17 Progress Bar
		6.18 Beneficial Ownership
		6.19 Phone Control
		6.20 Beneficiaries
		6.21 Account Selection
		6.22 Prove
		6.23 SMS Options
		6.99 ID Specific (Always Last)
    7. Specific Pages
		7.1 Default
		7.2 Application Summary
    8. Mobile
		8.1 Tablet & Phone in Landscape (600px to 1200px)
		8.2 8.2 Smallest (<751px)
		8.3 Ultra Wide
    9. IE Only
		9.1 Variable Conversion
		9.2 Always Required
	10. Admin Console/Branch
		10.1  Branch Specific Controls
		10.1a Person Search
*/
/*
    1. Variables
*/
:root {
    --vibrant-blue: #462361;
    --vibrant-purple: #5f3b7a;
    --vibrant-blue-light: #652a8d;
    --vibrant-offwhite: #ececec;

    --vibrant-colorwheel-blue-dark: #424199;
    --vibrant-colorwheel-blue-light: #00b8c3;
    --vibrant-colorwheel-blue-combined: #1e75ba;
    --vibrant-colorwheel-purple-dark: #902c90;
    --vibrant-colorwheel-purple-light: #b75ea3;
    --vibrant-colorwheel-purple-combined: #8c519f;
    --vibrant-colorwheel-red-dark: #d92128;
    --vibrant-colorwheel-red-light: #f6911e;
    --vibrant-colorwheel-red-combined: #f05f22;
    --vibrant-colorwheel-green-dark: #00b069;
    --vibrant-colorwheel-green-light: #f6eb13;
    --vibrant-colorwheel-green-combined: #f6eb13;

    --primary-color: var(--vibrant-blue);
    --primary-color-focus: var(--vibrant-blue-light);
    --secondary-color: #5f3b7a;
    --secondary-color-focus: #d4d4d4;
    --box-background-color: #f6f6f6;
    --box-border-color: #3498db;
    --primary-shadow: 0.8rem 1.2rem 1.2rem rgba(0, 0, 0, 0.17);
    --primary-shadow-focus: 0px 5px 40px -5px rgba(0, 0, 0, 0.4);
    --secondary-shadow: 0px 0px 10px rgba(0, 0, 0, 0.4);
    --secondary-shadow-focus: 0px 5px 40px -10px rgba(0, 0, 0, 0.57);
    --page-width: 86rem;
    --control-width: 40rem;
    --control-height: 4rem;
    --font-size: 1.6rem;
    --rem-size: 10px;
    --font-control-color: #303030;
    --font-label-color: #202020;
    --font-color: #575757;
    --link-font-color: #286090;
    --link-font-color-hover: #1e77b3;
}

/*
    2. Defaults & General Elements
*/
form {
    margin-block-end: 0;
    font-family: "Lexend", "Helvetica", georgia, times, "Times New Roman", serif;
}

html,
body {
    font-family: "Lexend", "Helvetica", georgia, times, "Times New Roman", serif;
    font-weight: 300;
    background-color: #f7f6f7;
}

html,
body {
    width: 100%;
    height: 100%;
    margin: 0px;
    padding: 0px;
    overflow-x: hidden;
}



body,
.AdminConsole {
    font-size: 1.4rem;
    line-height: 150%;
}

h1,
h2,
h3,
h4 {
    width: 100%;
    margin: 1.6rem 0;
    color: var(--vibrant-blue);
}

h1 {
    font-size: 3.2rem;
}

h2 {
    font-size: 2.4rem;
    font-weight: 500;
}

h3 {
    font-size: 2rem;
}

h4 {
    font-size: 2rem;
    margin-top: 1.6rem;
    margin-bottom: .8rem;
}

legend {
    display: none;
}

p {
    width: 100%;
}

a {
    color: var(--link-font-color);
}

a:hover {
    color: var(--link-font-color-hover);
}

label {
    margin-bottom: 0;
    font-size: 1.6rem;
}

select::-ms-expand {
    background-color: white;
    border-color: white;
    padding-right: 1.6rem;
}

::-webkit-scrollbar {
    -webkit-appearance: none;
    -webkit-overflow-scrolling: Auto;
}

::-webkit-scrollbar:vertical {
    width: 8px;
}

::-webkit-scrollbar:horizontal {
    height: 8px;
}

::-webkit-scrollbar-thumb {
    background-color: #7F7F7F;
    border: 2px solid #7F7F7F;
    border-radius: 5px;
}

::-webkit-scrollbar-track {
    background-color: #ffffff;
    border: 1px solid #7F7F7F;
    border-radius: 5px;
}

@viewport {
    width: device-width;
}

@-ms-viewport {
    width: device-width;
}

select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
    font-size: 1.6rem !important;
}

/*
    3. Page
*/
#Content {
    width: calc(var(--page-width) + 20px);
}

.centerform {}

.Layout {
    background-color: #f7f6f7;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/*
    3.1 Layout Header
*/
#LayoutHeader {
    width: 100%;
    background-color: var(--vibrant-blue);
    box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.17);
    z-index: 1;
    position: relative;
    /* padding-bottom: 1.6rem; */
}

#LayoutHeaderContents {
    margin: 0 auto;
    width: var(--page-width);
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    height: 74px;
}

#HeadContact {
    margin-right: 3rem;
}

#HeadLogo>img {
    width: 91px;
}

/*
    3.2 Layout Page Content
*/
#LayoutPage {
    margin: 0 auto;
    width: calc(var(--page-width) + 6.4rem + 2px);
    background-color: #f7f6f7;
    padding: 4.8rem 3.2rem 1.6rem 3.2rem;
    flex-grow: 1;
    min-width: 325px;
}

.form-section {
    margin: 0 1.6rem;
    /* min-width: 325px; */
}

/*
    3.3 Layout Footer
*/
#LayoutFooter {
    width: 100%;
    background-color: var(--vibrant-blue);
}

#LayoutFooterContents {
    margin: 0 auto;
    padding: 27px 0;
    width: calc(var(--page-width) + 6.4rem + 2px);
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    color: white;
    flex-wrap: wrap;
}

.FooterLogo {
    margin-bottom: 26px;
}

.get-in-touch-container {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.get-in-touch-header {
    font-weight: 600;
    line-height: 1;
    font-size: 16px;
}

.get-in-touch-classic {
    display: flex;
    flex-direction: column;
}

.get-in-touch-sm {
    display: flex;
    justify-content: space-between;
}

.get-in-touch-classic>a {
    font-size: 16px;
    line-height: 24px;
    color: white;
    font-weight: 300;
    width: fit-content;
}

.get-in-touch-classic>a:hover {
    text-decoration: none;
    background-color: white;
    color: var(--vibrant-blue);
}

.FooterLogo>img {
    width: 91px;
}

.get-in-touch-sm>a {
    padding: 2px 2px 0 2px;
    display: block;
}

.get-in-touch-sm>a:hover {
    background-color: white;
}

.get-in-touch-sm i {
    color: white;
}

.get-in-touch-sm>a:hover>i {
    color: var(--vibrant-blue);
    background-color: white;
}

.footer-footer {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 48px;
    width: 100%;
}

.footer-footer:before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #fff;
    opacity: 0.2;
    margin-bottom: 8px;
}

.footer-footer>div {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 5px;
}

.footer-footer>div .fiviLabelContainer {
    width: fit-content;
}

.footer-footer>div .fiviLabelContainer label {
    margin-bottom: 0;
    font-weight: 400;
}

/*
    3.4 Accordians
*/
.CursorPointer {
    cursor: pointer;
}

.panel-group {
    margin: 0 0 1.6rem 0;
    width: 100%;
}

.panel {
    border: none;
    box-shadow: none;
}

.panel-body {
    padding: 0;
    margin: 0;
    background-color: #f7f6f7;
}

.panel-default>.panel-heading {
    background-image: none;
    background-color: #f7f6f7;
    border-radius: .8rem;
    margin: 0;
    padding: .8rem .8rem .8rem .8rem;
}

.panel-heading.collapsed {
    background-color: #fff;
    box-shadow: 0px 3px 6px rgba(177, 177, 177, .16);
    border-radius: .8rem;
    border: 1px solid var(--vibrant-blue);
}

.panel-title {
    text-align: left;
    position: relative;
}

.panelArrow {
    float: none !important;
    font-size: 1em !important;
    position: absolute;
    top: .40rem;
    right: 0rem;
}

/*
    3.5 General Classes
*/
/*
.SectionBox {
	box-shadow: inset 0 1px 3px rgba(0, 0, 0, .075), 0 0 3px rgba(102, 175, 233, .6);
	background-color: var(--box-background-color);
	border-radius: 1.6rem;
	border: 1px solid var(--box-border-color);
	width: calc(100% + 2px) !important;
	padding: 1.6rem 3.2rem !important;
	margin: 3.2rem 0 !important;
}
*/
.PageHeader {
    font-size: 3.2rem;
    font-weight: 500;
    line-height: 150%;
    margin: 0 0 1.6rem 0;
    color: var(--primary-color);
}

.PageDesc {
    margin: 1.6rem 0;
    font-size: 1.6rem;
}

.SectionHeaders {
    font-size: 2.4rem;
    width: 100%;
    margin: 3.2rem 0 .5rem 0rem;
    padding: 0 0 .8rem 0;
    color: var(--primary-color);
    border-bottom: 1px solid var(--primary-color);
    box-shadow: 0 4px 6px -6px var(--primary-color);
}

.SectionDesc {
    margin: .8rem 0 .8rem 0;
    width: 100%;
}

.indentLeft {
    margin: 0 0 0 1.6rem;
}

.LeftFlush {
    margin-left: 0;
}

.AddInd {
    font-size: 1.6rem;
}

.flexBreak {
    flex-basis: 100%;
    height: 0;
}

.fiviMultiSeperator {
    margin: 1.6rem auto .40rem auto;
    width: 24rem;
    height: 2px;
    background-color: var(--primary-color);
    box-shadow: 0 0 3px rgba(102, 175, 233, .6);
}

.fiviNoPadding {
    padding: 0;
}

.fiviLineMargins {
    margin: 1.6rem 0 .8rem 0 !important;
}

.fiviHide {
    display: none !important;
}

.fiviCenterControl {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.DefaultTooltipClass {
    position: absolute;
    right: 1.6rem;
    top: 3rem;
}

.tooltip {
    left: unset !important;
    top: 3rem !important;
    right: 3.5rem;
}

/* Custom Tooltip Placement */


.fiviProdServControl .tooltip {
    left: -1em !important;
    top: -4em !important;
}

#ddlIDState .tooltip,
#tbRegistrationDate .tooltip,
#tbEmail .tooltip,
#ReferralCode .tooltip {
    /*top: -5em !important;*/
}

#tbPhone1 .tooltip {
    /*top: -2.5em !important;*/
}

#tbService .tooltip {
    /*top: -2em !important;*/
}

#tbNAICS .tooltip {
    /*top: -12em !important;*/
}

.rbGroupTwoAnswers .tooltip {
    top: 0em !important;
    /*left: -3.5em !important*/
}

.cbButtonGroup .tooltip {
    /*top: -5em !important;*/
    /*left: -1em !important;*/
}

#cbMSBActivity .tooltip {
    /*top: -12.5em !important;*/
    /* left: -em !important */
}

#EmpInfo_0_OccupationDropDown .tooltip {
    /*left: 35em !important;*/
    /*top: -5em !important;*/
}

#rbBackupWithExempt {
    position: relative;
    & .tooltip {
        left: unset !important;
        right: 4.5rem !important;
        top: 0 !important;
    }
}

@media all and (max-device-width: 750px),
all and (max-width: 750px) {
    .DefaultTooltipClass {
        position: absolute;
        right: -1.3em;
        top: 1.9em
    }

    #EmpInfo_0_OccupationDropDown .Defaulttooltipclass {
        position: relative;
        right: -15.5em;
        top: -2em;

    }

    #EmpInfo_0_OccupationDropDown .tooltip {
        left: 1em !important;
        top: 3em !important;
    }



    .fiviProdServControl .tooltip {
        left: -6em !important;
        top: -5em !important;
    }

    #rbBackupWithExempt .tooltip {
        top: -9em !important;
        left: -em !important
    }

}





.tooltip-arrow {
    display: none;
}

.tooltip-inner {
    width: max-content;
    max-width: 320px !important;
}

.SectionBox .table-striped>tbody>tr:nth-child(even)>td,
.SectionBox .table-striped>tbody>tr:nth-child(even)>th {
    background-color: white;
}

.SectionBox .table-hover>tbody>tr:not(:first-of-type):hover>td {
    background-color: #E8E8E8;
}

.SectionBox .table-hover>tbody>tr:first-of-type:hover>td {
    background-color: inherit;
}

.SectionBox th {
    border-top: none !important;
}

/*
    4. Inputs
    4.1 Flex Config
*/
.form-flex,
.form-inline {
    width: 100%;
    padding: 0 0 1.6rem 0;
    display: flex;
}

.fiviMultiInput {
    width: 100%;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
}

.form-flex,
.form-flex .fiviMultiInput {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.form-inline,
.form-inline .fiviMultiInput {
    display: flex;
    flex-direction: column;
    align-items: center;
}

/*
    4.2 Input Default Classes
*/
.fiviInput {
    display: flex;
    position: relative;
    padding-top: 19px;
    width: var(--control-width);
    margin-bottom: 1.6rem;
}

.form-control {
    width: 100% !important;
    height: 4rem;
    margin: 0px;
    padding: .8rem;
    background-color: #fff;
    color: var(--font-control-color);
    border: 1px solid #cacaca;
    border-radius: 4px;
    background-color: #fefefe;
    box-shadow: inset 0 1px 2px rgba(10, 10, 10, .1);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
}

.form-control:active,
.form-control:hover,
.form-control:focus {
    outline: 0;
    border: 1px solid #8a8a8a;
    background-color: #fefefe;
    box-shadow: 0 0 5px #cacaca;
    transition: box-shadow .5s, border-color .25s ease-in-out;
}

.fiviTransparent {
    color: transparent;
}

.TwoControls {
    margin: 0px 0px 0px 0px;
    padding: 0 1.6rem 0 1.6rem;
    width: 48% !important;
}

.fiviInput.TwoControls {
    padding: 0;
    margin: 0;
}

select.TwoControls {
    padding: 0px 10px 0px 10px;
}

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

.fiviLongInput {
    width: 100%;
    flex-direction: row;
    justify-content: flex-start;
}

.fiviLongInput>.TwoControls {
    width: 19.2rem !important;
    margin-right: 1.6rem;
}

.fiviFullWidth {
    width: 100% !important;
}

.fiviThirdWidth {
    width: 33% !important;
    display: block;
}

.fiviInput.TwoControls>.DefaultTooltipClass {
    top: 1.0rem;
}

.fiviCheckBox>.DefaultTooltipClass {
    display: inline-block;
    position: relative;
    top: unset;
    right: unset;
    margin-left: 1rem;
}

/*
    4.3 Control Validator
*/
.CtlValidator {
    position: absolute;
    top: 3.6rem;
    right: .40rem;
    font-weight: 700;
    z-index: 2;
    width: 1rem;
}

.fiviInput.TwoControls>.CtlValidator {
    top: 1.6rem;
}

.fiviProductFundingItem .CtlValidator {
    top: 2.4rem;
}

.fiviCheckBox.fivicbNoLabel>.CtlValidator {
    top: 0;
    left: -1rem;
}

/*
    4.4 Label
*/
.DefaultLabelClass {
    position: absolute;
    left: 1.6rem;
    top: 3.2rem;
    font-size: 1.8rem;
    color: var(--vibrant-blue);
    cursor: text;
    transition: all 0.2s ease-in-out;
    text-align: left;
    width: 100%;
    pointer-events: none;
    line-height: 16px;
    font-weight: 400;
}

.fiviTwoInput>.DefaultLabelClass,
.fiviLongInput>.DefaultLabelClass {
    top: 0;
    left: 0;
    font-size: 12px;
    line-height: 16px;
    font-weight: 700;
}

.fiviInput.fiviLongInput.fiviPhoneControl>.DefaultLabelClass {
    top: 0;
    left: 0;
    font-size: 12px;
    line-height: 16px;
    font-weight: 700;
}

.FocusLabelClass,
.fiviInput.fiviLongInput.fiviPhoneControl>.FocusLabelClass {
    top: 0;
    left: 0;
    font-size: 12px;
    line-height: 16px;
    font-weight: 700;
}

.fiviOutsideLabel {
    margin: 2.4rem 0 0.8rem 0;
}

label.label-inline {
    font-weight: normal;
    display: inline;
    font-size: 1.4rem;
    font-weight: 600;
}

/*
    4.5 Checkboxes/Radio Buttons
*/
.fiviCheckBox {
    align-items: center;
    margin: .40rem 0px;
    padding: 0;
}

.rbGroupTwoAnswers>.fiviCheckBox {
    margin: 0;
    padding: 0;
    width: 8rem;
}

.cbButtonGroup {
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    margin: 0 0 calc(1.6rem + 5px) 0;
    padding: 0 0 0 32rem;
}

.rbButton {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: .8rem 0 .8rem 0;
}

.rbButton>.fiviCheckBox {
    width: 3.2rem;
}

.rbLabel {
    font-size: 1.6rem;
    margin: 0 0 0 0;
}

.rbButtonGroup {
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    margin: 1.6rem 0;
    position: relative;
}

.rbGroupQuest {
    width: 50%;
    min-width: 200px;
    padding-right: 3%;
    font-size: 1.6rem;
}

.rbGroupAnswer {
    min-width: 140px;
    width: 50%;
}

.rbGroupTwoAnswers {
    padding: 0px 10px;
    min-width: 140px;
    width: 30%;
    display: flex;
    position: relative;
}

.rbButtonGroup>.cbButtonGroup {
    padding: 0 0 0 3.2rem;
    margin: 1.6rem 0 0 0;
}

.rbButtonGroup label {
    font-weight: 500;
}

.rbGroupAddInfo {
    margin: 0 0 0 3.2rem;
    width: 40rem;
}

.rbGroupAddInfo>span {
    width: 105% !important;
}

.fivicbNoLabel {
    display: inline;
    margin: .8rem 0;
    padding: 0;
}

.rbGroupTwoAnswers>span>.form-control,
.rbGroupAnswer>span>.form-control {
    width: 90% !important;
}

.fiviCheckBox.TwoControls {
    padding: 8px 10px 0px 10px;
}

.icheckbox_square-black,
.icheckbox_square-red,
.icheckbox_square-green,
.icheckbox_square-blue,
.icheckbox_square-aero,
.icheckbox_square-grey,
.icheckbox_square-orange,
.icheckbox_square-yellow,
.icheckbox_square-pink,
.icheckbox_square-purple {
    background-color: white;
}

.iradio_square-black,
.iradio_square-red,
.iradio_square-green,
.iradio_square-blue,
.iradio_square-aero,
.iradio_square-grey,
.iradio_square-orange,
.iradio_square-yellow,
.iradio_square-pink,
.iradio_square-purple {
    background-color: white;
    border-radius: 50%;
}

/*
    5. Buttons
    5.1 Navigation Button Container
*/
#pnlDirectionButtons>.fiviPanelContainer,
#pnlASC>.fiviPanelContainer,
.pnlDirectionButtons {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    width: 100%;
    margin: 1.6rem 0 1.6rem 0;
}

#pnlASC>.fiviPanelContainer {
    margin: 1.6rem 0 -1.6rem 0;
}

/*
    5.2 Primary Button
*/
.PrimaryButton,
.fiviDocumentList>.btn.btn-default {
    background-color: var(--primary-color);
    border: .2rem solid var(--primary-color);
    color: #fff;
    padding: 9px 34px 11px 34px;
    margin: 0rem 1.6rem 0rem 1.6rem;
    width: fit-content !important;
    min-width: 20rem;
    text-align: center;
    font-size: 1.6rem;
    font-weight: 500;
    border-radius: 20rem;
    transition: all 0.4s ease 0s;
    line-height: 20px;
    text-shadow: none;
}

.PrimaryButton:hover,
.PrimaryButton:active,
.PrimaryButton:focus,
.fiviDocumentList>.btn.btn-default:hover,
.fiviDocumentList>.btn.btn-default:active,
.fiviDocumentList>.btn.btn-default:focus {
    background-color: var(--primary-color-focus);
    border-color: var(--primary-color-focus);
    border-radius: 20rem;
    color: #fff;
    transition: all 0.4s ease 0s;
    outline: none;
}

/*
    5.3 Minor Button
*/
.MinorButton {
    background-color: var(--primary-color);
    border: none;
    color: #fff;
    padding: 1.2rem 0;
    margin: .5rem 0 1.6rem 0;
    box-shadow: var(--secondary-shadow);
    width: 25.6rem !important;
    text-align: center;
    font-size: 1.6rem;
    font-weight: 500;
    transition: all 0.4s ease 0s;
}

.MinorButton:hover,
.MinorButton:active,
.MinorButton:focus {
    background-color: var(--primary-color-focus);
    color: #fff;
    box-shadow: var(--secondary-shadow-focus);
    transition: all 0.4s ease 0s;
    border-radius: 3.2rem;
    outline: none;
}

/*
    5.4 Next & Back Button
*/
.NextButton {
    /*box-shadow: none;*/
}

.NextButton:active,
.NextButton:hover,
.NextButton:focus {}

.BackButton {
    background-color: #fff;
    border-color: var(--vibrant-blue);
    color: var(--vibrant-blue);
}

.BackButton:active,
.BackButton:focus,
.BackButton:hover {
    background-color: var(--vibrant-blue-light);
    border-color: var(--vibrant-blue-light);
}

.pnlDirectionButtons>#btnBackButton2>.BackButton {
    text-align: center;
}

/*
    5.5 Other Buttons
*/
.SaveButton {
    color: var(--primary-color);
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    text-align: center;
    font-size: 1.40rem;
}

.SaveButton:active,
.SaveButton:hover,
.SaveButton:focus {
    background: transparent !important;
    border: none;
    box-shadow: none;
    text-align: center;
    text-decoration: underline;
    transition: all 0.4s ease 0s;
    color: var(--primary-color-focus);
}

.DeclineButton {
    box-shadow: none !important;
}

.DeclineButton:active,
.DeclineButton:hover,
.DeclineButton:focus {}

.MobileScanButton {
    border-radius: 13px;
    margin: 0 0 0 0 !important;
    width: 100% !important;
    font-size: 1.40rem !important;
}

.MobileScanButton:active,
.MobileScanButton:hover,
.MobileScanButton:focus {}

.fiviRemoveBtn {
    position: absolute;
    left: 48.5%;
    top: -2rem;
    z-index: 2;
    background-color: var(--box-background-color);
    color: var(--primary-color);
}

.fiviRemoveBtn:active,
.fiviRemoveBtn:hover,
.fiviRemoveBtn:focus {
    color: var(--primary-color-focus);
}

.fiviCenterBtn {
    display: flex;
    justify-content: space-around;
    margin: 1.6rem 0 1.6rem 0;
}

.StartButton {
    width: fit-content !important;
    margin: 0 0 .8rem 0;
}

/*
    6. Control Specific
    6.1 Panel
*/
.fiviPanel {
    width: 100%;
}

.fiviPanelContainer {
    width: 100%;
}

.fiviPanel .PageDesc {
    margin: 0;
}

/*
    6.2 Product Services
*/
.ProductGroupTitles {
    margin: 0 0 .8rem 0;
}

.fiviProdServControl {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    padding: 0rem 0rem 1.6rem 0rem;
    position: relative;
}

.fiviProdServ {
    width: var(--control-width);
    margin: 1.6rem 0;
    padding: 1.6rem;
    background-color: #fff;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.09);
    border-radius: 0 0 8px 8px;
    position: relative;
    border-top: 6px solid var(--vibrant-blue);

}

.fiviProdServ>.fiviCheckBox>.DefaultTooltipClass {
    position: absolute;
    right: 1.6rem;
    top: 2.2rem;
    margin: 0;
}

.fiviProdServ> .fiviCheckBox>.tooltip,
.fiviProdServ> .tooltip,
.fiviProdServ> div > .tooltip {
    top: 2rem !important;
    left: unset !important;
    right: 3.5rem !important;
}

.fiviProdInnerPanel .tooltip {
    top: 0rem !important;
    left: unset !important;
    right: 2rem !important;
}

.fiviNoProd {
    padding: .8rem 0 1.6rem 2.4rem;
}

.Product_MoreInfo,
.Service_MoreInfo {
    margin: .8rem 0 .40rem 1.6rem;
}

.fiviProdInnerPanel>.Service_MoreInfo {
    margin: .8rem 0 .8rem 3.2rem;
}

.fiviProductFundingItem>.Product_MoreInfo {
    margin: auto;
    width: 80%;
}

.fiviProdPanel {
    padding: 0 0 0 1.6rem;
}

.fiviProdPanel>.fiviInput {
    width: 100%;
}

.fiviProductFundingItem>.fiviProdPanel {
    width: 80%;
    margin: auto;
}

.fiviProductFundingItem>.fiviInput {
    width: 80%;
    justify-content: space-between;
    padding-top: .8rem;
    margin: auto;
    align-items: center;
    padding: .8rem 0 0 1.6rem;
}

.fiviProductFundingItem>.fiviInput>input {
    order: 1;
}

.fiviProdInnerPanel {
    display: flex;
    flex-direction: column;
    margin: 0 0 0 0;
    position: relative;
}

.fiviProdInnerPanel>.DefaultTooltipClass {
    right: 0rem;
    top: .5rem;
}

.fiviProdDesc {
    margin: 0 2.4rem 0 2.4rem;
}

.fiviCDWizardInfo {
    width: 100%;
    justify-content: space-between;
    background-color: white;
    box-shadow: none;
    margin: 0 0rem;
    padding: 1.6rem 0;
}

.fiviCertDesc {
    margin: 0 .8rem;
}

.fiviMultiInput.fiviCDWizardInfo {
    flex-direction: row;
}

.ProductServiceTitle {
    align-items: center;
    display: flex;
}

.ProductServiceTitle>div {
    margin: 0;
}

.ProductServiceTitle>label {
    font-weight: 700;
    font-size: 1.6rem;
    margin: 0 0 0 .6rem;
}

.ProductServiceTitle.fiviCheckBox {
    margin: .8rem 0 0 0;
}

/*
    6.3 Address
*/
.DefaultAddressVerifyingClass {
    display: block;
    width: 100%;
    text-align: center;
}

.fiviSameAs {
    width: 50%;
    padding: .8rem 0;
    margin: 1.6rem 0 .8rem 0;
}

.AddressContainer {
    width: var(--control-width);
    position: relative;
}

.AddressContainer>.fiviAddress {
    position: static;
}

.AddressContainer .fiviSameAs {
    position: absolute;
    top: .5rem;
    right: 0rem;
    z-index: 1;
    margin: 0;
    padding: 0;
    justify-content: flex-end;
    width: calc(var(--control-width) / 2);
    height: 45px;
}

.AddressContainer .fiviSameAs>label {
    font-weight: normal;
    text-indent: -3px;
    margin-left: 3px;
}

.fiviAddManual {
    width: 100%;
    margin: 1.6rem 0 0 0;
}

/*
	6.4 Employment History
*/
.fiviEmpHistoryControl {
    width: 100%;
}

.fiviEmpHistHeadText {
    margin: .8rem 0 .8rem .40rem;
    display: block;
}

/*
	6.5 Income
*/
.fiviIncomeControl {
    width: 100%;
}

/*
	6.6 Documents
*/
.fiviDocumentList {
    width: 100%;
    margin: 1.6rem 1.6rem 0rem 1.6rem;
    display: flex;
    flex-direction: column;
}

.fiviDocListBtn {
    display: flex;
    justify-content: center;
}

.fiviDocumentList .fiviCenterBtn {
    margin-bottom: 0;
}

.fiviDocumentList td {
    vertical-align: middle !important;
}

.fiviDocumentList tr:nth-of-type(1)>td {
    font-weight: bold;
    text-align: left !important;
    border: none;
}

.fiviDocumentList td,
.fiviDocumentList tr {
    border: none;
    position: relative;
}

.fiviDocumentList .DefaultTooltipClass {
    position: relative;
    right: unset;
    top: .40rem;
}

.fiviDocumentList td .tooltip {
    right: 55% !important;
    top: 2rem !important;
}

.fiviDocumentList>.btn {
    align-self: center;
    order: 2;
}



/*
	6.7 Disclosures
*/
.fiviDisclosureList {
    display: flex;
    flex-direction: column;
    margin: .8rem 0 1.6rem .8rem;
    width: 100%;
}

.fivi-disclosure-modal .modal-header {
    font-weight: bold;
    font-size: 1.8rem;
}

.fivi-disclosure-modal .modal-body>div {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    width: 65rem;
    margin: 0 auto;
}

.fivi-disclosure-modal .modal-body .NextButton {
    margin-left: 5rem;
}

.fiviDisclosure-checkbox-container {
    display: flex;
    align-items: center;
}

.fiviDisclosure-checkbox-container .SaveButton {
    width: auto !important;
    margin: 0 0 0 1rem;
    padding: 0;
    font-size: 1.6rem;
    outline: none;
    border-radius: 0;
}

.fiviDisclosureList.fivi-disclosure-modal>.fiviDisclosure-modal-button {
    margin-bottom: 10px;
}

/*
	6.8 Product Relationship
*/
.fiviProductRelationship {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
}

.fiviProductRelationship td {
    padding: .8rem 3.2rem !important;
    margin: 3.2rem 0;
    vertical-align: middle !important;
}

.fiviProductRelationship table {
    overflow-x: auto;
    white-space: nowrap;
    border: none;
}

.fiviProductRelationship tr:nth-of-type(1)>td {
    font-weight: bold;
    text-align: left !important;
    border: none;
}

.fiviProductRelationship td,
.fiviProductRelationship tr {
    border: none;
}

/*
	6.9 Default ACH
*/
.fiviACHStatus {
    width: var(--control-width);
    margin: 0 0 0 1.6rem;
    display: block;
}

.fiviACHStatus>span {
    font-weight: normal !important;
}

.fiviACHcbCont {
    width: 50%;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
}

.fiviACHControl>.fiviCheckBox {
    width: 100%;
    margin: 5px 0 15px 16.5px;
}

/*
	6.10 Credit Card
*/

/* Has Just A CC Controls */
.fiviCreditCardControl {
    display: flex;
    justify-content: space-around !important;
    align-items: center;
}

.fiviCCCardInfo,
.fiviCCIndNameInfo {
    width: var(--control-width);
}

.fiviCCCardInfo>.DefaultAddressVerifyingClass {
    text-align: right;
    margin: 0 0 0 0;
    padding-right: 1.6rem;
}

/*Has CC and Name*/
.fiviCreditCardControl.ccControl-has-name .fiviCCIndInfo {
    width: var(--control-width);
}

.fiviCreditCardControl.ccControl-has-name .fiviCCIndInfo,
.fiviCreditCardControl.ccControl-has-name .fiviCCCardInfo,
.fiviCreditCardControl.ccControl-has-name .fiviCCIndNameInfo {
    width: 100%;
}

.fiviCreditCardControl.ccControl-has-name .fiviCCCardInfo {
    flex-direction: row;
}

.fiviCreditCardControl.ccControl-has-name .fiviCCCardInfo>.DefaultAddressVerifyingClass {
    text-align: left;
    order: 3;
}

/*Has CC, Name, Address*/
.fiviCreditCardControl.ccControl-has-name.ccControl-has-address {
    flex-direction: column-reverse;
    justify-content: flex-start;
    align-items: flex-start;
}

.fiviCreditCardControl.ccControl-has-name.ccControl-has-address .fiviCCIndInfo {
    width: 100%;
}

.fiviCreditCardControl.ccControl-has-name.ccControl-has-address .fiviCCCardInfo,
.fiviCreditCardControl.ccControl-has-name.ccControl-has-address .fiviCCIndNameInfo,
.fiviCreditCardControl.ccControl-has-name.ccControl-has-address .fiviCCIndAddy {
    width: var(--control-width);
}

.fiviCreditCardControl.ccControl-has-name.ccControl-has-address .fiviCCCardInfo>.DefaultAddressVerifyingClass {
    text-align: right;
}


#CreditCard_Month {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

#CreditCard_Year {
    border-radius: 0;
    border-left: none;
    border-right: none;
}

#CreditCard_CVV {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}


/*
	6.11 One Time Passcode
*/
.fiviOTPDest {
    padding: 0;
}

.fiviOTPDest:first-of-type {
    padding: 0;
    margin-top: 1.6rem;
}

.fiviOTPButtonGroup {
    padding: 1.6rem;
    margin: 0 auto;
    width: 100%;
}

.fiviPanelContainer>span>.fiviInput {
    margin: 0 auto;
}

/*
	6.12 HMDA
*/
.fiviHMDA {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

#hmdaEthnicityGender {
    width: 50%;
}

.fiviHMDAControl {
    width: 50%;
}

.fiviHMDAControl>.fiviMultiInput {
    padding-left: 1.6rem;
}

.fiviHMDAControl>.fiviMultiInput>.fiviCheckBox,
.fiviHMDAControl>.fiviMultiInput>div>.fiviCheckBox {
    width: 100%;
    margin: 0;
    padding: 0;
}

/*
	6.13 ProductFunding
*/
.fiviProductFunding {
    width: 100%;
    margin: auto;
}

.DefaultProductFundingTextBoxClass {
    width: 33% !important;
}

.fiviFundingAmount {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    border-top: 1px solid var(--primary-color);
    box-shadow: 0 -4px 6px -6px var(--primary-color);
    padding: .8rem 1.6rem 0 1.6rem;
    width: 80%;
    margin: 1.6rem auto;
}

.fiviFundingMethods {
    width: 100%;
}

.fiviFundingMethods .fiviMultiInput {
    justify-content: space-around;
}

.fiviFundingDetails {
    width: 100%;
}

/*
	6.14 Individual Details
*/
.fiviIndDetailTitle {
    font-size: 2rem;
    margin: .40rem 0;
    color: var(--primary-color);
    display: flex;
    align-items: baseline;
}

.IndDetailSingle,
.IndDetailGroupTitle {
    font-weight: 700;
}

.IndDetailGroup {
    margin: 0 0 0 .40rem;
}

.fiviIndDetails {
    margin: 0 0 0 .40rem;
    display: block;
}

.fiviEmptyIndList {
    width: 50%;
}

/*
	6.15 Individual List
*/
.IndividualLists {
    display: flex;
    justify-content: space-around;
}

.IndividualLists>.fiviPanel {
    margin: 1.6rem 3.2rem .8rem 3.2rem;
    display: block;
}

/*
	6.16 IDAuth
*/
.fiviIDAuth {
    margin: 1.6rem 0 0 0;
}

.fiviIDAuth label {
    font-weight: normal !important;
    padding-left: .40rem;
}

#IDAuthenticationQuestions td {
    padding-bottom: .2rem;
}

/*
	6.17 Progress Bar
*/
#progBar {
    position: absolute;
    background: transparent;
    z-index: 1;
    right: 0rem;
    bottom: -4rem;
    display: flex;
    width: var(--control-width);
    justify-content: space-between;
    align-items: center;
    padding: 0 0 0 .8rem;
    margin: 0 1.2rem 0 0;
    border-radius: .8rem;
    /* box-shadow: 0 .40rem .40rem rgba(0, 0, 0, 0.17); */
}

.ProgressBarOuter {
    background-color: var(--vibrant-colorwheel-blue-light);
    height: 16px;
    border: 1px var(--vibrant-blue);
    border-radius: 7px;
    /*box-shadow: 0 1px 5px #000 inset, 0 1px 0 #444;*/
    width: 70%;
    /* width: 32rem; */
    margin: 5px 10px 5px 2px;
    cellpadding: 0px;
    cellspacing: 0px;
    order: 2;
}

.ProgressBarInner {
    background-color: var(--vibrant-blue);
    border-radius: 1em;
    height: 14px;
    overflow: hidden;
}

.TextClass {
    font-weight: bold;
    vertical-align: middle;
    margin: 5px 0px 5px 0px;
    width: 30%;
    order: 1;
}

/*
	6.18 Beneficial Ownership
*/
.fiviBeneOwnership {
    margin: 1.6rem auto 0 auto;
    display: block;
    overflow-x: auto;
    white-space: nowrap;
}

.fiviBeneOwnership .fiviCenterBtn {
    margin-bottom: 0;
}

.fiviBeneOwnership table {
    overflow-x: auto;
    white-space: nowrap;
    border: none;
}

.fiviBeneOwnership td {
    padding: .8rem 3.2rem !important;
    margin: 3.2rem 0;
    vertical-align: middle !important;
}

.fiviBeneOwnership tr:nth-of-type(1)>td {
    font-weight: bold;
    text-align: left !important;
    border: none;
}

.fiviBeneOwnership td,
.fiviBeneOwnership tr {
    border: none;
}

/*
	6.19 Phone Control
*/
/*
.fiviInput.fiviLongInput.fiviPhoneControl {
	width: 60rem;
	margin-left: 16.4rem;
}
*/

.fiviPhoneControl>.fiviCheckBox {
    border: none;
    box-shadow: none;
    width: 12.8rem !important;
    background-color: #f7f6f7;
}

.fiviPhoneControl>.fiviCheckBox>label {
    font-weight: normal;
}

.fiviLongInput.fiviPhoneControl>.CtlValidator {
    left: 17.6rem;
}

/*
	6.20 Beneficiaries
*/
.fiviBeneficiaries {
    margin: 1.6rem auto 0 auto;
    display: block;
    overflow-x: auto;
    white-space: nowrap;
}

.fiviBeneficiaries .fiviCenterBtn {
    margin-bottom: 0;
}

.fiviBeneficiaries table {
    overflow-x: auto;
    white-space: nowrap;
    border: none;
}

.fiviBeneficiaries td {
    padding: .8rem 3.2rem !important;
    margin: 3.2rem 0;
    vertical-align: middle !important;
}

.fiviBeneficiaries tr:nth-of-type(1)>td {
    font-weight: bold;
    text-align: left !important;
    border: none;
}

.fiviBeneficiaries td,
.fiviBeneficiaries tr {
    border: none;
}

/*
	6.21 Account Selection
*/
.fiviAccountSelection {
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    margin: 0 0 calc(1.6rem + 5px) 0;
    padding: 0 0 0 0;
    align-items: center;
}

#indProdRel div {
    text-align: left !IMPORTANT;
    justify-content: flex-start;
    padding: .5rem 0 .5rem 0;
    flex-direction: row;
}

#indProdRel label:first-child {
    font-size: 1.8rem;
    font-weight: bold;
}

#indProdRel label {
    font-weight: normal;
}

#AccountSelectionCheckboxList label {
    font-weight: normal;
}

/*
	6.22 Prove
*/

.fiviMultiInput.fiviProveIndividualLookup {
    flex-direction: column;
    align-items: center;
}

.fiviMultiInput.fiviProveIndividualLookup>.ProveButtons,
.prove-previous-app>.ProveButtons {
    margin-top: 2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.fiviProveIndividualLookup>.loading {}

.prove-error-message {
    margin-top: 2rem;
    text-align: center;
}

.prove-previous-app>#ProvePreviousAppDescDiv {
    text-align: center;
    margin: 5rem 0;
    font-size: 1.6rem;
}

/*
	6.23 SMS Options
*/
.fiviPhoneControl {
    flex-wrap: wrap;
}

[id$="_pnlSMSOptInOut"] {
    width: 100%;
    max-width: var(--control-width);
    padding-top: 1.6rem;
}

[id$="_smsOptionsOuterDiv"] {
    width: 100%;
}

[id$="_smsOptionsOuterDiv"] br {
    display: none;
}

[id$="_innerButtonDivOptIn"],
[id$="_innerButtonDivOptOut"] {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

[id$="_innerButtonDivOptIn"] span,
[id$="_innerButtonDivOptOut"] span {
    padding: .75rem;
}

[id$="_outerButtonDiv"] {
    width: 100%;
    margin-bottom: 1.6rem;
}

[id$="_smsOptionsDiv"] {
    width: 100%;
    min-width: 100% !important;
    padding: 1.6rem !important;
}

[id$="_smsOptionsDiv"] span {
    width: 100%;
}

/*
    6.99 ID Specific
*/
#pnlNewIndividualList>div>h4,
#pnlExistingIndividualList>div>h4 {
    margin-top: 0;
}

#pnlIRSDisclosures .SectionBox {
    margin: 0 0 3.2rem 0;
}

#pnlBackupWithholding {
    margin: 0 0 1.6rem 1.6rem;
}

#Comments {
    padding: 0;
}

#pnlTransferFunds,
#pnlTransferFunds2 {
    margin: 1.6rem 0 0 0;
}

/*
    7. Specific Pages
    7.1 Default
*/
#DefaultContents .ApplicationHeader {
    text-align: center;
    /* padding-top: 1.5rem; */
}

#DefaultContents .SectionHeaders {
    margin-top: 2.4rem;
    margin-bottom: 1.6rem;
    font-size: 2.2rem;
}

.fa-li {
    color: var(--vibrant-blue-light);
    padding-top: .2rem;
}

.RequiredList>li {
    font-size: 1.6rem;
    margin: .2rem;
}

.thumbnailGroup {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 2.4rem 0 0 0;
}

.thumbnailMiniGroup {
    justify-content: space-around;
}

.thumbnail {
    width: 27.2rem;
    text-align: center;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.09);
    background-color: #fff;
    border: none;
    border-radius: 0 0 8px 8px;
    padding: .8rem .8rem 0 .8rem;
    border-top: 6px solid var(--vibrant-blue);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.thumbIcon {
    width: 68px;
    margin: auto;
    font-size: 27px;
    color: var(--vibrant-blue-light);
    padding: 18px 20px;
    background-color: #ffffff;
    border: solid 1px var(--vibrant-blue-light);
    border-radius: 50%;
    text-align: center;
}

.thumbnail p {
    padding: 0 .8rem .8rem .8rem;
    text-align: left;
    font-size: 1.6rem;
}

/*
    7.2 Application Summary
*/
.SumGroup {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    align-items: baseline;
    margin-bottom: .8rem;
}

.SumGroup>.fiviPanel {
    width: 50%;
}

.SumItem>div,
.SumItem>span,
.SumGroup>.SelectedProdGroup>.fiviIndDetailTitle {
    display: block;
    margin: 1.6rem 0 1.6rem 1.6rem;
}

.SumItem {
    width: 45%;
    position: relative;
}

.SumGroup>.fiviPanel .SumItem {
    width: 100%;
}

.SumGroup>.SelectedProdGroup {
    width: 45%;
    position: relative;
    justify-self: right;
}

.SelectedProdGroup .MinorButton {
    width: 10rem !Important;
    margin: 1.6rem 0 0 1.6rem;
}

.SumItem .MinorButton {
    width: 16rem !important;
}

.IconButton {
    color: var(--primary-color);
    font-size: 2.2rem;
    margin-left: 1.6rem;
    filter: drop-shadow(2px 2px 0 rgba(0, 0, 0, 0.2));
    cursor: pointer;
}

.IconButton:active,
.IconButton:hover,
.IconButton:focus {
    color: var(--primary-color-focus);
    filter: none;
}

/*
    8. Mobile
    8.1 Tablet & Phone in Landscape (600px to 1200px)
*/
@media all and (max-device-width: 900px),
all and (max-width: 900px) {
    .centerform {
        margin: 0 auto;
        width: 100%;
    }

    .form-section {
        margin: 0;
    }

    #LayoutHeaderContents,
    #LayoutFooterContents,
    #LayoutPage {
        padding: 8px 10px;
        width: 100%;
    }

    .form-section {
        margin: 0;
    }

    #HeadLogo,
    #HeadContact {
        max-width: 50%;
    }

    #HeadLogo>img {
        /* width: 100%; */
    }

    #LayoutFooterContents {
        width: 100%;
    }

    #LayoutPage {
        padding: 3.2rem 1rem 1.6rem 1rem;
    }
}

@media all and (max-device-width: 900px),
all and (max-width: 900px) {}

@media all and (max-device-width: 850px),
all and (max-width: 850px) {
    .thumbnailGroup {
        justify-content: space-around;
    }

    .thumbnail {
        margin: 0 1rem 2rem 1rem;
    }
}

@media all and (max-device-width: 825px),
all and (max-width: 825px) {
    .fiviMultiInput.fiviCDWizardInfo {
        flex-direction: column;
    }

    .fiviProdServ {
        width: 35rem;
    }

    ;

    h3 {
        width: var(--control-width);
    }

    h3.panel-title {
        width: 100%;
    }

    .fiviInput,
    .AddressContainer,
    .fiviACHStatus {
        width: 35rem;
    }

    .fiviLongInput {
        width: 100%;
    }

    .fiviCheckBox.TwoControls {
        padding: 8px 0 0px 0;
        margin-right: 0;
    }

    .fiviPhoneControl>.fiviCheckBox {
        width: 12.8rem !important;
    }

    .fiviLongInput>.TwoControls {
        width: 17.2rem !important;
    }

    .fiviPhoneControl {
        overflow-x: visible;
    }

    .cbButtonGroup {
        padding: 0 0 0 28rem;
    }

    .fiviProductFundingItem>.fiviInput,
    .fiviFundingAmount {
        width: 100%;
        margin: 0 0 0 0;
        padding: 1rem 0 0 0;
    }

    .fiviFundingAmount {
        margin-top: 1rem;
    }

    .fiviCreditCardControl.ccControl-has-name .fiviMultiInput {
        align-items: center;
        justify-content: center;
    }

    .fiviCreditCardControl.ccControl-has-name .fiviCCCardInfo {
        width: 100%;
        flex-direction: column;
    }

    .fiviCreditCardControl.ccControl-has-name .fiviCCCardInfo .DefaultAddressVerifyingClass,
    .fiviCreditCardControl.ccControl-has-name .fiviCCIndNameInfo {
        width: 35rem;
    }

    .fiviCreditCardControl.ccControl-has-name.ccControl-has-address .fiviMultiInput {
        align-items: center;
        justify-content: center;
    }

    .fiviCreditCardControl.ccControl-has-name.ccControl-has-address .fiviCCCardInfo {
        width: 100%;
        flex-direction: column;
    }

    .fiviCreditCardControl.ccControl-has-name.ccControl-has-address .fiviCCCardInfo .DefaultAddressVerifyingClass {
        width: 35rem;
    }

}

/*
    8.2 Smallest (<751px)
*/
@media all and (max-device-width: 750px),
all and (max-width: 750px) {

    .form-flex,
    .form-flex .fiviMultiInput {
        flex-direction: column;
        justify-content: space-around;
        align-items: center;
    }

    #LayoutHeaderContents {
        flex-direction: column;
        align-items: flex-start;
    }

    #HeadLogo {
        max-width: 75%;
        width: 100%;
    }

    #HeadContact {
        width: 100%;
        max-width: 100%;
        display: flex;
        justify-content: flex-start;
        flex-direction: row;
    }

    #HeadPhone,
    #HeadEmail {
        margin-left: 1rem;
    }

    #HeadContact>br {
        display: none;
    }

    #progBar {
        width: 100%;
        position: relative;
        bottom: -3rem;
    }

    .fiviProdServControl {
        flex-direction: column;
        align-items: center;
    }

    .ProgressBarOuter {
        margin-right: 5px;
    }

    .TextClass {
        font-size: 1.2rem;
    }

    #pnlDirectionButtons>.fiviPanelContainer,
    #pnlASC>.fiviPanelContainer,
    .pnlDirectionButtons {
        flex-direction: column-reverse;
        align-items: center;
    }

    .PrimaryButton {
        width: 30rem !important;
        margin: 0 0 2rem 0;
    }

    .StartButton {
        width: 100% !important;
    }

    .fiviInput {
        width: 30rem;
    }

    .fiviLongInput {
        flex-direction: column;
        margin-left: 0;
    }

    .DefaultLabelClass {
        width: calc(100% - 1.6rem);
    }

    .fiviLongInput>.TwoControls {
        width: 30rem !important;
    }

    .fiviProdServ {
        width: 30rem;
    }

    .AddressContainer .fiviSameAs {
        position: relative;
        left: 0;
        right: 0;
        top: 0;
        justify-content: flex-start;
        width: 30rem;
    }

    .rbButtonGroup {
        flex-direction: column;
        align-items: flex-start;
    }

    .cbButtonGroup {
        margin: 0 0 0 0;
        padding: 0 0 0 0;
    }

    .rbGroupQuest {
        width: 100%;
        margin-bottom: 1rem;
    }

    #btnBackButton {
        order: 2;
    }

    #btnNextButton {
        order: 3;
    }

    #pnlASC {
        order: 1;
    }

    #pnlASC>.fiviPanelContainer {
        margin-top: 0;
    }

    h4 {
        width: 30rem;
    }

    h3 {
        width: 30rem;
    }

    h3.panel-title {
        width: 100%;
    }

    .AddressContainer {
        width: 100%;
        display: flex;
        align-items: center;
        flex-direction: column;
    }

    .SumGroup {
        flex-direction: column;
        align-items: center;
    }

    .SumItem>div,
    .SumItem>span,
    .SumGroup>.SelectedProdGroup>.fiviIndDetailTitle {
        margin-left: 0;
    }

    .SumItem,
    .SumGroup>.SelectedProdGroup {
        width: 30rem;
    }

    #pnlIRSDisclosures h4 {
        width: 100%;
    }

    #pnlBackupWithholding {
        margin-left: 0;
    }

    .DefaultProductFundingTextBoxClass {
        width: 50% !important;
    }

    #pnlACHDetails h4,
    #pnlYesFundingOptions2 h4,
    #pnlCreditCardDetails h4 {
        width: 100%;
    }

    .fiviPanelContainer>span>.fiviInput {
        margin: 0 0;
    }

    .fiviACHStatus {
        width: 30rem;
    }

    .fiviCCIndInfo>.fiviInput,
    .fiviCCIndInfo>.fiviMultiInput>.fiviInput,
    .fiviCCCardInfo>.fiviInput,
    .fiviCCIndInfo,
    .fiviCCCardInfo {
        width: 30rem;
    }

    .fiviCCCardInfo .fiviTwoInput {
        flex-wrap: wrap;
    }

    .fiviCCCardInfo .fiviTwoInput>.TwoControls {
        width: 100% !important;
    }

    .fiviCCCardInfo .fiviTwoInput>.TwoControls {
        width: 15rem !important;
    }

    #CreditCard_Month {
        border-radius: .4rem;
    }

    #CreditCard_Year {
        border-radius: .4rem;
        border: 1px solid #C0C0C0;
    }

    .fiviDocumentList {
        margin-left: 0;
    }

    /* beneficial owners */

    .fiviBeneOwnership {
        width: 100%;
    }

    .fiviBeneOwnership tbody>tr:first-of-type {
        display: none;
    }

    .fiviBeneOwnership table>tbody>tr {
        border: 1px solid black
    }

    .fiviBeneOwnership table>tbody>tr>td {
        display: flex;
        flex-direction: column;
        align-items: center;
        max-width: 100%;
        padding: 0 !important;
        margin: 0 !important;
        border: none;
    }

    .fiviBeneOwnership table>tbody>tr>td input,
    .fiviBeneOwnership table>tbody>tr>td select {
        width: 65% !important;
    }

    .fiviBeneOwnership table>tbody>tr>td::before {
        font-size: var(--font-size-h3);
        line-height: var(--font-lineheight-h4);
        color: var(--font-color-h4);
        font-weight: var(--font-weight-h4);
        font-family: var(--font-family-h4);
        margin-top: 1rem;
    }

    .fiviBeneOwnership table>tbody>tr>td:nth-of-type(1):before {
        content: "Individual";
        font-weight: 600;
    }

    .fiviBeneOwnership table>tbody>tr>td:nth-of-type(2):before {
        content: "% Owned";
        font-weight: 600
    }

    .fiviBeneOwnership table>tbody>tr>td:nth-of-type(3):before {
        content: "Control Person";
        font-weight: 600
    }

    .fiviBeneOwnership table>tbody>tr>td:nth-of-type(4):before {
        content: "Organization Role";
        font-weight: 600
    }

    .fiviBeneOwnership table>tbody>tr>td:nth-of-type(1) {
        max-width: 100%;
        padding-bottom: 1rem !important;
    }

    .fiviBeneOwnership table>tbody>tr>td:nth-of-type(3) {
        max-width: 100%;
        padding-bottom: 1rem !important;
    }

    .fiviBeneOwnership .DefaultTooltipClass {
        position: relative;
        height: fit-content;
        margin: var(--gap-vertical-25) 0 !important;
    }

    .fiviBeneOwnership>input:first-of-type {
        display: none !important;
    }

}

/*
    8.3 Ultra Wide
*/
@media all and (min-device-width: 2400px),
all and (min-width: 2400px) {}


/*
    9.2 Always Required
*/
@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
    .fiviTransparent {
        color: white !important;
    }

    .fiviLongInput {
        width: 100%;
    }

    .fiviCreditCardControl {
        flex-direction: row-reverse !important;
    }
}

/*
    10. Admin Console/Branch
*/
.AdminConsole>#LayoutPage {
    padding: 1.6rem 3.2rem 1.6rem 3.2rem;
    width: 96rem;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.AdminConsole .form-inline,
.AdminConsole .form-flex {
    padding: 0 0 1.6rem 0;
}

.AdminConsole .form-inline>.rbButton,
.AdminConsole .form-flex>.rbButton {
    padding-left: .8em;
}

.AdminConsole .form-inline>.rbButton,
.AdminConsole .form-flex>.rbButton {
    padding-left: .8em;
}

.AdminConsole .SectionHeaders {
    margin-left: 0;
}

.AdminConsole .FocusLabelClass,
.AdminConsole .fiviInput.fiviLongInput.fiviPhoneControl>.FocusLabelClass {
    top: 0;
    left: 0;
}

.AdminConsole .fiviPanelContainer>span>.fiviInput {
    margin: 0;
}

.fiviBranchScanner>.pnlDirectionButtons {
    justify-content: center;
    flex-wrap: wrap;
}

.fiviBranchScanner>.pnlDirectionButtons>.btn {
    margin: .5rem 4rem 1.6rem 4rem;
}

/*
    10.1  Branch Specific Controls
    10.1a Person Search
*/
.fiviPersonSearch {
    width: 100%;
    display: block;
}

.fiviPersonSearch .form-control {
    width: 30% !important;
}

.fiviPersonSearch .form-inline {
    display: block;
    padding: 0 0 0 0;
}

.fiviPersonSearch .form-inline .form-control {
    width: 30% !important;
}

.fiviPersonSearch td {
    vertical-align: middle !important;
}

.fiviPersonSearch tr:nth-of-type(1)>td {
    text-align: left !important;
    border: none;
}

.fiviPersonSearch td,
.fiviPersonSearch tr {
    border: none;
}

.fiviPersonSearch .fiviCenterBtn {
    display: inline-block;
}

.fivicheckbox a {
    margin-right: 1.5em;
}

.errors {
    color: red;
}

.fiviProdServ>div>div>a {
    margin-right: 1.5em;
}


/*
Unused?


@viewport {
    width: device-width;
}

@-ms-viewport {
    width: device-width;
}

select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
    font-size: 1.6rem !important;
}

*/