.opc-wrapper .page-title h1 { font-size: 46px; line-height: 1; color: #2e1f54; }
.opc-wrapper .reward-message { margin: 0 0 1.5em; }

.checkout-onepage-index .page .messages { margin-top: 70px !important; }

/* ==================== Improved One Page Checkout with progressbar  ===================== */

.opc { position:relative; float: none; margin: 50px 0 0; overflow: hidden; height: 1000px; }
.opc input.radio { vertical-align: top; margin: 5px 10px 0 0; }
.opc .ul { list-style:disc outside; padding-left:18px; }
.opc li.section { display:inline; }
.opc .step { position:absolute; overflow: hidden; overflow-y: auto; border:0; top:52px; left:0; z-index:1; width:95%; padding: 30px 2.5% 20px; background: transparent; text-align:left; }

.opc .step-title,
.opc .allow .step-title,
.opc .active .step-title { position:relative; z-index: 100; text-align:center; border:none; padding:0; overflow: visible !important; display:inline-block; vertical-align:top; border: 1px solid #dadfe1; border-width: 1px 0; font-family: Neutra2Text, Arial, Helvetica, sans-serif; text-transform: uppercase; }

.opc .step-title h2,
.opc .allow .step-title h2,
.opc .active .step-title h2 { width:100%; text-align:left; display: block; text-align: center; float: none; margin: 0; font-size: 1em; height:50px; line-height: 50px; font-weight: normal; color: inherit; font-family: Neutra2Text, Arial, Helvetica, sans-serif; }

.opc .step-title .number { padding:0; border:0; position:relative; z-index:1; }
.opc .step-title h2 { font-size:1em; clear:both; position: relative; }
.opc .step-title a { display:none; }

.opc .step-title .number,
.opc .allow .step-title .number,
.opc .active .step-title .number { float:none; display:inline; margin:0; color: inherit; display: none; }

.opc .allow .step-title { cursor: pointer; }
.opc .allow .step-title .number {}
.opc .allow .step-title h2 { background: #94a0a6; color: #fff; }

.opc .active .step-title {}
.opc .active .step-title .number {}
.opc .allow .step-title h2:hover,
.opc .active .step-title h2 { background: #2e1f54; color: #fff; }
.opc .active .step-title h2:after { position: absolute; top: 100%; left: 50%; margin: -1px 0 0 -13px; content: ""; border: 13px solid transparent; border-width: 13px 13px 0 13px; border-color: #2e1f54 transparent transparent transparent; height: 0; width: 0; overflow: hidden; display: block; }

.opc .step-title,
.opc-steps-6 .step-title { width:16.66%; }
.opc-steps-5 .step-title { width:20%; }
.opc-steps-4 .step-title { width:25%; }
.opc-steps-3 .step-title { width:33.33333%; }

.opc #opc-shipping .step-title { display: none; }
.opc #opc-shipping.active .step-title { display: inline-block; }


.opc:first-of-type .step{-webkit-transition: opacity 0.5s ease-in-out;-moz-transition: opacity 0.5s ease-in-out;-o-transition: opacity 0.5s ease-in-out;-webkit-transition: opacity 0.5s ease-in-out;transition: opacity 0.5s ease-in-out;}
.opc:first-of-type .step[style*='display:none;'],
.opc:first-of-type .step[style*='display: none;']{display:block !important; opacity: 0; filter: alpha(opacity=0); }
.opc:first-of-type .section .step{left: 100%;}
.opc:first-of-type .allow .step{left: -100%;}
.opc:first-of-type .active .step{left:0;}
.opc:first-of-type li:last-child .step-title a{width:50%}
.opc:first-of-type li:first-child .step-title a{width:50%;left:50%}

/* ================================= Solution by www.h-o.nl =============================== */

.opc-progress-container { display: none; }

#checkout-step-login .col3-set { margin: 0 -30px; }
#checkout-step-login .col3-set .col-1,
#checkout-step-login .col3-set .col-2,
#checkout-step-login .col3-set .col-3 { margin: 0; width: 33.3% }
#checkout-step-login .col3-set h4 { margin: 0 0 20px; }
#checkout-step-login .col3-set .col-content,
#checkout-step-login .col3-set .buttons-set { padding: 0 30px; }
#checkout-step-login .col3-set .col-2 .col-content,
#checkout-step-login .col3-set .col-2 .buttons-set { border: 1px solid #dadfe1; border-width: 0 1px; }

.login-form-wrapper #login-form fieldset { padding-bottom: 10px; }

select#billing-address-select,
select#shipping-address-select { width: auto; max-width: 100%; }

#checkout-review-table-wrapper h3 { text-transform: uppercase; font: 17px/1.5 Neutra2Text, Arial, Helvetica, sans-serif; font-weight: bold; }
#checkout-review-table-wrapper h3 .separator,
#checkout-review-table-wrapper h3 a { font-weight: normal; text-transform: none; }
#checkout-review-table-wrapper h3 a { text-decoration: underline; }
#checkout-review-table-wrapper h3 a:hover { text-decoration: none; }
#checkout-review-table-wrapper .quote-info li { padding: 10px 20px; background: #E2E6E8; margin: .5em 0 0; }
#checkout-review-table-wrapper .quote-info li:first-child { margin-top: 0; }

table#checkout-review-table td.last { text-align: right; }
table#checkout-review-table tbody td { vertical-align: middle; }
table#checkout-review-table tfoot td,
table#checkout-review-table tfoot th { padding-top: 3px; padding-bottom: 3px; border: 0; }
table#checkout-review-table tfoot tr.last strong { font-size: 1.41em; }
table#checkout-review-table .btn-remove { display: inline-block; vertical-align: middle; margin: 0 6px 0 0; }
table#checkout-review-table p.product-name { margin: 0; }

.checkout-onepage-payment-additional-giftcardaccount { display: none; }

#share_order h2 { font-family: DJOE5CAS; font-size: 1.41em; margin: 0 0 1em; position: relative; line-height: 1.5; color: #2e1f54; }
#share_order h2:after { content: ""; position: absolute; background: url(../images/sprite.svg?v=1702) -260px -50px; height: 37px; width: 15px; top: 100%; right: 100%; margin: -8px 15px 0 0; display: block; }
#share_order .col2-set { border: 1px solid #dadfe1; border-top: 0; }
#share_order .col2-set .wide .col-content { border: 1px solid #dadfe1; border-width: 1px 1px 0 0; }
#share_order .col2-set .narrow .col-content { border: 1px solid #dadfe1; border-width: 1px 0 0 1px; margin: 0 0 0 -1px; }
#share_order .col2-set .wide { width: 67%; }
#share_order .col2-set .narrow { width: 33%; }
#share_order .col2-set .narrow ul { padding: 30px; }
#share_order .col2-set .narrow li.sn { padding: 7px 0; }
#share_order .col2-set .narrow input.radio { margin: 0 7px; vertical-align: baseline; }
#share_order .col2-set .narrow button.button { width: 100%; margin-top: 1em; }
#share_order .data-table { margin: 0; }
#share_order .data-table th,
#share_order .data-table td { border-bottom: 0; vertical-align: middle; }
#share_order .product-description { display: none; }

.opc .buttons-set .button:disabled { display: none !important; }
.opc .buttons-set .please-wait { float: right; }
.opc #review-buttons-container { line-height: 50px; }
.opc #review-buttons-container p { line-height: 24px; }
.opc #review-buttons-container .button > span { line-height: 50px; height: 50px; text-transform: uppercase; }
.opc #review-buttons-container .button > span > span:after { margin-bottom: 5px; }

.checkout-onepage-payment-additional-reward,
.checkout-onepage-payment-additional-customerbalance { background: #E2E6E8; color: #5b4e77; padding: 10px; margin-bottom: 1em; }
.checkout-onepage-payment-additional-reward dt { padding: 0; font-weight: normal; }
.checkout-onepage-payment-additional-customerbalance strong { font-weight: normal; }

.opc .country .input-box select { width: calc(100% + 20px); }


.opc #opc_postnl_ce .postnl-loading {
	float: left;
	margin-top: 28px;
	height: 32px;
}