/*#00 - Global Shopping Cart#*/
.group:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	}
* html .group             { zoom: 1; } /* IE6 */
*:first-child+html .group { zoom: 1; } /* IE7 */


.ErrorLabel,
.Error,
.LabelError {
  font-weight: 700;
  color: red;  
}

.ErrorLabel,
.LabelError {  
  padding: 10px;
}

.BoxSectionTitle {
  font-weight: 700;
}

.BoxTitleTab {  
}

.input 
{    
    margin: 0 0 10px 0;
    background: white;       
}
.input span 
{    
    position: absolute;
    padding: 2px;
    margin: 14px 0 0 10px; 
    color: #999;
}
.input input, .input textarea, .input select 
{   
    border: 1px solid #BDBDBD;
    margin: 5px 0;
    height: 30px;  
    position: relative;
    margin: 5px;    
    padding: 5px;
    background: transparent;
    font: inherit;
    display: inline-block;
}

.input select 
{
    height: 30px;
}

/* HACK: to remove Safari's extra padding. Remove if you don't care about pixel-perfection. */
@media screen and (-webkit-min-device-pixel-ratio:0) {
    .input input, .input textarea, .input select { padding: 4px; }
}

.Address {
    line-height: 18px;
}
        
/* Pulled in from page-level */        
input.Error  { border: 1px solid red; }

select.Error { border: 1px solid red; }
    
.Pointer {
    cursor: pointer;
}

.PrintPageLink { margin: 20px 0; }

.Button.Disabled,
.Button.Disabled:hover { background: #CCC; color: #AAA; }

.CartContentTable a { text-decoration: none; }

.BottomPad { padding-bottom: 20px; }
/*---/ End Shopping Cart*/

/*#01 - Step Zero (Cart)#*/
.CheckoutColumn1.grid-12 { float: none; }

.BoxTitleTab span,
.PurchaseOptions span,
.OrderSummaryTitle span {
background: #EEE;
border: 1px solid #CCC;
border-bottom: 0;
display: inline-block;
font-weight: bold;
height: 32px;
line-height: 32px;
margin-top: 10px;
padding: 0 10px;
text-align: left;
vertical-align: middle;
width: auto;
}

.Box {
border: 1px solid #CCC;
padding: 10px 0;
}

.CartContentTable { font-size: .75em; }

.CartContentTable .Header { padding: 5px 0; }

.CartContentTable .ProductImageHeader.Header {
padding: 0 20px;
text-align: left;  
}

td.ProductImage {
padding: 0 20px;
width: 4%;
}

td.ProductDetails {
vertical-align: top;
width: 75%;
}

.StepOne td.ProductDetails,
.StepFour td.ProductDetails,
.ThankYou td.ProductDetails { width: 40%; }

.ProductActionsHeader  { text-align: left; }

td.ProductActions,
td.ProductPrice,
td.ProductTotal { vertical-align: top; }

.StepOne td.ProductActions,
.StepOne td.ProductPrice,
.StepOne td.ProductTotal { width: 12%; }

.StepOne td.ProductActions { font-size: .916em; }

td.ProductActions input[type=text] { font-family: Verdana, Helvetica, sans-serif; }

td.ProductActions a:hover { color: #222; text-decoration: underline; }

.Box .ItemName { font-weight: bold; margin-bottom: 5px; }

.Box .CartonWeight {
font-size: .916em;
font-style: italic;
margin-top: 5px;
}

.Box .EvenRow td {
padding-bottom: 10px;
padding-top: 10px;}

.Box .OddRow td {
padding-bottom: 10px;
padding-top: 10px;
}

.Box tr.EvenRow,
.Box tr.OddRow  { border-top: 1px solid #CCC; }

.Box .QuantityColumn { font-size: .785em; }

.PurchaseOptions { margin: 30px 0; }

.PurchaseOptions * { box-sizing: border-box; }

.PurchaseOptions .PurchaseOptionsButtons  {
border: 1px solid #CCC;
/*margin-top: 10px;*/
padding: 10px;
}

.PurchaseOptions .PurchaseOptionDescription {
font-size: .785em;
margin-top: 5px;
text-align: center;
}

.LoginPanelPasswordRetrieval { padding: 5px 0; }

.Button,
.ContinueShoppingLink,
.ShoppingCartButtons input[type=submit],
.LoginPanelPasswordRetrieval input[type=submit] {
background: #FEB92D;
border: 0;
border-radius: 2px;
color: #282828;
cursor: pointer;
font-family: Verdana, Helvetica, sans-serif;
font-size: 1em;
font-weight: bold;
margin-bottom: 4px;
padding: 7px 10px;
text-align: center;
text-decoration: none;
}

.Button:hover,
.ContinueShoppingLink:hover,
.ShoppingCartButtons input[type=submit]:hover {
background: #dda128;
text-decoration: none;
}

.Button a,
.ContinueShoppingLink a {
color: #282828;
text-decoration: none;
}

.ContinueShoppingLink { float: right; margin-top: 15px; }

.PrintPageLink { float: right; width: 120px !important; }

.TotalRow {
background: #EEE;
border: 1px solid #CCC;
border-top: 0;
font-size: .75em;
font-weight: bold;
padding: 5px 10px;
}

.TotalLabel.grid-2 { width: 95px; }


.OrderSummary .Label { width: 115px; }

.OrderSummary .Label,
.OrderSummary .Value { margin: 5px 0; }

.Box.OrderSummary {
font-size: .75em;
padding: 10px;
}

.OrderTerms {
font-size: .75em;
margin-top: 10px;
}

.OrderTerms div {
font-size: .9167em;
font-style: italic;
line-height: 1.5em;
margin-top: 5px;
}

.MenuTitle {
cursor: pointer;
font-weight: bold;
margin-top: 10px; 
}

.ShoppingCartButtons { margin-top: 10px; }

.ShoppingCartButtons .EstimateTaxShipping {
font-size: .675em;
float: left;
padding: 10px;
text-align: left;
width: 250px;
}

.EstimateTaxShipping .CheckoutButtonDescription { font-size: .600em; }

.ShoppingCartButtons .ButtonContainer {
font-size: .75em;
float: left;
margin: 0 0 0 20px;
text-align: center;
width: 150px;
}

.ShoppingCartButtons .ButtonContainer .CheckoutButtonDescription { font-size: .9167em; }

.CheckoutColumn2B.OrderSummaryBumpDown { margin-top: 33px; }
/*---/ End Step Zero*/

/*#02 - Step Two (Shipping)#*/
.CheckoutColumn2B.OrderSummaryBump { margin-top: -10px; }

.CheckoutColumn1C { font-size: .75em; }

.CheckoutColumn1C  .BoxSectionTitle {
display: block;
margin: 10px;
}

.CheckoutColumn1C .input span { margin-top: 10px; }

.CheckoutColumn1C input[type=text] {
height: 24px;
padding: 4px;
  color: #282828;
}

.darkText {

  color: #282828 !important;
}

.CheckoutColumn1C .ExampleText {
bottom: 30px;
font-size: .9167em;
font-style: italic;
left: 200px;
position: relative;
}

.CheckoutColumn1C .DividerLine { width: 95%; }

.BlockContent.Billing { padding: 0 10px; }

#btnUpdateCart, #btnRemoveItem { font-size: 1.25em; }
/*---/ End Step Two*/


/*#03 - Step Three (Credit Card)#*/
.DataIntercept td:first-child { padding-left: 10px; }

.DataInterceptErrors { color: #ff0000; padding: 10px; } 

.DataInterceptCreditCardType select{
  border: 1px solid #BDBDBD;
    margin: 5px 0;
    height: 30px;  
    position: relative;
    margin: 5px;    
    padding: 5px;
    background: transparent;
    font: inherit;
    display: inline-block;
  width: 165px;
  }

.DataInterceptCreditCardNumber input{
  border: 1px solid #BDBDBD;
    margin: 5px 0;
    height: 12px;  
    position: relative;
    margin: 5px;    
    padding: 5px;
    background: transparent;
    font: inherit;
    display: inline-block;
  }

.DataInterceptExpirationDate input{
  border: 1px solid #BDBDBD;
    margin: 5px 0;
    height: 12px;  
    position: relative;
    margin: 5px;    
    padding: 5px;
    background: transparent;
    font: inherit;
    display: inline-block;
  }

.DataInterceptCVV input{
  border: 1px solid #BDBDBD;
    margin: 5px 0;
    height: 12px;  
    margin: 5px;    
    padding: 5px;
    background: transparent;
    font: inherit;
  }
/*---/ End Step Three*/


/*#04 - Step Four (Review)#*/
div.CreditCard,
div.Address { padding: 10px; }

.StepFour .CartonWeight { font-size: 1em; }



/*#10 - Modal#*/
.LoginModal,
.CheckoutAsGuest,
.CheckoutAsGuest *,
.ReturningCustomer,
.ReturningCustomer *,
.NewCustomer,
.NewCustomer,
.Modal * { box-sizing: border-box; }

.LoginModal,
.Modal {
background: #FFF;
border-radius: 4px;
padding: 20px;
position: relative;
width: 700px;
}

.Modal.ShoppingCartHowToProceed {
padding: 20px;
width: 400px;
}

.ShoppingCartHowToProceed .ButtonDescription { font-size: .75em; }

.ShoppingCartHowToProceed .Close2 {
position: relative;
right: -390px;
top: -10px;
}

.ShoppingCartHowToProceed .ModalTitle { text-align: center; }

.Modal.ShoppingCartHowToProceed .Button { margin: 10px 0; }

.Modal.PleaseWait {
margin-left: -250px;
margin-top: -100px;
min-height: 200px;
padding: 20px;
width: 400px;
}

.Modal .PleaseWaitTitleText {
font-size: 1.125em;
font-weight: bold;
}

.ModalBody {
font-size: .75em;
line-height: 1.5em;
margin: 20px 0 0 0;
}

.ModalTitle { font-weight: bold; }

.LoginModal .Button { margin-top: 10px; }

.LoginModal h1 {
border-bottom: 1px solid #666;
font-size: 1.25em; 
font-weight: bold;
margin-bottom: 10px;
padding-bottom: 5px;
width: 100%;
}

.LoginModal .col { margin: 5px 0; }

.CheckoutAsGuest {
border-right: 1px solid #CCC;
float: left;
font-size: .675em;
height: 400px;
padding: 10px 10px 10px 0;
width: 200px;
}

.CheckoutAsGuest h2,
.ReturningCustomer h2,
.NewCustomer h2 {
font-size: 1.285em;
margin-bottom: 10px;
}

.ReturningCustomer h2,
.NewCustomer h2 { margin: 0; }

.CheckoutAsGuest p { line-height: 1.5em; }

.ReturningCustomer,
.NewCustomer {
float: left;
font-size: .675em;
margin-left: 10px;
padding: 10px 10px 10px 10px;
width: 450px;
}

.NewCustomer {
border-top: 1px solid #CCC;
}

.colAlign { position: relative; }

.PasswordNoteLogin {
font-size: .909em;
font-style: italic;
left: 175px;
position: absolute;
width: 220px;
}

.PasswordStrengthText,
.PasswStrenghtIndicator { display: none; }

.LoginModal label { display: block; padding-bottom: 5px; }