/* $Id$ */

/**
 * Gift Wrap by Package
 */ 
.shipping-page .package-gift-box {margin-top: 15px;}
.shipping-page .package-gift-box {max-width: 100%;}
.shipping-page .package-gift-box textarea.no-msg {
    -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s   ;
    border-color: #b94a48;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #b94a48;;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #b94a48;;
}
.package-gift-box .this-is-gift {font-style: oblique;}
.package-gift-box .package-message {display: none;}
.package-gift-box .package-message.active {display: block;}
.package-gift-box .package-message label {
    display: block;
    margin-top: 10px;
}
.package-gift-box .package-message textarea {width: 100%;}
.package-gift-box .saved-package-message {
    display: none;
    margin-top: 10px;
    position: relative;
}
.package-gift-box .saved-package-message.active {display: block;}
.package-gift-box .saved-package-message .message-holder {
    background-color: #fafafa;
    border: 1px solid #ddd;
    font-size: 1.1rem;
    font-style: oblique;
    padding: 10px 60px 10px 15px;
}
.package-gift-box .package-gift-wrap-save {margin-top: 5px;}
.package-gift-box .package-gift-wrap-save.saving span {display: none;}
.package-gift-box .package-gift-wrap-save.saving {background-color: #B8B8B8;}
.package-gift-box .package-gift-wrap-save.saving:after {
    content: 'Saving...';
    display: block;
}
.package-gift-box .edit-btn,
.package-gift-box .delete-btn {
    color: #000;
    position: relative;
    display: inline-block;
    font-family: 'FontAwesome';
    font-style: normal;
    font-size: 1rem;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    top: 15px;
    right: 15px;
    text-decoration: none;  
    vertical-align: middle;  
}
.package-gift-box .edit-btn {right: 35px;}
.package-gift-box .edit-btn:hover {color: #107A10;}
.package-gift-box .delete-btn:hover {color: #B40000;}
.package-gift-box .edit-btn:after {content:"\f044";}
.package-gift-box .delete-btn:after {content:"\f00d";}
.single-shipping-page .package-summary .package-gift-box .this-is-gift,
.multiple-shipping-page .package-summary .package-gift-box .this-is-gift {
    display: inline-block;
    font-weight: normal;
    margin-top: 0;
}
#express-checkout-summary-box .package-gift-box {margin: 5px 0;}
#express-checkout-summary-box .saved-package-message {margin-top: 5px;}
.shipping-summary-box .package-gift-box {margin-top: 15px;}
.shipping-summary-box .package-gift-box .saved-package-message > label {display: inline-block;}

/**
 * Gift card
 */
.gift-card-fields-box label {display: block;}
.gift-card-fields-box input,
.gift-card-fields-box select,
.gift-card-fields-box textarea {
    margin-bottom: 10px;    
    width: 100%;
}
.gift-card-fields-box input[type="checkbox"] {
    margin-bottom: 0;
    width: auto;
}
.gift-card-fields-box input[type="checkbox"] + label  {display: inline;}

/**
 * Quote Plugin
 */
.cart-page .save-for-quote-btn {
    float: right;
    margin: 13px 50px 0 0;
}
.track-quote-page,
.order-quote-page,
.edit-quote-subscribers-page,
.edit-quote-main-page {padding-bottom: 30px;}
.quote-checkout-page .checkout-box {
    float: none;
    padding-right: 0;
    width: 100%;
}

/**
 * Email aquisition
 */
.lets-connect-box h2 {margin-top: 0;}
.lets-connect-box .sign-up {
    font-size: 1.2rem;
    display: block;
    margin: 10px auto;
    text-transform: uppercase;
    width: 200px;
}
.lets-connect-box .no-thanks {
    display: block;
    margin: 0 auto;
    text-align: center;
    width: 70px;
}

/**
 * Gift wrap
 */
.gift-options-wrap .wrapped-item {
    background-color: #fafafa;
    border: 1px solid #ddd;
    margin-bottom: 15px;
    padding: 10px 10px 10px 80px;
}
.gift-options-wrap .wrapped-item img {
    margin-left: -70px;
    width: 60px;
}
.gift-options-wrap .wrapped-item .item-name {
    display: inline-block;
    margin-left: 10px;
}
.gift-options-wrap .gift-personal-message textarea {
    display: block;
    width: 100%;
}
.gift-options-wrap .gift-personal-message .remaining-chars {
    background-color: #fafafa;
    border: 1px solid #ddd;
    border-top: 0;
    margin-bottom: 5px;
    padding: 5px;
}
.gift-options-wrap .gift-personal-message .remaining-chars label {float: left;}
.gift-options-wrap .gift-personal-message .remaining-chars #giftwrap_note_chars_count {
    float: right;
    font-weight: bold;
}
.gift-options-wrap .wrapping-options .wrapping label {
    display: inline-block;
    padding: 5px;
}
.gift-options-wrap .wrapping-options .wrapping label img {width: 60px;}
.gift-options-wrap .wrapping-options .wrapping .wrap-info {display: inline-block;}

/**
 * Reorder
 */
.reorder-page {padding-bottom: 30px;}
.reorder-page .reorder-filters { margin-bottom: 30px;}
.reorder-page .reorder-filters .fieldset {

    margin: 0;
}
.reorder-page .reorder-to-cart-top {float: right;}
.reorder-page .reorder-to-cart-bottom {
    display: block;
    font-size: 1.1rem;
    margin: 30px auto 0 auto;
    padding: 10px 25px;
    width: 160px;
}
.reorder-page .reorderable-items-table input[name*="qty"]{width: 50px;}
.reorder-page .reorderable-items-table .reorder-form-line.disabled {background-color: #fafafa;}
.reorder-page .reorderable-items-table .reorder-form-line label {vertical-align: middle;}
.reorder-page .reorderable-items-table .price,
.reorder-page .reorderable-items-table .ex-price {
    background-color: transparent;
    border: 0;
    width: 80%;
    padding: 0;
}
.reorder-page .reorderable-items-table .subtotal-wrap {
    border-bottom-width: 3px;
    font-size: 1.1rem;
    font-weight: bold;
    padding: 20px 0;
}
.reorder-page .reorderable-items-table .subtotal-wrap label {vertical-align: middle;}
.reorder-page .reorderable-items-table .subtotal-wrap input {
    background-color: transparent;
    border: 0;
}

/**
 * Fast cart
 */
.fastcart-page {
    margin: 0 auto;
    max-width: 700px;
    padding-bottom: 30px;
}
.fastcart-page textarea {display: block;}
.fastcart-page .csv-example {
    background-color: #fafafa;
    border: 1px solid #ddd;
    font-style: italic;
    margin-bottom: 15px;
    padding: 15px;
    width: 200px;
}
.fastcart-page .clear-cart-block {margin: 15px 0 30px 0;}

/**
 * Locations, Store Locator
 */
.store-locator-page {padding-bottom: 30px;}
.store-locator-page:after {
    clear: both;
    content: '';
    display: table;
}
.store-locator-page h1 {margin-bottom: 30px;}
.store-locator-page #searchBy {
    margin-bottom: 15px;
    width: 100%;
}
.store-locator-page .search-box {margin-bottom: 15px;}
.store-locator-page .search-box:after {
    clear: both;
    content: '';
    display: table;
}
.store-locator-page .search-form {margin-bottom: 15px;}
.store-locator-page .search-field {
    margin-bottom: 15px;
    position: relative;
}
.store-locator-page .search-field input {width: 100%;}
.store-locator-page .search-field .locations-search {
    background-color: transparent;
    color: #999;
    font-family: 'FontAwesome';
    font-style: normal;
    font-size: 1.2rem;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding: 2px 8px;
    position: absolute;
    right: 0;
    top: 0;
}
.store-locator-page .search-field .locations-search:before {content: "\f002";}
.store-locator-page .search-results-wrap {
    max-height: 200px;
    overflow-y: auto;
}
.store-locator-page #search-results {list-style-type: none;}
.store-locator-page #search-results li {
    background-color: #fafafa;
    cursor: pointer;
    padding: 10px;
}
.store-locator-page #search-results li:nth-of-type(even) {background-color: #f3f3f3;}
.store-locator-page #search-results li h5 {margin-top: 0;}
.store-locator-page #map {
    min-height: 300px;
    width: 100%;
}
.location-events-page {padding-bottom: 30px;}
.location-events-page h1 {margin-bottom: 30px;}
.location-events-page .event-wrap h4 {margin-bottom: 0;}

.internation-stores-page {padding-bottom: 30px;}
.internation-stores-page:after {
    clear: both;
    content: '';
    display: table;
}
.internation-stores-page h1 {margin-bottom: 30px;}
.internation-stores-page .trigger {
    border-bottom: 2px solid transparent;
    display: block; 
    font-size: 0.9rem;
    font-weight: bold;
    padding: 7px 0 5px 0;
    text-decoration: none;
}
.internation-stores-page .trigger.active {border-bottom: 2px solid;}
.internation-stores-page .store-info-wrap {
    background-color: #f3f3f3;
    display: none;
}
.internation-stores-page .store-info-wrap:after {
    clear: both;
    content: '';
    display: table;
}
.internation-stores-page .store-info {
    float: left;
    padding: 15px;
    width: 100%;
}

/**
 * Prev Next 
 */
.prev-next-wrap:after {
    content: '';
    clear: both;
    display: table;
}
.prev-next-wrap .pn-title {
    font-size: 0.95rem;
    font-weight: bold;
    margin-bottom: 15px;
}
.prev-next-wrap .pn-item {
    float: left;
    width: 50%;
}
.prev-next-wrap .pn-item .pn-item-link:after {
    content: '';
    clear: both;
    display: table;
}
.prev-next-wrap .pn-item img {width: 50px;}
.prev-next-wrap .pn-item .pn-item-link {
    border: 1px solid #ddd;
    color: #000;
    display: block;
    text-decoration: none;
    width: 100%;
}
.prev-next-wrap .pn-item .pn-caption {
    background-color: #f3f3f3;
    border-bottom: 1px solid #ddd;
    display: block;
    font-weight: bold;
    padding: 5px;
}
.prev-next-wrap .pn-prev-item {padding-right: 10px;}
.prev-next-wrap .pn-prev-item img {
    float: left;
    margin-right: 5px
}
.prev-next-wrap .pn-next-item {
    float: right;
    padding-left: 10px;
    text-align: right;
}
.prev-next-wrap .pn-next-item img {
    float: right;
    margin-left: 5px;
}

/**
 * Request form page
 */
.request-form-page {padding-bottom: 30px;}
.request-form-page .fieldset {max-width: 700px;}
.request-form-page #recaptcha {
    display: block;
    margin-bottom: 20px;
}

/**
 * Shipping tracking page
 */
@keyframes circle {
    0% {
    border: 1px solid #037f31;

        opacity: 1;
        transform: scale(1)
    }

    to {
    border: 1px solid #037f31;

        opacity: 0;
        transform: scale(1.3)
    }
}
@keyframes icon-display {
    to {
        background-color: #037f31;
    }
}
@keyframes step-arrow-display {
    to {
        color: #037f31;
    }
}
.shipment-tracking-page {
    padding-bottom: 30px;
}
.shipment-tracking-page h1 {
    margin-bottom: 30px;
}
.shipment-tracking-page .delivery-step {
    align-items: center;
    display: flex;
    margin-bottom: 30px;
    position: relative;
}
.shipment-tracking-page .delivery-step .icon {
    background-color: #f1f1f1;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    -khtml-border-radius: 25px;
    border-radius: 25px;
    flex-shrink: 0;
    font-size: 1.5rem;
    height: 50px;
    line-height: 50px;
    margin: 10px 10px 10px 0;
    position: relative;
    text-align: center;
    width: 50px;
}
.shipment-tracking-page .delivery-step.passed:nth-of-type(1) .icon,
.shipment-tracking-page .delivery-step.current:nth-of-type(1) .icon {
    color: #fff;
    animation: icon-display 0.5s linear 1 forwards;
}
.shipment-tracking-page .delivery-step.passed:nth-of-type(2) .icon,
.shipment-tracking-page .delivery-step.current:nth-of-type(2) .icon {
    color: #fff;
    animation: icon-display 0.5s linear 0.5s 1 forwards;
}
.shipment-tracking-page .delivery-step.passed:nth-of-type(3) .icon,
.shipment-tracking-page .delivery-step.current:nth-of-type(3) .icon {
    color: #fff;
    animation: icon-display 0.5s linear 1s 1 forwards;
}
.shipment-tracking-page .delivery-step.current:nth-of-type(4) .icon {
    color: #fff;
    animation: icon-display 0.5s linear 1.5s 1 forwards;
}
.shipment-tracking-page .delivery-step.current .icon:after {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -khtml-border-radius: 50%;
    border-radius: 50%;
    content: "";
    height: 50px;
    left: 0px;
    position: absolute;
    top: 0px;
    width: 50px;
}
.shipment-tracking-page .delivery-step.current:nth-of-type(1) .icon:after {
    animation: circle 1.5s ease-out 0.5s infinite;
}
.shipment-tracking-page .delivery-step.current:nth-of-type(2) .icon:after {
    animation: circle 1.5s ease-out 1s infinite;
}
.shipment-tracking-page .delivery-step.current:nth-of-type(3) .icon:after {
    animation: circle 1.5s ease-out 1.5s infinite;
}
.shipment-tracking-page .delivery-step.current:nth-of-type(4) .icon:after {
    animation: circle 1.5s ease-out 2s infinite;
}
.shipment-tracking-page .delivery-step .title {
    font-size: 1rem;
    font-weight: bold;
}
.shipment-tracking-page .delivery-step .step-arrow-down {
    color: #f1f1f1;
    bottom: -18px;
    font-size: 1rem;
    left: 0;
    position: absolute;
    text-align: center;
    width: 50px;
}
.shipment-tracking-page .delivery-step.passed:nth-of-type(1) .step-arrow {
    animation: step-arrow-display 0.5s linear 1 forwards;
}
.shipment-tracking-page .delivery-step.passed:nth-of-type(2) .step-arrow {
    animation: step-arrow-display 0.5s linear 0.5s 1 forwards;
}
.shipment-tracking-page .delivery-step.passed:nth-of-type(3) .step-arrow {
    animation: step-arrow-display 0.5s linear 1s 1 forwards;
}
.shipment-tracking-page .shipment-map {
    margin-bottom: 30px;
}
.shipment-tracking-page .shipment-details-wrap {
}
.shipment-tracking-page .shipment-details {
    border: 1px solid #f1f1f1;
    border-bottom: 0;
    padding: 10px;
}
.shipment-tracking-page .shipment-events {
    border: 1px solid #f1f1f1;
    border-bottom: 0;
}
.shipment-tracking-page .shipment-events .title {
    border-bottom: 1px solid #f1f1f1;
    font-weight: bold;
    padding: 5px 10px;
}
.shipment-tracking-page .shipment-events .shipment-event {
    border-bottom: 1px solid #f1f1f1;
    display: none;
    padding: 10px;
}
.shipment-tracking-page .shipment-events .shipment-event.first {
    display: block;
}
.shipment-tracking-page .shipment-history .show-more-ship-events {
    background-color: #f1f1f1;
    color: #000;
    display: block;
    font-size: 0.7rem;
    font-weight: bold;
    padding: 5px 0;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
}

/**
 * SAML
 */
.saml-login-page {
    margin: 0 auto;
    max-width: 700px;
    padding: 150px 0;
}

/**
 * Reward Points
 */
 .fieldset.reward-points-enroll{
    border-top: 0;
    margin-top: -20px;
 }
/**
 * Media queries
 ========================================================================== */

@media (max-width: 479px) {
    /**
     * Reorder
     */
    .reorder-page #reorder_grid {
        font-size: 0.7rem;
    }
}

@media (min-width: 480px) {}

@media (min-width: 480px) and (max-width: 767px) {
    /**
     * Locations, Store Locator
     */
    .internation-stores-page .store-info {width: 50%;}
    .internation-stores-page .store-info:nth-of-type(2n+1) {clear: both;}
}

@media (min-width: 480px) and (max-width: 991px) {
    /**
     * Locations, Store Locator
     */
    .store-locator-page .search-form {
        float: left;
        padding-right: 20px;
        width: 50%;
    }
    .store-locator-page .search-results-wrap {
        float: right;
        max-height: 250px;
        width: 50%;
    }
}

@media (max-width: 767px) {
    /**
     * Reorder
     */
    .reorder-page .reorder-filters .fieldset.first {border-bottom: 0;}
    .reorder-page .reorder-filters .fieldset.last {margin-bottom: 15px;}
}

@media (min-width: 768px) {
    .gift-options-wrap .gift-personal-message {
        float: left;
        padding-right: 10px;
        width: 50%;
    }
    .gift-options-wrap .wrapping-options {
        float: right;
        padding-left: 10px;
        width: 50%;
    }

    /**
     * Reorder
     */
    .reorder-page .reorder-filters .fieldset.column {
        float: left;
        width: 50%;
    }
    .reorder-page .reorder-filters .fieldset.first {
        border-right: 0;
        margin-bottom: 15px;
    }

    /**
     * Shipping tracking page
     */
    .shipment-tracking-page .delivery-steps {
        display: flex;
    }
    .shipment-tracking-page .delivery-step {
        flex-direction: column;
        text-align: center;
        width: 25%;
        z-index: 2;
    }
    .shipment-tracking-page .delivery-step .step-arrow-right {
        color: #f1f1f1;
        bottom: -18px;
        font-size: 1.5rem;
        height: 50px;
        line-height: 50px;
        position: absolute;
        right: -9px;
        top: 0;
        text-align: center;
        
    }
    .shipment-tracking-page .delivery-step .icon {
        margin: 0 0 15px 0;
    }
    .shipment-tracking-page .delivery-step .step-info {
        padding: 0 5px;
    }
    
}

@media (min-width: 768px) and (max-width: 991px) {
    /**
     * Locations, Store Locator
     */
    .store-locator-page #map {min-height: 500px;}

    .internation-stores-page .store-info {width: 33.3333%;}
    .internation-stores-page .store-info:nth-of-type(3n+1) {clear: both;}
}

@media (min-width: 768px) and (max-width: 1199px) {}

@media (max-width: 991px) {}

@media (min-width: 992px) {
    /**
     * Locations, Store Locator
     */
    .store-locator-page .search-box {
        float: left;
        padding-right: 30px;
        width: 30%;
    }
    .store-locator-page .search-results-wrap {
        max-height: 550px;
    }
    .store-locator-page .location-search-container  {
        float: right;
        width: 70%;
    }
    .store-locator-page #map {min-height: 700px;}
}

@media (min-width: 992px) and (max-width: 1199px) {
    /**
     * Locations, Store Locator
     */
    .internation-stores-page .store-info {width: 25%;}
    .internation-stores-page .store-info:nth-of-type(4n+1) {clear: both;}
}

@media (min-width: 992px) and (max-width: 1459px) {}

@media (max-width: 1199px) {}

@media (min-width: 1200px) {
    /**
     * Locations, Store Locator
     */
    .store-locator-page .search-box {width: 25%;}
    .store-locator-page .location-search-container {width: 75%;}

    .internation-stores-page .store-info {width: 20%;}
    .internation-stores-page .store-info:nth-of-type(5n+1) {clear: both;}
}

@media (min-width: 1200px) and (max-width: 1459px) {}

@media (min-width: 1200px) and (max-width: 1759px) {}

@media (max-width: 1459px) {}

@media (min-width: 1460px) {}

@media (min-width: 1460px) and (max-width: 1759px) {}

@media (min-width: 1760px) {}











