/*----- Card Styling -----*/
header#header.checkoutHeader{padding: 20px 0; background: #FBFCF0;}
header#header.checkoutHeader.logo {display: block!important;}
header#header.checkoutHeader .logo{padding: 0;}
header.checkoutHeader .main-header{box-shadow: none;
    PADDING-TOP: 0 !important;}
	header.checkoutHeader .main-header .first{ background: #FBFCF0;}
	#header.checkoutHeader .main-header .first img.contrailImg {
		max-width: 162px;
	}
.main-container.checkout .container {
    max-width: 1552px;
    width: 100%;
    padding-inline: 16px;
}
#checkoutRight .totalHolder {
    max-width: 420px;
    width: 100%;
    margin-top: 80px;
}
.card .card-heading h3.card-title {
    font-family: 'helvetica-bold';
    font-size: 25px;
    line-height: 24px;
    color: #221E1F;
}
#checkoutRight .totalHolder h3.card-title {
    font-size: 20px;
}
.card .card-heading {
    padding: 0;
}
#checkoutRight .totalHolder .card-heading {
    padding: 0;
    border-bottom: 1px solid #E5E5E5;
    padding-left: 20px;
    padding-bottom: 20px;
}
#checkoutRight .totalHolder div#orderTotalCard {
    padding: 27px 0 20px 20px;
}
.checkout div#cartItemsCard .checkoutItem span.checkoutItemImage {
    max-width: 70px;
    width: 100%;
    padding: 0;
}
.checkout div#cartItemsCard .checkoutItem span.checkoutItemText {
    max-width: 250px;
    width: 100%;
    padding-left: 21px;font-size: 16px;
    color: #221E1F;
    line-height: 20px;
}
.checkout div#cartItemsCard .checkoutItem span.checkoutItemPrice {
    margin-left: auto;
    
}
.checkoutItem .itemPriceHolder, .checkoutItem .itemPrice, .checkoutItem .listPrice, .checkoutItem .salePrice {font-family: 'helvetica-bold';
    color: #221E1F;}
.row.order-alter {
		margin: 0;
		border-top: 1px solid #DEDEDE;padding-top: 23px;
}

.row.order-alter .col-12 {
    padding: 0;
}
ul.order-totals li.list-group-item span.row {
    margin: 0;
}
ul.order-totals li.list-group-item span.row .displayName, ul.order-totals li.list-group-item span.row .displayValue {
    padding: 0;font-family: 'helvetica-bold';
    font-size: 16px;
}
.list-group.order-totals li.amountDue span {
    color: #13B5EA;
}
#checkoutRight .totalHolder .card-heading a {
    font-size: 14px;
    font-family: 'helvetica-bold';
    color: #13B5EA;
}
div#shipAddressCard form#createAccount input {
    height: 50px;
    line-height: 50;
    border: 1px solid #DEDEDE;
    border-radius: 25px;
}
a.collapseToggle .down {
    display: none;
}
div#paymentCard .newBillAddress{max-width: 100%;}
a.collapseToggle.collapsed .down{display: block;}
a.collapseToggle.collapsed .up{display: none;}
a.collapseToggle .up{display: block;}
.main-container.checkout .card {
    border: 1px solid #000;
}
ul.order-totals li.list-group-item span.row .displayValue{text-align: right;}
.card { margin-bottom: 20px; }
.card .card-heading {display: flex; justify-content: space-between; padding: 5px 2%;}
.card .card-heading > * { margin: 0; line-height: 30px; }
.card .card-heading .card-tool-options > * { color: #212529; float: right; }

#loading {
    display:none;
    position: fixed;
    z-index: 99;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: .5;
    background: rgb(255,255,255) url('/images/celloader.gif') CENTER CENTER no-repeat;
}
ul.order-totals li.list-group-item {
    padding: 0;
    border: 0;
    margin-bottom: 17px;
    border-width: 0;
    line-height: normal;
}
.main-container.checkout div#paymentCard form#billingAddress label.loginLabel {
    FONT-SIZE: 15PX;
    MARGIN-BOTTOM: 7PX;
}
.main-container.checkout div#paymentCard form#billingAddress input,.main-container.checkout div#paymentCard form#billingAddress select {
    border: 1px solid #DBDBDB;
    border-radius: 19px;
    height: 37px;
    line-height: 37px;
    margin-bottom: 23px;
}
.main-container.checkout div#paymentCard form#billingAddress select{padding: 0;padding-left: 10px;}
.main-container.checkout div#paymentCard form#billingAddress .card-body.row.accountHolder {
    padding-bottom: 7px;
}
.main-container.checkout div#paymentCard form#billingAddress .card-footer {
    background: transparent;
    border: 0;
    display: flex;
    justify-content: space-between;
}
.main-container.checkout div#paymentCard .ccHolder input#etaBopisDate {
    margin-bottom: 10px;
}
.main-container.checkout div#paymentCard .ccHolder form#account input#addressSubmit{max-width:310px;}
.main-container.checkout div#paymentCard .ccHolder button#setBopisETABtn {
    height: 51px;
    line-height: 51px;
    text-align: center;
    max-width: 310px;
    letter-spacing: 0.24px;
    color: #fff;
    background-color: #13B5EA;
    font-size: 18px;
    margin-bottom: 10px;
    width: 100%;
}
/* CHECKOUT */
.card-tool-options a i { display: none; line-height: 30px;}
.card-tool-options a[aria-expanded="true"] i.up { display: block; }
.card-tool-options a[aria-expanded="false"] i.down { display: block; }
.card-footer .selected { font-family: 'helvetica-bold'; font-size: 20px; font-weight: normal; text-transform: uppercase; padding-right: 1%; color: #13B5EA;}
.card-footer span.shipMeth {
    font-size: 18px;
}

.block-form{
    border: 1px solid #ececec;
    padding: 10px;
    margin-bottom: 30px;
}
.block-form p{
    margin-bottom: 30px;

}
.shipAddressHolder { padding: 5px 5%; font-size: 14px; margin: 0 0 10px; border-bottom: 1px solid rgba(0,0,0,.125); }
.shipAddressHolder:last-of-type { border-bottom: none; }
.shipAddressHolder.selected { border: 2px solid #00437f; border-radius: 4px; }
.shipAddressHolder .store-icon i { font-size: 2rem; }
#shipAddressCard .ship-list-group .isMore { display:none; }
#shipAddressCard .ship-list-group.show .isMore { display:block; }
#shipAddressCard .ship-list-group .selected { background: rgba(0, 67, 127,.25); }

.hasGun .shipAddressHolder:not(.isFFL) { display:none; }
.shippingHolder:not(.hasGun) .isFFL { display:none; }

.fflSearchHolder { position: relative; margin: 10px 0 0; }
.fflSearchHolder button { position: absolute; right: 2%; top: 0; }

#checkoutMessage { margin-bottom: 0; }

#checkoutLeft { padding-top: 25px; }

.checkoutItem.edit .checkoutItemManage {display: flex;} 
.block-form label{
    font-weight: normal;
    color: #333;
}
#checkoutRight{background: #f2f2ea;border-left:0; padding-top:0;  padding-left: 0;position: relative;}

div#checkoutRight:before {
    content: '';
    position: absolute;
    left: 100%;
    bottom: 0;
    height: 100%;
    background: #f2f2ea;
    width: 12000px;
}
#checkoutRight .card { border: none; background: none; }
.row.order-alter input {
    border-radius: 10px;
    border: 0;
    margin-bottom: 10px;
    font-size: 16px;
    letter-spacing: 0.56px;
    color: #545454;
    padding: 10px;
}
.order-alter .form-group label {
    margin-bottom: 10px;
    color: #221e1f;
    font-family: 'helvetica-bold';
}
.order-alter .form-group { position:  relative;margin-bottom: 23px; }
.order-alter .form-group .btn { }

.list-group.order-totals li { border-width: 0 0 1px; background: none; }
.list-group.order-totals li:last-of-type { border-width: 0; }
.list-group.order-totals li.amountDue { font-weight: bold; }


#PMTiframe{width: 100% !important;height: 441px !important;}
#PMTiframe body{background:#f2f2f2!important}

/*------ Login ------*/
.form-authentication-footer { margin: 20px 0 50px; padding: 20px 0; border-width: 2px 0 0; border-style: solid; border-color: #00437f;}


/*------ View Cart ------*/
.cartItems img {     max-width: 80px;width: 100%;}
#shoppingCartItems p { margin: 0; }
#cartSubtotal { color: #000; text-transform: uppercase; line-height: 56px; height: 56px; margin: 0; border-width: 2px 0; border-style: solid; border-color: #00437f; }
#cartSubtotal .value { float: right; font-weight: bold; margin-left: 1em;}
#cartPageInner #cartInfo .checkout-btns { width: 100%; display: block; text-align: center;margin-top: 17px;}
#cartPageInner #cartInfo .checkout-btns a {max-width: 100%;width: 100%;height: 51px;line-height: 51px;text-align: center;text-transform: uppercase;border-radius: 26px;  }
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartItems .cartDetails {margin-left: 10px; width: 385px;}
td.removeIt a.removeItem ,td.cartTotal p {display: flex;align-items: center;height: 100%;}
#cartPageInner  #cartInfo .checkout-btns a:first-of-type{border: 0!important; margin-bottom: 19px; background: #13B5EA !important;}
#cartPageInner #cartInfo .checkout-btns a:last-of-type {background-color: #E51A38 !important; margin-bottom: 17px;}
.checkoutItem { cursor: pointer; }
.checkoutItem span {display: inline-block; }
.checkoutItem > span { }
.checkoutItem .checkoutItemImage img { max-height: 70px;max-width: 70px;width: 100%;height: 100%;} 
.checkoutItem .qtyIcon { position: absolute; color: #fff; background: #00437f; text-align: center; width: 30px; height: 30px; line-height: 30px; border-radius: 15px; top: 3px; right: 3px; font-weight: bold; } 
.checkoutItem .itemBrand {font-style: italic;} 
#shoppingCartItems.checkoutItem .itemName, #shoppingCartItems.checkoutItem .itemPrice {font-size: 16px;line-height: 32.8px;color: #403C36;} 
#shoppingCartItems.checkoutItem .itemName{margin-bottom: 25px;}
.checkoutItem .itemDetails {display: none;} 
.checkoutItem .checkoutQty {width: auto; margin-right: 2%; text-align: center; max-width: 100px;} 
.checkoutItem .itemPriceHolder,.checkoutItem .itemPrice,.checkoutItem .listPrice,.checkoutItem .salePrice {white-space: nowrap;} 
.checkoutItem .listPrice { text-decoration: line-through; color: #495057; }
.checkoutItem .checkoutItemManage {display: none; justify-content: space-between; flex-direction: row; padding: 5px 15px 10px; } 
.checkoutItem .checkoutItemManage span { flex: 0 0 0; } 
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartQty .qty-btns {display: flex;align-items: center;height: 100%;}
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartQty .qty-btns .qtyDiv {width: 140px;height: 51px;line-height: 51px;border: 2px solid #5E584F;border-radius: 26px;background: #fff;padding-inline: 20px;text-align: center;}
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartQty .qty-btns .qtyDiv button {border: 0;background: transparent;padding: 0;}
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartQty .qty-btns input {height: 51px;width: 40px;border: 0;text-align: center;margin: 0;line-height: 40px; background: transparent;}
table#shoppingCartItems{border: 0!important;}
td.removeIt a.removeItem {font-size: 15px;color: #403C36;}
td.removeIt a.removeItem  svg{margin-right: 5px;}
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartTotal p {font-size: 22px;color: #403C36;}
.updated-remove {margin-top: 1em;}
#cartInfo {float: right;display: -webkit-box;display: -moz-box;display: -ms-flexbox;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-pack: end;-moz-box-pack: end;-webkit-justify-content: flex-end;-ms-flex-pack: end;justify-content: flex-end;padding-right: 0;}
#cartSubtotal,
#payPalCheckoutButton {width: 100%;text-align: right;height: 47px;line-height: 47px;}
/* VIEW CART */
div#cartPageInner {max-width: 1320px;width: 100%;margin-inline: auto;}
div#cartPageInner h3.viewCartHeading {text-align: center;color: #403C36;font-size: 25px;font-family: 'helvetica-bold';letter-spacing: 0.38px;text-transform: uppercase;margin-bottom: 20px;}
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem {border: 0 !important;border-radius: 20px !important;background: #F2F2EA;margin-bottom: 20px;display: flex;padding: 20px 30px;justify-content: space-between;}
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td {padding: 0;}
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartItems {display: flex;align-items: center;}
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartItems a {max-width: 80px;width: 100%;display: inline-block;}
section#cartInfo .subTotal {max-width: 489px;width: 100%;background: #F2F2EA;border-radius: 20px;padding: 20px 30px;}
section#cartInfo .subTotal #cartSubtotal {border: 0;display: flex;justify-content: space-between;}
section#cartInfo .subTotal #cartSubtotal span {font-size: 22px;font-family: 'helvetica-bold';color: #403C36;}
.removeItem.mobile{display: none;}
div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartQty .qty-btns .qtyDiv button svg {
    height: 20px;
    width: 20px;
    position: relative;
    bottom: 3px;
}
@media (min-width: 768px) and (max-width: 991px){
	div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartItems .cartDetails{width: 240px;}
}
@media(max-width:767px){
	.main-container.no-sidebar.viewCart {
		padding: 40px 0 50px;
	}
	div#cartPageInner section#cartContentsAndTotals tr.checkoutItem{padding: 20px 10px;}
	div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartItems .cartDetails{max-width: 100%; width: 100%;}
	#shoppingCartItems.checkoutItem .itemName{margin-bottom: 29px;}
	div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartQty {
		width: 100%;
		padding-left: 101px;
	}
	td.removeIt{display: none;}
	.removeItem.mobile{display: block; color: #403C36;font-size: 15px;}
	.removeItem.mobile svg{margin-right: 5px;}
	div#cartPageInner section#cartContentsAndTotals tr.checkoutItem td.cartQty .qty-btns{justify-content: space-between;}
	section#cartInfo .subTotal{max-width: 100%; padding: 20px 10px;}
}
/*VIEW CART */


.cart-autoship-options{margin-left:2%;}
.cart-autoship-options label{margin-right:3%;}
ul.checkout-autoship-options{width:100%;display:block;}
ul.checkout-autoship-options li{text-decoration: none;list-style: none;}
#shipMethodCard a.list-group-item {
    color: #000;
	background: #F2F2EA;
    border: 1px solid rgba(0,0,0,.125);font-family: 'heveltica-bold';
}

@media (max-width: 991px){
	#checkoutRight .totalHolder div#orderTotalCard{padding-left: 0;}
    #checkoutRight { border-left: none; padding: 0;}
    #orderTotalCard:not(.show) { display: none; }
}

@media (max-width: 767px) {
	header#header.checkoutHeader .logo a.contrailImgLink {
		text-align: center;
	}
	#shoppingCartItems {
		border: none;
	}
	
	#shoppingCartItems thead {
		display: none;
	}
	
	#shoppingCartItems tr {
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-bottom: 1em;
		border-bottom: 1px solid #ececec;
	}
	
	
	
	.cartPrice {
		display: none;
	}
	
	
	.cartQty .mob-price-display p {
		text-align: right;
	}
	
	.cartTotal {
		display: none;
	}
	
	#cartInfo {
		padding-left: 0;
	}
	
	.checkout-btns {
		width: 100%;
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-direction: normal;
		-moz-box-direction: normal;
		-webkit-box-orient: vertical;
		-moz-box-orient: vertical;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	
	.checkout-btns a {
		width: 100%;
		margin-bottom: 0.5em;
	}
}

@media(max-width:575px){
	.card .card-heading h3.card-title{font-size: 18px;}
	div#newBillAddress form#billingAddress input,div#newBillAddress form#billingAddress select {
		width: 100%;
	}
	.main-container.checkout div#paymentCard .ccHolder form#account input#addressSubmit {
		max-width: 100%;
		margin-bottom: 17px !important;
	}
	.main-container.checkout div#paymentCard .ccHolder button#setBopisETABtn{max-width: 100%;}
	.main-container.checkout div#paymentCard form#billingAddress .card-footer{flex-direction: column; padding-inline: 0;}
	.main-container.checkout div#paymentCard form#billingAddress .card-footer button{max-width: 100%;}
	.main-container.checkout div#paymentCard form#billingAddress .card-footer button#submitBilling {
		margin-bottom: 17px;
	}
}
div#paymentCard .newBillAddress,.main-container.checkout div#paymentCard .ccHolder form#account input#addressSubmit{background-color: #E51A38;color: #FFF;border: 0;border-radius: 26px;height: 51px;padding: 0;text-align: center;line-height: 51px;text-transform: uppercase;font-size: 18px;width: 100%;}

