@font-face {
    font-family: 'Gill Sans for JL';
    src: url('/assets/fonts/GillSansforJL-Regular.eot');
    src: url('/assets/fonts/GillSansforJL-Regular.eot?#iefix') format('embedded-opentype'),
    url('/assets/fonts/GillSansforJL-Regular.woff2') format('woff2'),
    url('/assets/fonts/GillSansforJL-Regular.woff') format('woff'),
    url('/assets/fonts/GillSansforJL-Regular.ttf') format('truetype');
    font-weight: normal;
}

@font-face {
    font-family: 'Gill Sans for JL';
    src: url('/assets/fonts/GillSansforJL-Light.eot');
    src: url('/assets/fonts/GillSansforJL-Light.eot?') format('embedded-opentype'),
    url('/assets/fonts/GillSansforJL-Light.woff') format('woff'),
    url('/assets/fonts/GillSansforJL-Light.woff2') format('woff2'),
    url('/assets/fonts/GillSansforJL-Light.ttf') format('truetype');
    font-weight: 100;
}

body#linecheck #TB_load {
    width: 391px;
    height: 176px;
    margin: -88px 0 0 -195px;

    border: 4px solid #525252;
}

h3 {
    margin: 30px 0 0 0;

    font-size: 1.3em;
}

#top .navigation {
    height: 1px;

    background-color: #cbcfce;
    background-image: none;
}

div#container {
    padding-bottom: 10px;
}

div#progressIndicator ul {
    margin: 8px 0 10px 5px;
}

div#progressIndicator ul li.title {
    padding-right: 5px;

    background: none;
}

#container h1 {
    position: relative;
    display: block;
    height: 78px;
}

div#wrapperDiv {
    float: left;
    height: auto;
    min-height: 660px;

    _height: 660px;
}

.popUpContent div#wrapperDiv {
    min-height: 1px;
}

div.mainContent {
    float: left;
    width: 625px;
    padding: 0 0 10px 0;

    border: 1px solid #ededed;
}

div.mainContent.questions {
    padding: 10px;
}

.popUpContent div.mainContent.questions {
    padding: 0 0 10px 0;

    border: none;
}

div.mainContent.questions p.textUnderRadios {
    padding: 25px 0 0;
}

.busyCallCentre {
    background: #93CBC6;
    color: black;
    font-family: "Gill Sans for JL",'Gill Sans', Helvetica, Arial, sans-serif;
    text-align: center;
    font-size: 19px;
    padding: 12px 0;
}

div.innerSection {
    margin: 14px;
}

div.innerSection.linecheck {
    border: 1px solid #e5e5e5;
}

#content div.innerSection a.expand {
    display: block;
    padding: 10px;

    font-size: 1.5em;
    font-weight: normal;
    text-decoration: none;
    color: #005757;
}

#content div.innerSection a.expand.active {
    background: #efefef;
}

#content div.innerSection a.expand:hover {
    color: #a50b5e;
}

#content div.innerSection.linecheck a.expand.active {
    display: none;
    visibility: hidden;
}

#content div.innerSection .wlrOptions a.expand.active {
    background-color: none;
}

#content div.innerSection a.expand span {
    text-decoration: underline;
}

div.innerSection a.expand:hover {
    background: #f3f5f4;
}

div.expander {
    padding: 10px 10px 10px 10px;

    background: #f3f5f4;
}

.wlrOptions div.expander {
    padding: 0;

    background: none;
}

div.expander p {
    margin-top: 0;
}

div.expander h3 {
    font-size: 1em;
}

.hide {
    display: none;
}

h2 {
    padding: 0;

    font-size: 1.5em;
    font-weight: normal;
    color: #232323;
}

h2.alternateHeading {
    margin: 0 0 10px 0;
}

.boxContent h2 {
    position: relative;
}

.boxContent h2.switching img {
    width: 179px;
    height: 23px;
}

img.icon {
    float: left;
    clear: left;
}

.lineCheckResults h2 {
    margin-bottom: 5px;
}

.lineCheckResults img.icon {
    clear: both;
    margin: 0;
}

.optionSection img.icon {
    width: 45px;
}

.addOns .optionSection img.icon {
    width: 90px;
}

.addOns .optionSection img.icon#protectOffer {
    margin-top: 10px;
}

.addOns .optionSection img.icon#proAddOn {
    width: 100px;
}

.addOns ul.greenTickList {
    margin: 20px 0 20px -5px;
    padding: 0;
}

div.description {
    float: right;
    width: 530px;
    margin: 0 0 0 20px;
}

#TB_ajaxContent div.description {
    float: none;
    margin-top: 20px;
}

div#speedEstimate,
div#comparison {
    margin-top: 90px;
}

div.speedEstimate {
    padding-top: 20px;

    background: url(/signup/images/speed_logo.png) no-repeat 460px 20px;
    background-size: 92px auto;
}

div.speedEstimate div.section {
    padding: 30px 5px;

    border-bottom: 1px solid #ededed;
}

div.speedEstimate p.toTheLeft {
    margin-right: 140px;
}

div.speedEstimate ul.greenTickList {
    margin-left: 0;
    padding-bottom: 15px;
    padding-left: 0;
}

div#TB_ajaxContent div.speedEstimate h2 {
    margin-top: 0;
}

div.comparisonContainer {
    float: left;
    width: 270px;
    margin-top: 10px;
}

div.comparisonContainer ul {
    margin-left: 0;
    padding-left: 0;

}

.fibreUpsell div.description {
    width: 500px;
    height: 215px;
    padding: 15px;

    background: #fff url(/signup/images/upsell_box_bg.png) no-repeat top left;
}

.fibreUpsell h2 {
    height: 60px;
    margin: 20px 0 0 2px;

    text-indent: -9999px;
    background: transparent url(/signup/images/upsell_heading.png) no-repeat top left;
}

div.fibreUpsell .right button.continue {
    float: right;
    margin: 70px 20px 0 0;
}

div.fibreUpsell p strong span {
    font-size: 1.2em;
}

.upsellContent {
    width: 320px;
    padding: 25px 0 0 10px;
}

.fibreUpsell h3 {
    margin: 0 0 5px;

    color: #2d4887;
}

.lineCheckResults .fibreUpsell div.description  p {
    margin: 0;
}

.fibreUpsell div.right {
    position: absolute;
    top: 30px;
    right: 0;
    width: 189px;

    text-align: center;
}

.fibreUpsell div.right a {
    float: left;
    margin: 8px 21px 0 30px;
}

.fibreUpsell div.right img.upsellPrice {
    display: block;
    float: right;
    margin: 3px 21px;
}

.wlrOptions div.description {
    width: 100%;
    margin-bottom: 30px;
}

.wlrOptions div.description p {
    margin: 0 0 0 30px;
}

.lineCheckResults div.description p {
    margin: 0 0 15px 0;
}

.lineCheckResults div.description p.installCost {
    margin-bottom: 50px;
}

.options .radioOption {
    padding-left: 0;

    border: none;
}

.options p,
.wlrOptions p {
    margin: 0 0 15px 0;
}

.wlrOptions p#installNote {
    margin-top: 10px;
}

.options h2 {
    margin: 0 0 23px 0;
}

#featuresInner {
    padding: 0 22px 0 22px;
}

#featuresBox a.expand {
    position: absolute;
    top: 4px;
    right: 0;
    float: none;
    padding: 0 15px 0 0;

    font-size: .67em;
    background: transparent url(/signup/images/residential/anchor_arrow_down.gif) top right no-repeat;
}

#featuresBox a.expand.active {
    background: transparent url(/signup/images/residential/anchor_arrow_up.gif) top right no-repeat;
}

#featuresBox p {
    margin: 10px 0 10px 0;
}

img.freeIcon {
    margin: -5px 0 0 5px;
}

#featuresBox label img {
    width: 43px;
    height: 19px;
    vertical-align: middle;
}

#featuresBox input {
    width: 15px;
    margin-right: 10px;
}

#featuresBox label span.price {
    color: #005757;
}

#featuresBox p.featureDescription {
    margin: 0 0 10px 27px;
}

#featuresBox h2 {
    position: relative;
    margin-left: 22px;
}

#featuresBox ul {
    overflow: hidden;
    margin-bottom: 10px;

    list-style: none;
}

#featuresBox ul li {
    width: 200px;
}

.wlrOptions h2 {
    position: relative;
    margin: 0 0 10px 0;
    padding: 0 0 14px 0;
}

.wlrOptions h2 span.price {
    position: absolute;
    right: 0;
}

.wlrOptions h2 img,
.wlrOptions h2 input {
    width: 22px;
    margin-right: 10px;
}

.optionSection {
    margin: 15px;
    padding: 10px 0;

    border: 1px solid #ededed;
    border-width: 0 0 1px 0;
}

.optionSection.last {
    border: none;
}

#featuresHidden {
    margin: 20px 0 0 0;
}

/* tooltip bubble */
#content a.aBubbleLink span ul {
    list-style: none;
}

#content a.aBubbleLink {
    position: relative;
    top: 2px;
    display: inline-block;
    width: 14px;
    height: 14px;
    margin: 5px 0 0 0;

    cursor: help;

    font-size: 12px;
    font-weight: normal;
    text-decoration: none;
    text-decoration: none;
    background: url(/assets/images/icon_question.png) no-repeat top left;
}

#content a.aBubbleLink#newLineHelp:hover {
    cursor: pointer;
}

#content a:hover.aBubbleLink {
    color: #14b4e6;
}

#content a.aBubbleLink strong {
    display: block;
}

a.aBubbleLink span {
    display: none;
}

/*background:; ie hack, something must be changed in a for ie to execute it*/
/*#content a.aBubbleLink:hover{ z-index:25; color: #a50b5e; background:;}*/
#content a.aBubbleLink:hover span.spBubble {
    position: absolute;
    top: 14px;
    left: 20px;
    display: block;
    width: 230px;
    padding: 8px;
    line-height: 1.2em;

    font-size: 12px;
    font-weight: normal;
    text-align: left;
    border: 1px solid #555;
    color: #525252;
    background: #fff;
            box-shadow: 2px 2px 4px #aaa;

       -moz-box-shadow: 2px 2px 4px #aaa;
    -webkit-box-shadow: 2px 2px 4px #aaa;
}

#content .secondary.aBubbleLink {
    top: 0;
    width: auto;

    border-bottom: 1px dotted;
    background: none;
}

/* tool tips */
/* forms */
form#addressSelection select {
    display: block;
    width: 580px;
    height: 110px;
    margin: 18px 0 0 0;

    border: 1px solid #685564;
}

a.formLink {
    display: block;
    margin: 18px 0;
}

#rightColumnOuter {
    position: relative;
}

.lineSpeedResults {
    border: 1px solid #e8e6e7;
    background: white;
}

.lineSpeedResults h3 {
    margin: 10px 0 10px 6px;

    color: #232323;
}

.lineSpeedResults ul {
    margin: 10px 6px;

    list-style: none;
}

#rightColumnOuter dl {
    position: relative;
    float: left;

    background: #fff;
}

#rightColumnOuter .speedResults dt,
#rightColumnOuter .speedResults dd {
    padding: 1px 6px;
}

#rightColumnOuter dt {
    float: left;
    width: 160px;
    padding: 5px 6px;
}

#rightColumnOuter dd {
    float: left;
    width: 100px;
    padding: 5px 6px;

    font-weight: bold;
    text-align: right;
}

#rightColumnOuter p {
    margin: 10px 6px;
}

form.lineCheckQuestions h2 {
    margin: 20px 0 10px 0;
    padding: 6px;

    font-size: 1em;
    font-weight: bold;
    color: #685564;
    background-color: #ededed;
}

form.lineCheckQuestions label,
.options label {
    margin-left: 10px;
}

form.lineCheckQuestions label.textLabel {
    margin: 0 10px 0 0;
}

.radioOption {
    padding: 6px 0 6px 12px;

    border-bottom: 1px solid #ededed;
}

.radioOption.last {
    margin-bottom: 18px;
}

.buttons {
    margin: 40px auto;
    padding: 10px 0 0 0;
}

.buttons a {
    float: right;
    margin: 10px 15px 0 15px;
}

.buttons form {
    float: right;
}

button.linkButton {
    margin-left: -4px;

    font-family: arial;
    font-size: 1em;
    text-decoration: underline;
    border: none;
    border-bottom: 1px solid #c81e6e;
    color: #c81e6e;
    background: none;
}

button.linkButton:hover {
    border-color: #14b4e6;
    color: #14b4e6;
}

div.section {
    padding-bottom: 30px;
}

div.fibreUpsell {
    position: relative;
    margin: -20px 0 0 0;
}

p.error {
    padding: 10px;

    border: 2px solid #fbc2c4;
    color: #8a1f11;
    background-color: #fbe3e4;
}

ul.greenTickList {
    margin: 0 0 0 15px;
    padding: 15px 0 0 15px;
}

ul.greenTickList li {
    margin: 0 0 5px;
    padding: 0 0 3px 30px;

    list-style: none outside none;

    background: url(/signup/images/jl_tick.png) no-repeat scroll left top transparent;
}

ul.questionList {
    margin: 0 0 15px 0;

    list-style: none;
}

/* Calendar styles */
div.calendar {
    float: left;
    width: 400px;
    margin: 0 0 40px 0;
}

div.calendarLabel {
    float: left;
    padding: 0 10px 0 0;
}

.calendar label.formError {
    float: left;
    margin: 0 10px 0 0;

    color: #8a1f11;
}

a.dp-choose-date {
    display: block;
    float: left;
    width: 20px;
    height: 20px;
    overflow: hidden;
    margin: 0 10px 0 0;

    text-indent: -2000px;
    background: transparent url(/signup/images/residential/calendar.png) no-repeat;
}

a.dp-choose-date.dp-disabled {
    cursor: default;

    background-position: 0 -20px;
}

input.dp-applied {
    float: left;
}

.calendarWrap {
    margin: 0 0 10px 0;
}

.calendarWrap input {
    margin: 0 10px 0 0;
}

.lineCheckQuestions .calendarWrap {
    float: none;
    margin: 0;
}

.lineCheckQuestions .calendarWrap input {
    width: 142px;
    margin: 0 6px 10px 0;
}

table.jCalendar {
    border: 1px solid #ededed;
    color: #685564;
    background-color: #ededed;
}

table.jCalendar th {
    padding: 3px 5px;

    font-weight: bold;
    background-color: #ededed;
}

table.jCalendar td {
    padding: 3px 5px;

    text-align: center;
    background-color: #fff;
}

table.jCalendar td.other-month {
    color: #aaa;
    background-color: #ddd;
}

table.jCalendar td.today {
    color: #fff;
    background: none repeat scroll 0 0 #666;
}

table.jCalendar td.selected {
    color: #fff;
    background: none repeat scroll 0 0 #685564;
}

table.jCalendar td.dp-hover,
table.jCalendar tr.activeWeekHover td {
    background-color: #ccc;
}

table.jCalendar tr.selectedWeek td {
    color: #fff;
    background-color: #f66;
}

table.jCalendar td.disabled,
table.jCalendar td.disabled.dp-hover {
    color: #888;
    background-color: #bbb;
}

table.jCalendar td.unselectable,
table.jCalendar td.unselectable:hover,
table.jCalendar td.unselectable.dp-hover {
    color: #888;
    background-color: #bbb;
}

div.dp-popup {
    position: relative;
    padding: 2px;

    font-size: 1.3em;
    background: none repeat scroll 0 0 #ededed;
}

div#dp-popup {
    position: absolute;
    z-index: 199;
}

div.dp-popup h2 {
    margin: 2px 0;
    padding: 0;

    font-size: 1em;
    font-weight: bold;
    text-align: center;
}

div.dp-popup a {
    padding: 3px 2px 0;

    font-weight: bold;
    text-decoration: none;
    color: #685564;
}

div.dp-popup div.dp-nav-prev {
    position: absolute;
    top: 2px;
    left: 4px;
}

div.dp-popup div.dp-nav-prev a {
    float: left;
}

div.dp-popup div.dp-nav-prev a,
div.dp-popup div.dp-nav-next a {
    cursor: pointer;
}

div.dp-popup div.dp-nav-prev a.disabled,
div.dp-popup div.dp-nav-next a.disabled {
    cursor: default;
}

div.dp-popup div.dp-nav-next {
    position: absolute;
    top: 2px;
    right: 4px;
}

div.dp-popup div.dp-nav-next a {
    float: right;
}

div.dp-popup a.disabled {
    cursor: default;

    color: #aaa;
}

div.dp-popup td {
    cursor: pointer;
}

div.dp-popup td.disabled {
    cursor: default;
}

.contractButtons {
    margin: 0 12px;
}

/* /Calendar styles */

.genericMessage {
    margin: 0 0 35px 0;
    padding: 15px;

    font-size: 1.12em;
    border: 2px solid #ffd324;
    background: #fff6bf;
}

.genericMessage.wlr {
    position: relative;
    left: -1px;
    width: 624px;
    padding: 0;
}

.genericMessage.promo {
    left: 0;
    width: 604px;

    font-size: 1.12em;
}

.genericMessage.promo h2,
.genericMessage.wlr h2 {
    font-size: 1.35em;
}

.genericMessage.discountCode {
    width: 604px;

    font-size: 1.12em;
    border: 1px solid #14b4e6;
}

.genericMessage.discountCode h2 {
    margin: 0 0 15px;

    font-size: 1.35em;
    color: #14b4e6;
}

.genericMessage.discountCode p {
    margin: 0 0 15px 0;
}

.genericMessage.error {
    width: 603px;
    margin-top: 0;
}

.genericMessage.error h2 {
    font-size: 1.5em;
}

.genericMessage.error label {
    display: block;
    margin: 0 0 5px 0;
}

.genericMessage.priceChange {
	margin: 35px 0 0 0;
}

#rightColumnOuter .genericMessage.promo {
	width: 276px;
    margin-left: 0;
}

.lineCheckResults .genericMessage.success {
    width: 500px;
}

.optionSection .genericMessage.success {
    width: auto;
}

.messageContent {
    padding: 15px 20px 15px 140px;

    background: transparent url(/signup/images/residential/icon_phone_message.png) 20px 20px no-repeat;
}

.messageContent p {
    margin: 0 0 15px 0;
}

.messageContent h2 {
    margin: 0 0 15px 0;
}

#messageArrow {
    position: absolute;
    z-index: 2;
    top: 5px;
    right: -23px;
    width: 21px;
    height: 35px;

    background: transparent url(/signup/images/residential/right_arrow.png) top left no-repeat;
}

#rightColumnOuter {
    position: absolute;
    width: 310px;
}

#rightColumnOuter.scrolling {
    position: fixed;
    top: 10px;
}

dt.changed,
dd.changed {
    background: #a4dad2;
}

.genericMessage.success {
    width: 574px;
    margin-left: 14px;
}

.twentyMegPopUp {
    margin: 20px;
}

.twentyMegPopUp p.pFirstContent {
    margin: 0 0 15px;

    font-size: 1.2em;
}

div.upto20info a.buyLink {
    display: block;
    width: 250px;
    margin: 12px auto 0 auto;
}

#TB_ajaxContent .twentyMegPopUp p.pFirstContent {
    margin-top: 0;

    font-size: 1.2em;
}

div.upto20info {
    margin: 15px 0;
    padding: 12px;

    background-color: #ededed;
}

div.upto20info h3 {
    margin: 0 0 20px;

    font-size: 1.2em;
    color: #870051;
}

div#TB_ajaxContent h3 {
    margin: 0 0 10px 0;

    color: #870051;
}

div#TB_ajaxContent .compatibleRouters h3 {
    margin: 20px 0 10px 0;
}

div#TB_ajaxContent h2 {
    margin-top: 20px;
}

div.upto20info dl.upto20data {
    float: left;
    width: 60%;
    margin-bottom: 20px;
}

dl.upto20data dt {
    float: left;
    width: 134px;
    margin: 0;
    padding-left: 0;
}

dl.upto20data dd {
    float: left;
    width: 134px;

    font-weight: normal;
    text-align: left;
}

h2#lookingFor20 {
    height: 68px;
    padding: 0;

    font-size: .1em;
    text-indent: -9999px;
    background: url(/signup/images/residential/titlebanner_looking_for_20.png) no-repeat top left;
}

#moreAboutHomePhone {
    padding: 20px;

    font-size: .9em;
    background-color: #fff;
}

#moreAboutHomePhone p.pFirstContent {
    font-size: 1em;
}

#dataExtensionHelpContent {
    font-size: 1em;
    color: #685564;
}

#dataExtensionHelpContent h1 {
    margin-bottom: 28px;
}

/* Styles for Home Phone info popup */
#phoneBoxOuterContainer {
    float: left;
    width: 590px;
    margin: 14px 0 20px 45px;

    background: url('/signup/images/residential/homephone_border_btm2.png') no-repeat scroll left bottom transparent;
}

.phoneBoxOuter {
    float: left;
    width: 290px;
}

.phoneBoxInner {
    float: left;
    width: 290px;

    background: url('/signup/images/residential/homephone_border_top.png') no-repeat scroll left top transparent;
}

.phoneBoxInner h2 {
    float: left;
    width: 290px;
    height: 106px;
    margin: 0;
    padding: 0;

    text-indent: -9000px;
    background: url('/signup/images/residential/eveningsweekends_header.png') no-repeat scroll left top transparent;
}

.phoneBoxInner h3 {
    margin: 0 0 10px 10px;

    font-size: 1.1em;
}

.phoneBoxInner .anytimeHeader {
    background: url('/signup/images/residential/anytime_header.png') no-repeat scroll left top transparent;
}

#phoneBoxOuterContainer ul {
    margin-left: 8px;
}

#phoneBoxOuterContainer ul.two_column {
    width: 250px;
}

#phoneBoxOuterContainer ul li {
    margin: 0;
    padding: 0 0 9px 30px;

    list-style: none outside none;

    background: url('/signup/images/residential/pn_tick_g.png') no-repeat scroll left top transparent;
}

#popupFooter {
    font-size: .85em;
}

/* end Styles for Home Phone info popup */

/*liveperson button */
#buttonDIV-oj img {
    margin: 10px 0 10px 0;
}

/*END liveperson button */
/* Additional Styles - non JS summary and error pages */

/* error pages */
.dLinks {
    float: right;
    width: 200px;
    margin: 20px 0 0;
}

p.pLinks a.aBackLink,
.dLinks a.aBackLink {
    float: left;
    margin: 7px 0 0 0;
}

.topPara {
    margin-bottom: 15px;
}

/* non-js summary page */
#contentSummaryMidSignup h2 {
    margin: 0 0 15px 0;
}

table.SummaryMidSignup {
    width: 595px;
    margin: 0 0 30px 0;
}

table.SummaryMidSignup tr th {
    padding: 10px 0 0 10px;
    vertical-align: top;

    font-weight: normal;
    text-align: left;
}

table.SummaryMidSignup tr td {
    padding: 10px 10px 0 0 ;
    vertical-align: top;

    font-weight: bold;
    text-align: right;
}

table.SummaryMidSignup tr td.topCost {
    padding-top: 10px;
}

table.SummaryMidSignup tr td.bottomCost {
    padding-bottom: 10px;
}

table.SummaryMidSignup tr td span {
    display: block;

    font-size: .8em;
    font-weight: normal;
}

table.SummaryMidSignup tr.totalCostRow {
    background-color: #e8e6e7;
}

table.SummaryMidSignup tr.totalCostRow th {
    font-weight: bold;
}

table.SummaryMidSignup tr.totalCostRow th,
table.SummaryMidSignup tr.totalCostRow td {
    padding-bottom: 10px;
}

#nonJSbasketInfo {
    float: right;
    width: 274px;
    margin: 0;
    padding: 15px;

    border: 3px solid #e8e6e7;
}

#nonJSbasketInfo h2 {
    margin: 0 0 10px 0;
    padding: 0;
}

#nonJSbasketInfo p {
    margin-bottom: 5px;
}

/* End - Additional Styles - non JS summary and error pages */
/*Live Person fix may 2010 START*/
table tr td {
    padding: 0;

    border: 0;
}

table {
    border-collapse: collapse;

    border: none;
}

.routerTable tr td {
    padding: 3px 5px;

    border: 1px solid #ededed;
}

/*Live Person fix may 2010 END*/
/* Engineering appointing note */
.genericMessage.engineerMessage {
    width: auto;
}

.wlrOptions div.description .genericMessage.engineerMessage p {
    margin: 0;
}

/*Engineering appointing note END */
#anytimeOfferImage {
    width: 288px;
    margin-left: 10px;
}

/*Styles for the fibre upsell pop up */

#outerPadding {
    padding: 14px;

    color: #555;
}

#fibreThickBoxBox {
    width: 564px;

    background: url('/signup/images/fibre_thickbox_bg.png') top left no-repeat #fff;
}

#fibreThickBoxBoxInner {
    padding: 20px 0 10px 20px;
}

#fibreThickBoxBox h1.johnLewisFibreHeading {
    height: 36px;
    margin: 0;
    padding: 0;

    text-indent: -9000px;
    background: url('/signup/images/johnlewis_fibre.png') top left no-repeat;
}

#fibreThickBoxBox h2.johnLewisFibreHeadingPrice {
    margin: 0;
    padding: 0;

    text-indent: -9000px;
}

.topP {
    width: 500px;
    margin-bottom: 10px;

    font-size: 1.1em;
}

.topP2 {
    width: 500px;
    margin-bottom: 30px;

    font-size: 1.1em;
}

#fibreThickBoxBoxInnerBox {
    width: 520px;
    padding: 10px 0;

    color: #555;
    background-color: #fff;
}

#fibreThickBoxBoxInnerBox ul {
    margin: 0 0 10px 0;
    padding: 0 10px 0 10px;

    list-style-type: none;
}

#fibreThickBoxBoxInnerBox ul li {
    margin: 0;
    padding: 10px 0 0 32px;

    background: url('/signup/images/jl_tick.png') no-repeat scroll 4px 12px transparent;
}

.stuffYouNeedToKnow {
    padding: 20px 20px 20px 0;
}

.stuffYouNeedToKnow h3 {
    margin: 0 0 10px 0;
}

.stuffYouNeedToKnow p {
    font-size: .9em;
}

.stuffYouNeedToKnow ul {
    margin: 0 0 0 14px;
    padding: 0;

    font-size: .9em;
}

div#TB_ajaxContent div.stuffYouNeedToKnow h3 {
    color: #252525;
}

/*End of fibre upsell */

#fibrePhone input {
    margin: 5px 0 5px 0;
}

#fibrePhone input.noPhoneLine {
    margin-top: 15px;
}

#fibrePhone label {
    display: inline;
    padding: 0 0 0 5px;
}

#fibrePhone input#phoneLineYes {
    margin-top: 15px;
}

.options .description.hpSwitchGradient {
    width: 472px;
    height: 230px;
    padding: 10px 5px 10px 10px;

    background: url(/signup/images/residential/hp_box_bg.png) no-repeat 0 0;
}

.options .description.hpSwitchGradient p {
    margin: 0 0 10px;
}

textarea#notes {
    width: 588px;
    height: 100px;
}

/*Styles below are for the forced fibre page */

#fibreForced #tableDiv {
    border: 1px solid #ededed;
    border-radius: 7px 7px 7px 7px;
}

#fibreForced #tableDiv table{
    width: 100%;
}

#fibreForced #tableDiv th {
    padding: 0;

    font-size: 1.2em;
    font-weight: bold;
    color: #005757;
    background-color: #fff;
}

#fibreForced #tableDiv span {
    font-size: 1.1em;
    font-weight: bold;
    color: #5d7919;
}

#fibreForced #tableDiv .first {
    width: 30%;
    padding: 6px 0 6px 12px;
    vertical-align: top;

    font-weight: bold;
    text-align: left;
    color: #005757;
}

#fibreForced #tableDiv .second {
    width: 35%;
    padding: 6px 0 6px 12px;
    vertical-align: top;

    text-align: left;
}

#fibreForced #tableDiv .third {
    width: 35%;
    padding: 6px 0 6px 12px;
    vertical-align: top;

    text-align: left;
}

#fibreForced.new-column-width #tableDiv table tr td, #fibreForced.new-column-width #tableDiv table thead tr th{
    width: 25%;
}

#fibreForced #tableDiv .fourth {
    width: 25%;
    padding: 6px 0 6px 12px;
    vertical-align: top;

    text-align: left;
}

.getFibreRoundell {
    position: absolute;
    z-index: 1;
}

.encloseDiv {
    float: left;
    width: 530px;
    margin: 0 0 12px 0;

    border: 1px solid #ededed;
    border-radius: 7px 7px 7px 7px;
}

.encloseDiv p {
    margin: 0;
    padding: 12px 0 0 10px;

    font-size: 1.3em;
    font-weight: bolder;
    color: #005757;
}

.encloseDiv p span {
    float: right;
    margin: 0 12px 0 0;

    color: #666;
}

.encloseDiv p button {
    float: none;
    margin-top: 20px;
}

.encloseInnerLeft {
    float: left;
    width: 270px;
}

.encloseInnerRight {
    float: right;
    width: 230px;
    padding: 10px 6px 0 0;
}

.mainContent .backLeft {
    float: left;
    margin: 0 0 0 68px;
}

#fibreForced #tableDiv,
.encloseDiv {
    border: 1px solid #ededed;
    border-radius: 7px 7px 7px 7px;
    background: rgb(254,254,254); /* Old browsers */
    background:    -moz-linear-gradient(top, rgba(254,254,254,1) 60%, rgba(234,234,234,1) 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%,rgba(254,254,254,1)), color-stop(100%,rgba(234,234,234,1))); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, rgba(254,254,254,1) 60%,rgba(234,234,234,1) 100%); /* Chrome10+,Safari5.1+ */
    background:      -o-linear-gradient(top, rgba(254,254,254,1) 60%,rgba(234,234,234,1) 100%); /* Opera11.10+ */
    background:     -ms-linear-gradient(top, rgba(254,254,254,1) 60%,rgba(234,234,234,1) 100%); /* IE10+ */
    background:         linear-gradient(top, rgba(254,254,254,1) 60%,rgba(234,234,234,1) 100%); /* W3C */
}

label ul {
    list-style: none;
}

label ul li {
    margin: 5px 0;
    padding-left: 30px;
    line-height: 1.4em;

    background: url(/signup/images/jl_tick.png) top left no-repeat;
}

/* Downsell page */
#broadbandPackages {
    margin-top: 15px;
}

#broadbandStandard,
#broadbandUnlimited {
    float: left;
    width: 46.7%;
    padding: 10px 0 10px 10px;

    background: url(/signup/images/product_bg.png) repeat-x;
}

#broadbandStandard ul,
#broadbandUnlimited ul {
    clear: both;
    margin: 0 10px 0 0;
    padding: 15px 0;

    list-style: none;

    border-top: 1px solid #98999b;
}

#broadbandStandard ul li,
#broadbandUnlimited ul li {
    height: 20px;
    margin-bottom: 5px;
    padding: 3px 0 0 30px;

    background: url(/signup/images/jl_tick.png) top left no-repeat;
}

#broadbandStandard form input,
#broadbandUnlimited form input {
    float: right;
    margin-bottom: 10px;
}

#broadbandStandard {
    margin-right: 19px;
}

#broadbandStandard h2 {
    float: left;
    width: 60%;
    height: 55px;

    text-indent: -9999px;
    background: url(/signup/images/product_title_standard.png) no-repeat;
}

#broadbandStandard p {
    float: left;
    width: 36%;
    height: 63px;
    margin-right: 10px;
    margin-bottom: 10px;

    text-indent: -9999px;
    background: url('/signup/images/product_price_standard.png') no-repeat scroll right top transparent;
}

#broadbandUnlimited h2 {
    float: left;
    width: 60%;
    height: 55px;

    text-indent: -9999px;
    background: url(/signup/images/product_title_unlimited.png) no-repeat;
}

#broadbandUnlimited p {
    float: right;
    width: auto;
    height: 65px;
    margin-right: 25px;
    font-size: 0.85rem;
    font-family: 'Gill Sans for JL', 'Gill Sans', Arial, Helvetica, sans-serif;
    text-align: center;
    border-top: 1px solid #98999b;
    padding-top: 10px;
    line-height: 1.2em;
}

#broadbandUnlimited .cost-span{
    font-size: 2em;
    line-height: 0.7;
}

#broadbandUnlimited.refresh-package-box{
    width: 98.4%;
}

#broadbandUnlimited.refresh-package-box ul li{
    font-size: 16px;
}

span.price {
    text-align: right;
}

span.price small {
    font-size: .6em;
}

.description h3 {
    font-size: 1.1em;
}

div.options div.radioOption ul.greenTickList {
    margin: 0;
    padding: 15px 0 0;
}

dd.totalRow,
dt.totalRow {
    color: #043333;
}

div#progressIndicator ul li.completed {
    color: #ccc;
}

.mainContent .description .lineSpeedResults {
    border: none;
}

.mainContent .description .lineSpeedResults h3 {
    margin-left: 0;
    padding: 0;

    font-size: 1.5em;
    font-weight: normal;
}

.mainContent .description .lineSpeedResults ul {
    margin-left: 0;
}

.mainContent .description .lineSpeedResults dt {
    float: left;
    clear: left;
    padding: 0 8px 5px 0;

    font-weight: bold;
}

.mainContent .description .lineSpeedResults dd {
    float: left;

    font-weight: normal;
}

.mainContent .description .lineSpeedResults dd strong {
    font-weight: normal;
}

#fibreFindOutMore {
    padding: 10px 0;
}

.priceVaryFootnote {
    font-size: 7px;
}

.priceVaryFootnoteReference {
    width: 650px;
    margin-top: 20px;
}

p.variationStatement {
    color: #525252;
    padding-top: 12px;
}

.lineCheckDownConsent {
    background: #D0F0FB;
    padding: 12px;
}

.lineCheckDownConsent p {
    margin: 0 0 15px;
}

.lineCheckDownConsent-checkbox input {
    margin-right: 12px;
}

.lineCheckDownConsent-error {
    background: #F1CDCD;
    color: #C8151C;
    padding: 6px;
}

.lineCheckDownConsent-error strong {
    display: block;
    margin: 0 0 4px;
}
