body.meckout-index-index .page-main {
    padding: 0 0;
}
body.meckout-index-index {
    height: auto;
}
body.meckout-index-index #custom_fc_button {
    display: none!important;
}
body.meckout-index-index .page-wrapper {
    position: relative;
    width: 100%;
    top: 0;
    padding: 0 0 0 0;
    height: 100%;
}
body.meckout-index-index .page-title-wrapper {
    display: none;
}
body.meckout-index-index .desktop-header-notice-padding,
body.meckout-index-index .mobile-header-notice-padding {
    display: none!important;
}
.opc-wrapper {
    width: 100%!important;
}
fieldset.fieldset.hidden-fields {
    display: none;
}
#opc-shipping_method {
    display: none;
}
ol#checkoutSteps {
    display: grid;
    grid-template-columns: 55% 45%;
    width: 100%;
    margin: 0 auto;
}
#shipping.checkout-shipping-address.active,
#opc-shipping_method.checkout-shipping-method.active,
#payment.checkout-payment-method.active {
    display: block;
    padding: 50px 50px 50px 25%;
}
li#shipping.checkout-shipping-address.active {
    width: 100%;
}
li#opc-shipping_method.checkout-shipping-method.active {
    display: none!important;
}
li#meckout-cart-container {
    width: 100%;
    padding: 50px 30% 50px 70px;
    background: #f7f7f7;
    border-left: 1px solid #ccc;
}
body.meckout-index-index input.input-text.qty {
    background: #f7f7f7;
}
.checkout-header {
    background: #fff;
    padding-left: 10px;
    margin-bottom: 5px;
}
.checkout-header-wrapper li.checkout-step {
    color: #333;
    font-size: 16px;
}
.checkout-header-wrapper li.checkout-step.active {
    font-weight: 600;
}
body.meckout-index-index .address .field {
    width: 50%;
    float: left;
    padding: 0 10px 0 0;
}
body.meckout-index-index .address .field.street .field {
    width: 100%;
}
body.meckout-index-index .address .field.company-field,
body.meckout-index-index .address .field.city-field,
body.meckout-index-index .address .field.street {
    width: 100%;
}
body.meckout-index-index fieldset.field.street, body.meckout-index-index div[name="shippingAddress.telephone"] {
    clear: none;
}
body.meckout-index-index select#shipping-country,
body.meckout-index-index select#shipping-region-select {
    padding: 0;
}
.product-image-container {
    width: 100px!important;
    padding: 5px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
}
body.meckout-index-index .fieldset {
    margin: 0 0;
}
body.meckout-index-index .fieldset > .field {
    margin-bottom: 10px;
}
body.meckout-index-index .page-wrapper input, body.meckout-index-index .page-wrapper textarea, body.meckout-index-index .page-wrapper select {
    padding: 0;
    border: none;
}
body.meckout-index-index .control {
    padding: 5px 10px;
    border: 1px solid #ddd;
    border-radius: 7px;
    position: relative;
    height: 48px;
    overflow: hidden;
}
body.meckout-index-index .field.consent-field {
    position: relative;
    display: block;
    float: left;
    width: 100%;
}
body.meckout-index-index input#kl_sms_consent {
    position: relative;
}
body.meckout-index-index .field.consent-field span {
    position: relative;
    display: inline-block;
    margin-left: 20px;
    margin-bottom: 10px;
}
body.meckout-index-index #customer-email-fieldset select,
body.meckout-index-index #customer-email-fieldset input,
body.meckout-index-index #co-shipping-form select,
body.meckout-index-index #co-billing-form select,
body.meckout-index-index #co-transparent-form select,
body.meckout-index-index #co-shipping-form input,
body.meckout-index-index #co-billing-form input,
body.meckout-index-index #co-transparent-form input {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding-top: 20px;
    padding-left: 10px;
}
body.meckout-index-index #customer-email-fieldset select,
body.meckout-index-index #co-shipping-form select,
body.meckout-index-index #co-billing-form select,
body.meckout-index-index #co-transparent-form select {
    display: block;
    width: 100%;
    background: #fff;
    background-color: #ffffff;
    background-image: none;
    border: 1px solid #0ebeff;
    -ms-word-break: normal;
    word-break: normal;
    border: none;
    -moz-appearance:none; /* Firefox */
    -webkit-appearance:none; /* Safari and Chrome */
    appearance:none;
    background-image:
        linear-gradient(45deg, transparent 50%, gray 50%),
        linear-gradient(135deg, gray 50%, transparent 50%),
        linear-gradient(to right, #ccc, #ccc);
    background-position:
        calc(100% - 18px) calc(11px + 11px),
        calc(100% - 13px) calc(11px + 11px),
        calc(100% - 36px) 8px;
    background-size: 5px 5px, 5px 5px, 1px 30px;
    background-repeat: no-repeat;
}
body.meckout-index-index #customer-email-fieldset select:focus,
#co-shipping-form select:focus,
#co-billing-form select:focus,
#co-transparent-form select:focus {
    background-image:
        linear-gradient(45deg, gray 50%, transparent 50%),
        linear-gradient(135deg, transparent 50%, gray 50%),
        linear-gradient(to right, #ccc, #ccc);
    background-position:
        calc(100% - 13px) calc(11px + 11px),
        calc(100% - 18px) calc(11px + 11px),
        calc(100% - 36px) 8px;
    background-size: 5px 5px, 5px 5px, 1px 30px;
    background-repeat: no-repeat;
    outline: 0;
}



body.meckout-index-index #customer-email-fieldset select::-ms-expand,
#co-shipping-form select::-ms-expand,
#co-billing-form select::-ms-expand,
#co-transparent-form select::-ms-expand {
     display: none;
}

.checkout-header-title {
    display: none;
}
.opc-wrapper .form-login .fieldset .field .label, .opc-wrapper .form-shipping-address .fieldset .field .label, .opc-wrapper .form-billing-address .fieldset .field .label {
    font-size: 12px;
    padding: 0;
    margin: 0;
    background: transparent!important;
}
.checkout-index-index .step-title {
    border-bottom: none;
    font-size: 16px;
    padding-right: 20px;
}
.product-item-details .control.qty {
    float: left;
    border: none;
    padding: 0;
    margin: 0;
    width: 50%;
}
body.meckout-index-index input.input-text.qty {
    width: 30px!important;
}
span.price-excluding-tax {
    line-height: 20px;
}
.cart.table-wrapper .product-item-name+.item-options {
    margin-bottom: 0;
}
.coupon-gift-box.active {
    background: transparent;
}
input#coupon-code {
    padding: 3px 5px;
    width: 100%;
    display: block;
    margin: 0 0 10px 0;
    background: #fff;
}
.side-cart-top .sum-list-items, .side-cart-bottom .sum-item.sum-list-items, .side-cart-bottom .sum-list-items {
    width: 100%;
}
form#meckout-login {
    padding-right: 20px;
}
.main-logo {
    width: 220px;
    height: auto;
    padding-bottom: 20px;
}
.opc-wrapper {
    padding-right: 0;
    padding-bottom: 0;
    margin-bottom: 0;
    float: none;
}
body.meckout-index-index .page-main {
    height: 100%;
    overflow: auto;
}
.columns .column.main,
.opc-wrapper,
ol#checkoutSteps,
.page-layout-1column .columns,
.page-layout-1column-fullwidth .columns {
    position: relative;
    height: 100%;
}
#shipping.checkout-shipping-address.active, #opc-shipping_method.checkout-shipping-method.active, #payment.checkout-payment-method.active {
    padding-bottom: 10px;
}
.clearfix {
    clear: both;
}
#shipping-method-buttons-container {
    width: 100%;
    padding: 0 10px;
    display: block;
    position: relative;
}
#shipping-method-buttons-container div.primary {
    width: 50%;
    float: left;
}
.back-to-cart .change {
    padding: 14px 0;
    display: block;
}
button.button.action.continue.primary {
    padding: 10px 0;
}
li#payment {
    width: 100%!important;
}
ul.payment-sections li {
    display: block;
    float: none;
    width: 100%;
}
.checkout-index-index .payment-method-title.choice:before {
    display: none;
}
.checkout-index-index .payment-method-title.choice .label:before {
    left: 0;
}
.checkout-index-index .table-checkout-shipping-method .row.active .shipping-select-radio,
.checkout-index-index ._active .payment-method-title.choice .label:before {
    background: #fff;
    border: 6px solid #9e1b2b;
    left: 0;
}
.checkout-index-index .payment-method-title.choice .label {
    padding-left: 0;
}
.payment-method-title.field.choice .label span {
    display: inline-block;
    padding-left: 10px;
}
.checkout-payment-method .field.cvv {
    padding-top: 10px;
}
body .page-wrapper .control .label {
    display: block;
    position: relative;
    z-index: 1;
}
.checkout-payment-method .ccard .month .select,
.checkout-payment-method .ccard .year .select {
    width: 100%;
    padding: 0;
}
.checkout-payment-method .ccard.fieldset>.field .fields.group.group-2 .field,
.checkout-payment-method .field.cvv {
    width: 33.3%!important;
    float: left;
    padding: 0 5px 0 0;
    padding-top: 0;
}
.checkout-index-index .checkout-shipping-method .actions-toolbar .action.primary, .checkout-index-index .checkout-payment-method .checkout-button-back, .checkout-payment-method .payment-method-content>.actions-toolbar>.primary .action.primary {
    margin-bottom: 0;
    padding: 8px 17px;
    line-height: 22px;
    font-size: 12px;
}
.actions-toolbar .primary a.action, .action.primary, .actions-toolbar>.primary .action {
    font-size: 12px;
}
.message.success, .message.error {
    padding: 0;
}
.checkout-index-index .field .control._with-tooltip input {
    line-height: 20px;
}
div#payflowpro_cc_type_cvv_div {
    padding-right: 0;
}
.checkout-payment-method .payment-method-content .fieldset:not(:last-child) {
    padding-bottom: 0;
    margin-bottom: 0;
}
.checkout-index-index #payment .step-title.billing-address-step-title {
    border-bottom: none;
}
body .page-wrapper .label {
    font-size: 12px;
}
#summary {
    display: block;
    padding: 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    margin: 0 10px 20px 0;
}
.billing-as-shipping {
    padding: 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    margin: 0 10px 10px 0;
}
#contact-info,
.billing-same-as-shipping {
    padding: 0 0 15px;
    border-bottom: 1px solid #ccc;
    margin: 0 0 15px;
}
#summary span {
    display: inline-block;
    font-size: 12px;
    float: left;
}
#summary span.label {
    width: 70px;
    color: #444;
}
#summary span.details {
    width: 70%;
}
#summary span.change {
    float: right;
}
.checkout-index-index #payment .step-title.billing-address-step-title {
    border: none;
}
#co-billing-form {
    display: none;
}
#co-billing-form.active {
    display: block;
}
li#payment-address {
    padding-bottom: 20px;
}
li#payment-methods {
    padding-right: 10px;
}
.payment-method-content .actions-toolbar {
    width: 50%;
}
.mobile-cart-container._visible,
.mobile-cart-container {
    display: none;
}
#meckout-cart-container {
    display: block;
}
.field .control.active {
    border-color: blue;
}
ul.checkout-header-wrapper {
    margin: 15px 0;
}
.mobile-cart-container .details {
    font-size: 16px;
}
.checkout-payment-method .payment-method-title .label {
    line-height: 28px;
}
.login-trigger {
    display: block;
    position: relative;
    font-size: 14px;
    font-weight: normal;
}
.contact-label {
    display: block;
    float: left;
}
.contact-label.login-trigger {
    float: right;
}

.login-label, .login-action {
    display: block;
    float: left;
    padding-right: 5px;
}
.login-action {
    text-align: right;
    color: blue;
    padding-right: 0;
    cursor: pointer;
}
#customer-email-fieldset .password-fields {
    display: none;
}
#customer-email-fieldset .note {
    display: block;
}
#customer-email-fieldset._actv .note {
    display: none;
}
#customer-email-fieldset._actv .password-fields {
    display: block;
}
.password-fields .actions-toolbar {
    width: 50%;
}
p.checkout-button-back-wrapper button,
.checkout-index-index button.action.login.primary {
    padding: 5px 10px!important;
    font-size: 12px!important;
}
fieldset#customer-email-fieldset {
    margin-bottom: 0;
}
#header-cart-wrapper-inner .control {
    border-radius: 0;
}
#header-cart-wrapper-inner .product-image-container {
    border: none;
    margin: 0 auto;
}
#header-cart-wrapper-inner .crosssell .product-image-container {
    width: 750px!important;
}
#header-cart-wrapper-inner .cart-totals {
    padding-left: 0;
    padding-right: 0;
}
.payment-method-title .label span > img {
    height: 20px;
}
.payflowpro-payment li.payment-icon {
    display: block!important;
    float: left;
    width: auto;
    padding: 0!important;
    margin: 0!important;
}
.payflowpro-payment .label {
    width: 100%;
    padding-right: 0px!important;
}
.payment-method-title > .label > span {
    font-weight: 600;
    color: #000;
    font-size: 14px;
    text-transform: uppercase;
}
@media (max-width: 1024px) {
    .checkout-payment-method .payment-method-content .form {
        padding-bottom: 0;
    }
    li#meckout-cart-container, #shipping.checkout-shipping-address.active, #opc-shipping_method.checkout-shipping-method.active, #payment.checkout-payment-method.active {
        padding: 30px 5%;
    }
    #shipping-method-buttons-container {
        width: 66.6%;
    }
    .payment-method-content .actions-toolbar {
        width: 100%;
        margin-top: 10px;
    }
    #summary span.details {
        width: 60%;
    }
}
@media (max-width: 820px) {
    ol#checkoutSteps {
        grid-template-columns: 50% 50%;
    }
    body.meckout-index-index .page-main {
        padding-top: 0;
    }
    #shipping.checkout-shipping-address.active, #opc-shipping_method.checkout-shipping-method.active, #payment.checkout-payment-method.active {
        padding: 30px 5%;
    }
    .contact-label,
    .contact-label.login-trigger {
        display: block;
        float: none;
    }
    .opc-wrapper .form-login, .opc-wrapper .form-shipping-address, .opc-wrapper .methods-shipping, .opc-wrapper.payment-method, .opc-payment .payment-method {
        padding: 0 10px 0 10px;
    }
    .opc-wrapper .fieldset>.field {
        margin-bottom: 10px;
    }
    #shipping-method-buttons-container {
        width: 70%;
        padding: 0;
    }
    li#meckout-cart-container {
        padding: 0 5%;
    }
    .street .additional {
        display: none;
    }
    .opc-wrapper {
        padding: 0 0 0 0!important;
    }
    div#paypal-response-error {
        font-size: 14px;
    }
    .checkout-payment-method .ccard.fieldset>.field .fields.group.group-2 .field, .checkout-payment-method .field.cvv {
        width: 100%!important;
        margin-bottom: 10px;
        padding-right: 0;
    }
    div#payflowpro_cc_type_cvv_div {
        margin-bottom: 0px;
    }
    #paypal-processing.active, #paypal-process-success.active {
        width: calc(60vw);
    }
    .checkout-header {
        padding-bottom: 5px;
    }
    #shipping-method-buttons-container div.primary {
        width: 100%;
        float: none;
    }
}

@media (max-width: 819px) {
    .contact-label,
    .contact-label.login-trigger {
        float: none;
    }
    body.meckout-index-index input.input-text.qty {
        background: #fff;
    }
    .field.additional {
        display: none;
    }
    ol#checkoutSteps {
        grid-template-columns: 100%;
    }
    #shipping.checkout-shipping-address.active, #opc-shipping_method.checkout-shipping-method.active, #payment.checkout-payment-method.active, .checkout-header {
        padding: 0;
    }
    .side-cart-wrapper .cart.table-wrapper, .checkout-index-index #shopping-cart-table tr.item-info, .cart.table-wrapper .items {
        padding-top: 0;
    }
    .main-logo {
        padding-bottom: 0;
    }
    .opc-wrapper .fieldset>.field {
        margin-bottom: 10px;
        padding-right: 0;
    }
    #summary,
    .billing-as-shipping {
        margin-right: 0;
    }
    li#payment-methods {
        padding-right: 0;
    }
    #shipping-method-buttons-container,
    .payment-method-content .actions-toolbar,
    .address .field,
    .checkout-payment-method .ccard.fieldset>.field .fields.group.group-2 .field,
    .checkout-payment-method .field.cvv {
        width: 100%!important;
        margin-right: 0;
        padding-right: 0;
    }
    .opc-wrapper .form-login,
    .opc-wrapper .form-shipping-address,
    .opc-wrapper .methods-shipping,
    #shipping-method-buttons-container,
    form#meckout-login {
        padding: 0;
    }
    #summary span.details {
        width: 60%;
    }
    .checkout-payment-method .ccard.fieldset>.field .fields.group.group-2 .field, .checkout-payment-method .field.cvv {
        margin-bottom: 10px;
    }
    .mobile-cart-container {
        display: none;
    }
    .mobile-cart-container._visible {
        display: block;
    }
    .mobile-cart-container .content {
        display: none;
    }
    .mobile-cart-container.active .content {
        display: block;
    }
    .mobile-cart-container .expand {
        color: blue;
    }
    .mobile-cart-container .expand,
    .mobile-cart-container .total {
        display: inline-block;
        width: 50%;
        float: left;
    }
    .mobile-cart-container .total {
        text-align: right;
    }
    .mobile-cart-container .total > .price {
        display: inline-block;
        width: 50%;
    }
    #meckout-cart-container {
        display: none;
    }
    body.meckout-index-index {
        overflow-y: auto;
        position: relative;
    }
    .meckout-index-index.no-scroll {
        position: absolute;
        overflow-y: hidden;
        height: calc(100vh);
    }
    body.meckout-index-index .page-wrapper {
        position: relative;
        margin-top: -30px;
        height: auto;
    }
    body.meckout-index-index .page-main {
        padding: 20px 10px;
    }
    .checkout-index-index .step-title {
        padding: 0 0 10px;
    }
    .mobile-cart-container._visible {
        margin-bottom: 0;
    }
    .checkout-payment-method .mobile-cart-container._visible {
        margin-bottom: 15px;
    }
}