/* FORM WRAP */
#formWrapper { position: relative; z-index: 1000; }


/* FULL WIDTH WRAP */
.fullWidthFieldInput, .fullWidthField { position: relative; margin-bottom: 10px; }

.fullWidthFieldInput input[type="text"],
.fullWidthFieldInput input[type="number"],
.fullWidthFieldInput input[type="tel"],
.fullWidthFieldInput input[type="phone"],
.fullWidthFieldInput input[type="email"] {
    width: 100%;
    border: 1px solid #999;
    height: 30px;
    padding: 0;
    color: #333;
    text-indent: 5px;
    margin-bottom: 8px;
    border-radius: 2px;
    -webkit-appearance:none !important;
}

input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
  -webkit-appearance: none; 
  margin: 0; 
}


input[type="number"] {
    -moz-appearance: textfield;
}


.fullWidthFieldInput input[type="textarea"], .fullWidthFieldInput textarea  {
    width: 100%;
    border: 1px solid #999;
    height: 70px;
    font-size: 1em;
    padding: 0;
    text-indent: 5px;
    margin-bottom: 8px;
    border-radius: 2px;
    -webkit-appearance:none;
}

.fullWidthFieldInput input[type="radio"] {
    margin-bottom: 8px;
}

#formWrapper form.becker .fullWidthField input[type="radio"] {
    border: 1px solid #999;
    padding: 0.6em;
    -webkit-appearance: none;
}

#formWrapper form.becker .fullWidthField input[type="radio"]:checked {
  background: url(/FORMMODR/img/checker.jpg) no-repeat center center;
  background-size: 15px 15px;
}

#formWrapper form.becker .fullWidthField span.spanRadio { float: none; font-weight: bold; font-size: 1.1em; padding: 20px; }

.fullWidthField select {
    width: 100%;
    border: 1px solid #999;
    background-color: #ffffff;
    margin-bottom: 8px;
    border-radius: 2px;
    height: 30px;
}

.disclaimer select {
    width: 100%;
    border: 1px solid #999;
    background-color: #ffffff;
    font-size: 1em;
    margin-bottom: 8px;
    border-radius: 2px;
    height: 35px;
}

.financial-aid select {
    width: 100%;
    border: 1px solid #999;
    background-color: #ffffff;
    font-size: 1em;
    margin-bottom: 8px;
    border-radius: 2px;
    height: 35px;
}

.fullWidthField p {
    font-size: 12px;
    text-align: justify;
    margin: 0;
}

.financial-aid p {
    font-size: 12px;
    text-align: center;
    margin: 0;
}

.disclaimer p {
    font-size: 11px;
    text-align: justify;
    margin: 0;
}

.fullWidthField button {
    border: 1px solid #cccccc;
    background-color: #efefef;
    font-size: 1.4em;
    width: 100%;
    padding: 2% 0;
    -webkit-appearance:none;
}

.fullWidthField button:hover {
    border: 1px solid #666666;
    background-color: #999999;
    color: #ffffff;
}

label {
    float:left;
    font-weight: 700;
    text-align: left;
}


/* SINGLE STEP STYLES */

#formWrapper form.longFormat input.submit-btn {
    width: 100%;
    height: 50px;
    margin-top: 5px;
}

/* MULTI STEP FORM STYLES */

#formWrapper fieldset {
	background: transparent;
	position: relative;
    text-align: center;
    width: auto;
    margin: 10px 0 0 0;
    transform: none !important;
}

/*Hide all except first fieldset*/
#formWrapper fieldset:not(:first-of-type) {
	display: none;
}

#formWrapper fieldset + fieldset {
    display: none;
}


#formWrapper .stepWrapper {
    position: relative;
    width: 100%;
    height: auto;
}

/* headings */

.fs-title {
	font-size: 15px;
	text-transform: uppercase;
	color: #2C3E50;
	margin-bottom: 10px;
}
.fs-subtitle {
	font-weight: normal;
	font-size: 13px;
	color: #666;
	margin-bottom: 20px;
}
/* progressbar */

#progressbar {
	margin-bottom: 20px;
    margin-top: 5px;
	overflow: hidden;
	/*CSS counters to number the steps*/
	counter-reset: step;
    -webkit-padding-start: 0;
    border-radius: 10px;
    padding: 0;
}

/* BUTTON STYLES */

#formWrapper .action-button {
    background-color: #999999;
    border: none;
	font-weight: bold;
    font-size: 16px;
	color: white;
	border-radius: 1px;
	cursor: pointer;
    -webkit-appearance:none;
}
#formWrapper .action-button:hover, #formWrapper .action-button:focus {
	background-color: #666666;
    -webkit-appearance:none;
}

#formWrapper .submit-btn {
	font-weight: bold;
	color: white;
	border: 0 none;
	border-radius: 1px;
	cursor: pointer;
    -webkit-appearance:none;
}

#formWrapper .asubmit-btn:hover, #formWrapper .submit-btn:focus {
    -webkit-appearance:none;
}

#formWrapper .previous {
	background-image: linear-gradient(to top, #333, #666);
	font-weight: bold;
    font-size: 16px;
	color: white;
	border: 0 none;
	border-radius: 1px;
	cursor: pointer;
	padding: 2%;
	margin: 2%;
    -webkit-appearance:none;
}

#formWrapper .previous:hover, #formWrapper .previous:focus {
	background-image: linear-gradient(to bottom, #333, #666);
    
}


/* TWO STEP PROGRESS BAR */
form.twoStep .bottomFeeder { position: relative; }

/* MULTISTEP (>4) PROGRESS BAR */
form.fiveStep #progressbar, 
form.sixStep #progressbar,
form.sevenStep #progressbar,
form.eightStep #progressbar,
form.nineStep #progressbar,
form.tenStep #progressbar,
form.elevenStep #progressbar,
form.twelveStep #progressbar{
	margin-bottom: 20px;
	overflow: hidden;
	/*CSS counters to number the steps*/
	counter-reset: step;
    -webkit-padding-start: 0;
    border-radius: 25px;
    padding: 0;
    background: url('/FORMMODR/img/st3.jpg');
    border: 2px solid #666;
    
}

/* PROGRESS BAR ALL FORMS (MULTI-STEP) */
form #progressbar li {
    list-style-type: none;
	color: #fff;
    background: #999;
    text-align: center;
	text-transform: uppercase;
    padding: 0;
	font-size: 13px;
	width: 50%;
    margin: 0;
	float: left;
	position: relative;
}

form.fourStep.becker #progressbar { margin: 5px 0; }
form.threeStep.becker #progressbar { margin: 5px 0; }
form.fourStep.becker #progressbar li { background: transparent; }
form.threeStep.becker #progressbar li { background: transparent; }

/* THREE STEP PROGRESS BAR */
form.threeStep #progressbar li { width: 33.33%; }

/* FOUR STEP PROGRESS BAR */
form.fourStep #progressbar li { width: 25%; }

/* BECKER STEP PROGRESS BAR */
form.threeStep.becker #progressbar li {
    list-style-type: none;
    width: 33.33%;
    height: 20px;
    float: left;
    font-size: 12px;
    position: relative;
    text-align: center;
    text-transform: uppercase;
    color: #1361AB;
    margin: 10px 0;
}

form.fourStep.becker #progressbar li {
    list-style-type: none;
    width: 25%;
    height: 20px;
    float: left;
    font-size: 12px;
    position: relative;
    text-align: center;
    text-transform: uppercase;
    color: #1361AB;
    margin: 10px 0;
}

form.fourStep.becker #progressbar li:before {
    width: 17px;
    height: 17px;
    content: counter(step);
    counter-increment: step;
    color: #FFF;
    line-height: 16px;
    border: 2px solid #1361AB;
    display: block;
    text-align: center;
    margin: 0 auto;
    border-radius: 50%;
    background-color: white;
}

form.fourStep.becker #progressbar li:after {
    width: 100%;
    height: 2px;
    border: 1px dashed #1361AB;
    content: '';
    position: absolute;
    /*background-color: #7d7d7d;*/
    top: 8px;
    left: -50%;
    z-index: -1;
}

form.threeStep.becker #progressbar li:before {
    width: 17px;
    height: 17px;
    content: counter(step);
    counter-increment: step;
    color: #FFF;
    line-height: 16px;
    border: 2px solid #1361AB;
    display: block;
    text-align: center;
    margin: 0 auto;
    border-radius: 50%;
    background-color: white;
}

form.threeStep.becker #progressbar li:after {
    width: 100%;
    height: 2px;
    border: 1px dashed #1361AB;
    content: '';
    position: absolute;
    /*background-color: #7d7d7d;*/
    top: 8px;
    left: -50%;
    z-index: -1;
}

form.fiveStep #progressbar li {
    background: none;
    border-radius: 0;
    padding: 0;
	font-size: 16px;
	width: 20%;
    height: 10px;
    margin: 0;
	float: left;
	position: relative;
}

form.sixStep #progressbar li {
    background: none;
    border-radius: 0;
    padding: 0;
	font-size: 16px;
	width: 16.6666667%;
    height: 10px;
    margin: 0;
	float: left;
	position: relative;
}

form.sevenStep #progressbar li {
    background: none;
    border-radius: 0;
    padding: 0;
	font-size: 16px;
	width: 14.2857143%;
    height: 10px;
    margin: 0;
	float: left;
	position: relative;
}

form.eightStep #progressbar li {
    background: none;
    border-radius: 0;
    padding: 0;
	font-size: 16px;
	width: 12.5%;
    height: 10px;
    margin: 0;
	float: left;
	position: relative;
}

form.nineStep #progressbar li {
    background: none;
    border-radius: 0;
    padding: 0;
	font-size: 16px;
	width: 11.11%;
    height: 10px;
    margin: 0;
	float: left;
	position: relative;
}

form.tenStep #progressbar li {
    background: none;
    border-radius: 0;
    padding: 0;
	font-size: 16px;
	width: 10%;
    height: 10px;
    margin: 0;
	float: left;
	position: relative;
}

form.elevenStep #progressbar li {
    background: none;
    border-radius: 0;
    padding: 0;
	font-size: 16px;
	width: 9.09%;
    height: 10px;
    margin: 0;
	float: left;
	position: relative;
}


form.twelveStep #progressbar li {
    background: none;
    border-radius: 0;
    padding: 0;
	font-size: 16px;
	width: 8.33%;
    height: 10px;
    margin: 0;
	float: left;
	position: relative;
}

/*marking active/completed steps green*/
/*The number of the step and the connector before it = green*/
form.twelveStep #progressbar li.active,
form.elevenStep #progressbar li.active,
form.tenStep #progressbar li.active, 
form.nineStep #progressbar li.active,
form.eightStep #progressbar li.active,
form.sevenStep #progressbar li.active,
form.sixStep #progressbar li.active,
form.twelveStep #progressbar li.active, form.elevenStep #progressbar li.active, form.tenStep #progressbar li.active, form.nineStep #progressbar li.active, form.eightStep #progressbar li.active, form.sevenStep #progressbar li.active, form.sixStep #progressbar li.active, form.fiveStep #progressbar li.active {
    background: linear-gradient(#6efa07, #1ada1e);
    background: -webkit-linear-gradient(top, #6efa07, #1ada1e);
    background: -moz-linear-gradient(top, #6efa07, #1ada1e);
    background: -ms-linear-gradient(top, #6efa07, #1ada1e);
    background: -o-linear-gradient(top, #6efa07, #1ada1e);
    background-color: #1ada1e;
    color: white;
    opacity: .75;
}
/* form.fiveStep #progressbar li.active {
    background:linear-gradient(#1361AB , #00ADEE);
    background: -webkit-linear-gradient(top, #1361AB , #00ADEE); 
    background: -moz-linear-gradient(top, #1361AB , #00ADEE); 
    background: -ms-linear-gradient(top, #1361AB , #00ADEE); 
    background: -o-linear-gradient(top, #1361AB , #00ADEE); 
    background-color: #1361AB;
	color: white;
    opacity: .75;
} */

/* BECKER ACTIVE LI */

form.fourStep.becker #progressbar li:first-child:after, form.threeStep.becker #progressbar li:first-child:after {
      content: none;
  }

form.fourStep.becker #progressbar li.active, form.threeStep.becker #progressbar li.active {
      color: #1361AB;
  }
form.fourStep.becker #progressbar li.active:before, form.threeStep.becker #progressbar li.active:before {
      border-color: #1361AB;
      color: #1361AB;
      background-color: #1361AB;
  }
form.fourStep.becker #progressbar li.active + li:after, form.threeStep.becker #progressbar li.active + li:after {
      
  }

/* TOOL TIP STYLES */

/* TOOL TIP STYLES */

/* simple css-based tooltip */
.tooltip-fallback {
    display: inline-block;
    cursor: pointer;
    max-width: none;
    background: #EEE;
    border: 1px solid #CCCCCC;
    border-radius: 50px;
    padding: .1em .8em;
    font-size: .9em;
    font-weight:300 !important;
    text-transform:unset !important;
  }

  .tooltip-fallback:hover {
    background: #333333;
    border: 1px solid #333333;
    color: #FFFFFF !important;
  }
  
  .tooltip-fallback::after {
    content: attr(data-tooltip);
    position: absolute;
    top: 125%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    background: #fff;
    color: #000;
    padding: 12px 16px;
    border-radius: 12px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.25);
    z-index: 1000;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
    white-space: normal;
    word-wrap: break-word; 
    text-align: left;
    line-height: 1.4;
    pointer-events: none;
    font-size: .9em;
  }
  
  .tooltip-fallback:hover::after {
    opacity: 1;
  }

  .tipParagraph { position: relative; }

label {
    float:left;
    font-weight: 700;
}

.formWrapper #exploreForm .bottomFeeder { position: relative !important; }
.formWrapper:nth-child(9) #exploreForm .bottomFeeder { position: relative !important; height: 350px;}


/* Hidden Field Style */

.hideField { display: none; }

.fullWidthField span { font-weight: 700; }

.fullWidthField span, .fullWidthFieldInput span { font-weight: 700; } 

/* HIDE ONLINE STYLE */

.hideOnline { display: block; }

/* APPLY NOW */

.applyCTAwrapper { float: left; width: 100%; margin-bottom: 20px; text-align: center;}
#appNowCta { 
    display: inline-block;
    float: none;
    width: 60%;
    padding: 10px 0;
    text-align: center;
    line-height: 28px;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: bold;
    box-shadow: 0 0 0 0 #333;
    -webkit-box-shadow: 0 0 0 0 #333;
    margin: 3px 0; 
    background: #585556;
    background: -moz-linear-gradient(top,#8cc63e 0%,#5e852a 100%);
    background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,#8cc63e),color-stop(100%,#5e852a));
    background: -webkit-linear-gradient(top,#8cc63e 0%,#5e852a 100%);
    background: -o-linear-gradient(top,#8cc63e 0%,#5e852a 100%);
    background: -ms-linear-gradient(top,#8cc63e 0%,#5e852a 100%);
    background: linear-gradient(to bottom,#8cc63e 0%,#5e852a 100%);
    color: #FFFFFF !important;
    border: 1px solid #5e852a;
}
#appNowCta:hover { background: #8cc63e; }


/* OLD TEMPLATE OVERRIDES */

.oldTemplate #formWrapper {
    min-height: 337px !important;
}

.oldTemplate #formWrapper fieldset {
    min-height: 280px !important;
}

.oldTemplate .bottomFeeder {
    position: relative !important;
}

.oldTemplate .tooltip {
    margin-top: 0 !important;
    top: 105px !important;
}


/* ========= VALIDATION BS GLYFICON STYLES ========= */

#formWrapper span.error { /*ine-height: 4px;*/ font-weight: 300; padding: .3em .5em; background: #ffd9d9; display: inline-block; border-radius: 5px; text-align: left; width: 100%; }
#formWrapper span.error:empty { display: none !important; }

.has-feedback label ~ .form-control-feedback { top: 0 !important; }

.has-success .form-control-feedback { color: #2cd832 !important; }

/* -------- HS FORM HACK ---------- */
body.hschool #formWrapper form #highSchoolCounselorNameField { clear: left !important; }
body.hschool #formWrapper span.error { color: #333; background: orange; padding: 10px; width: 100%; }

/* LABELS WITH 2 LINES */
/*.has-feedback.doubleSpaceFieldQuestion label ~ .form-control-feedback { top: 50px !important; }
.has-feedback label ~ .form-control-feedback.glyphicon-ok { top:-3px !important; }

@media only screen and (min-width: 1131px) and (max-width: 1199px)  {
    .has-feedback.doubleSpaceFieldQuestion label ~ .form-control-feedback { top: 30px !important; }
}

@media only screen and (min-width: 914px) and (max-width: 940px)  {
    .has-feedback label ~ .form-control-feedback { top: 14px !important; }
}

@media only screen and (min-width: 769px) and (max-width: 913px) {
    .has-feedback.doubleSpaceFieldQuestion label ~ .form-control-feedback { top: 40px !important; }
    .has-feedback label ~ .form-control-feedback { top: 20px !important; }
}

@media only screen and (min-width: 487px) and (max-width: 767px) {
    .has-feedback.doubleSpaceFieldQuestion label ~ .form-control-feedback { top: 25px !important; }
    .has-feedback label ~ .form-control-feedback { top: 20px !important; }
}

@media only screen and (max-width: 486px){
    .has-feedback.doubleSpaceFieldQuestion label ~ .form-control-feedback { top: 40px !important; }
    .has-feedback label ~ .form-control-feedback { top: 20px !important; }
}*/

#formWrapper .inner-addon { 
    position: relative; 
}

/* style icon */
.inner-addon .posGlyph {
  position: absolute;
  padding: 10px;
  pointer-events: none;
}

/* align icon */
.left-addon .posGlyph  { left:  0px; top: -2px;}
.right-addon .posGlyph { right: 0px;}

/* add padding  */
#formWrapper .left-addon input  { padding-left:  25px; }
#formWrapper .right-addon input { padding-right: 25px; }

#formWrapper .milerr { text-align:center; float: left; width: 100%; }

/* ONLINE DISCLAIMER STYLES */

.onlineDisclaimer {
    padding: 8px;
    background: #FFFED1;
    margin-bottom: 5px !important;
    border: solid 1px #FFD700;
}

@keyframes wiggle {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-4px); }
  40% { transform: translateX(4px); }
  60% { transform: translateX(-4px); }
  80% { transform: translateX(4px); }
}

/* Applies a single wiggle after a delay of 3 seconds */
.form-animation,
.form-animation2 {
  animation: wiggle 0.6s ease-in-out 3s forwards;
  transform-origin: center;
}

/* Optional: jiggle continuously starting after 5 seconds */
.jiggle {
  animation: wiggle 0.5s ease-in-out 5s infinite;
}
