.pt_cart #cart-table {
    margin-top: 60px;
}

.pt_order-confirmation {
    padding-bottom: 70px;
}

.pt_order-confirmation .primary-focus #primary.primary-content {
    padding: 0 3.5%;
    box-sizing: border-box;
}

.pt_order-confirmation .primary-focus #primary.primary-content .confirmation-title-h1 {
    font-size: 28px;
    letter-spacing: 0.05em;
    color: #333;
    margin: 18px 0 0 0;
}

.pt_order-confirmation .confirmation-title-h2 {
    font-size: 20px;
    letter-spacing: 0.05em;
    margin-bottom: 10px;
}

.pt_order-confirmation .table-summary-info {
    width: 100%;
    table-layout: fixed;
    border-collapse: separate;
    word-break: break-word;
}

.pt_order-confirmation .table-summary-info th,
.pt_order-confirmation .table-summary-info td,
.pt_order-confirmation .shipping-address-table {
    width: 23%;
}

.pt_order-confirmation .shipping-address-table {
    float: left;
}

.pt_order-confirmation .table-summary-info .table-offset {
    width: 2.666666666666667%;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list th {
    padding: 12px;
    font-size: 15px;
    background-color: #666;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table {
    width: 74.33333333333333%;
    float: right;
    border: 1px solid #616161;
    max-width: none;
    margin: 0;
    word-break: break-word;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table th {
    padding: 0 18px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table td {
    padding: 20px 0 60px;
    font-size: 17px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table td:first-child {
    padding-left: 18px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table td:last-child {
    padding-right: 18px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table td a {
    letter-spacing: 0.04em;
    font-weight: 600;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table td.confirmation-price {
    font-weight: 600;
    word-break: normal;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table td.confirmation-qty {
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table th {
    font-size: 15px;
    background-color: #666;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    font-weight: 600;
    word-break: normal;
}

.pt_order-confirmation .border-line {
    border: 1px solid #616161;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table {
    margin: 0;
    word-break: normal;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table th:first-child,
.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table td:first-child {
    text-align: right;
    padding: 0 0 8px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table td:last-child {
    padding: 0px 0px 8px 5px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table .order-total td {
    border-top: 0;
    font-size: 19px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table .order-total td:last-child {
    padding: 0 0 5px 5px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table {
    font-size: 14px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table th,
.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table td {
    font-weight: normal;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table .order-subtotal-text td {
    font-weight: 600;
    color: #4d4d4d;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table .order-discount-text td {
    font-weight: 600;
    color: #999;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table .order-total-text td {
    color: #4d4d4d;
}

.pt_order-confirmation .primary-focus #primary.primary-content .order-payment-instruments strong {
    font-weight: normal;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list td dl dt {
    padding-right: 5px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list td dl dd {
    float: none;
    padding: 0 0 10px 0;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list th.table-offset {
    background-color: transparent;
}

.pt_order-confirmation .order-payment-instruments .payment-method-amount {
    margin-bottom: 10px;
}

.pt_order-confirmation .offset-bottom-10 {
    margin-bottom: 10px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list td {
    padding: 18px 14px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list td table td {
    padding: 0 5px 5px 0;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list .order-billing .mini-address-name,
.pt_order-confirmation .primary-focus #primary.primary-content table.item-list .order-billing address > div {
    margin-bottom: 10px;
    text-transform: none;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list td .summarybox .name > div {
    margin-bottom: 10px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list td.order-shipping li {
    margin-bottom: 10px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list td.order-information {
    padding: 18px 14px;
    font-size: 14px;
}

.pt_order-confirmation .primary-focus #primary.primary-content table.item-list td dl dt {
    font-weight: normal;
}

.pt_order-confirmation .confirmation-horiz-lize {
    display: block;
    width: 100%;
    height: 1px;
    margin: 22px 0;
    background-color: #767676;
    clear: both;
}

.pt_order-confirmation .confirmation-horiz-lize.under-thankyou {
    margin-top: 12px;
}

.pt_order-confirmation div.gift-bag-section.orderdetails {
    width: 74.33333333333333%;
    float: right;
    margin-bottom: 0;
    background-color: transparent;
}

.pt_order-confirmation div.gift-bag-section.orderdetails .gift-bag-image,
.pt_order-confirmation div.gift-bag-section.orderdetails .gift-bag-wrapper {
    display: none;
}

.pt_order-confirmation div.gift-bag-section.orderdetails .gift-bag-wrapper.bottom {
    display: block;
    width: 100%;
    margin: 0;
}

.pt_order-confirmation div.gift-bag-section.orderdetails p {
    margin-top: 0;
    font-size: 20px;
    letter-spacing: 0.05em;
    font-weight: 600;
}

.pt_order-confirmation div.gift-bag-section.orderdetails .gift-message-readonly {
    width: 100%;
}

.pt_order-confirmation .primary-focus #primary.primary-content .actions .btn {
    padding: 10px 55px 8px;
    font-weight: 600;
    letter-spacing: 0.07em;
    font-size: 13px;
    background-color: #4d4d4d;
    box-shadow: 0px 2px 1px #b7b7b7;
}

.pt_order-confirmation .primary-focus #primary.primary-content .actions .btn:hover {
    background-color: #5a5a5a;
}

.pt_order-confirmation .primary-focus #primary.primary-content .actions .btn .gopro-chevron-left {
    display: none;
}

.pt_order-confirmation .print-page-wrap {
    float: right;
}

.pt_order-confirmation .confirmation-message-submitted {
    margin-right: 190px;
}

.pt_order-confirmation .print-page {
    padding: 10px 30px 8px;
    font-size: 15px;
    letter-spacing: 0.04em;
    color: #333333;
    background-color: #e6e6e6;
    box-shadow: 0px 2px 2px #ccc;
}

.mobile-view {
    display: none;
}

#checkout-steps .left-side, #checkout-steps .right-side {
    padding-top: 20px;
}

#checkout-steps .left-side:after, #checkout-steps .right-side:after {
    content: '';
    display: block;
    clear: both;
}

#checkout-steps .left-side {
    width: 70%;
    float: left;
    margin: 0 15px 15px 14px;
}

#checkout-steps .right-side {
    width: calc(30% - 45px);
    float: left;
    margin-bottom: 15px;
}

#checkout-steps .right-side #summary {
    margin: 0;
    min-width: 100%;
    max-width: 100%;
    width: 100%;
    float: none;
}

#checkout-steps .right-side .total-items-review {
    float: none;
}

#checkout-steps .right-side .block {
    background-color: #fff;
    border: 1px solid #666;
    margin: 0 0 15px;
    min-width: 100%;
    max-width: 100%;
    width: 100%;
}

#checkout-steps .right-side #summary .block {
    background-color: #f2f2f2;
}

#checkout-steps .right-side .block .block-title {
    background-color: #666;
    color: #f3f4f4;
    padding: 10px;
    text-transform: uppercase;
    font-weight: 600;
}

#checkout-steps .right-side .block .block-title .editOrder {
    border: none;
    background-color: transparent;
    text-transform: capitalize;
    font-size: 14px;
    padding: 2px
}

#checkout-steps .right-side .block .block-title .editOrder:hover {
    text-decoration: underline;
}

#checkout-steps .right-side .block .block-content {
    padding: 15px;
}

#checkout-steps .left-side .checkoutTerms-ModusLink, #checkout-steps .left-side .checkoutTerms-GoProCare {
    text-align: left;
    float: right;
    margin: 25px 0 0;
    clear: both;
}

#checkout-steps .left-side .checkoutTerms-ModusLink input[type="checkbox"], #checkout-steps .left-side .checkoutTerms-GoProCare input[type="checkbox"] {
    position: relative;
    top: 5px;
}

#checkout-steps .left-side #cart-table .PLI-header {
    background-color: #666;
    color: #f3f4f4;
    font-weight: bold;
}

#checkout-steps .left-side #cart-table .PLI-header td.item-image {
    padding-left: 12px;
}

#checkout-steps .left-side #cart-table .PLI-header td.item-total, #checkout-steps #cart-table .PLI-header td.item-price {
    color: #f3f4f4;
}

#checkout-steps .left-side #cart-table {
    border-bottom: none;
    margin-bottom: 20px;
    border-bottom: none;
}

#checkout-steps .left-side #cart-table .cart-row {
    border-bottom: 1px solid #4d4d4d;
}

#paymentMethodsContainer a {
	font-size: 14px;
}

#paymentMethodsContainer .checkbox input + label > span {
    background: transparent;
    border: 1px solid #b3b3b3;
    width: 13px;
    padding: 0;
    height: 13px;
    top: 5px;
}

.review-order-button {
    padding: 0 10px;
}

#paymentMethodsContainer .methodsToPay > li > .checkbox > .paymentSelect > p {
    text-indent: -9999px;
    height: 30px;
    background-repeat: no-repeat;
    background-position: left center;
    width: 200px;
    background-size: auto 30px;
    margin-left: 25px;
}

#paymentMethodsContainer label[name="otPayment_SOFORTUEBERWEISUNG"] > p {
    background-image: url('../images/pm-logos/sofort.png');
}

#paymentMethodsContainer label[name="vaPayment_KLARNA_INVOICE"] > p {
    background-image: url('../images/pm-logos/klarna.png');
}

#paymentMethodsContainer label[name="vaPayment_PAYPAL"] > p {
    background-image: url('../images/pm-logos/paypal.png');
}

#paymentMethodsContainer label[name="otPayment_IDEAL"] > p {
    background-image: url('../images/pm-logos/iDeal.png');
}

#paymentMethodsContainer .checkbox input:checked + label > span:after, #paymentMethodsContainer .checkbox input:checked + label > i:after {
    content: '';
    background: #4d4d4d;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    top: 3px;
    left: 3px;
}

#paymentMethodsContainer .checkbox input:checked + label > i, #paymentMethodsContainer .checkbox input:checked + label > span {
    border-color: #4d4d4d;
    background: transparent;
}

#paymentMethodsContainer .countrySelect {
    width: 100%;
}

#paymentMethodsContainer .cardStyleSprite {
    margin-bottom: 5px;
}

#paymentMethodsContainer .order-totals-table tr td:first-child {
    text-align: left;
}

#paymentMethodsContainer .order-totals-table .order-total {
    border-top: 1px solid #999999;
}

#paymentMethodsContainer .order-totals-table .order-total td {
    padding-top: 20px;
}

#paymentMethodsContainer .order-totals {
    font-family: Arial;
    font-size: 13px;
}

#paymentMethodsContainer .payment-option-klarna-fields .form-row {
    float: none;
    width: 100%;
}
#paymentMethodsContainer .payment-option-klarna-fields label span {
	font-size: 14px;
}

#paymentMethodsContainer .checkoutTerms-ModusLink input[type=checkbox],
#paymentMethodsContainer .checkoutTerms-GoProCare input[type=checkbox] {
    width: auto;
	position: relative;
    top: 5px;
    font-size: 15px; /* fix for iphone */
}

#paymentMethodsContainer .checkoutTerms-ModusLink input[type=checkbox] + p,
#paymentMethodsContainer .checkoutTerms-GoProCare input[type=checkbox] + p {
    width: 85%;
    font-family: Arial;
}

#paymentMethodsContainer .checkoutTerms-ModusLink .errorMessage,
#paymentMethodsContainer .checkoutTerms-GoProCare .errorMessage {
    width: 85%;
    max-width: 300px;
    margin: 2px 0 8px 24px;
    font-size: 13px;
}

#paymentMethodsContainer .payment-option-totals-and-terms,
#paymentMethodsContainer .cnpContainer .customGTC,
#paymentMethodsContainer .cnpContainer .customLink {
    margin: 0 -23px;
    font-family: Arial;
}

#paymentMethodsContainer .cnpContainer .customGTC input[type="checkbox"] {
    margin-right: 10px;
}

#summary.disabled .payment-method-options .cardPayment.cnpContainer {
    display: none !important;
}

#paymentMethodsContainer .checkoutTerms-ModusLink input[type="checkbox"] {
    width: auto;
    position: relative;
    top: 5px;
}

#paymentMethodsContainer .order-products {
    display: none;
}

#paymentMethodsContainer .cnpContainer .submitInput, #paymentMethodsContainer .cnpContainer button[type="submit"] {
    display: none;
}

#summary .currentStep {
    padding: 0px;
}

#paymentMethodsContainer .methodsToPay li {
    padding: 10px;
}

#paymentMethodsContainer .methodsToPay > li {
    border-bottom: 1px solid #b6b6b6;
    position: relative;
}

#paymentMethodsContainer .checkbox {
    position: relative;
    z-index: 99;
}

#paymentMethodsContainer .methodsToPay li.active {
    background-color: #F2F2F2;
}

#paymentMethodsContainer .li-cardPayment:after {
    content: '';
    display: table;
    clear: both;
}
#paymentMethodsContainer .li-cardPayment .checkbox {
    width: 20px;
    float: left;
}
#paymentMethodsContainer .li-cardPayment .cc-icons {
    position: static;
    margin-left: 25px;
}
#paymentMethodsContainer .li-cardPayment .cc-icons + div {
    clear: both;
}

#paymentMethodsContainer .methodsToPay .cc-icons {
	position: static;
	margin-left: 25px;
}
#paymentMethodsContainer .ModusLinkBV-summary-msg {
    font-size: 13px;
    line-height: 20px;
    color: #666;
    margin: 10px 15px 0;
}
.stepHolder .checkout-step .currentStep ul.methodsToPay li p {
    margin: 0 0 0 22px;
}

.stepHolder .checkout-step .currentStep ul.methodsToPay li {
    display: block;
}

.stepHolder .checkout-step .currentStep label p {
    font-weight: bold;
    font-size: 13px;
}

.stepHolder .checkout-step .currentStep .half + .half {
    float: none;
}

.emeaReviewPage .order-submit-section .content-asset:after, #checkout-steps .left-side .checkoutTerms-GoProCare:after {
    content: '';
    display: block;
    clear: both;
}

.emeaReviewPage #cart-table td.item-quantity {
    width: 155px;
}

.emeaReviewPage #cart-table .PLI-header td.item-quantity {
    width: 191px;
    padding: 12px 0;
}

.emeaReviewPage #cart-table td.item-quantity ul.product-availability-list li {
    width: 100px;
    text-indent: -72px;
    overflow: hidden;
    margin: 0;
    position: relative;
    top: -1px;
}

.emeaReviewPage #cart-table td.item-quantity ul.product-availability-list {
    float: right;
}

.emeaReviewPage .checkout-step .review-content {
    margin-top: 0;
}

.emeaReviewPage .order-totals-table .order-total {
    font-size: 17px;
}

.emeaReviewPage .order-submit-section .order-totals-table .order-total {
    font-size: 19px;
}

/* MOBILE VIEW */
@media only screen and (max-width: 768px) {
    .pt_cart #cart-table {
        margin-top: 0;
    }

    .pt_order-confirmation {
        padding-bottom: 42px;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content {
        padding: 0;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content .confirmation-title-h1 {
        font-size: 25px;
        text-align: left;
        text-transform: capitalize;
    }

    .pt_order-confirmation .confirmation-message-submitted {
        margin-right: 0;
    }

    .pt_order-confirmation .confirmation-horiz-lize.under-thankyou {
        margin-top: 14px;
    }

    .pt_order-confirmation .confirmation-horiz-lize.shipping-line {
        margin: 3px 0 18px;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.item-list td.order-information {

    }

    .pt_order-confirmation .table-summary-info .table-offset {
        display: none !important;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.item-list th {
        display: none;
    }

    .mobile-view {
        display: inherit;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.item-list td {
        float: none;
        width: auto;
    }

    .pt_order-confirmation .mobile-view {
        width: auto;
        display: block;
        padding: 12px;
        margin: 0 -15px 20px;
        font-size: 15px;
        color: #fff;
        text-transform: uppercase;
        letter-spacing: 0.07em;
        background-color: #666;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.item-list td.mobile-td,
    .pt_order-confirmation .primary-focus #primary.primary-content table.item-list td.mobile-td {
        padding: 0 14px;
        display: block;
        width: auto;
        float: none;
        margin: 0 -15px 18px;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table {
        float: none;
        max-width: none;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.order-totals-table td {
        width: 50%;
    }

    .pt_order-confirmation .shipping-address-table,
    .pt_order-confirmation .shipping-address-table tbody,
    .pt_order-confirmation .shipping-address-table tr,
    .pt_order-confirmation .shipping-address-table td {
        display: block;
        width: auto;
        float: none;
    }

    .pt_order-confirmation .shipping-address-table {
        margin: 0 -15px 20px;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.item-list.shipping-address-table td {
        display: block;
        float: none;
        padding: 0 14px;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table {
        width: 100%;
        margin-top: -20px;
        border-width: 0;
        float: none;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table th {
        display: none;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table td {
        padding: 14px 0 0;
        border-bottom: 1px solid #616161;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table td:first-child {
        padding-left: 0;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.order-shipment-table td.confirmation-qty {
        padding-left: 10px;
        padding-right: 15px;
    }

    .pt_order-confirmation div.gift-bag-section.orderdetails .gift-bag-wrapper.bottom {
        margin-bottom: 35px;
    }

    .pt_order-confirmation div.gift-bag-section.orderdetails {
        width: 100%;
        float: none;
    }

    .pt_order-confirmation div.gift-bag-section.orderdetails .gift-message-readonly {
        margin: 0;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content .actions .btn {
        padding: 10px 20px 8px;
        margin: 0 0 3px;
        float: none;
        text-align: center;
    }

    .pt_order-confirmation .border-line {
        border-width: 0 0 1px 0;
    }

    .pt_order-confirmation .primary-focus #primary.primary-content table.item-list td.order-billing,
    .pt_order-confirmation .primary-focus #primary.primary-content table.item-list td.order-shipping {
        border-bottom: 1px #616161 solid;
    }

    #checkout-steps .left-side, #checkout-steps .right-side {
        float: none;
        width: 100%;
        margin: 0;
        padding-top: 0;
    }

    #checkout-steps .right-side {
        width: calc(100% - 2px);
        margin-bottom: 0;
    }

    #checkout-steps .emeaReviewPage {
        margin: 0;
    }

    #checkout-steps .left-side {
        margin-bottom: 15px;
        border-bottom: 1px solid #4d4d4d;
        padding-bottom: 15px;
    }

    #checkout-steps #cart-table td.item-image img {
        border-radius: 5px;
    }

    #checkout-steps .left-side #cart-table {
        max-width: 100%;
    }

    #checkout-steps .left-side #cart-table .cart-row {
        border-bottom: 1px solid #4d4d4d;
    }

    #checkout-steps .left-side #cart-table .item-quantity, #checkout-steps .left-side #cart-table .item-total {
        display: none;
    }

    #checkout-steps .left-side #cart-table td.item-details {
        width: 100%;
    }

    #checkout-steps .left-side #cart-table td.item-details .item-price {
        margin: 0;
        float: none;
        width: 100%;
        text-align: left;
        color: #4e4e4e;
        font-size: 16px;
        margin-top: 30px;
    }

    #checkout-steps .left-side #cart-table td.item-details .item-qty {
        color: #4e4e4e;
        margin-top: 20px;
        font-size: 16px;
        font-weight: normal;
        position: relative;
    }

    #checkout-steps .left-side #cart-table td.item-details .item-qty:after {
        content: '';
        display: block;
        clear: both;
    }

    #checkout-steps .left-side #cart-table td.item-details .item-qty .qty {
        float: left;
        margin-right: 30px;
    }

    #cart-table td.item-details .product-availability-list {
        top: 0;
        left: 0;
        position: relative;
        float: left;
        margin: -5px 0 0;
        padding: 0;
    }

    #cart-table td.item-details .product-availability-list .is-in-stock {
        width: 100px;
        text-indent: -84px;
        overflow: hidden;
        text-transform: none;
        font-size: 16px;
    }

    #checkout-steps .right-side .reviewandcomplete {
        float: none;
    }

    #checkout-steps .left-side .btn.review {
        width: 100%;
        margin: 0;
    }

    #checkout-steps .right-side .block {
        border-width: 1px 0;
    }

    .emeaReviewPage .btn.purchase {
        text-align: center;
    }

    .emeaReviewPage .btn.purchase .gopro-chevron-right {
        display: none;
    }
    
}

#review-order-main .ps-logo {
    margin: 0 5px;
    height: 21px;
}

#paymentMethodsContainer {
    opacity: 0;
    transition: all 150ms ease;
}

#paymentMethodsContainer.loaded {
    opacity: 1;
}