.icon-menu, .searchFormDiv {
    visibility: hidden;
}

.my-account-icon, .searchFormDiv, .top-nav-section1-wrapper .basket-icon, .top-nav-category-container {
    display: none;
}

.checkout-separator, .checkout-separator h1 {
    background: #000;
    color: #FFF;
    display: block;
    text-align: left;
    padding-left: 1rem;
    line-height: 3rem;
}

.checkout-separator .width-controller {
    margin: auto;
}

.main-content {
    font-size: 1rem;
}

.continue-shopping {
    display: flex;
    justify-content: space-between;
    margin-top: 0;
    margin-bottom: 1rem;
}

.continue-shopping a {
    color: #8c8c8c;
    text-transform: uppercase;
    text-decoration: underline;
}

legend {
    display: none;
}

ol {
    margin: 0;
    padding: 0;
}

fieldset ol li {
    margin-bottom: 15px;
}

.title {
    text-transform: uppercase;
    padding: .75em 1em;
}

h1 {
    display: inline-block;
    font-size: 2em;
    padding-right: 1.5em;
}

.medium-button {
    height: auto;
}

a.continue-shopping {
    color: #333;
    text-transform: uppercase;
    text-decoration: underline;
    animation: continueShopping 5s 3s alternate infinite;
    display: block;
    margin-bottom: .5em;
}

.continue-shopping #checkout-login {
    color: #CB4C0C;
    visibility: hidden;
}

.continue-shopping #checkout-login.active {
    visibility: visible;
}

.checkout-container {
    margin-top: 2em;
}

.checkout-container.enabled {
  flex-direction: column-reverse;
}

.co-options-container form {
	display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}

.login-fields, li.login-username, li.login-password, .login .buttons {
    display: block;
}

.login-fields .attention {
	display: inline-block;
	text-align: left;
}

.login fieldset ol li {
	margin-bottom: 0;
}

input.login-username, input.login-password {
  width: 100%;
  margin-bottom: 1rem;
}

.checkout-container .left-side {
    margin-top: 1.5rem;
}

.checkout-container .promo-wrapper .left-side {
    margin-top: 0;
}

.checkout-container > div {
    width: 100%;
}

.checkout-container .checkout-form-wrapper {
    border: 0;
}

.main-content input[type="text"], .main-content input[type="password"], .main-content input[type="email"], select {
    padding: .75rem .5rem;
    border-color: #d4d4d4;
    box-shadow: 0 -1px 2px #bebebe;
    font-size: 1rem;
    font-family: "Futura-PT", Helvetica, Arial, sans-serif;
}

.checkout-form-wrapper input[type="text"], .checkout-form-wrapper input[type="password"], .checkout-form-wrapper input[type="email"], .checkout-form-wrapper select {
    padding: 1rem .5rem .5rem;
}

.checkout-form-wrapper select, .payment select {
    position: relative;
    z-index: 2;
    background: transparent;
    padding: 1rem .5rem .5rem .5rem;
}

.checkout-container ul.billing-address {
    list-style: none outside none;
}

.checkout-container li > .misc-options {
    padding: 0;
}

.checkout-container div > .misc-options {
    padding: 1em;
}

.co-options-container {
    width: auto;
}

.main-content .title {
    background: #f1f1f1;
    color: #272727;
}

.returning-customers-links {
    margin-bottom: .5em;
}

.returning-customers-links a {
    text-decoration: underline;
    text-transform: lowercase;
}

.returning-customers-links a:hover {
    text-decoration: none;
}

.other-options {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    margin-top: .75rem;
    padding: 0 .75rem;
}

.other-options > * {
  margin: .25rem 0;
}

.other-options > *:last-child {
  margin-bottom: .75rem;
}

.login-container {
    display: flex;
    justify-content: center;
    margin-bottom: .5rem;
}

#login-button, #account-create-link, #continue-guest-link {
    font-size: 1.1rem;
    width: auto;
    height: auto;
    font-weight: normal;
    padding: .35rem .5rem;
    color: #FFF;
    background: #f16128;
    border: 1px solid #f16128;
    border-radius: .15rem;
    text-transform: uppercase;
    text-align: center;
}

#account-create-link, #continue-guest-link, #login-button {
    width: 12rem;
}

#account-create-link:hover, #clear-cart-button:hover {
    color: #FFF;
    background: #f16128;
}

#continue-guest-link {
    text-transform: uppercase;
    font-weight: bold;
    color: #333;
    text-decoration: underline;
}

#continue-guest-link:hover {
    text-decoration: none;
}

.checkout-container .right-side {
    color: #272727;
    background: #f1f1f1;
    white-space: nowrap;
}

.right-side .basket {
    padding: 0 1rem .75rem 1rem;
    border-bottom: 1rem solid #FFF;
    width: 100%;
}

table.basket-form tr {
    border-bottom: 0;
}

.basket .cell-delete label {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-end;
    color: #AFAFAF;
}

.basket .cell-delete label:hover, .basket .cell-quantity a:hover {
    color: #595858;
}

.basket-form button[data-deletebutton] {
  margin-top: .575rem;
  text-transform: uppercase;
  padding: .175rem .25rem;
  color: #FFF;
  background: #f16128;
  border: 1px solid #f16128;
  border-radius: .15rem;
  cursor: pointer;
  font-size: .8rem
}

.basket-container .title a {
    background: #FFF;
    color: #CB4C0C;
    padding: .2em .3em;
    position: absolute;
    right: .5em;
    top: .33em;
    text-transform: lowercase;
}

.basket-container .title a:hover {
    color: #FFF;
    background: #000;
    text-decoration: none;
}

.cell-delete label {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-end;
}

.shipping-info-container {
    padding-bottom: 1rem;
}

.left-side .co-options-wrapper, .shipping-info-container fieldset, .billing-info-container
.billing-address, .payment-info-container fieldset, .payment-info-container .free-wrapper {
    padding: .75rem 1rem;
}

.billing-info-container {
    visibility: hidden;
    opacity: 0;
    height: 0;
    overflow: hidden;
    transition: all .5s;
}

.shipping-fields li, .billing-fields li {
    position: relative;
    width: 100%;
}

.shipping-fields label, .billing-fields label, .payment label {
    position: absolute;
    opacity: 0;
    font-size: .8rem;
    margin-left: .5rem;
}

#shipping-postal-code, #shipping-state-us, #shipping-province-ca, #billing-postal-code, #billing-state-us, #billing-province-ca {
    margin-left: .5rem;
}

#shipping-state-us, #shipping-state-ca, #billing-state-us, #billing-state-ca {
    margin-left: .75rem;
}

.shipping-fields label.shipping-postal-code-label, .shipping-fields label.shipping-state-label, .billing-fields label.shipping-postal-code-label, .billing-fields label.billing-state-label {
    margin-left: 1rem;
}

.shipping-address label, .billing-address label, .shipping-street-address1-li input, .shipping-street-address2-li input, .billing-street-address1-li input, .billing-street-address2-li input {
    width: 100%;
}

.shipping-fields label.active, .billing-fields label.active, .payment label.active {
    opacity: .5;
    height: 1rem;
}

.shipping-fields label.billing-same-as, #different-address {
    margin-left: 0;
    opacity: 1;
}

#shipping-city, #shipping-city-apo, #shipping-country, #shipping-postal-code, #shipping-state-us, #billing-city, #billing-city-apo, #billing-country, #billing-postal-code, #billing-state-us, #shipping-province-ca, #billing-province-ca {
    width: calc(100% - .5rem) !important;
}

.shipping-first-name-li, .billing-first-name-li, .shipping-last-name-li, .billing-last-name-li, .shipping-city-li,
.shipping-address .shipping-states-provinces-li, .billing-city-li, .billing-address .billing-states-provinces-li,
.shipping-address .shipping-email-li, .shipping-address .shipping-email-confirm-li, .billing-address .billing-email-li,
.billing-address .billing-email-confirm-li, .cc-nbr-li, .card-code-li {
    display: inline-block;
    float: none;
}

.shipping-first-name-li input, .billing-first-name-li input, .shipping-last-name-li input, .billing-last-name-li input,
.shipping-city-li input, .shipping-states-provinces-li select, .billing-city-li input, .billing-states-provinces-li
select, .shipping-email-li input, .shipping-email-confirm-li input, .billing-email-li input, .billing-email-confirm-li
input {
    width: 100%;
}

.shipping-address .shipping-email-li, .shipping-address .shipping-email-confirm-li {
    width: 100%;
}

.shipping-address label, .billing-address label, .shipping-street-address1-li input, .shipping-street-address2-li input,
.billing-street-address1-li input, .billing-street-address2-li input {
    width: 100%;
}

.shipping-street-address1-label:after, .billing-street-address1-label:after {
    content: '(House Number & Street Name)';
    padding-left: 1em;
    color: #CDCDCD;
}

.shipping-street-address2-label:after, .billing-street-address2-label:after {
    content: '(Apt Number or Condo Number)';
    padding-left: 1em;
    color: #CDCDCD;
}

fieldset.misc-options {
    width: auto;
}

.payment-fields label {
    width: 100%;
}

.payment-fields label.exp-month-label {
    width: 4em;
}

.payment-fields label.exp-year-label {
    width: 3em;
}

.input-dates {
  display: inline-block;
  width: calc(50%);
}

.input-dates ~ .input-dates {
  padding-left: .75rem;
}

#exp-month, #exp-year {
    width: 100% !important;
}

#card-code {
  width: calc(100% - 2rem) !important;
}

#what-is-this {
  display: inline-flex;
  margin-left: .5rem;
  color: #CB4C0C;
  border-radius: 2rem;
  border: 1px solid #f16029;
  font-size: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  transform: translateY(-.25rem);
}

.checkout-buttons {
    padding: 1em 0;
    text-align: center;
}

#checkout-back-button {
    background: #FFF;
    color: #F06514;
    border: .1em solid #F06514;
    margin-right: 2em;
}

#checkout-back-button:hover {
    background: #F06514;
    color: #FFF;
}

#checkout-next-button {
    width: 14em;
    border: .1em solid #F06514;
}

#checkout-next-button:hover {
    background: #FFF;
    color: #F06514;
}

.billing-info-container .title {
    position: relative;
    display: flex;
    flex-direction: column;
}

.billing-options {
    right: 3.25em;
    display: inline-flex;
    flex-direction: column;
    top: .5em;
}

#account-create-link, #continue-guest-link {
    text-decoration: none;
    font-weight: normal;
}

#login-button:hover, #checkout-update-button:hover, #continue-guest-link {
    background: #FFF;
    color: #F06514;
}

#continue-guest-link:hover {
    color: #FFF;
    background: #F06514;
}

#checkout-update-button {
    width: auto;
    height: auto;
    padding: .6em 1.5em;
}

.checkout-form-wrapper input[type="text"], .checkout-form-wrapper input[type="email"], .checkout-form-wrapper select {
    width: 100% !important;
}

.shipping-fields label.billing-same-as {
    position: relative;
}

.checkout-address-container {
    display: flex;
    justify-content: space-between;
    padding: .5rem 1rem 1rem;
}

.checkout-form-wrapper .title a {
    float: right;
}

.checkout-form-wrapper .title a:hover {
	text-decoration: underline;
}

ul.address {
    list-style: none;
    font-size: 1rem;
}

ul.address ~ ul.address {
    margin-top: 1rem;
}

.payment {
  border-width: 0 1px 1px 1px;
  border-style: solid;
  border-color: #f1f1f1;
  position: relative;
  overflow: hidden;
}

.checkout-form-wrapper .cc-type-li {
  width: 50% !important;
}

#cc-type {
  width: 8rem !important;
}

.cc-type-li::after {
  content: '';
  position: absolute;
  width: 13.5rem;
  height: 2rem;
  background: url(../images/cc1.gif) no-repeat 0 0, url(../images/cc2.gif) no-repeat 29% 0, url(../images/cc3.gif) no-repeat 56% 0, url(../images/cc4.gif) no-repeat 89% 0;
  transform: translate(0, .25rem);
}

.cc-nbr-li {
    width: 10.5rem;
}

.checkout-form-wrapper .card-code-li {
  width: calc(48% - 1rem);
  padding-left: .5rem;
}

label.email-opt-in {
  width: auto;
  display: flex;
  align-items: center;
}

#email-opt-in {
  margin-left: 0;
  margin-right: .5rem;
}

#email-opt-in ~ .fancy-checkbox-default {
  flex-shrink: 0;
}

.basket .basket-form {
    display: table;
    max-width: 100%;
    min-width: 100%;
    table-layout: fixed;
}

table.basket-form tr {
  display: table-row;
  height: auto;
}

table.basket-form .cell-image, table.basket-form .cell-name {
    display: table-cell;
    min-width: 4.5rem;
}


.basket-form td {
    display: table-cell;
    vertical-align: top;
    padding: .3em 0 .2em 0;
}

.basket-form a {
    color: #272727;
}

.basket-form a:hover {
    text-decoration: none;
}

.basket .cell-name a {
  color: #272727;
  font-size: .8rem;
  line-height: 1rem;
}

.cell-name .lead-time {
    font-size: .675rem;
    color: #777;
    margin-top: .2rem;
}
table.basket-form .cell-quantity {
    width: auto;
}
.basket-form .cell-quantity {
    white-space: nowrap;
    text-align: center;
}

.basket-form .cell-quantity input {
  width: 3rem;
  height: auto;
  padding: .25rem;
  text-align: center;
  font-size: .9rem;
}

.basket .cell-quantity a {
    text-decoration: underline;
}

.basket .cell-quantity a:hover {
    text-decoration: none;
}

.basket .cell-update {
    text-align: right;
    padding-right: .5rem;
}

.basket-form .cell-item-price-total {
    text-align: right;
}

.basket-form .total-pre-auto {
  text-decoration: line-through;
  text-decoration-color: #DD0000;
  text-align: right;
}

.basket-form .total-post-auto {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  white-space: nowrap;
  font-weight: bold;
  color: #f16029;
  text-align: right;
}

.basket fieldset {
    padding: 1.1em 0 0 0em;
    box-shadow: 0 -.075em 0 #cfcfcf;
}

.basket-container {
    padding-bottom: 0;
}

.checkout-button-wrapper {
    display: flex;
    justify-content: space-between;
}

.checkout-container .shipping-container, .checkout-container .promo-container {
    border-top: 0;
}

.shipping-calculator span.checkbox, .shipping-calculator .checked span.checkbox {
    background: #FFF;
}

label.checked ~ .view-shipping-map, .shipping-options-table, .shipping-calculator label.checked {
    background: #FFF;
}

.shipping-options-label {
    padding-bottom: .5em;
}

.shipping-options-table input[type=radio] {
    visibility: hidden;
    opacity: 0;
    position: absolute;
}

.promo-wrapper {
    display: flex;
    justify-content: space-between;
    padding: 1.5em 1em;
}

.discount-container, .inline-discounts-applied {
    padding: 1em 0;
    margin: 0 1rem 1rem 1rem;
}

.discount-container::before {
    content: 'APPLIED PROMOTION CODE';
}

.inline-discounts-applied {
    margin-top: 0;
}

.inline-discounts-applied label {
    display: block;
    text-transform: uppercase;
    font-weight: bold;
}

.discount-applied {
    border-bottom: .1em solid #AAA;
    margin-top: .33em;
    display: flex;
    justify-content: space-between;
    padding-top: .5em;
}

.discount-applied:last-child {
    border-bottom: 0;
}

.discount-delete a {
    background: #FFF;
    color: #CB4C0C;
    border: .1em solid #f16128;
    padding: .5em 1em;
    font-weight: bold;
    text-transform: uppercase;
}

.discount-delete a:hover {
    background: #CB4C0C;
    color: #FFF;
}

.checkout-button-wrapper {
    display: flex;
    justify-content: space-between;
}

.current-promo {
    display: none;
}


.inline-discounts-applied .small-button {
    border: .1em solid #F06514;
    font-weight: bold;
}

.inline-discounts {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 1rem;
    padding: .75rem 0;
}

.inline-discounts input[type=submit] {
    font-weight: normal;
    border: 0;
    color: #CB4C0C;
    background: transparent;
    padding: 0;
    margin-left: 1rem;
    width: auto;
    min-width: auto;
}

.inline-discounts input[type=submit]:hover {
    border: 0;
    color: #CB4C0C;
    background: transparent;
    text-decoration: underline;
}

#bbDiscCode {
    margin-bottom: 0;
    flex-grow: 3;
}

#bbDiscCode::placeholder {
    opacity: 1;
}

.good-shipping, .free-shipping-free {
    color: #33783d;
    font-weight: bold;
    text-transform: uppercase;
}

.discount-container::before {
    font-weight: bold;
}

.free-shipping-container .needed {
    padding: 0;
}

.free-shipping-container .qualify {
    position: relative;
    padding: 0 .5rem 0 .8rem;
}

.free-shipping-container .qualify::before {
    content: '';
    position: absolute;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 1.5rem;
    background: #33783d;
    left: 0;
    top: 0;
    transform: translate(-.75rem, .1rem);
}

.free-shipping-container .qualify::after {
    content: '';
    position: absolute;
    border-width: 0 0 3px 3px;
    border-style: solid;
    border-color: #FFF;
    width: 1rem;
    height: .5rem;
    left: 0;
    top: 0;
    transform: translate(-.5rem,.5rem) rotateZ(310deg);
}

.after-discount-content {
    padding: 0 0 .75rem 0;
    margin: 0 1rem;
}

.progress-bar-checkout {
    height: .75rem;
    border-radius: .75rem;
    width: 100%;
    border: 1px solid #d4d4d4;
    overflow: hidden;
    margin-top: .25rem;
}

.progress-bar-checkout > div {
    background: #33783d;
    width: 100%;
    height: 100%;
    border-radius: .2rem;
}

.totals > div {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding-bottom: .5em;
}

.totals .label {
    text-align: right;
    max-width: 8em;
}

.totals .value {
    padding-left: .5em;
}

.sub-total {
    height: auto;
}

.grand-total {
    font-weight: bold;
}

.grand-total .value {
    font-size: 1.1rem;
}


.shipping-calculator, .anticipated-delivery > div {
    padding: 0em 1em 1.5em 1em;
}

.view-shipping-map, .anticipated-delivery {
    padding-top: 0;
}

.view-shipping-map {
    display: none;
}

label.active + .view-shipping-map {
    display: block;
}

.transit-time-text {
    color: #333;
    font-weight: normal;
    padding-top: .2em;
    display: none;
}

.anticipated-delivery {
    border-bottom: 1rem solid #FFF;
}

.shipping-container .shipping-total .label {
    display: none;
}

.shipping-group-code-li {
    background: transparent url('../images/calculator.jpg') no-repeat left center;
    background-size: 5%;
}

.shipping-calculator select {
    width: 25em;
    margin-left: 30px;
}

.shipping-calculator input[type=submit] {
    background: #FEEAE1;
    border-radius: 2em;
    color: #F06514;
    border-color: #FEEAE1;
    width: 2.5em;
    height: 2.5em;
    font-weight: bold;
}

.shipping-calculator input[type=submit]:hover {
    background: #F06514;
    color: #FFF;
    border-color: #F06514;
}

.shipping-symbol-right {
    display: inline-block;
    color: #F06514;
    font-weight: bold;
}

.shipping-calculator .shipping-total {
    text-align: right;
    font-weight: bold;
}

.checkout-form-wrapper {
    opacity: 0;
    visibility: hidden;
    height: 0;
    transition: all .5s;
}

.billing-info-container .billing-address {
    padding: 0 1em;
}

.billing-info-container.active .billing-address {
    padding: 1em;
}

.active, .billing-address.active {
    opacity: 1;
    visibility: visible;
    height: 100%;
}

.promo-wrapper .right-side {
    opacity: 1;
    visibility: visible;
    height: 100%;
    margin-left: .5em;
}

.checkout-popup {
    padding: .5em;
    border-width: .1em;
    border-style: solid;
    border-color: #bfbfbf #dfdfdf #dfdfdf #bfbfbf;
    background: #efefef;
    position: absolute;
    border-radius: 1em;
    box-shadow: .2em .2em .5em #aaa;
}

.checkout-popup .content {
    background: linear-gradient(45deg, #FFF 50%, #ffefef);
    padding: 1em;
    border-radius: .5em;
    border-style: solid;
    border-width: .1em;
    border-color: #dfdfdf #bfbfbf #bfbfbf #dfdfdf;
    color: #d03;
    min-width: 25em;
    min-height: 5em;
}

.checkout-popup .buttonDiv .button {
    position: absolute;
    width: 1.5em;
    height: 1.5em;
    top: -.5em;
    right: -.5em;
    border: .1em solid #f16128;
    border-radius: 1.5em;
}

.checkout-popup .buttonDiv .button:after {
    content: 'X';
    font-weight: bold;
    text-align: center;
    width: 1.5em;
    position: absolute;
    border-radius: 1.5em;
}

.checkout-popup .buttonDiv .button:hover {
    background: #FFF;
    color: #f16128;
}

#popupDivpopup-clear-cart-button {
    opacity: 0;
    visibility: hidden;
    transition: all .5s;
}

#popupDivpopup-clear-cart-button.active {
    opacity: 1;
    visibility: visible;
    height: auto;
}

.confirm-popup {
    display: flex;
}

.confirm-popup .content {
    border: .2em solid #F26128;
    background: #FFF;
    padding: 1em 2em 2em;
    box-shadow: .5em .5em 1em #CDCDCD;
    border-radius: 1em;
}

.confirm-popup .title {
    padding-bottom: 2em;
}

.confirm-popup .buttons {
    display: flex;
    justify-content: space-between;
}

.confirm-popup .buttons input {
    border: .1em solid #F26128;
}

.confirm-popup .ok:hover {
    color: #F26128;
    background: #FFF;
}

.confirm-popup .cancel {
    color: #F26128;
    background: #FFF;
}

.confirm-popup .cancel:hover {
    color: #FFF;
    background: #F26128;
}

.shipping-fields li.shipping-country-li, .billing-fields li.billing-country-li, .shipping-fields li.shipping-postal-code-li,
        .billing-fields li.billing-postal-code-li, .shipping-fields li.shipping-city-li, .billing-fields li.billing-city-li,
        .shipping-fields li.shipping-states-provinces-li, .billing-fields li.billing-states-provinces-li {
    display: inline-block;
    width: calc(50% - 2px) !important
}

fieldset#billing-postal-code, fieldset#shipping-postal-code {
    display: inline-block;
}

#billing-postal-code-separator:before, #shipping-postal-code-separator:before {
    content: ' -';
}

.shipping-postal-code-li-ca #billing-postal-code-separator:before, .shipping-postal-code-li-ca #shipping-postal-code-separator:before {
    content: ' ';
}

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

.wanted-addresses-container {
    width: 100%;
    z-index: 1;
}

.empty-shopping-cart {
    text-align: center;
    margin: auto;
    display: table;
}

.empty-shopping-cart * {
    box-sizing: border-box;
}

.empty-shopping-cart > div:first-child {
    padding-bottom: .5em;
}

.empty-shopping-cart .shopping-cart-empty-inner-container {
    border: .1em solid #b6b6b6;
    color: #f16128;
    margin-top: 1.5em;
}

.empty-shopping-cart .flex {
    display: inline-flex;
    flex-direction: column;
    margin: 1em 0;
}

.empty-shopping-cart .shopping-cart-empty-inner-container .large-button {
    color: #f16128;
    background: #FFF;
    border: .1em solid #f16128;
    width: 100%;
    margin-top: .5em;
}

.empty-shopping-cart .shopping-cart-empty-inner-container > div {
    padding: 1em;
}

.empty-shopping-cart .shopping-cart-empty-inner-container > div:first-child {
    padding: 0;
}

.empty-shopping-cart .shopping-cart-empty-inner-container .grey > div:last-child {
    padding-top: .5em;
}

.empty-shopping-cart .grey {
    background: #f3f3f3;
    color: #333;
    padding: .5em;
}

.empty-shopping-cart .grey a {
    text-decoration: underline;
}

.empty-shopping-cart .grey a:hover {
    text-decoration: none;
}

#bbDiscCode {
    margin-bottom: .5em;
}

.step-2 {
  margin-top: 0;
  text-align: center;
}

.step-2 #checkout-submit-button {
  width: calc(100% - 4rem);
}

.non-visible {
  visibility: hidden;
}

.g-recaptcha {
	padding-bottom: 8px;
}

@media (min-width: 700px) {
    .searchFormDiv {
        display: block;
        visibility: hidden;
    }
    .checkout-container {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .checkout-container .left-side {
        margin-top: 0;
    }

    .other-options > *:last-child {
        margin-bottom: .25rem;
    }

    .checkout-buttons {
        padding-top: 1em;
        text-align: left;
    }

    #login-button {
        width: auto;
    }

    .billing-options {
        position: absolute;
    }

    .billing-info-container .title {
        flex-direction: row;
    }

    .cc-nbr-li {
        width: auto;
    }

    .checkout-form-wrapper .card-code-li {
        width: calc(42% - 1rem);
        padding-left: .5rem;
    }

    .cc-nbr-li, .card-code-li {
        display: inline-block;
        float: none;
    }

    .cc-type-li::after {
        transform: translate(.25rem, .25rem);
        background: url(../images/cc1.gif) no-repeat 0 0, url(../images/cc2.gif) no-repeat 29% 0, url(../images/cc3.gif) no-repeat 56% 0, url(../images/cc4.gif) no-repeat 89% 0;
    }

    .free-shipping-container .qualify {
        position: relative;
        padding: 0 .5rem 0 2.5rem;
    }

    .free-shipping-container .qualify::before {
        content: '';
        position: absolute;
        width: 1.5rem;
        height: 1.5rem;
        border-radius: 1.5rem;
        background: #33783d;
        left: 0;
        top: 0;
        transform: translate3d(.75rem, -.25rem, 0);
    }

    .free-shipping-container .qualify::after {
        content: '';
        position: absolute;
        border-width: 0 0 3px 3px;
        border-style: solid;
        border-color: #FFF;
        width: 1rem;
        height: .5rem;
        left: 0;
        top: 0;
        transform: translate3d(1rem,.2rem,0) rotateZ(310deg);
    }

}

@media (min-width: 802px) {
    a.continue-shopping {
        float: right;
        margin-top: .5em;
    }

    .checkout-container > div {
        width: 48.5%;
        flex: 0 1 48.5%;
    }

    .checkout-container > .left-side {
        margin-top: 0;
    }

    .checkout-container > div:first-child {
        margin-right: 1em;
    }

    .checkout-container, .checkout-container.enabled {
        flex-direction: row;
        justify-content: space-between;
    }

    #cc-type {
        width: 100% !important;
    }
}

@media (min-width: 1025px) {
    .other-options {
        flex-direction: row;
    }
}

@media (min-width: 1060px) {
    input.login-username, input.login-password {
        width: 11.5rem;
        margin-bottom: 0;
    }

    .co-options-container form {
        flex-direction: row;
    }

    .login-fields, li.login-username, li.login-password, .login .buttons {
        display: inline-block;
        margin-right: .4rem;
        margin-top: 0;
    }

    .login .buttons, li.login-password {
        margin-right: 0;
    }
}

/* Safari 10.1+ */
@media not all and (min-resolution:.001dpcm) {
    @media {
        #login-button {
            padding: 0;
            line-height: 1.75rem;
        }
    }
    @media (min-width: 700px) { /** Double Media Query */
        .checkout-form-wrapper select, .payment select {
            position: relative;
            z-index: 2;
            background: transparent;
            padding: 1rem .5rem .5rem 0;
            line-height: 1rem; /* Safari */
            text-indent: .25rem; /* Safari */
            -webkit-appearance: none;
        }
        .shipping-country-label, .billing-country-label, .shipping-state-label {
            background: transparent url('..//images/down-arrow.png') no-repeat 85% 100%;
        }
    }
}
