/* fieldsets */
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/* form rows */
.form-row {
	margin: 0 0 5px 0;
	padding: 8px 12px;
	background: #e8e8e8;
}
.form-row ul.radio {
    margin: 0;
    padding: 0;
}
.form-row ul.radio li {
    margin: 0;
    padding: 0;
}
.form-row ul.radio input {
    float: left;
    margin-right: 15px;
}
.form-row ul.radio label {
    font-weight: bold;
	float: left;
	color: #000080;
	font-size: 1.154em;
	margin-bottom: 10px;
}

/* forms */
input.form-text {
/*	background: url(../img/forms/text-bg.png) no-repeat left top;
	border: 1px solid #bbb;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	color: #666;
	display: block;
	font-size: 1em;
	height: 19px;
	line-height: 1.5em;
	margin: 0;
	padding: 4px 5px;
	width: 148px;*/
	width: 205px;
}

textarea.form-text {
  border: 1px solid #bbb;
  color: #666;
  display: block;
  font-size: 1em;
  line-height: 1.5em;
  margin: 0;
  padding: 4px 5px;
}

/* other */
.req {
  color: #c00;
}


/* radios */
fieldset ul {
	list-style-type: none;
}

fieldset ul li{
	clear: both;
}


ul li label {
	float: left;
	width: 80%;
}

fieldset ul li .radio {
	float: left;
}




/**                   **/
/** additional styles **/
/**                   **/

.donate .btn-blue-continue,
.forms .btn-blue-continue {
	/*float: right;*/
}

.right-callout {
	float: right;
	margin-left: 0px !important;
}

.donate .right-callout {
    float: none;
}

.donate #billing-postcode-list {
    clear: both;
    padding-top: 10px;
}

.forms-box {
	background: #fff;
	-moz-box-shadow: 0px 0px 3px #666;
	-webkit-box-shadow: 0px 0px 3px #666;
	box-shadow: 0px 0px 3px #666;
	padding: 15px;
	margin-bottom: 20px;
	clear: both;
}

.forms-box h2 {
	background-color: #000080;
	color: #fff;
	margin: 0 0 5px;
	padding: 10px 15px;
	font-size: 1.2em;
	font-weight: bold;
	width: 560px;
}

.forms-box .fineprint {
	font-size: 0.85em;
}

.one-off-donation label {
	margin-right: 10px;
	position: relative;
	left: 0;
}

.one-off-donation .otherAmount label {
	margin-right: 0;
}

.one-off-donation .form-text {
	display: inline-block;
	margin-left: -15px;
}

.one-off-donation .submit {
	background-color: #003d85;
	color: #fff;
	border: 0px;
	padding: 2px 3px;
	cursor: pointer;
}

.amount input {
	display: inline-block;
	margin-right: 20px;
	float: none;
}

.gift-aid label {
	font-weight: bold;
	font-size: 1.2em;
}

.forms-box.details label {
	font-weight: bold;
	float: left;
	color: #000080;
	font-size: 1.1em;
	width: 175px;
	margin-top: 3px;
}

.forms-box.details .wide label {
	width: 100%;
	margin: 0 0 5px;
}

.forms-box.details .sub label {
	font-weight: normal;
}

.forms-box.details .slash {
	float: left;
	margin-left: 15px;
}

.forms-box.details input,
.forms-box.details select {
	margin-left: 10px;
	margin-right: 5px;
	float: left;
}

.teamInput .forms-box.details input {
	margin: 0;
	width: 110px;
}

.teamInput .form-row span.formError {
	clear: both;
	margin: 5px 11px 0 5px;
	width: 100px
}

.forms-box.details .wide select {
    margin: 0;
}

.search-forms input.submit{
    margin-left:0;
    }

.forms-box.details .short input {
	width: 80px;
	padding: 0;
	margin-right: 15px;
}

.forms-box .checkbox label {
	font-weight: bold;
	float: left;
	margin-left: 5px;
	width: auto;
	max-width: 490px;
}

.event-registration .forms-box .long label {
	margin: 2px 0 10px 10px;
}

.forms-box .checkbox input {
	margin-left: 0;
}

.donate.payment .submit,
.forms .submit {
	/*float: right;*/
}

.forms-box #gift-aid div {
	text-align: right;
}

.forms-box legend {
	display: none;
}

.forms-box .form-row label.radio {
	float: none;
}

.forms-box .form-row.textarea label {
	float: none;
}

.forms-box .form-row textarea {
	float: none;
	font-family: Arial, Helvetica, sans-serif;
	color: #474747;
	margin-top: 10px;
	width: 450px;
	height: 100px;
	font-size: 1.0em;
	clear: both;
	display: block;
}

.forms-box .radios {
	margin-bottom: 10px;
}

.forms-box .radios label {
	width: auto;
	float: none;
	font-weight: normal;
	margin-right: 15px;
}

.forms-box .radios input,
.forms-box .radios select {
	margin-left: 0px;
	float: none;
}

.forms-box .radios .form-text {
	display: inline-block;
	margin-left: -15px;
}

.forms-box .radios .other {
	display: inline-block;
	width: auto;
}

.event-registration .formError {
    margin: 3px 0 0 10px;
    display: inline-block;
}


.formError {
    color: #f00;
}


.one-off-donation .donations {
    min-height: 23px;
}

.one-off-donation br {
    display: none;
}

.one-off-donation .form-text {
	width: 85px;
	margin: 0 0 0 -4px;
	float: none;
	color: #414042;
}

.customer-review-write {
    margin-top: 40px;
}

.customer-review-write .forms-box {
    padding: 0;
    -moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	border: 0;
}

.customer-review-write .forms-box .rate {
    margin-bottom: 30px;
}

.customer-review-write .forms-box .form-row {
    clear: both;
}

.customer-review-write .forms-box .btn {
    margin-left: 0;
    float: none;
}


/* PROGRESS BAR */
dl.donation-progress {
	background: url("../img/content/progressbar-small.gif") left top no-repeat;
	width: 620px;
	margin-bottom: 10px;
}
dl.donation-progress dt {
	display: none;
}
dl.donation-progress dd {
	float: left;
	margin-right: 6px;
}
dl.donation-progress dd a {
	color: #EC008C;
	text-decoration: none;
	font-weight: bold;
	display: block;
	padding: 0px 12px 0;
	width: 95px;
	height: 56px;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
dl.donation-progress dd.active a {
	color: #fff;
}
dl.donation-progress dd a span {
	display: block;
	padding-top: 12px;
}
.personal-details dl.donation-progress { background-position: left -56px; }
.confirm dl.donation-progress { background-position: left -112px; }
.payment-page dl.donation-progress { background-position: left -168px; }
.finish dl.donation-progress { background-position: left -224px; }

/*                               */
/* Progress Bars - donation page */
/*                               */

.donation-progress-bar 
{
    width: 100%;
}
.donation-progress-bar dt {
    display: none;
}

.donation-progress-bar dd {
    width: 33.3%;
    position: relative;
    float: left;
}

.donation-progress-bar span:before, .donation-progress-bar span:after {
    content: '';
    width: 33%;
    height: 0.1rem;
    background: #cfcfd0;
    position: absolute;
    top: 40%;
    z-index: -1;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.donation-progress-bar span:before {
    left: 0;
}

.donation-progress-bar span:after {
    right: 0;
}

.donation-progress-bar .step-number {
    border: 1px solid #cfcfd0;
    border-radius: 100%;
    width: 50px;
    display: block;
    height: 38px;
    text-align: center;
    padding-top: 12px;
    font-size: 1.6em;
    font-weight: 700;
    color: #414042;
    margin: 0 auto 10px;
    background: #ffffff;
}
.donation-progress-bar .active .step-number {
	background: #ef008c;
	color: #ffffff;
    border: 1px solid #ef008c;
}

.donation-progress-bar .completed .step-number {
	background: #2e3192;
	color: #ffffff;
    border: 1px solid #2e3192;
}
.donation-progress-bar a {
    text-decoration: none;
    text-align: center;
    display: block;
    width: 100%;    
    color: #414042;
}

.search-forms{float:left; width:100%; border:none;}

.search .forms-box{border:none; -moz-box-shadow:none; -o-box-shadow:none; -webkit-box-shadow:none; box-shadow:none;}

.error input,
.error textarea,
.error select{
    border: 1px solid #FF0000;
    }

span.error,
span.formError {
    color: #FF0000;
    /*float: left;*/
    display: inline-block;
    font-weight: bold;
    margin: 5px 0;
    padding: 10px 0;
    border:none;
    }
    
.form-row span.error,
.form-row span.formError {
    color: #cc0000!important;
    padding: 0;
    font-weight: bold;
    }
    
/*IG*/
.one-off-donationFormError, .campaign-donationFormError {
    display: inline-block;
    font-weight: bold;
    margin: 5px 0;
    border:none;
    color: #00adf2 !important;
    padding: 0;
    font-weight: bold;
}
    
.normal dl.donation-progress {
    width: 590px;
    background-image: url("../img/content/progressbar-smallest.gif");
}
.normal dl.donation-progress dd {
    width: 112px;
}


/*                  */
/* donate - payment */
/*                  */

.donate.payment dl.details {
	background: url("../img/inc/blocks/dotted-line-pink.gif") repeat-x scroll left bottom transparent;
	padding-bottom: 10px; 
	margin-bottom: 10px;
}

.donate.payment dl.details dt,
.donate.payment dl.details dd {
	font-size: 1.1em;
	line-height: 1.385em;
	float: left;
	background: url("../img/inc/blocks/dotted-line-pink.gif") repeat-x scroll left top transparent;
	padding: 10px 0;
	margin: 0;
}

.donate.payment dl.details dt {
	color: #000080;
	width: 175px;
	clear: left;
}

.donate.payment dl.details dd {
	position: relative;
	display: block;
	clear: right;
	width: 405px; /* this was reduced from 435 for donation step 3 */
	margin-left: 10px;
}
.donate.payment dl.details dd span {
	position: absolute;
	left: 400px;
}
.donate.payment .delivery-options {
    position: relative;
}
.donate.payment .cost {
	position: absolute;
	left: 400px;
}
.donate.payment .active label,
.donate.payment .active .cost {
	font-weight: bold;
}
.donate.payment .btn.update {
	float: none;
	margin-bottom: 20px;
}
.donate.payment .details input {
    border: 0;
    padding: 0;
    background: none;
    color: #000080;
    cursor: pointer;
    text-decoration: underline;
    clear: both;
    display: block;
    float: right;
    margin: -30px 10px 0 0;
    position: relative;
    z-index: 10;
}

.donate.payment .details dd input {
    display: inline-block;
}

.donate.payment .details input:hover {
    text-decoration: none;
}

.normal .forms-box h2 {
    width: 530px;
}

/*                  */
/* membership form */
/*                  */

.membership dl.details {
	background: url("../img/inc/blocks/dotted-line-pink.gif") repeat-x scroll left bottom transparent;
	padding-bottom: 10px; 
	margin-bottom: 10px;
}

.membership dl.details dt,
.membership dl.details dd {
	font-size: 1.1em;
	line-height: 1.385em;
	float: left;
	background: url("../img/inc/blocks/dotted-line-pink.gif") repeat-x scroll left top transparent;
	padding: 10px 0;
	margin: 0;
}

.membership dl.details dt {
	color: #000080;
	width: 175px;
	clear: left;
}

.membership dl.details dd {
	position: relative;
	display: block;
	clear: right;
	width: 435px;
	margin-left: 10px;
}
@media only screen and (max-width: 40em) {
    .donate.payment dl.details dt,
    .donate.payment dl.details dd {
        background: none;
        float: none;
        padding: 0.5em 0 0;
    }
    .donate.payment dl.details dd {
        margin-left: 0;
        width: 100%;
    }
    .donate.payment .details input {
        float: none;
        margin: 0;
    }
}


/**                               **/ 
/** Donation landing page styling **/
/**                               **/
.forms-box-wrapper {
    display: flex;
}

.banner-image-row {
    display: block;
    width: 100%;
}

.banner-image-row img {
    float: left;
    width: 20%;
}

.forms-box.regular-donation, .forms-box.one-off-donation {
    -moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
    flex: 1;
    color: #ffffff;
    clear: none;
    position: relative;
}


.forms-box.regular-donation h3, .forms-box.one-off-donation h3 {
    margin-top: 0;
    color: #ffffff;
}
.forms-box.regular-donation p, .forms-box.one-off-donation p, 
.forms-box.regular-donation a, .forms-box.one-off-donation a {
    color: #ffffff;
}

.forms-box.one-off-donation {
    background: #2d2d94;
}

.forms-box.one-off-donation input.btn {
    background: #ef008c;
    border-radius: 4px;
    padding: 5px 20px;
    min-height: 30px;
    
}

input.btn.inverted, .btn.inverted, .forms-box.regular-donation a.btn.inverted {
    color: #ef008c;
    background: #ffffff;
    border-radius: 4px;
    padding: 5px 20px;
    min-height: 30px;
    text-decoration: none;
}

 .forms-box.regular-donation a.btn.inverted {
    padding: 7px 20px;
 }

.forms-box.one-off-donation .form-row.donations {
    background: transparent;
    padding: 0;
    margin: 0 0 10px 0;
}

.forms-box.regular-donation {
    background: #00adf2;
}

.forms-box input[type="radio"], .donation-form input[type="radio"] {
    opacity: 0;
    z-index: -1;
    position: absolute;
}
.forms-box label {
    display: inline-block;
    vertical-align: middle;
    margin: 5px;
    cursor: pointer;
}
            
.forms-box input[type="radio"] + label:before, .donation-form input[type="radio"] + label:before {
    content: '';
    background:  url('../img/forms/radio-inner-circle.png') #ffffff no-repeat;
    background-position: 50% 50%;
    background-size: 70%;
    box-shadow: inset 0 0 0px #fff;   
    border: 1px solid #cfcfd0; 
    display: inline-block;
    vertical-align: sub;
    width: 15px;
    height: 15px;
    padding: 2px;
    border-radius: 15px;
    margin-right: 10px;
    text-align: center;
}

.forms-box input[type="radio"]:checked + label:before, .donation-form input[type="radio"]:checked + label:before {
    background: #ef008c;
    box-shadow: inset 0 0 0 3px #fff;
}

.forms-box input[type="radio"] + label:hover, .donation-form input[type="radio"] + label:hover {
    cursor: pointer;
}

.otherAmount {
    display:inline-block;
    position: relative;
}
.otherAmount .guide, .otherAmount input.form-text {
    color: #414042;
}
.otherAmount .guide {
    background: #00adf2;
    height: 100%;
    width: 20px;
    padding: 5px;
}

.otherAmount .guide:before {
    content: none;
}

.one-off-donation .otherAmount label {
    margin-right: 0;
    margin: 0;
    padding: 5px 0px 5px 9px;
    height: 19px;
    font-size: 1.2em;    
    color: #ffffff;
}

/* responsive styling for donation option form */
@media only screen and (max-width: 40em) { /* 640 / 16 */
    .forms-box-wrapper {
        display: block;
    }
    
    .one-off-donation {
        margin-bottom: 0;
    }  
    .banner-image {
        width: 50%;
    }                                   
}                                    



/* Donation pods */

.donation-pod-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    flex: 0 1 0rem;
    margin: -1rem -1rem;
}

.donation-pod-wrapper {
    display: flex;
    flex-basis: 33.33333%;
    max-width: 33.33333%;
    flex-basis: 50%;
    max-width: 50%;
    padding: 1rem 1rem;
    flex: 1 0 0rem;
}

.donate.finish .donation-pod-wrapper {
    flex: 1 0 45%
}

.donation-pod-item {
    flex: 1;
}

.donation-pod-item img {
    width: 100%;
}

.donation-pod-item .donation-pod-link {
    margin-bottom: 10px;
    color: ##000080;
    font-size: 1.25em;
    display:block;
    margin-top: 5px;
}

.donation-pod-item a:hover {
    text-decoration: none;
    cursor: pointer;
}

.donation-pod-item p {
    color: #414042;
    margin-bottom: 1.154em;
    line-height: 1.6em;
    font-size: 1em;
}

/* responsive styling for donation pods */
@media only screen and (max-width: 40em) { /* 640 / 16 */
    .donation-pod-row {
        display: block;
    }
    
    .donation-pod-wrapper {
        max-width: none;
    }
                                   
}    


.our-promise-disclaimer {
    margin: 10px 0;
}

.our-promise-disclaimer img  {
    float: left;
    margin-right: 20px;
    max-width: 120px;
}

/* download forms area */
.donation-help-wrapper {
    background: #CFCFD0;
    padding: 20px;
}

.donation-help-wrapper .footer-contact-details, .donation-help-wrapper .footer-info {
    display:inline-block;
}

.donation-help-wrapper .footer-info {
    width: 66%;
    float: left;
}

.donation-help-wrapper .footer-contact-details {
    width: 33%;
    float: right;
    font-size: 1.2em;
}

.donation-help-wrapper .footer-contact-details .btn {
    width: 100%;
}

.donation-help-wrapper .footer-contact-details span {
    font-weight: 700;
}


/* responsive styling for donation help information */
@media only screen and (max-width: 40em) { /* 640 / 16 */
    .donation-help-wrapper .footer-contact-details, .donation-help-wrapper .footer-info {
        width: 100%;
        float: none;
    }                                     
}                                    

/**                       **/ 
/** Donation form restyle **/
/**                       **/

/* donation form typography */
.donation-amount {
    font-weight: 700;
    color: #414042;
}

.donation-amount span {
    color: #2e3192;
    font-size: 1.5em;
    margin-left: 5px;
}

.required-field:after {
    color: #ec008c;
    font-weight: 700;
    content: '*';
}

label.required-field:after {
    padding-left: 5px;
}

.donate h2 {
    color: #000080;
    font-size: 2.25em;
    line-height: 1em;
    font-weight: 700;
}

.donate h3 {
    color: #000080;
    font-size: 1.6em;
    line-height: 1em;
    font-weight: 700;
    margin-top: 50px;
}

.donate p {
    color: #414042;
}

.postcode-helper {
    display: inline-block;
    color: #ec008c;
    text-decoration: underline;
    font-weight: 700;
}        

.postcode-helper:hover {
    text-decoration: none;
    cursor: pointer;
}  

.form-helper-text {
    margin: 10px 0;
}

/* form inputs and labels */
.donation-form input[type="checkbox"] {
    opacity: 0;
    z-index: -1;
    position: absolute;
}

            
.donation-form input[type="checkbox"] + label:before {
    content: '';
    background-image: url('../img/forms/unchecked.png');
    background-size: cover;
    display: inline-block;
    vertical-align: sub;
    width: 15px;
    height: 15px;
    padding: 2px;
    margin-right: 10px;
    text-align: center;
}

.donation-form input[type="checkbox"]:checked + label:before {
    background-image: url('../img/forms/checked.png');
}

.donation-form input[type="checkbox"] + label:hover {
    cursor: pointer;
}

.donation-form .postcode-search {
    margin-bottom: 0;
}


.donation-form .form-row {
    background: transparent;
    padding: 8px 0 0 0;
}

.donation-form .form-row label {
    display: inline-block;
    width: 20%;
    font-weight: 700;
    color: #414042;
    margin-right: 15px;
    float: left;
}

.donation-form .form-row.checkbox label {
    width: auto;
    float: none;
}

.donation-form input.form-text {
    display: inline-block;
    float: none;
    width: 50%;
    color: #414042;
    height: 30px;
}

.donation-form select {
    height: 28px;
    width: 50%;
    color: #414042;
    height: 30px;
}

.donation-form .postcode-search label {
   color: #414042;
   float: none;
   font-size: 1em;
}

.donation-form .title-donate select {
   width: 20%;
   min-width: 120px;
}

.donation-form input[type="checkbox"] {
    height: 15px;
    width: 15px;
    border: 1px solid #cfcfd0;
}
    
.donation-form .postcode-search input.form-text {
    width: 20%;
    margin-bottom: 0;
}

.donate-details input.btn {
    background: #ef008c;
    border-radius: 4px;
    padding: 5px 20px;
    min-height: 30px;
}


.donation-form legend {
    opacity: 0;
    z-index: -1;
    position: absolute;
}

input#billing-postcode-submit {
    margin: 0 15px;
}


.donation-form input.form-text, .donation-form select{
  box-sizing:border-box;
}

.error-wrapper {
    color: #ec0000;
    display: block;
    margin-left: calc(20% + 15px);
}

/* additional donation form items*/

.gift-aid-logo {
    float: right;
    margin-left: 10px;
    margin-bottom: 10px;
}

.donate-details .form-divider {
    height: 1px;
    border: none;
    background: #cfcfd0;
}

.donation-form .small-label 
{
    font-size:90%;
}

/* responsive styling for donation form */
@media only screen and (max-width: 40em) { /* 640 / 16 */
     .donation-form .form-row label, .donation-form .form-row input.form-text, .donation-form select  {
        display: block;
        width: 100%;
     }         
     
     .donation-form .title-donate select {
        width: 50%;
     }
     
     input#billing-postcode-submit {
        margin-top: 10px;
        margin-left: 0;
     }
     
     .postcode-helper {
        margin-top: 17px;
        float: right;
     }
     .error-wrapper {
        margin-left: 0;
     }                             
                                              
}


/* donation form layout */

.donate.donate-details {
    width: 66%;
    float: left;
}

.donate.our-promise {
    width: 32%;
    float: right;
    text-align: center;
    padding-left: 1%;
}

.donate.our-promise img {
    margin-bottom: 15px;
    max-width: 120px;
}

/* responsive styling for donation form layout */
@media only screen and (max-width: 40em) { /* 640 / 16 */
     .donate.donate-details, .donate.our-promise  {
        width: 100%;
        float: none;
     }   
     
     .donate.our-promise  {
        padding-left: 0;
        margin-top: 15px;
     }   
}
 
 
/* Thank you page styling */ 
.thank-you-banner {
    display: block;
    width: 100%;
    margin-bottom: 15px;
}

.payment-options {
    display: block;
    width: 60%;
}

.payment-options img {
    display: inline-block;
    width: 15%;
}

