.fieldgroup {
background: #F7F7F2;
border: 1px #E7E7DE solid;
border-radius: 8px;
margin: 0 0 20px 0;
overflow: hidden;
padding: 10px 19px;
position: relative;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
}
.fieldgroup h2 {
margin: 0 0 0.8em 0;
}
.fieldgroup p.close-fieldgroup {
position: absolute;
right: 20px;
top: 16px;
}
.fieldgroup .highlight {
background: #F7F7F7;
border: 1px #E7E7DE solid;
border-radius: 8px;
margin: 20px 0 10px 0;
padding: 20px 29px;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
}
.fieldgroup .fieldgroup-secondary {
border-top: 1px #E7E7DE solid;
margin: 20px 0 0 0;
padding: 20px 0 0 0;
}

fieldset legend span {
color: #657DAF;
display: block;
font-family: georgia, serif;
font-weight: bold;
padding: 0 0 10px 0;
}

.form-row {
margin: 0 0 8px 0;
padding: 3px;
position: relative;
}
* html .form-row {
zoom:1;
}
.form-row:after {
content: ".";
display: block;
height: 0px;
clear: both;
visibility: hidden;
}
.fieldgroup .focus label,
.fieldgroup .focus p.label {
font-weight: bold;
}
.fieldgroup .focus input,
.fieldgroup .focus textarea {
border: 1px #918F87 solid;
}

.fullwidth {
clear: both;	
}
.fullwidth label {

text-align: left;
margin: 0 0 0.6em 0;
width: auto;
}
.fullwidth p.label {
display: block;
margin: 0 0 1em 0;
text-align: left;
width: auto;
}

.fullwidth.indent label {
float: left;
text-align: left;
margin: 0 0 0.6em -200px;
width: auto;
}

.fullwidth input,
.fullwidth textarea {
clear: both;
float: left;
}

.checkbox-row.fullwidth label,
.checkbox-row.fullwidth input,
.radio-row.fullwidth label,
.radio-row.fullwidth input {
float: none;
}

.fieldgroup .indent {
padding-left: 200px;
}

.indent2 {
   margin-top:-12px;
   padding-left: 197px;
}
.indent3 {
   margin-top:0px;
   padding-left: 197px;
}

.inline label {
width: auto;
}
.outdent-label label {
text-align: left;
text-indent: -3000em;
}
label,
p.label {
display: inline-block;
margin: 0 14px 6px 0;
min-width: 180px;
text-align: left;
}
label.hide {
left: -3000em;
position: absolute !important;
}
p.label {
cursor: default;	
}
.required label,
.required p.label {
position: relative;
}
.required label em.required,
.required p.label em.required {
position: absolute;
right: -12px;
}
em.required {
color: #BE030D;
font-style: normal;
font-weight: normal;
margin: 0 0 0 3px;
}
em.required span {
left: -3000em;
position: absolute;
}

div.form div.errorsummary {
color:#cc0000;
padding:0px 0px 10px 0px;
}

.form-row input[type="text"],
.form-row input[type="password"],
.form-row textarea {
border: 1px #C0C0C0 solid;
margin: 0;
padding: 4px;
width: 210px;
}
.form-row textarea {
font-family: verdana, sans-serif;
height: 150px;
vertical-align: top;
}
.form-row .short,
.form-row.short input,
.form-row.short select,
.form-row.short textarea {
width: 130px !important;
}
.form-row .long,
.form-row.long input,
.form-row.long select,
/*.form-row.short textarea,*/
.form-row.long textarea  {
width: 530px !important;
}


.form-row .characters {
color: #C8C7C3;
/*display: none;*/
font-size: 75%;
padding: 0 0 0 10px;
}
.form-row.focus .characters {
color: #657DAF;
display: inline;
}
.form-row.disabled .characters {
display: none;
}
.form-row.disabled label,
.form-row.disabled p,
.form-row.disabled a,
.form-row.disabled input,
.form-row.disabled textarea {
color: #C8C7C3;
}
.form-row.disabled input[type="text"],
.form-row.disabled input[type="password"],
.form-row.disabled textarea {
background-image: none;
}
.form-row.disabled a,
.form-row.disabled input[type="submit"] {
display: none !important;
}
.form-buttons {

}
.fieldgroup .form-buttons {
position: relative;
}
.form-buttons input {
float: right;
}
.form-buttons .note {
clear: right;
float: right;
margin: 0.6em 0 0 0;
}
.note {
font-size: 68.75% !important;
}
p.note,
.fullwidth.indent p.note {
padding-left: 200px;
padding-top: 4px;
}
.fullwidth p.note {
margin-left: 0;
}
/*
.fieldgroup .note {
color: #C8C7C3;
}
.fieldgroup .focus .note {
color: #3E3E3E;
}
*/
.form-buttons p.back {
display: inline-block;
}

.dependent-fields {
margin: 10px 0;
padding: 10px 0;
}
.dependent-fields.active {
background: #F7F7F7;
border: 1px #E7E7DE solid;
border-radius: 8px;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;

}

.checkbox-single,
.checkbox-list,
.checkbox-row,
.radio-single,
.radio-list,
.radio-row,
.radio-grid,
.radio-gallery {
padding: 3px;
position: relative;
}
.checkbox-single li,
.checkbox-list li,
.checkbox-row li,
.radio-single li,
.radio-list li,
.radio-row li,
.radio-grid li,
.radio-gallery li {
vertical-align: middle;
}

.checkbox-single input,
.checkbox-list input,
.checkbox-row input,
.radio-single input,
.radio-list input,
.radio-row input,
.radio-grid input,
.radio-gallery input {
margin: 0 4px 0 0;
vertical-align: baseline;
width: auto;
}
.checkbox-single label,
.checkbox-list label,
.checkbox-row label,
.checkbox-grid label,
.radio-single label,
.radio-list label,
.radio-row label,
.radio-grid label,
.radio-gallery label {
display: inline;
width: auto;
text-align: left;
}
.checkbox-list ul,
.checkbox-row ul,
.checkbox-grid ul,
.radio-list ul,
.radio-row ul,
.radio-grid ul,
.radio-gallery ul {
list-style: none;
margin-left: 0;
}
.checkbox-list ul,
.checkbox-row ul,
.checkbox-grid ul,
.radio-list ul,
.radio-row ul,
.radio-grid ul {
overflow: hidden;
}

.checkbox-row p.inline,
.radio-row p.inline {
display: inline;
}

.checkbox-list p.label,
.radio-list p.label {
display: block;
float: left;
}

.checkbox-list ul,
.radio-list ul {
display: inline-block;
/*padding-left: 8px;*/
/*width: 450px;*/
margin: 0;
}

.checkbox-list li,
.radio-list li {
margin: 0 0 1em 0;
}

.checkbox-row,
.radio-row {
padding: 3px 3px 10px 3px;
}
.checkbox-row ul,
.radio-row ul {
display: inline;
padding-left: 3px;
}
.checkbox-row li,
.radio-row li {
display: inline;
margin: 0 2em 1em 0;
}

.checkbox-grid p.label,
.radio-grid p.label {
margin: 0 0 1.8em 0;
text-align: left;
width: auto;
}

.checkbox-grid li,
.radio-grid li {
float: left;
margin: 0 0 1em 0;
}
.checkbox-grid.grid-row-2 li,
.radio-grid.grid-row-2 li {
width: 50%;
}
.checkbox-grid.grid-row-3 li,
.radio-grid.grid-row-3 li {
width: 33%;
}
.checkbox-grid.grid-row-4 li,
.radio-grid.grid-row-4 li {
width: 25%;
}

.radio-gallery ul {
margin: 0 0 2em 0;
padding-top: 10px;
}
.radio-gallery ul:after {
content: ".";
display: block;
height: 0px;
clear: both;
visibility: hidden;
}
.radio-gallery li {
border: 1px #C0C0C0 solid;
border-radius: 8px;
float: left;
margin: 0 20px 0 0;
padding: 19px;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
}
.radio-gallery li.addressbook {
background: url(/images/layout/bg-addressbook.gif) 50% 60% no-repeat;
}
.radio-gallery li.cards {
background: url(/images/layout/bg-cards.gif) 50% 60% no-repeat;
}
.radio-gallery li.add-new {
background: url(/images/layout/bg-plus-big.png) 50% 60% no-repeat;
}
.radio-gallery li.selected {
background: #FEFEFE;
border-color: #C7C7C7;
box-shadow:0 0 6px rgba(0,0,0,0.15);
-moz-box-shadow:0 0 6px rgba(0,0,0,0.15);
-webkit-box-shadow:0 0 6px rgba(0,0,0,0.15);
}
.has-js .radio-gallery li input {
left: -3000em;
position: absolute;
}
.radio-gallery li label {
cursor: pointer;
display: block;
margin: 0;
padding: 0;
}
.radio-gallery li.selected label {
cursor: default;
}
.radio-gallery li label em {
display: block;
font-family: georgia;
font-style: normal;
font-size: 120%;
font-weight: bold;
margin: 0 0 0.8em 0;
}
.radio-gallery li.selected label em {
color: #083B83;
}
.radio-gallery li label span.label {
display: block;
padding: 0 0 0;
}
.radio-gallery li label span.btn {
width: 100%;
}

.radio-gallery li label span.btn.top {
margin: 0 0 1.4em 0;
}

.radio-gallery li label span.btn.bottom {
margin: 1em 0 0 0;
}
.has-js .radio-gallery li .field-help {
display: none;
margin-bottom: 0;
}
.has-js .radio-gallery li.selected .field-help {
display: block;
}
.radio-gallery li p {
font-size: 100%;
}
.radio-gallery li p.edit {
margin: 0;
}
.radio-gallery li div.form-row {
margin: 1em 0 0 0;
}
.radio-gallery li div.cv2 {
margin: 1em 0;
padding: 0;
}
.radio-gallery li div.form-row label {
display: inline;
float: none;
margin: 0;
width: auto;
}
.radio-gallery li div.child-fields input {
position: static;
}
.radio-gallery li.selected div.child-fields {
display: block;
}

.radio-gallery li div.dependent-fields {
padding: 0;
}
.radio-gallery li div.dependent-fields.active {
padding: 5px 5px 0 5px;
}
.radio-gallery li div.dependent-fields div.form-row {
margin: 0;
}
.radio-gallery li div.dependent-fields.active div.form-row {
margin: 0 0 0.5em 0;
}
.radio-gallery li div.form-row.cv2 input {
width: 40px;
}
.has-js .radio-gallery-extension input {
left: -3000em;
position: absolute;
}
.radio-gallery.gallery-row-4 li {
width: 170px;
}
.show-aside .radio-gallery.gallery-row-4 li {
width: 170px;
}
.radio-gallery.gallery-row-3 li {
width: 233px;
}
.show-aside .radio-gallery.gallery-row-3 li {
width: 166px;
}
.radio-gallery.gallery-row-4 li.row-slots-2 {
width: 400px;
}
.radio-gallery.gallery-row-3 li.row-slots-2 {
width: 486px;
}
.show-aside .radio-gallery.gallery-row-3 li.row-slots-2 {
width: 392px;
}
.radio-gallery.gallery-row-4 li.row-slots-2 select {
margin: 0 0 10px 0;
width: 394px;
}
.radio-gallery.gallery-row-3 li.row-slots-2 select {
width: 442px;
}
.radio-gallery.gallery-row-3 li.row-slots-2 select {
width: 368px;
}
.radio-gallery li.selected label {
min-height: 0 !important;
}
.radio-gallery li.selected label span.label {
min-height: 0 !important;
}
.radio-gallery li.condensed span.field-value {
color: #C8C7C3;
}
.radio-gallery li.condensed.selected span.field-value {
display: none;
}
.has-js .radio-gallery-extension label {
cursor: pointer;
}
.has-js .radio-gallery-extension.selected label span.btn span {
padding-left: 28px;
}

.has-js .collect {
margin: 0 0 10px 0;
padding: 19px 10px;
}
.has-js .collect.open {
background: #FFF;
border: 1px #C7C7C7 solid;
border-radius: 8px;
box-shadow:0 0 6px rgba(0,0,0,0.15);
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
-moz-box-shadow:0 0 6px rgba(0,0,0,0.15);
-webkit-box-shadow:0 0 6px rgba(0,0,0,0.15);
}

.address-detail .address-fields {
display: none;
}
.has-js .address-detail .address-fields {
display: block;
}
.address-detail .address-fields.uk,
.address-detail .address-fields.eu,
.address-detail .address-fields.non-eu,
.address-detail .address-fields.bfpo {
display: block;
}

.address-detail .address-fields .uk,
.address-detail .address-fields .eu,
.address-detail .address-fields .non-eu,
.address-detail .address-fields .bfpo {
display: none;
}

.address-detail .address-fields.uk .uk,
.address-detail .address-fields.eu .eu,
.address-detail .address-fields.non-eu .non-eu,
.address-detail .address-fields.bfpo .bfpo {
display: block;
}

.postcode-lookup {
background: #FFF;
border: 1px #C0C0C0 solid;
border-radius: 6px;
margin-bottom: 1em;
/* JAV REMOVED
margin-left: 200px;
*/
margin-top: 1em;
padding: 10px; /* JAV REMOVED !important */
width: 500px;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
}
.postcode-lookup ul {
background: #FFF;
list-style: none;
margin: 0;
max-height: 150px;
overflow: auto;
}
.postcode-lookup ul li {
padding: 4px;
}
.postcode-lookup ul li.alt {
background: #F7F7F2;
}
/* JAV ADDED */
.postcode-lookup select {
width: 100%;
max-height: 170px;
border: 0;
margin: 0 0 10px 0;
}
.postcode-lookup select option {
padding: 6px 4px;
}
.postcode-lookup select option:nth-child(2n) {
background-color: #F7F7F2;
}
.postcode-lookup input {
float: right;
}
/* /JAV */

.fieldgroup-help,
.field-help {
background: #FFFDE6;
border: 1px #E7E7DE solid;
border-radius: 6px;
display: block;
margin: 10px 0;
padding: 18px 18px 6px 18px;
position: relative;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
}
.fieldgroup-help.arrow-left,
.field-help.arrow-left {
float: right;
margin: 10px 0 0 20px;
width: 610px;
}
.fieldgroup-help.arrow-left:before,
.field-help.arrow-left:before {
border-color: transparent #E7E7DE transparent transparent;
border-style: solid;
border-width: 14px 20px;
bottom: auto;
content:"\00a0";
display:block; /* reduce the damage in FF3.0 */
height: 0;
left: -40px; /* value = - border-left-width - border-right-width */
margin: 0 0 0 0;
position: absolute;
top: 20px; /* controls vertical position */
width: 0;
}
/* creates the smaller  triangle */
.fieldgroup-help.arrow-left:after,
.field-help.arrow-left:after {
border-color: transparent #FFFDE6 transparent transparent;
border-style: solid;
border-width: 13px 19px;
bottom: auto;
content:"\00a0";
display:block; /* reduce the damage in FF3.0 */
height: 0;
left: -38px; /* value = - border-left-width - border-right-width */
margin:  0 0 0;
position: absolute;
top: 21px; /* value = (:before top) + (:before border-top) - (:after border-top) */
width: 0;
}

.fieldgroup-help.arrow-top,
.field-help.arrow-top {
margin: 25px 230px 8px 0;
}
.show-aside .fieldgroup-help.arrow-top,
.show-aside .field-help.arrow-top,
.show-related .fieldgroup-help.arrow-top,
.show-related .field-help.arrow-top {
margin-right: 0;
}
li .field-help.arrow-top {
margin: 15px 0 8px 0;
padding-bottom: 18px;
}
.highlight .fieldgroup-help.arrow-top,
.highlight .field-help.arrow-top {
margin-right: 0;
}
.fieldgroup-help.arrow-top:before,
.field-help.arrow-top:before {
border:15px solid transparent;
border-bottom-color:#E7E7DE;
content:"\00a0";
display:block; /* reduce the damage in FF3.0 */
height: 0;
left:30px;
position: absolute;
top:-30px;
width: 0;
}
/* creates the smaller  triangle */
.fieldgroup-help.arrow-top:after,
.field-help.arrow-top:after {
border:13px solid transparent;
border-bottom-color:#FFFDE6;
content:"\00a0";
display:block; /* reduce the damage in FF3.0 */
height: 0;
left:32px;
position: absolute;
top:-26px;
width: 0;
}

.fieldgroup-help .linkgroup {
background: none;
border: 0;
border-radius: 0;
padding: 0 0 12px 0;
position: relative;
-moz-border-radius: 0;
-webkit-border-radius: 0;
}




/* Field in error */


fieldset.error label,
fieldset .error label,
fieldset .error p,
fieldset .error span {
color : #C00;
}

fieldset .error input[type="text"],
fieldset .error input[type="password"],
fieldset .error textarea,
fieldset .error select {
border : 1px #C00 solid;
}

/* Error messages */

fieldset h3.error {
border-bottom: 1px #C00 solid;
color : #C00;
}

/*
div.error,
fieldset.error {
border: 1px red solid;
}
*/
fieldset .errorfeedback2 {
color : #C00;
font-size : 75%;
top: 4px;
}

fieldset div.errorfeedback {
color : #C00;
float: right;
font-size : 75%;
position: relative;
text-align: right;
top: 4px;
width: 380px; /* JAV - was 220 */
}
.show-aside fieldset div.errorfeedback {
width: 160px;
}
fieldset div.errorfeedback em {
font-style: normal;
color : #C00;
}

fieldset div.errorfeedback p {
white-space : wrap;
}
/* JAV ADDED
fieldset div.errorfeedback a {
color: #C00;
}
fieldset div.form-row.error p.note {
color: #3E3E3E;
}
/* JAV */

/* Field in error in focus */

fieldset .focus.error label,
fieldset .focus.error p,
fieldset .focus.error span {
font-weight : bold;
/*color : #C00;*/
}

fieldset .focus.error p,
fieldset .focus.error span {
font-weight : normal;
}

fieldset .focus.error input.error,
fieldset .focus.error textarea.error,
fieldset .focus.error select.error {
/*border : 1px #C00 solid;*/
}

/* JAV ADDED - remainder of document */
/*  ## ACCOUNT LOGIN  ------------------------------------------------------------------*/

.account-login {
background: #ECEFF4;
border: 1px #E7E7DE solid;
border-radius: 8px;
float: left;
margin: 0 20px 0 0;
min-height: 130px;
padding: 20px;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
}

.account-login fieldset {
padding: 0 0 18px 0;
}
.account-login fieldset legend span {
left: -3000em;
position: absolute;
}
.account-login fieldset {
display: inline;
}
.account-login fieldset div.form-row label {
width: 90px;
}
.account-login fieldset div.form-row input {
border: 1px #C0C0C0 solid;
border-radius: 6px;
padding: 3px;
width: 280px;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
}
.account-login fieldset div.form-row.indent {
margin-left: 110px !important;
}
.account-login fieldset div.form-row.indent input,
.account-login fieldset div.form-row.indent label {
width: auto !important;
}