html{
  min-width: 320px;
}
body {
  width:          94%;
  max-width:      700px;
  font-family: sans-serif, Arial,Helvetica;
  font-size:   11px;
  -webkit-font-smoothing: antialiased;
  margin-left:    auto;
  margin-right:   auto;
  color: #777779;
  background-color: #F8F8F8;
}
img.close {
  position: absolute;
  right: 5px;
  top: 5px;
}

img.close:hover {
  cursor: pointer;
}

img.static_cvn {
  width: 90px;
  height: 50px;
  margin-left: 5px;
  margin-right: 5px;
  float: left;
}

img.info {
  padding-left: 5px;
  vertical-align: middle;
  height: 18px;
  margin-top: -5px;
}

#header {
  width: 100%;
  border: 1px solid #E2E2E2;
  border-radius: 5px;
  box-sizing: border-box;
  padding: 10px;
  background-color: white;
}

#header img{
  display: block;
  max-width: 100%;
}

#header img.lng
{
  margin-top:  3px;
  margin-left: 3px;
}

form {
  margin: 0px;
}

#cart {
  width:           100%;
  border: 1px solid #E2E2E2;
  border-top: none;
  border-radius: 0px 0px 5px 5px;
  background-color: white;
  padding: 15px;
}

#cart thead th {
  color: #5C5C5C;
  line-height: 15px;
  padding: 5px;
  text-align:left;
}
#cart thead th:nth-last-child(-n+3){
  text-align:right;
}

#cart tbody td:nth-last-child(-n+3){
  text-align:right;
}

#cart td {
  padding-left:     3px;
  padding-right:    3px;
  color: #868686;
  padding: 5px;
  text-align:left;
}

#cart tfoot th {
  text-align:    right;
  padding-right: 3px;
  padding: 5px;
  color:#5C5C5C;
}

#cart tfoot td {
  text-align:    right;
}

#cart tfoot #total td {
  font-weight:      bold;
}

div#page_header {
  color: #525252;
  text-align: right;
  overflow: hidden;
  padding: 15px;
  margin-top: 25px;
  background-color: white;
  border-radius: 5px 5px 0px 0px;
  margin-left: 0px;
  margin-right: 0px;
  border: 1px solid #E2E2E2;
  line-height: 18px;
}


#page_caption {
  float:               left;
  color:               #868686;
  font-size:           11pt;
  font-weight:         100;
}

#page {
  width:               100%;
  text-align:          center;
  border: 1px solid #E2E2E2;
  border-top: 0px;
  border-radius: 0px 0px 5px 5px;
  background-color: white;
}

#page #body {
  padding: 15px;
}

#page #body h3
{
  margin-top: 5px;
  margin-bottom: 5px;
  font-size: 13px;
}

#page p {
  text-align: justify;
}

#page #body .row {
  white-space: nowrap;
  vertical-align: top;
  display: inline-table;
  width: 100%;
}

#page #body .col {
  vertical-align: top;
  display: table-cell;
}

#page #body .row .col:first-child {
  text-align: left;
  margin-bottom: 10px;
}

#page #body .row .col:first-child > .ptype {
  margin: 0px;
}

#page #body .row .col:last-child {
  float: right;
}

#page #body .col div {
  white-space: normal;
  text-align: left;
}

#page #body #input > div {
  display: table-row;
}
#page #body #input > div > label {
  padding-bottom: 4px;
}
.gray{
  color: #777779;
}

#page #body #input > div > label, #page #body #input > div > span {
  padding-left:  2px;
  padding-right: 5px;
  text-align:    left;
  display: table-cell;
  vertical-align: middle;
}

#page #body #input > div.sep.top > label, #page #body #input > div.sep.top > span {
  padding-top: 10px;
}


#page #body #input #err_hdr, .error {
  color: #FC1154;
}

#page #body #input td {
  text-align: left;
}

#page #body #input input.ship {
  width: 210px;
}

#page #body #input select.ship {
  width: 232px;
}

#page #body #input input,select, .inputWrapper input {
  color: #868686;
  border: 1px solid #E2E2E2;
  border-radius: 3px;
  height: 25px;
  margin-bottom: 5px;
  padding-left: 10px;
  padding-right: 10px;
  min-width: 70px;
}

fieldset#input {
  border: 1px solid #E2E2E2;
  background-color: white;
  border-radius: 5px;
}

fieldset#input > legend {
  color: #777779;
  text-align: left;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
  padding-right: 10px;
  height: 29px;
  background-image: url('/app/checkout/img/arrow.svg');
  background-repeat: no-repeat;
  background-size: 11px;
  background-position: 95% 10px;
  background-color: white;
}

select[name=expiry_mm],select[name=expiry_yy]{
  width: 84px !important;
  background-position: 90%;
}

select[name=expiry_yy]{
  width: 83px !important;
}

#page #body #input select.bill, select.justify {
  width: 172px;
  padding-right: 22px;
}

select.useProfile{
	width: 75% !important;
}
.deleteProfile {
	min-width: 20px !important;
	width: 29px;
	float: right;
	height: 29px !important;
	background-color: #F8F8F8;
	background-image: url('/app/checkout/img/trash.svg');
	background-repeat: no-repeat;
	background-position: 5px 3px;
}

#page #body #input input.price {
  width: 61px;
  text-align: right;
}

#page #body #input input.cents {
  width: 20px;
}

#page #body #input input.tid {
  width: 90px;
}

#page #body #input input[name $= "expiry_yy"], #page #body #input select[name $= "expiry_yy"] {
  margin-left: 5px;
}

#papge #body #input .right {
  float: right;
}

#page #body #rcvr {
  display: table-row;
}

#page #body #rcvr > b {
  display: table-cell;
  padding-right: 5px;
}

#page #price {
  display:     block;
  clear:       both;
  font-weight: bold;
  text-align:  center;
  font-size: 1.2em;
  margin-top: 10px;
}

#page #error {
  padding:     6px;
  padding-top: 0px;
  font-size:   12px;
  font-weight: bold;
  color:       #FC1154;
}

#page #system_err {
  padding-top:    10px;
  padding-bottom: 10px;
  font-size:      16px;
  font-weight:    bold;
  text-align:     center;
}

#page #buttons {
  padding:     15px;
  padding-top: 0px;
  text-align:  center;
  vertical-align: bottom;
}

#page #buttons input.btn, button.g-recaptcha {
  min-width:       90px;
  max-width:       100%;
  -webkit-appearance: none;
  border: none;
  background-color: #F8F8F8;
  color: #5C5C5C;
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  height: 30px;
}

#page #buttons #left {
  float:       left;
}

#page #buttons #right {
  float:       right;
}

#page #buttons #disabled {
  float:       right;
  display:     none;
}

#page #success_title {
  width:          100%;
  font-size:      16px;
  font-weight:    bold;
  text-align:     center;
  color:          #009900;
  padding-bottom: 10px;
}

#page #error_title {
  width:          100%;
  font-size:      16px;
  font-weight:    bold;
  text-align:     center;
  color:          #aa0000;
  padding-bottom: 10px;
}

#page #error_msg {
  width:          100%;
  font-size:      14px;
  font-weight:    bold;
  text-align:     center;
  padding-bottom: 10px;
}

#page #error_subj {
  width:       100%;
  font-size:   11px;
  font-weight: bold;
  text-align:  center;
}

#footer {
  width:      100%;
  margin-top: 7px;
}

.ptype {
  width: 111px;
  overflow: hidden;
  text-align: center;
  margin: 2px;
  display: block;
  height:  49px;
  padding: 0 0 12px 0;
  background-color: white;
  border: 1px solid #E2E2E2;
  border-radius: 5px;
  vertical-align: top;
}

input:not(#expiry-year), select:not([name='expiry_yy']){
  margin-left: 0px !important;
}


.ptype.select {
  float: left;
}

.ptype.select:hover {
  cursor: pointer;
  border: 1px solid lightgrey;
}

select::-ms-expand {
    display: none;
}

.ptype h4 {
  font-weight: 500;
  font-size: 1em;
  margin-bottom: 5px;
  margin-top: 5px;
  height: 17px;
  line-height: 16px;
  overflow: hidden;
  color: #868686;
}

.ptype.select.dbl {
  width: 228px;
}

.ptype.select.dbl > input[type="image"] {
  margin: 0 2px 11px 2px;
}

.ptype > img, .ptype > input[type="image"]
{
  height: 22px;
}

#body input[type="radio"][name="p_type"] {
  height: 9pt;
  display: none;
}

#body input[type="radio"]:checked + .ptype {
  border: 1px solid #525252;
}

#page #body.profile_on #input .prf_on, #page #body.profile_off #input .prf_off
{
  display: table-cell
}

#page #body.profile_on #input .prf_off, #page #body.profile_off #input .prf_on
{
  display: none;
}

.bill.hdn {
  display: none;
}

.hdn {
  display: none;
}

#profile_update input {
  color: blue;
  border: none;
  background: none;
  text-decoration: underline;
  font-size: 10px;
  padding: 0;
  float: right;
}

input:disabled, select:disabled, input:read-only {
  background-color: #F8F8F8;
}

.promo {
  text-align: center;
  margin-top: 5px;
}

.promo.HOBEX-AT, .promo.HOBEX-DE, .promo.HOBEX-NL, .promo.ELV, .promo.B4P, .promo.PAYOLUTION, .promo.ELVSECURE {
  margin-top: 0;
  text-align: justify;
}

#cvc{
  width: 62px;
  min-width: 32px !important;
}

#profile {
  width: 100px;
  min-width: 50px !important;
}

.static {
  width: 95%;
  font-size: 12px;
}

.static > div {
  min-height: 60px;
  padding-top: 10px;
  padding-bottom: 10px;
}


.ptype.select {
  float: none;
  display: inline-block;
}


.prf_on #expiry-year , input[name*='expiry_yy']{
  width: 40% !important;
  min-width: 10px !important;
  float: right;
}
.prf_on #expiry-month, input[name*='expiry_mm']{
  width: 30% !important;
  min-width: 10px !important;
}

#dynamic-input {
  display: block !important;
  margin-bottom: 10px;
}

.spinner {
  margin: 20px auto;
  margin-bottom: 10px;
  height: 20px;
  text-align: center;
  font-size: 10px;
}

.spinner > div {
  background-color: #414141;
  height: 100%;
  width: 6px;
  display: inline-block;

  -webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
  animation: sk-stretchdelay 1.2s infinite ease-in-out;
}

.spinner .rect2 {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}

.spinner .rect3 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

.spinner .rect4 {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}

.spinner .rect5 {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}

.spinner .rect6 {
  -webkit-animation-delay: -0.7s;
  animation-delay: -0.7s;
}

.spinner .rect7 {
  -webkit-animation-delay: -0.6s;
  animation-delay: -0.6s;
}

.spinner .rect8 {
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
}

@-webkit-keyframes sk-stretchdelay {
  0%, 40%, 100% { -webkit-transform: scaleY(0.4) }
  20% { -webkit-transform: scaleY(1.0) }
}

@keyframes sk-stretchdelay {
  0%, 40%, 100% {
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4);
  }  20% {
    transform: scaleY(1.0);
    -webkit-transform: scaleY(1.0);
  }
}

/** Tooltips **/

#tooltip
{
    text-shadow: 0 1px rgba( 0, 0, 0, .5 );
    line-height: 1.5;
    color: #fff;
    background: #333;
    background: -webkit-gradient( linear, left top, left bottom, from( rgba( 0, 0, 0, .6 ) ), to( rgba( 0, 0, 0, .8 ) ) );
    background: -webkit-linear-gradient( top, rgba( 0, 0, 0, .6 ), rgba( 0, 0, 0, .8 ) );
    background: -moz-linear-gradient( top, rgba( 0, 0, 0, .6 ), rgba( 0, 0, 0, .8 ) );
    background: -ms-radial-gradient( top, rgba( 0, 0, 0, .6 ), rgba( 0, 0, 0, .8 ) );
    background: -o-linear-gradient( top, rgba( 0, 0, 0, .6 ), rgba( 0, 0, 0, .8 ) );
    background: linear-gradient( top, rgba( 0, 0, 0, .6 ), rgba( 0, 0, 0, .8 ) );
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    border-top: 1px solid #fff;
    -webkit-box-shadow: 0 3px 5px rgba( 0, 0, 0, .3 );
    -moz-box-shadow: 0 3px 5px rgba( 0, 0, 0, .3 );
    box-shadow: 0 3px 5px rgba( 0, 0, 0, .3 );
    position: absolute;
    z-index: 100;
    padding: 15px;
}
#tooltip:after
{
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #333;
    border-top-color: rgba( 0, 0, 0, .7 );
    content: '';
    position: absolute;
    left: 50%;
    bottom: -10px;
    margin-left: -10px;
}
#tooltip.top:after
{
    border-top-color: transparent;
    border-bottom: 10px solid #333;
    border-bottom-color: rgba( 0, 0, 0, .6 );
    top: -20px;
    bottom: auto;
}
#tooltip.left:after
{
    left: 100px;
    margin: 0;
}
#tooltip.right:after
{
    right: 10px;
    left: auto;
    margin: 0;
}

/** Dynamic input **/
.trow {
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.trow > .spacing {
  margin-right: 15px;
}
.trow > .spacing:last-child {
  margin-right: 0px;
}

.column {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.main.column {
  margin-right: 10px;
}
.main.column:last-child {
  margin-right: 0px;
}
.column.text {
  text-align: left;
}
.column.two {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
}
.birthday {
  min-width: 167px;
}
.trow > .column:last-child {
  margin-right: 0px;
}
.inputWrapper > * {
  width: 100%;
  box-sizing: border-box;
}
.smallDropdown {
  min-width: auto;
  padding-right: 10px;
  background-position: 90% 10px;
  min-width: 0 !important;
}
.center {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
.alignChildLeft * {
  float: left;
}
.marginRight {
  margin-right: 5px;
}
.marginTop {
  margin-top: 5px;
}
.inputWrapper input, .inputWrapper select {
  height: 29px;
  margin-bottom: 0px;
}

@media screen and (max-width: 350px){
  #cart thead{
    display: none;
  }
  #dynamic-input {
    margin-left: 15px;
  }
}


@media screen and (max-width: 43em) {
  .trow:not(.birthday) {
    flex-direction: column !important;
  }
  .column {
    width: 100%;
  }
  .column.text {
    padding-bottom: 4px;
    padding-top: 4px;
  }
  #page #body #input > div > label, #page #body #input > div > span, #page #body.profile_on #input .prf_on, #page #body.profile_off #input .prf_off
  {
    display: block
  }
  #page #body #input div.sep.top > span {
    padding-top: 0;
  }
  #page #body #input div.sep.btm > span {
    padding-bottom: 1.7em;
  }
  #page #body #rcvr b {
    width: auto;
    display: block;
  }
  .promo.HOBEX-AT, .promo.HOBEX-DE, .promo.HOBEX-NL, .promo.ELV, .promo.B4P {
    text-align: left;
  }
  #page #body #input > div > label {
    padding-top: 6px;
  }
}

@media screen and (min-width: 39em) {
  #page #body #input input.bill, input.justify{
    width: 150px;
  }
}

@media screen and (max-width: 39em) {
	.deleteProfile {
		width: 20% !important;
		background-position-x: 50%;
	}
  #page #body .row {
    display: table;
  }
  #page #body .col {
    display: block;
  }
  #page #body .row .col:first-child {
    text-align: inherit;
  }
  #page #body .row .col:last-child {
    margin-bottom: 1em;
    float: none;
  }
  #page #body #input > div {
    text-align: left;
    display: block;
  }
  #cvc, #profile {
    width: 90% !important;
  }
  #input div span > input{
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: 29px !important;
  }

  #input{
    clear: both;
  }

  .priceResponsive{
    display: none !important;
  }

  #page_caption{
    text-indent: initial !important;
  }

  #expiry-year , input[name*='expiry_yy']{
    width: 48% !important;
    float: right;
  }
  #expiry-month, input[name*='expiry_mm']{
    width: 48% !important;
  }
  .ptype:not(.select){
    margin: auto !important;
  }
  .priceDesk{
    margin: auto;
  }
  #header img{
    margin-left: auto;
    margin-right:auto;
  }
  #page #body #input input.ship,select.ship {
    width: 100%;
  }
  select{
    width: 100% !important;
  }
  #header select{
    width: auto !important;
  }
  #page #buttons input.btn {
    min-width: 80px;
  }
  #page #buttons #right {
    margin-left: 3px !important;
  }
  .btn-sep {
    display: none;
  }
  .google-pay {
    padding-top: 5px;
    padding-right: 2px;
    clear: both;
  }
  .apple-pay {
    padding-top: 5px;
    clear:both;
  }
}

@media screen and (min-width: 39em) {
  .priceDesk{
    display: none !important;
  }
}

@media screen and (max-width: 28em) {
  #footer .egov {
    display: none;
  }
}
@media screen and (max-width: 21em) {
  #page #buttons #right {
    margin-left: 0px !important;
  }
  #footer .norton {
    display: none;
  }
}
@media screen and (max-width: 16em) {
  #footer .cert {
    display: none;
  }
}

@supports not (-webkit-appearance: -apple-pay-button) {
  .apple-pay {
    display: none;
  }
}

@supports (-webkit-appearance: -apple-pay-button) {
  .apple-pay {
    float:right;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .apple-pay button {
    display: inline-block;
    -webkit-appearance: -apple-pay-button;
    -apple-pay-button-style: black;
    height: 30px;
  }
  .apple-pay button.hidden {
    display: none;
  }
  .apple-pay button.enabled:hover {
    cursor: pointer;
  }
  .apple-pay button.disabled:hover {
    cursor: not-allowed;
  }
}
.google-pay {
  float:right;
  display: flex;
  justify-content: center;
  align-items: center;
}
.btn-sep {
  padding-top: 8px;
  padding-left: 5px;
  padding-right: 5px;
  height: 30px;
  float: right;
  display: none;
}