@import url('./lib/font-awesome/css/font-awesome.min.css');

html {
    font-family: BrandFont, arial, sans-serif;
    background-color: #ecedee;
    height: 100%;
    font-size: 15px;
}

body {
    margin: 0px 50px;
    min-height: 100%;
    height: 100%;
}

.device-img {
    max-height: 175px;
    width: auto;
}

.logo {
    position: absolute;
    left: 5px;
    top: 10px;
}

.mob-logo {
    display: none;
}

.header {
    text-align: center;
    margin-bottom: 30px;
    padding-top: 15px;
    font-size: 1.5em;
    font-weight: bold;
    height: 40px;
    position: relative;
}

.footer {
    position: absolute;
    text-align: center;
    bottom: 0px;
    width: 90%;
}

.border-bot {
    border-bottom: 1px solid #cd040b;
}

.content {
    background-color: #ffffff;
    min-height: 100%;
    padding: 0px 15px;
    max-width: 1024px;
    margin: auto;
    position: relative;
}

.brandfont {
    font-family: BrandFont, arial, sans-serif;
}

.body {
    margin: 0px 30px;
    font-family: BrandFont, arial, sans-serif;
    font-size: 1em;
}

.button {
    display: inline-block;
    min-height: 2rem;
    padding: 0.5rem 1.5rem 0.5rem 1.5rem;
    margin: 10px 0px 0px 0px;
    background-color: #fff;
    text-align: center;
    color: #cd040b;
    font-family: BrandFont, Arial, sans-serif;
    font-size: 1rem;
    text-decoration: none;
    border: 1px solid #cd040b;
    border-radius: 25px;
    cursor: pointer;
    outline: none;
}

.button:active {
    background-color: #cd040b;
    color: #fff;
}

.input {
    min-height: 2rem;
}

.center {
    text-align: center;
}

.right {
    text-align: right;
}

.inline-block {
    display: inline-block;
}

.abs-right {
    position: absolute;
    right: 0px;
}

.margin-v-3 {
    margin-top: 3px;
    margin-bottom: 3px;
}

.padding-v-15 {
    padding-top: 15px;
    padding-bottom: 15px;
}

.margin-h-15 {
    margin-right: 15px;
    margin-left: 15px;
}

.margin-h-25 {
    margin-right: 25px;
    margin-left: 25px;
}

.margin-bot-10 {
    margin-bottom: 10px;
}

.margin-bot-15 {
    margin-bottom: 15px;
}

.margin-top-15 {
    margin-top: 15px;
}

.margin-top-25 {
    margin-top: 25px;
}

.margin-top-50 {
    margin-top: 50px;
}

.margin-right-10p {
    margin-right: 10%;
}

.main-content {
    padding-top: 25px;
}

.overflow-x {
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
}

.overflow-y {
    overflow-x: hidden;
    overflow-y: auto;
}

.max-450 {
    max-width: 450px;
}

.device-div {
    width: 30%;
    min-width: 250px;
    white-space: normal;
    word-wrap: break-word;
    margin: 0px 5px;
    padding-bottom: 10px;
}

.mob-device-div {
    min-width: 250px;
    white-space: normal;
    word-wrap: break-word;
    margin: 0px 5px;
    padding-bottom: 10px;
}

.header-bot-margin {
    margin-bottom: 25px;
}

.padding-bot-50 {
    padding-bottom: 50px;
}

.padding-left-10 {
    padding-left: 10px;
}

.field {
    width: 130px;
    display: inline-block;
    vertical-align: middle;
}

.width-100 {
    width: 100%;
}

.banner-container {
    height: 10%;
    max-height: 200px;
    min-height: 55px;
    width: 100%;
    position: fixed;
    top: 0px;
    left: 0px;
}

.banner {
    height: 100%;
    margin: 0px 50px;
    background-color: #ffffff;
    border-bottom: 3px solid #ecedee;
    overflow: hidden;
    box-shadow: 0px 5px 5px #ecedee;
    position: relative;
}

.banner-offset {
    height: 10%;
    max-height: 200px;
}

.banner-content {
    padding-top: 2.5%;
    padding-left: 3%;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.big-text {
    font-size: 2rem;
}

.bolder {
    font-weight: bolder;
    text-shadow: 2px 2px 5px #CCC;
}

.large-font {
    font-size: 3rem;
    font-weight: bold;
}

.red {
    color: #cd040b;
}

.icon {
    width: 50px;
    height: 50px;
    vertical-align: middle;
}

.banner .icon {
    position: absolute;
    right: 10px;
}

.img-icon {
    height: 100%;
    width: 100%;
}

[disabled] {
    cursor: initial;
    color: #ecedee;
    border-color: #ecedee;
}

.sub-input {
    display: block;
    margin-top: 3px;
    padding-left: 10px;
    color: #737373;
    font-size: 10px;
}

.tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
}

.tooltip .tooltiptext {
    visibility: hidden;
    width: 270px;
    background-color: #fff;
    text-align: left;
    border: 1px solid black;
    border-radius: 6px;
    padding: 5px 0px 5px 0px;
    position: absolute;
    z-index: 1;
}

.tooltip:hover .tooltiptext {
    visibility: visible;
}

form input, form select {
    display: block;
    width: 85%;
    height: 34px;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.428571429;
    color: #555;
    vertical-align: middle;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
    -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    margin-top: 5px;
    margin-left: 5px;
}

form input[type=radio] {
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 5px 5px 0px 40px;
}

form abbr[title] {
    text-decoration: none;
}

form abbr[title=required] {
    color: #cd040b;
    font-weight: bolder;
}

form .col {
    width: 49%;
    vertical-align: top;
}

form .col1 {
    width: 4%;
    vertical-align: top;
}

form .col2 {
    width: 60%;
    vertical-align: top;
}

form .half-col {
    width: 46%;
    vertical-align: top;
}

input.invalid {
    border: 1px solid #cd040b;
}

input.valid {
    border: 1px solid green;
}

input[disabled] {
    border: 1px dotted gray;
}

.input-error {
    margin-left: 15px;
    margin-top: 5px;
    color: #cd040b;
    font-size: 12px;
}

#card-container {
    width: 400px;
}

@media screen and (max-device-width: 480px) {
    html {
        -webkit-text-size-adjust: none;
        text-size-adjust: none;
        width: 100%;
    }
    body {
        -webkit-text-size-adjust: none;
        font-family: BrandFont, Arial, Verdana, sans-serif;
        padding: 0px 5px;
        margin: 0px;
    }
    .logo {
        display: none;
    }
    .mob-logo {
        display: block;
        margin: auto;
    }
    .header {
        text-align: center;
        position: fixed;
        height: 30px;
        top: 0px;
        left: 0px;
        width: 100%;
        background-color: #ecedee;
        margin: 0px;
        padding: 5px 0px 0px 0px;
        font-weight: bold;
    }
    .header-spacer {
        height: 30px;
        margin-bottom: 15px;
    }
    .button{
        margin-top: 0px;
    }
    .mob-right {
        width: 100%;
        text-align: right;
    }
    .device-img {
        white-space: normal;
        word-wrap: break-word;
    }
    .mob-center {
        width: 100%;
        text-align: center;
    }
    .field {
        width: 120px;
        display: inline-block;
    }
    .banner {
        height: 100%;
        margin: 0px;
        background-color: #ffffff;
        border-bottom: 3px solid #ecedee;
    }
    .large-font {
        font-size: 1.5rem;
    }
    .banner-content {
        padding-top: 4.5%;
        padding-left: 3%;
    }
    .icon {
        width: 30px;
        height: 30px;
    }
    .agreement-div {
        max-height: 300px;
        overflow-y: auto;
    }
    form .col {
        width: 100%;
    }
    form .half-col {
        width: 50%;
    }
    form .half-col input {
        width: 70%;
    }
    .tooltip .tooltiptext {
        left: -50px;
    }
    #card-container {
        padding: 0px;
        width: 100%;
    }
}

@font-face {
  font-family: "BrandFont";
  src: url(lib/fonts/NeueHaasGroteskText55Roman.woff) format("woff"), url(lib/fonts/NeueHaasGroteskText55Roman.ttf) format("truetype");
  font-weight: normal;
}
@font-face {
  font-family: "BrandFont";
  src: url(lib/fonts/NeueHaasGroteskText75Bold.woff) format("woff"), url(lib/fonts/NeueHaasGroteskText75Bold.ttf) format("truetype");
  font-weight: bold;
}
@font-face {
  font-family: 'NeueHaasGrotDisp-Medium';
  src: url(lib/fonts/NeueHaasGrotDisp-65Medium.woff) format("woff"), url(lib/fonts/NeueHaasGrotDisp-65Medium.otf) format("OpenType");
}

.credit_button{height:20px; position:relative; margin: -20px -50px; width:250px; top:50%; left:40%;}
.payment_submit_button{width:100px;}.viewer-container {
    text-align: center;
    margin: auto;
    height: 95%;
    max-width: 1280px;
    overflow-y: scroll;
    border: 1px solid lightgrey;
    background-color: #ffffff;
}

.viewer-toolbar {
    background-color: #474747;
    padding: 10px;
}

.viewer-overlay {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: #202020;
    z-index: 1;
}

.viewer-toolbar i {
    margin: 10px;
    color: #FFFFFF;
    cursor: pointer;
}

.viewer-toolbar i:active {
    color: lightblue;
}.signatureContainer {
    margin: 50px 0px 0px 0px;
    text-align: center;
}

.signatureCanvas {
    width: 100%;
    max-width: 600px;
    height: 200px;
    border: 1px solid lightgrey;
}body
{background-color: white; margin:0;}
table
{ width:100%; border-collapse: collapse;}

th, td {
    
    padding: 0 0.5334cm;
    /* padding-left: 0.5334cm;
    padding-right: 0.5334cm; */
    
     /* border: 1px solid black;  */
}

hr
{
	height:1px;
	color: #000;
	background-color: #000;
	border: none;	
	margin-top: 0.2464cm;
	margin-bottom: 0.508cm;
}
.default-rule-spacing
{
	margin-top: 0.508cm;
	margin-bottom: 0.508cm;
}

.charges-rule-spacing
{
	margin-top: 0.2464cm;
	margin-bottom: 0.508cm;
}
.charges-rule-cell
{padding-top: -11px;}

.left
{ text-align: left; }
.right
{ text-align: right; }
.center
{ text-align:center; }
.top-align
{ vertical-align: top; }

.indent
{padding-left: 27px;}

.market-value-pad
{padding-top: 2px;}

.receipt-info, .device-upgrade-pad, .next-bill-top-pad
{padding-top:5px;}
.upgrade-reason-pad
{padding-top: 5px; padding-bottom:5px;}
.device-id-pad, .padding-bottom-5
{padding-bottom:5px;}

.acc-only-spacing 
{ padding-top: 10.25cm;}
.top-bar-spacing
{padding-bottom:0.6096cm;}
.total-top-pad
{padding-top:0.1778cm;}
.totals-padding, .payment-method-padding
{padding-top: 0.3556cm;}

.line-spacing, .feature-spacing
{padding-bottom: 10px;}

.line-promo-title
{
	padding-top: 5px;
}

.register-spacing
{padding-bottom:1.529cm;}

.agreement-spacing
{
	padding-top: 0.254cm;
	padding-bottom: 0.1cm;
}


.dev-details-spacing
{ padding-bottom: 0.1702cm; }

.tax-spacing
{
	/*padding-top: 0.299cm;*/
	padding-top: 0.6426cm;
	padding-bottom:0.4241cm;
}
.other-cred-spacing
{
	padding-top: 0.299cm;
	padding-bottom:0.4241cm;
}

.no-left-pad
{padding-left:0;}
.no-right-pad
{padding-right:0;}
.no-side-pad
{padding-left:0; padding-right:0;}

.dollar-img
{ width:0.3302cm; }
.img-size
{
	/*width:32px;*/
	width: 0.7112cm;
	padding-top:0.3552cm;
	padding-bottom: 0.3552cm;
}

.img-size2
{
	width: 0.6cm;
	padding-top:0;
}

.plan-img
{ 
	width: 1.27cm;
	height: 1.27cm;
}
.signature
{
	width:14cm;
	height:2.159cm;
}

.logo-img
{
	width: 2.794cm;
}
.barcode-area
{
  text-align:center;
  padding-top: 0.2cm;
}
.barcode-img
{
  height: 32px;
  width:auto;
}

.title-line-height
{line-height: 200%;}

.agreement-title, .policy-title, .payment-location-title, .eqt-protect-title
{
  font-family: NeueHassGrot-Bold ;
  font-size: 12pt;
  color: #000;
  padding-bottom:0.4828cm;
  vertical-align: top;
}
.eqt-protect-title
{ padding-top: 0.4826cm; }

.payment-location-title
{
	font-size: 10pt;
	padding-bottom: 0.4241cm;
}


.totals-cell, .totals-first, .totals-last
{
	background-color: #ecedee;
	padding-left: 0.3048cm;
	padding-right: 0.3048cm;
}
.totals-cell
{ padding-top:0.3302cm; padding-bottom: 0.4318cm;}
.totals-first
{
	padding-bottom: 0;
	padding-top: 0.4318cm;
}
.totals-last
{
	padding-top: 0;
	padding-bottom: 0.4318cm;
}
.price-subtotal, .price-accessories
{
	font-family: NeueHassGrot-Bold;
	font-size: 12pt;
	vertical-align: top;
	text-align:right;
	color: #000;
}
.price-accessories
{ vertical-align: middle;}
.line-name, .subacct-sales-tax-label, .subacct-next-bill-label
{
	font-family: NeueHassGrot-Bold;
	font-size: 10pt;
	color:#000;
}
.price-totals, .paid-today-label
{ 
	font-family: NeueHassGrot-Bold ;
	font-size: 16pt;
	color: #000;
	text-align:right;
}
.paid-today-label
{
	font-size: 16pt;	
}
.charges-title,.totals-title
{
	font-family: NeueHassGrot-Bold ;
	font-size: 16pt;
	color: #000;
	text-align:left;
}

.plan-summary-pad
{
	padding-top: 0.508cm;
}

.plan-title, .sales-tax-label, .device-label, .down-pay-label, .line-acc-label, 
.contract-date-label, .upgfee-label, .security-deposit-label, .security-deposit-msg, 
.feats-desc, .accessory-desc, .device-desc
{
	font-family: NeueHassGrot-Roman ;
	font-size: 12pt;
	color:#000;
}
.device-desc{
	color: #82ceac !important;
	font-family:NeueHassGrot-Medium;
}
.plan-title
{font-size: 10pt;}

.security-deposit-msg
{ color: #cd2026;}


.payment-type-label
{
	font-family: NeueHassGrot-Bold ;
	font-size: 12pt;
	padding-bottom: 0;
	padding-right: 0;
}
.payment-price-total
{
	font-family: NeueHassGrot-Bold ;
	font-size: 12pt;
	padding-bottom: 0;
	text-align:right;
}
.title-label
{
	font-family: NeueHassGrot-Bold ;
	font-size: 16pt;
	color: #000;
	padding-bottom:0.4318cm;
}
.feats-acc-title
{
	font-family: NeueHassGrot-Bold;
	font-size: 14pt;
	color:#000;
}
.label-credit, .price-credit
{
	font-family: NeueHassGrot-Bold ;
	font-size: 9pt;
	color: #82ceac;
	text-align: left;
}
.price-credit
{text-align: right;}

.label-mtn
{
	font-family: NeueHassGrot-Bold !important;
	font-size: 14pt;
	color: #cd040b;
}

.label-description
{
	font-family: NeueHassGrot-Roman !important;
	font-size: 10pt;
	color: #959595;
}
.payment-chip-info
{
	font-family: NeueHassGrot-Roman ;
	font-size: 6pt;
	color: #848588;
	vertical-align: top; 
}
.label-agreement, .signature-text, .page-numbers, .label-plan-desc, .device-id-label, .market-promo-values
{
	font-family: NeueHassGrot-Roman;
	font-size: 11pt;
	color: #959595;
}
.feats-acc-title, .market-promo-values
{ font-family: NeueHassGrot-Medium; }

/* .device-id-label
{color: 82ceac;} */
.trade-in-spacing
{ padding-bottom:0.254cm; padding-top:-9px; }

.signature-text
{
	padding-bottom:0.4241cm;
}

.mid-align
{vertical-align: middle;}

.font-16
{font-size: 16pt !important;}
.font-10
{font-size: 10pt !important;}

.nhg75
{font-family: NeueHassGrot-Bold, sans-serif !important;}
.bold
{font-family: NeueHassGrot-Bold, sans-serif;}

.subacct-total-today-borders
{ border-left: 10px solid #e4e5e3; }
.subacct-total-monthly-borders
{ border-right: 10px solid #e4e5e3; }

.subtotals-title-spacing, .subacct-title-spacing, .total-title-spacing
{ padding-top:15px; }


.subacct-price-totals
{ margin-left: 20px; }

.total-today-borders
{ border-left: 10px solid white; }
.total-monthly-borders
{ border-right: 10px solid white; }
.total-today-fill
{ background-color: white;}

.device-trade-in-info{
	margin-left : 10px;
	font-family: NeueHassGrot-Bold ;
	font-size: 6pt;
	color:#959595;
}

.row{
	width: 100%;	
}
.tiny-6{
	width: 50%;
}
.tiny-3, .tiny-4, .tiny-6, .tiny-8, .tiny-9{	
	float: left;
}
.paddingTopBtm{
	padding-top: 20px;
	padding-bottom: 20px;
}
.rowleft100{
	width: 100%!important; 
	float: left!important;
}
.columnleft50{
	float: left;
	width: 50%;
}
.columnleft49{
	width: 49%; 
	float: left; 
	text-align: center; 
	padding-bottom: 10px; 
	border-right: 1px solid #bbb;
}
.columnright100{
	float: right!important;
	width: 100%!important;
}
.columnleft99{
	float: left!important;
	width: 99%!important;
	text-align: center;
}
.columnright95{
	float: right!important;
	width: 95%!important;
}
.columnright90{
	float: right!important;
	width: 90%!important;
}
.columnleft20{
	float: left!important;
	width: 20%!important;
}
.columnleft30{
	float: left!important;
	width: 30%!important;
}
.columnleft70{
	float: left!important;
	width: 70%!important;
}
.bottompanel{
	height: 41px;
}
.font37{
	font-size: 37px;
}
.text-small{
	font-size: 12px !important
}
.text-xlarge {
	font-size: 18px!important;
}

.padding-top-micro{	
	padding-top: 5px;
}
.padding-bottom-small{
	padding-bottom: 18px;
}
.padding-bottom-tiny {
	padding-bottom: 10px;
}
.text-right{
	text-align: right;
}
.text-xxlarge{
	font-size: 24px!important;
}
.bold {
    font-weight: bold;
}
.font-20{
	font-size: 20px;
}

.paddingtoptiny {
    padding-top: 20px !important;
}
.italic {
    font-style: italic;
}

.text-xxxlarge{
	font-size: 30px;
}
.left{
	float: left;
}
.right{
	float: right;
}