/** ----------------------------------------------------------
 *
 * This stylesheet includes both generic form styles and
 *    additional form styles for the User Defined Form Module.
 *
 ** ------------------------------------------------------- */


/* GENERIC FORMS
----------------------------------------------- */

form {
    max-width: 500px;
   /* margin: 0 auto;*/
   
}
div.field {
    margin: 10px 0 15px;
}
fieldset {
    border: 0;
    margin: 8px 0 20px 0;
    padding: 0;
    
}
form label {
    margin-bottom: 5px;
}
    form label.left {
        display: block;
        font-weight: bold;
    }
    form label.right {
        font-size: 14px;
        color: #333333;
    }

form input.text,
form textarea,
form .textajaxuniquetext,   /* Not sure if this is used? */
form select {
    width: 100%;
    max-width: 400px;
    padding: 6px 5px;
    background-color: #fff;

  /*  font-size: 15px;
    background-color: #fff;
    border: 1px solid #dad9d9;*/
}
    .ie7 form select { width: 400px; } /* fix for ie7's rendering of max-width property on select input */

form input.text:focus,
form textarea:focus,
form .textajaxuniquetext:focus,
form select:focus {
    outline:none;
}
form input[disabled], form textarea[disabled] {
    background-color: #f7f7f7;
    border: 1px solid #dad9d9;
}
textarea {
    resize: vertical; /* forces text area to be resized vertically only */
}


/* Radio and Checkbox */
.field .checkbox:not(.field),
.field .radio:not(.field) {
    float: left;
    width: 13px;
    height: 13px;
    margin-right: 6px;
    margin-top: 5px;
    padding: 0;
}
    .checkbox label.right,
    .radio label.right {
        float: left;
    }


/* Messages */
form .message {
    background-color: #fef4ba;
    padding: 5px 10px;
    border: 1px solid #e8c805;
    border-radius: 3px;
}
    form .good {
        background-color: #ecf9d0;
        border-color: #8fbe00;
    }
    form .bad,
    form .required,
    form .error {
        background-color: #f9d0d0;
        border-color: #cf0000;
        color: #b80000;
    }


/* ACTIONS 
.Actions {
    margin-bottom: 20px;
}
    a.btn, button, input[type="submit"], input[type="reset"], .Actions .action {
        background: #b80000;
        color: #fff;
        display: inline-block;
        border-radius: 4px;
        padding: 6px 15px;
        margin-top: 10px;
        margin-bottom: 10px;
        text-transform: uppercase;
        letter-spacing: 1px;
        border: none;
        font-size: 13px;
        margin-right: 10px;
        float: left;
    }
    a.btn:hover, button, input[type="submit"]:hover, .Actions .action:hover {
        background: #C80000;
        color: #fff;
    }
    a.btn {
        line-height: 18px;
        margin-bottom: 10px;
    }
    a.btn:after {                     
        content: '\2192';
        padding-left: 10px;
    }
    .ie7 input.action {
        width: 0;                     
        overflow: visible;
    }
    input.action[class] {             
        width: auto;                  
    }

    .ie7 .Actions .action {
        float: left;
    }
    .Actions:after {
        color: #B94A48;
        display: inline-block;
        font-weight: normal;
        margin-top: 9px;
    }
    #MemberLoginForm_LoginForm .Actions:after {
        display: none;
    }


/* AREA SPECIFIC */
    /* LOGIN and FORGOT PASSWORD */
    #Remember {
        min-height: 20px;
    }
    #ForgotPassword {
        /*clear: left;*/
        margin-top: 20px;
        width: 100%;
    }
    #MemberLoginForm_LostPasswordForm .Actions:after {
        display: none;
    }

    /* Search / Login */
    .header form .middleColumn {
        /* float: none;
        width: 100% !important; */
    }




/* USER DEFINED USER FORM MODULE STYLES
----------------------------------------------- */

/*Generic and mixed*/
.FormHeading {
    clear: both;
    padding-top: 15px;
}
form .date .middleColumn input {
    /*background: transparent url(../images/icons/your_icon_here.png) no-repeat scroll 90px 5px;*/
    width: 114px;
}
.Actions input.resetformaction,
.Actions input.action-minor {                  /* Clear button */
    float: left;
    background-color: #888;
}
.Actions input.resetformaction:hover,
.Actions input.action-minor:hover {            /* Clear button */
    background-color: #aaa;
}

/* Labels */
.checkbox label.right {
    font-size: 13px;                            /* reset to default */
    color: #333;                                /* reset to default */
}
form .requiredField label.left:after { /* pseudo element adds an asterisk to a required fields label */
    color: #B94A48;
    content: "*";
    font-size: 14px;
    font-weight: normal;
    padding-left: 3px;
}

/* Radio / Checkbox */
form .checkboxset ul,
form .optionset ul {
    margin: 0;
}
    form .checkboxset li,
    form .optionset li {
        margin-bottom: 5px;
        list-style-type:none;
    }
    form div.checkbox:after { /* clearfix */
        content: ".";
        display: block;
        height: 0;
        clear: both;
        visibility: hidden;
    }
    form .checkbox .checkbox { clear: both; }

/* Messages */
span.message {
    margin: 10px 0;
    display: block;
    max-width: 390px;
    clear: left;
}
div.holder-required {               /* This class needs to be changed - is used for both input and div */
    /* background-color: #f9d0d0;
    border: 1px solid #cf0000;
    padding: 10px;
    margin-left: -11px; */
}
form input.holder-required {        /* This class needs to be changed - is used for both input and div */
    border: 1px solid #cf0000;
}

/* Error messages */
input:invalid,
textarea:invalid {
    border-radius: 1px;
    box-shadow: 0px 0px 5px red;
}
.no-boxshadow input:invalid,
.no-boxshadow textarea:invalid {
    background-color: #f0dddd
}

/* To test - potentially not needed? */
.ss-uploadfield-item-info button{
    margin-top: 4px !important;
    float: left;
}
form .creditCardField input,
form input.currency,
form input.numeric {
    width: 50px;
}
form #DMYDate-month,
form #DMYDate-day {
    width: 25px
}


.step-button-next, .step-button-prev {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    background-color: #062663;
    border-radius: 4px;
    border: 0;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
    color: #fff !important;
    cursor: pointer;
    display: inline-block;
    font-weight: 300;
    height: 3em;
    line-height: 3em;
    padding: 0 2.25em;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    font-family: 'Philosopher', Helvetica, sans-serif;
   /* font-size: 11.5pt;*/
}

.step-button-jump {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    background-color: #062663;
    border-radius: 100%;
    border: 0;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
    color: #fff !important;
    cursor: pointer;
    display: inline-block;
    font-weight: 300;
    width: 30px;
    height: 30px;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    font-family: 'Philosopher', Helvetica, sans-serif;
    /*font-size: 11.5pt;*/
}

.step-button-jump:hover, .step-button-next:hover, .step-button-prev:hover {
    background: #325ca6;
    box-shadow: inset 0 0 0 1px #ffcc00;
    color: #ffcc00 !important;
}

.step-buttons {
    margin-block-start: 0;
    padding-left:0;
    padding-inline-start: 0;
}

.step-button-wrapper {
    padding-left: 0;
}

.userform-progress {
    margin-bottom: 30px;
}

.userform-progress .progress-bar {
        background: linear-gradient(to right, #a6bcdf, #062765);
}

.userform-progress .progress {
    background: #a6bcdf;
}

.dropdown::after {
    color: #062664;
    content: '▾';
    margin-right: 10px;
    pointer-events: none;
    position: relative;
    display: block;
    top: -35px;
    right: -10px;
    font-size: 20px;
}

select {
    text-indent: 25px;
}

#Form_RegisterForm_MailingLists li, #SubscriptionForm_Form_NewsletterSelection li {
    list-style: none;
}

.form-control {
    height:unset;
}

.form-control:focus {
    color: #062663;
    background-color: #fff;
    border-color: #ffd21f;
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(255, 210, 31, 0.09);
}


/* Responsive form styles
----------------------------------------------- */

@media only screen and (max-width: 700px) {

    /* To test - potentially not needed? */
	.header form .middleColumn {
	    float: none;
	    width: 100% !important;
	}
	form label.left,
	#MemberLoginForm_LoginForm label {
	    margin-bottom: 8px
	}
}





@media screen and (max-width: 980px) {
    .step-button-next, .step-button-prev, .step-button-jump {
        font-size: 12pt;
    }

}

@media screen and (min-width: 981px) and (max-width: 1280px) {
    .step-button-next, .step-button-prev, .step-button-jump {
        font-size: 11.5pt;
    }

}

@media screen and (min-width: 1281px) and (max-width: 1680px) {
    .step-button-next, .step-button-prev, .step-button-jump {
        font-size: 13pt;
    }
}