www.lakeshorelearning.com Open in urlscan Pro
23.213.161.211  Public Scan

Submitted URL: http://lakeshorelearning.com/
Effective URL: https://www.lakeshorelearning.com/
Submission: On August 21 via api from BE — Scanned from DE

Form analysis 8 forms found in the DOM

<form class="pc-search header-search" data-bind="submit: search" role="search">
  <label for="search" class="sr-only">Search:</label>
  <span class="ll-typeahead" data-bind="click: setDTMData"><span class="ae-compliance-indent" style="display:none;" id="ae_search_instructions">To navigate through search suggestions, begin typing then use down and up arrow keys.</span>
    <input id="search" name="search" type="text" class="form-control header-link noBoxShadow" autocapitalize="none" autocomplete="off" target-submit-jselector="#btnSearch" data-bind="attr: {'placeholder': placeholder},
						textInput: enteredText, 
						typeahead : options, 
						event: {blur: onBlurSearch, paste: onPasteSearch, keydown: onKeydownSearch, keyup: onKeyup}, 
						validateInput:'LtrNumCh2'" automation-id="search_input" placeholder="What can we help you find?" aria-describedby="ae_search_instructions" aria-label="Search">
    <button class="ll-typeahead-remove header-link ls-icon icn-x-close-lgt" aria-label="Remove search input" role="presentation" aria-hidden="true" tabindex="-1" style="display: none;"></button>
    <button id="btnSearch" data-bind="event: {blur: onBlurSearch }" class="ls-icon icn-search-hvy-rgt ta-search-icon header-link" aria-live="polite" type="submit" automation-id="search_button"><span style="display:none;"
        class="ae-compliance-indent">Search</span></button>
  </span>
</form>

<form class="pc-search header-search" role="search">
  <span class="ll-typeahead">
    <input name="search" type="text" class="form-control search header-link" autocapitalize="none" autocomplete="off" placeholder="What can we help you find?" aria-label="What can we help you find?">
    <button class="ls-icon icn-search-hvy-rgt ta-search-icon header-link" aria-label="Search"></button>
  </span>
</form>

<form data-bind="css: {'form-inline': !isMobileView()}" class="form-inline">
  <div class="form-group form-item email-div" data-bind="css: errors().email ? 'has-error' : ''">
    <div data-bind="visible: $component.formHasError" style="display: none;">
      <div class="err-msg-block hidden-xs" data-bind="css:{'has-error': $component.formHasError}, visible: !errors().email">&nbsp;</div>
      <div class="err-msg-block" data-bind="visible: errors().email" style="display: none;">
        <span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span>
        <span class="help-block" data-bind="text: errors().email"></span>
      </div>
    </div>
    <input type="email" name="email" class="form-control email-input" placeholder="Email" aria-label="Email" data-bind="value: email, validateInput:'LtrNumCh6', valueUpdate: 'afterkeydown', enterkey: signUp" maxlength="64" autocomplete="email">
  </div>
  <div class="form-group form-item zip-div" data-bind="css: errors().postalCode ? 'has-error' : ''">
    <div data-bind="visible: $component.formHasError" style="display: none;">
      <div class="err-msg-block hidden-xs" data-bind="css:{'has-error': $component.formHasError}, visible: !errors().postalCode">&nbsp;</div>
      <div class="err-msg-block" data-bind="visible: errors().postalCode" style="display: none;">
        <span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span>
        <span class="help-block" data-bind="text: errors().postalCode"></span>
      </div>
    </div>
    <input type="text" name="zip" class="form-control" maxlength="10" placeholder="Zip Code" aria-label="Zip Code" data-bind="value: postalCode, validateInput:'LtrNumCh4', enterkey: signUp" autocomplete="postal-code">
  </div>
  <div class="form-group form-item shopfor-div" data-bind="css: errors().userShopFor ? 'has-error' : ''">
    <div data-bind="visible: $component.formHasError" style="display: none;">
      <div class="err-msg-block hidden-xs" data-bind="css:{'has-error': $component.formHasError}, visible: !errors().userShopFor">&nbsp;</div>
      <div class="err-msg-block" data-bind="visible: errors().userShopFor" style="display: none;">
        <span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span>
        <span class="help-block" data-bind="text: errors().userShopFor"></span>
      </div>
    </div>
    <!-- ko ifnot: isMobileView -->
    <div class="dropup" data-bind="shopForDropdownHandler">
      <button class="btn dropdown-toggle dropdown-control" type="button" id="lightbox-shop-for" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
        <span class="shop-for-text" data-bind="text: shopForText">I typically shop for</span>
        <span class="caret caret-lightbox-down"></span>
      </button>
      <ul class="dropdown-menu" aria-labelledby="lightbox-shop-for">
        <!-- ko foreach: shopForOptions -->
        <!-- ko ifnot: $data.disabled --><!-- /ko -->
        <!-- ko ifnot: $data.disabled -->
        <li><a data-bind="text: $data.text, click: function() { $component.selectShopFor($data, $element); }, clickBubble: false" tabindex="0">Classroom / Organization</a></li>
        <!-- /ko -->
        <!-- ko ifnot: $data.disabled -->
        <li><a data-bind="text: $data.text, click: function() { $component.selectShopFor($data, $element); }, clickBubble: false" tabindex="0">Home</a></li>
        <!-- /ko -->
        <!-- ko ifnot: $data.disabled -->
        <li><a data-bind="text: $data.text, click: function() { $component.selectShopFor($data, $element); }, clickBubble: false" tabindex="0">Both</a></li>
        <!-- /ko -->
        <!-- /ko -->
        <li><a data-bind="text: shopForText" tabindex="0">I typically shop for</a><span class="caret caret-lightbox-up"></span></li>
      </ul>
    </div>
    <!-- /ko -->
    <!-- ko if: isMobileView --><!-- /ko -->
  </div>
  <div class="form-group" data-bind="css: $component.formHasError() ? 'has-error' : ''">
    <span class="err-msg-block hidden-xs" data-bind="visible: $component.formHasError" style="display: none;">&nbsp;</span>
    <!-- BEGIN BUTTON STYLE UPDATE -->
    <div class="ll-btn-container align-right">
      <button class="btn btn-sld-blue ll-btn-md lightbox-cta" type="button" data-bind="clickBubble: false, click: signUp">Sign Up</button>
    </div>
    <!-- END BUTTON STYLE UPDATE -->
  </div>
</form>

<form class="form" novalidate="novalidate" data-bind="submit: login.loginB2C">
  <div class="modal-body">
    <!-- ko if: login.loginError() --><!-- /ko -->
    <!-- ko if: isReview() --><!-- /ko -->
    <div class="form-group" data-bind="css: login.errors().email ? 'has-error' : ''">
      <label for="emailId"><strong>Email</strong></label>
      <input name="email" id="emailId" type="email" class="form-control input-lg email-input" placeholder="" maxlength="64" automation-id="login_email" aria-required="true"
        data-bind="textInput: login.email, validateInput:'LtrNumCh6', valueUpdate: ['afterkeydown','propertychange','input']" aria-describedby="ae-signin-labels-0" autocomplete="email">
      <div class="help-block" data-bind="visible: login.errors().email, html: login.errors().email" id="ae-signin-labels-0" style="display: none;"></div>
    </div>
    <div class="form-group password-input" data-bind="css: login.errors().password &amp;&amp; !login.loginError()? 'has-error' : '', css: { 'mb5' : $component.showLoyaltyModal }">
      <label><strong>Password</strong></label>
      <span class="password-container">
        <input name="password" class="form-control input-lg" placeholder="" maxlength="35" data-bind="textInput: login.password,
                  attr: {'type': showPassword() ? 'text' : 'password'},
                  valueUpdate: 'afterkeydown', 
                  validateInput:'LtrNumCh3'" automation-id="login_pass" type="password" aria-describedby="ae-signin-labels-1" autocomplete="current-password">
        <i class="password-icon hide-icon" data-bind="css: showPassword() ? 'show-icon' : 'hide-icon', click: function(){showPassword(!showPassword())}" role="button" tabindex="0" aria-label="show password"></i>
      </span>
      <div class="help-block red" data-bind="visible: login.errors().password &amp;&amp; !login.loginError() , parsedHTML: login.errors().password" id="ae-signin-labels-1" style="display: none;"></div>
    </div>
  </div>
  <div class="modal-footer pt0">
    <div class="row tight">
      <!-- ko ifnot: $component.showLoyaltyModal -->
      <!-- BEGIN PRE-LOYALTY FOOTER -->
      <div class="logInButton">
        <!-- BEGIN BUTTON STYLE UPDATE -->
        <div class="ll-btn-container align-right">
          <button type="submit" class="btn btn-sld-blue ll-btn-sm " automation-id="login_button">Sign In</button>
        </div>
        <!-- END BUTTON STYLE UPDATE -->
      </div>
      <div class="logInButton">
        <!-- BEGIN BUTTON STYLE UPDATE -->
        <div class="ll-btn-container align-right">
          <button type="button" class="btn btn-sld-gray ll-btn-sm" data-dismiss="modal" automation-id="login_cancel">Cancel</button>
        </div>
        <!-- END BUTTON STYLE UPDATE -->
      </div>
      <div class="logInButton text-left">
        <p data-bind="visible: login.isSearchWishlist()" style="display: none;">
          <a class="modalLink" href="#" style="margin-left: 0px; display: none;" data-bind="visible: login.isSearchWishlist(), clickBubble: false, click: login.openWishlistSearchModal" data-updated="false">Find a List</a>
        </p>
        <!-- ko ifnot: $component.isRevit() -->
        <p class="mb0 hidden"> Don’t have an account?&nbsp; <a class="modalLink" href="#" automation-id="sal_register" s_objectid="global" data-bind="clickBubble: false, click: openRegisterFromLogin">Register now.</a>
        </p>
        <!-- /ko -->
        <a href="" data-dismiss="modal" data-toggle="modal" data-bind="click: login.openForgotPasswordModal">Forgot Password?</a>
      </div>
      <!-- END PRE-LOYALTY FOOTER -->
      <!-- /ko -->
      <!-- ko if: showLoyaltyModal --><!-- /ko -->
    </div>
  </div>
</form>

<form class="form" data-bind="submit: register.registerB2C, css: {'modal-height': isMobileView()}" novalidate="novalidate">
  <div class="modal-header">
    <span class="close-icon" data-dismiss="modal" aria-label="Close" role="button" tabindex="0" data-ae-blurbtype="button">&nbsp;</span>
    <h4 class="modal-title" id="modal-register-label" data-bind="text: register.isGSA() || oldRegisterModal ? 'Register' : 'Create Account'" role="heading" aria-level="2">Register</h4>
  </div>
  <div class="register-modal-container" data-bind="css: {'scroll-area': isMobileView()}">
    <!-- ko if: !isFurnitureTab() && !register.isGSA() && !oldRegisterModal --><!-- /ko -->
    <div>
      <div class="modal-body">
        <!-- ko if: register.errorMessages().length > 0 --><!-- /ko -->
        <!-- ko if: isReview --><!-- /ko -->
        <!-- ko if: register.isGSA() && !oldRegisterModal && !fromFooterLink() && !fromGsaLp() && !isFurnitureTab() --><!-- /ko -->
        <div class="row narrow">
          <div class="alert alert-danger" data-bind="visible: $component.register.additionalInfoRequiredError()" role="alert" aria-live="polite" style="display: none;">
            <span data-bind="html: $component.register.additionalInfoRequiredError()"></span><br>
          </div>
          <div class="form-group col-sm-6" data-bind="css: {'has-error': $component.register.firstNameError()}">
            <label class="required-field-label" for="ae_input_158">First Name</label>
            <input name="firstname" automation-id="reg-firstname" maxlength="40" class="form-control input-lg" type="text" aria-required="true" data-bind="textInput: register.firstName, value: register.firstName,validateInput:'LtrNumCh1'"
              aria-describedby="ae-register-labels-0" id="ae_input_158" autocomplete="given-name">
            <div class="help-block" data-bind="visible: $component.register.firstNameError(), text: $component.register.firstNameError()" id="ae-register-labels-0" style="display: none;"></div>
          </div>
          <div class="form-group col-sm-6" data-bind="css: {'has-error': $component.register.lastNameError()}">
            <label class="required-field-label" for="ae_input_719">Last Name</label>
            <input name="lastname" automation-id="reg-lastname" maxlength="40" class="form-control input-lg" type="text" aria-required="true" data-bind="textInput: register.lastName, value: register.lastName,validateInput:'LtrNumCh1'"
              aria-describedby="ae-register-labels-1" id="ae_input_719" autocomplete="family-name">
            <div class="help-block" data-bind="visible: $component.register.lastNameError(), text: $component.register.lastNameError()" id="ae-register-labels-1" style="display: none;"></div>
          </div>
        </div>
        <div class="row narrow">
          <div class="form-group" data-bind="css: {'has-error': $component.register.emailError()}">
            <label class="required-field-label" for="ae_input_322">Email</label>
            <input name="email" type="email" maxlength="64" automation-id="email_signup_modal" class="form-control input-lg email-input" aria-required="true" data-bind="textInput: register.email, value: register.email,validateInput:'LtrNumCh6'"
              aria-describedby="ae-register-labels-2" id="ae_input_322" autocomplete="email">
            <div class="help-block" data-dismiss="modal" data-bind="visible: $component.register.emailError(), parsedHTML: $component.register.emailError()" id="ae-register-labels-2" style="display: none;"></div>
          </div>
        </div>
        <div class="row narrow">
          <!-- ko component: {
									name: 'password-input',
									params: {
										containerClass: 'col-xs-12',
										input: $component.register.password,
										errorMsg: $component.register.passwordError,
										automationId: 'reg-password'
									}
								} -->
          <div class="password-input form-group col-xs-12" data-bind="css: containerClass, css: {'has-error': errorMsg() &amp;&amp; (isServerMsg() || !isValid())}">
            <!-- ko if: enhancedPasswordEnabled -->
            <div class="pos-rel">
              <a class="display-block" data-bind="attr: {id: popoverId}, 
							popover: { options: { placement: 'top', trigger: 'click'}, template: 'passSecuritypopoverTemplate'}" id="security-msg-31397" data-original-title="" title="" tabindex="0"></a>
              <script type="text/html" id="passSecuritypopoverTemplate">
                <div class="row">
                  <div class="col-sm-12 passSecurityMsg">
                    <span class="close-btn">
                      <span class="ls-icon icn-x-close-lgt" type="button" data-dismiss="popover" data-bind="click: function(){$component.closedByUser(true) }"></span>
                    </span>
                    <!-- ko html: $component.passSecurityMsg --><!-- /ko -->
                  </div>
                </div>
              </script>
            </div>
            <!-- /ko -->
            <label class="required-field-label" data-bind="text: label, visible: !hideLabel">Password</label>
            <span class="password-container">
              <input name="password" maxlength="35" class="password-field form-control input-lg" aria-required="true" autocomplete="off" data-bind="textInput: input,
							initPassword, 
							valueUpdate: 'afterkeydown',
							validateInput:'LtrNumCh3', 
							enterkey: function(){enterkeyFn ? enterkeyFn($parent) : (function() {return true;})},
							css: {'input-lg': !defaultInputSize},
							enable: inputEnabled,
							attr: {
								'type': showPassword() ? 'text' : 'password',
								'id': inputId,
								'placeholder': inputPlaceholder,
								'automation-id': automationId
							}" type="password" id="" placeholder="" automation-id="reg-password" aria-describedby="ae-register-labels-3">
              <i class="password-icon small mb0 hide-icon" data-bind="css: showPassword() ? 'show-icon' : 'hide-icon', click: function(){showPassword(!showPassword())}" role="button" tabindex="0" aria-label="show password"></i>
            </span>
            <div class="help-block lh17 mb0" data-bind="parsedHTML: errorMsg(), visible: errorMsg() &amp;&amp; (isServerMsg() || !isValid()),
					css: {'tiny': !inputEnabled()}, style: {'max-width': !inputEnabled() ? '85%' : null}" style="display: none;" id="ae-register-labels-3"></div>
            <div class="password-prompts" data-bind="slideVisibleSlow: showPrompts, css: {'mt4': errorMsg() &amp;&amp; (isServerMsg() || !isValid())}" style="display: none;">
              <p class="prompt" data-bind="css: !emptyInput() ? (validLength() ? 'green' : 'black') : ''">
                <span class="ls-icon med-gray icn-x-close-hvy-circle" data-bind="css: {'med-gray': emptyInput(), 'icn-x-close-hvy-circle': emptyInput() || !validLength(), 'icn-check-sld-circle': validLength()}"></span>
                <span class="prompt-text" data-bind="text: 'Minimum ' + (enhancedPasswordEnabled ? 10 : 8) + ' characters'">Minimum 10 characters</span>
              </p>
              <!-- ko if: enhancedPasswordEnabled -->
              <p class="prompt" data-bind="css: !emptyInput() ? (uLetterIncluded() ? 'green' : 'black') : ''">
                <span class="ls-icon med-gray icn-x-close-hvy-circle" data-bind="css: {'med-gray': emptyInput(), 'icn-x-close-hvy-circle': emptyInput() || !uLetterIncluded(), 'icn-check-sld-circle': uLetterIncluded()}"></span>
                <span class="prompt-text">Minimum one uppercase letter</span>
              </p>
              <p class="prompt" data-bind="css: !emptyInput() ? (lLetterIncluded() ? 'green' : 'black') : ''">
                <span class="ls-icon med-gray icn-x-close-hvy-circle" data-bind="css: {'med-gray': emptyInput(), 'icn-x-close-hvy-circle': emptyInput() || !lLetterIncluded(), 'icn-check-sld-circle': lLetterIncluded()}"></span>
                <span class="prompt-text">Minimum one lowercase letter</span>
              </p>
              <!-- /ko -->
              <!-- ko ifnot: enhancedPasswordEnabled --><!-- /ko -->
              <p class="prompt" data-bind="css: !emptyInput() ? (numberIncluded() ? 'green' : 'black') : ''">
                <span class="ls-icon med-gray icn-x-close-hvy-circle" data-bind="css: {'med-gray': emptyInput(), 'icn-x-close-hvy-circle': emptyInput() || !numberIncluded(), 'icn-check-sld-circle': numberIncluded()}"></span>
                <span class="prompt-text" data-bind="text: enhancedPasswordEnabled ? 'Minimum one number' : 'Must include one number'">Minimum one number</span>
              </p>
              <!-- ko if: enhancedPasswordEnabled -->
              <p class="prompt" data-bind="css: !emptyInput() ? (specialChrIncluded() ? 'green' : 'black') : ''">
                <span class="ls-icon med-gray icn-x-close-hvy-circle" data-bind="css: {'med-gray': emptyInput(), 'icn-x-close-hvy-circle': emptyInput() || !specialChrIncluded(), 'icn-check-sld-circle': specialChrIncluded()}"></span>
                <span class="prompt-text"><span class="pr5">Minimum one special character:</span><span>`~!@#$%^*()-_=+|;:,.?</span></span>
              </p>
              <p class="prompt" data-bind="css: !emptyInput() ? (spaceIncluded() ? 'black' : 'green') : ''">
                <span class="ls-icon med-gray icn-x-close-hvy-circle icn-check-sld-circle" data-bind="css: {'med-gray': emptyInput(), 'icn-x-close-hvy-circle': emptyInput() || spaceIncluded(), 'icn-check-sld-circle': !spaceIncluded()}"></span>
                <span class="prompt-text">No spaces</span>
              </p>
              <p class="strength-bar-title bold">
                <span>Strength: </span><span class="capitalize-text" data-bind="text: passwordStrength"></span>
              </p>
              <p id="strength-bar" data-bind="class: passwordStrength">
                <span class="bar1"></span>
                <span class="bar2"></span>
                <span class="bar3"></span>
              </p>
              <!-- /ko -->
              <span style="display:none;" class="ae-compliance-indent" id="ae-password-label"> - Minimum 10 characters Minimum one uppercase letter Minimum one lowercase letter Minimum one number Minimum one special character:`~!@#$%^*()-_=+|;:,.?
                Minimum one special character: `~!@#$%^*()-_=+|;:,.? No spaces </span>
            </div>
          </div><!-- /ko -->
        </div>
        <!-- ko if: !register.isGSA() && !oldRegisterModal --><!-- /ko -->
        <div class="row narrow">
          <div class="form-group" data-bind="css: {'has-error': register.userShopForError()}">
            <div class="row narrow">
              <div class="col-sm-12">
                <label class="required-field-label mb0" data-bind="text: register.shopForText, css: {'mb0': !$component.isMobileView()}" id="ae-register-modal-radio-label">I typically shop for:</label>
              </div>
            </div>
            <div class="row narrow user-type" role="radiogroup" aria-required="true">
              <label class="radio-control" for="ae_input_152">
                <input type="radio" name="userShopFor" data-bind="checked: register.userShopFor" value="classroom" automation-id="shop-for-class" aria-describedby="ae-register-labels-4" id="ae_input_152">
                <div class="radio-indicator"></div>
                <span>Classroom/Organization</span>
              </label>
              <label class="radio-control" for="ae_input_894">
                <input type="radio" name="userShopFor" data-bind="checked: register.userShopFor" value="home" automation-id="shop-for-home" aria-describedby="ae-register-labels-4" id="ae_input_894">
                <div class="radio-indicator"></div>
                <span>Home</span>
              </label>
              <label class="radio-control" for="ae_input_593">
                <input type="radio" name="userShopFor" data-bind="checked: register.userShopFor" value="all" automation-id="shop-for-both" aria-describedby="ae-register-labels-4" id="ae_input_593">
                <div class="radio-indicator"></div>
                <span>Both</span>
              </label>
            </div>
            <div class="help-block" data-bind="visible: register.userShopForError(), html: register.userShopForError()" id="ae-register-labels-4" style="display: none;"></div>
          </div>
        </div>
        <!-- ko if: !register.isGSA() || oldRegisterModal -->
        <div class="row narrow mt3">
          <div class="form-group col-sm-12 accept-tc" data-bind="css: {'mb0': isReview}, visible: !register.isGSA() || oldRegisterModal">
            <label class="accept-tc-label checkbox-control pl0" data-bind="css: {'mb0': isReview}" for="ae_input_741">
              <input type="checkbox" name="emailOptIn" data-bind="checked: register.emailOptIn" automation-id="emailOptIn" aria-required="true" aria-describedby="ae-register-labels-5" id="ae_input_741">
              <div class="radio-indicator"></div>
              <span data-bind="html: register.emailOptInText">Yes, I would like to receive news and promotions via&nbsp;email.</span>
            </label>
            <div class="help-block red" data-bind="parsedHTML: $component.register.termsError(), 
											visible: $component.register.termsError()" id="ae-register-labels-5" style="display: none;"></div>
          </div>
        </div>
        <!-- /ko -->
        <!-- ko if: register.staySignedInIsActive -->
        <div class="row narrow">
          <div class="col-xs-12 stay-logged-in" data-bind="css: {'stay-logged-in': register.staySignedInIsActive}">
            <div class="flex-left v-align-center">
              <label class="control checkbox-control v-align-center" for="ae_input_788">
                <input type="checkbox" name="staySignedIn" automation-id="staySignedIn" class="mt0 static" data-bind="checked: register.staySignedIn" id="ae_input_788">
                <span class="small ml4" data-bind="html: $component.stayLoggedInText">Keep me signed in</span>
                <div class="radio-indicator top0"></div>
              </label>
              <a tabindex="0" class="ll-black ml5 pb3" data-bind="popover: { options: { placement: 'auto', trigger: 'focus' }, template: 'popoverStaySignedIn' }" data-original-title="" title="">
												<span class="ls-icon icn-help-otl fs14 mt-1 display-inline-block"></span>
											</a>
              <script type="text/html" id="popoverStaySignedIn">
                <div class="row">
                  <div class="col-sm-12">
                    <a class="close-icon pull-right" type="button" data-dismiss="popover"></a>
                    <p class="small-copy" data-bind="html: $component.stayLoggedInInfo">
                    </p>
                  </div>
                </div>
              </script>
            </div>
            <p class="small fs11 mb0 lh13">Keep unchecked if using a public device or public Wi-Fi.</p>
          </div>
        </div>
        <!-- /ko -->
      </div><!-- end modal-body -->
      <div class="modal-footer pt0" data-bind="css: {'pt0': oldRegisterModal}">
        <div class="row tight" data-bind="css: {'mb5': isReview,  'mb20':isSweepstakes}">
          <!-- ko if: oldRegisterModal -->
          <div class="col-sm-6 text-left pl0 mt15" data-bind="css: isMobileView() ? 'mb15 pl0':'pl0 mt15'">
            <a id="privacy-link" class="fs13" href="/about/privacy-policy/">See Privacy Policy</a>
          </div>
          <div class="col-sm-6 button-group">
            <div class="logInButton text-left">
              <!-- BEGIN BUTTON STYLE UPDATE -->
              <div class="ll-btn-container align-left">
                <button type="button" class="btn btn-sld-gray ll-btn-sm" data-dismiss="modal">Cancel</button>
              </div>
              <!-- END BUTTON STYLE UPDATE -->
            </div>
            <div class="logInButton text-right">
              <!-- BEGIN BUTTON STYLE UPDATE -->
              <div class="ll-btn-container align-left">
                <button type="submit" data-bind="clickBubble: false" class="btn btn-sld-blue ll-btn-sm" automation-id="register_button">Register</button>
              </div>
              <!-- END BUTTON STYLE UPDATE -->
            </div>
          </div>
          <!-- ko if: !(isReview && isSweepstakes && isFurnitureTab()) -->
          <div class="col-xs-12 is-gsa-checkbox text-left pr0" data-bind="css: {'pr0': !isMobileView()}">
            <label class="checkbox-control is-gsa-checkbox-label" data-bind="css: {'text-center': isMobileView()}" for="ae_input_874">
              <input type="checkbox" name="isGSA" data-bind="checked: register.isGSA" id="ae_input_874">
              <div class="radio-indicator"></div>
              <span>I am a GSA member</span>
            </label>
          </div>
          <!-- /ko -->
          <!-- ko if: isFurnitureTab() --><!-- /ko -->
          <!-- /ko -->
          <!-- ko ifnot: oldRegisterModal --><!-- /ko -->
        </div>
      </div>
    </div>
  </div>
</form>

<form class="form" novalidate="novalidate">
  <div class="modal-content">
    <div class="modal-header">
      <span class="close-icon" data-dismiss="modal" aria-label="Close" role="button" tabindex="0" data-ae-blurbtype="button">&nbsp;</span>
      <h4 class="modal-title" id="modal-password-label" data-bind="text: resetPass() ? 'Reset Password' : 'Forgot Password?'" role="heading" aria-level="2">Forgot Password?</h4>
    </div>
    <div class="modal-body" id="passwordReset-area" data-bind="css: {'pt30 pb30': resetPassCompleted()}">
      <div class="compact-text-2 mb10" data-bind="visible: modalBodyText().length, 
											parsedHTML: modalBodyText(),
											css: {'mb10': !resetPassCompleted()}">Please enter your email address, and we’ll send you instructions for resetting your password. If you do not receive an email, the email address you provided may not be registered.</div>
      <div class="row narrow" data-bind="visible: !resetPassCompleted()">
        <!-- ko ifnot: inputName() === 'password' -->
        <div class="form-group mb0" data-bind="css: {'has-error': formHasError}">
          <label class="required-field-label" data-bind="text: inputLabel" for="ae_input_159">Email</label>
          <input class="form-control input-lg email-input" maxlength="64" aria-required="true" data-bind="attr: {'name': inputName(), 'type': inputType()}, 'automation-id': ('reset_pass_' + inputName()), 
														textInput: $component[inputName()], 
														enterkey: submitRequest,
														validateInput:'LtrNumCh6'" name="email" type="email" aria-describedby="ae-password-error-message" autocomplete="email" id="ae_input_159">
          <div class="help-block" data-bind="visible: errorMessages()[inputName()], parsedHTML: errorMessages()[inputName()]" style="display: none;" id="ae-password-error-message"></div>
        </div>
        <!-- /ko -->
        <!-- ko if: inputName() === 'password' --><!-- /ko -->
      </div>
    </div>
    <div class="modal-footer pt5" data-bind="visible: !resetPassCompleted()">
      <div class="row tight">
        <div class="col-xs-12 button-group">
          <div class="logInButton text-right">
            <!-- BEGIN BUTTON STYLE UPDATE -->
            <div class="ll-btn-container align-right">
              <button type="button" class="btn btn-sld-gray ll-btn-sm" data-dismiss="modal" automation-id="reset_pass_cancel" data-bind="enable: !submitInProgress()">Cancel</button>
            </div>
            <!-- END BUTTON STYLE UPDATE -->
          </div>
          <div class="logInButton text-right">
            <!-- BEGIN BUTTON STYLE UPDATE -->
            <div class="ll-btn-container align-right">
              <button type="button" data-bind="clickBubble: false, click: submitRequest, enable: !submitInProgress()" class="btn btn-sld-blue ll-btn-sm" automation-id="reset_pass_button">Submit</button>
            </div>
            <!-- END BUTTON STYLE UPDATE -->
          </div>
        </div>
      </div>
    </div>
  </div>
</form>

<form class="form">
  <div class="modal-header" data-bind="style: { display: 'flex' }" style="display: flex;">
    <span class="close-icon" tabindex="0" data-dismiss="modal" aria-label="Close" role="button" data-ae-blurbtype="button">&nbsp;</span>
    <h4 class="modal-title" id="store-locator-label" role="heading" aria-level="2">Find Another Store</h4>
  </div>
  <div class="modal-body pt15 pb0">
    <div class="row">
      <div class="col-md-12 col-xs-12">
        <h2>Choose a Location</h2>
      </div>
    </div>
    <!-- ko component: {
									name: 'store-selector-content', 
									params: { parentType: 'modal' }
								} -->
    <div class="row pb20" data-bind="css:{'pt25': parentType==='popover'}">
      <div class="col-xs-7 col-md-5 pr0">
        <input type="text" class="form-control" placeholder="Enter Zip Code" aria-label="Enter Zip Code" name="store-selector" id="store-selector" data-bind="value: zipCode, validateInput:'NumCh9'" maxlength="10" aria-required="true">
      </div>
      <div class="col-xs-5 col-md-3 serach-zip-submit">
        <div class="ll-btn-container align-left inline">
          <button class="btn btn-sld-blue ll-btn-sm inline-xs" type="submit" data-bind="click: $component.findStoresByZip">Search</button>
        </div>
      </div>
    </div>
    <div class="pb20" data-bind="visible: $component.errorMessages().length > 0" style="display: none;">
      <!-- ko foreach: $component.errorMessages --><!-- /ko -->
    </div>
    <!-- BEGIN SEARCH RESULTS -->
    <div class="storeSelectModal mr-20" data-bind="visible: showStoresSection, css: {'mr-20': $component.parentType === 'modal'}" style="display: none;">
      <!-- ko foreach: stores --><!-- /ko -->
    </div>
    <!-- END SERACH RESULTS --><!-- /ko -->
  </div>
</form>

<form class="footer-email" data-bind="css: {'mb5': emailError().length}">
  <label for="footer-email" class="sr-only">enter your email address</label>
  <input class="form-control email-input" name="footer-email" id="footer-email" type="email" data-bind="textInput: emailValue, 
							attr: { placeholder: placeholder, aria-label: placeholder }, 
							validateInput:'LtrNumCh6', 
							valueUpdate: 'afterkeydown', 
							enterkey: singUpPreFilledEmail" placeholder="enter your email" aria-label="enter your email" maxlength="64" aria-describedby="ae-emailerror-label">
  <div class="ll-btn-container align-right inline subscribe-cta">
    <button data-bind="click: singUpPreFilledEmail" id="btnJoin" tabindex="0" class="btn btn-sld-blue ll-btn-sm btn-cta">Join</button>
  </div>
</form>

Text Content

This website is AudioEye enabled and is being optimized for accessibility. To
open the AudioEye Toolbar, press "shift + =". Some assistive technologies may
require the use of a passthrough function before this keystroke. For more
information, activate the button labeled “Explore your accessibility options”.

Skip To Main Content
ll
false
Guest

si7
1.240710.1.14.7.1
1
blue

Bots Only

Explore our BIG Back to School Sale in stores & online! Everything you need for
your haul!

Lakeshore Lakeshore Furniture

Explore our BIG Back to School Sale in stores & online! Everything you need for
your haul!

 

REWARDS TERMS & CONDITIONS

Last Revised: June 21, 2024

THE LAKESHORE® REWARDS TERMS AND CONDITIONS

IF YOU CHOOSE TO PARTICIPATE IN THE LAKESHORE REWARDS PROGRAM, THESE TERMS AND
CONDITIONS FORM A BINDING CONTRACT BETWEEN YOU AND LAKESHORE LEARNING MATERIALS,
LLC (“LAKESHORE”). YOU AGREE TO ACCEPT THESE LAKESHORE REWARDS TERMS AND
CONDITIONS AND ACKNOWLEDGE THAT YOU HAVE READ, UNDERSTAND, AND CONSENT TO THE
LAKESHORE PRIVACY POLICY WHICH IS INCORPORATED INTO AND PART OF THIS CONTRACT.
YOUR CONTINUED PARTICIPATION IN THE PROGRAM AFTER WE MAKE CHANGES TO THE PROGRAM
OR TO THESE TERMS AND CONDITIONS SIGNIFIES YOUR ACCEPTANCE OF SUCH CHANGES. 

NO PURCHASE IS NECESSARY TO BECOME A LAKESHORE REWARDS MEMBER.

The Lakeshore Rewards Program (the “Program”) is offered exclusively by
Lakeshore (also referred to as “we,” “our,” or “us”). Members (also referred to
as “you” or “your”) participating in the Program agree to be bound by these
Lakeshore Rewards Terms and Conditions (“Program Terms”), as they may change
from time to time. Once enrolled into the Program, you will enter at
the VIP Status Level and are entitled to the benefits of membership as set out
herein or in promotional materials at that Status Level. See below for more
details on the Program, benefits, and unlocking Status Levels.

You are responsible for reading, understanding, and remaining knowledgeable of
the Program Terms, any Program rule changes, account statements, available
benefits and rewards, the Lakeshore Privacy Policy, and other communications
from Lakeshore in order to understand your rights, responsibilities, and status
in the Program. If you have questions about the Program or these Program Terms,
you should contact Customer Service at (800) 428-4414.

Eligibility and Enrollment

The Program is open to individual natural persons who are legal residents of the
50 United States and who as of the date of their enrollment in the Program are
at least eighteen (18) years of age. International distributors,
business-to-business accounts, organizational accounts (regardless of payment
method, including, but not limited to, purchase order, credit card, or with
billing terms), and employees of Lakeshore are not eligible to participate in
the Program.

An eligible individual may enroll in the Program by fully and accurately
providing applicable information on the Lakeshore website at
www.lakeshorelearning.com/rewards, in store, or through other channel(s), if
available. Lakeshore may deny or cancel membership in the Program to any
enrollee at its sole discretion and without written notice.

The Program benefits and rewards are nontransferable unless expressly stated
otherwise. A member’s account is nontransferable and any such attempt to
transfer or assign such account shall be null and void. Upon the death of a
member, the member’s account will be closed and any benefits, points, Lakeshore
Bucks, or other rewards in the account will be forfeited

The date on which you enroll in the Program is your “Anniversary” date. You can
log in to your account at www.lakeshorelearning.com to view your Anniversary
date, update your contact information, check your Status Level, and otherwise
manage your Program account.

Benefits of Membership

Members will receive exclusive benefits, such as Lakeshore Rewards Points
(“Points”), Lakeshore Bucks (“Lakeshore Bucks”), discounted shipping, select
in-store discounts, services, and event access. Generally, communication
regarding the Program, your Program account, benefits, and promotions will be
sent to you via email. Because Program communications are generally sent via
email, you are responsible for ensuring we have your most recent and accurate
email address. Lakeshore is not responsible for communications, offers, or
rewards sent to out-of-date email addresses.

Membership Status Levels

Upon reaching certain milestones, members will unlock a higher membership Status
Level (“Status Level”) with additional benefits and rewards based on the Points
accumulated as determined by qualifying net spend (“QNS”) made at a Lakeshore
store or online at lakeshorelearning.com (collectively referred to as “Lakeshore
Locations”). The VIP Gold Status Level is unlocked once the minimum Points as
set out below are achieved:

 * VIP – no minimum Points
 * VIP Gold  – minimum of 1,000 Points

The minimum Points in the amount identified above must be achieved within twelve
(12) months of your Anniversary date (an “Anniversary Year”). Once the minimum
Points are achieved, you will maintain the Status Level through your next
Anniversary date and will enter the next Anniversary Year at that Status Level.

Earn Points

To receive Points when you make a purchase in a Lakeshore store, you must
self-identify as a Program member during checkout by providing the store
associate with the email address or mobile phone number associated with your
Program account. To receive Points for purchases you make on Lakeshore’s
website, you must check out while signed in to your Program account.

All dollar amounts referred to in these Program rules are in U.S. Dollars.

BASE POINTS: Based on your Status Level, you will receive a designated number of
Points for every $1 of QNS. Some exclusions apply and certain products and
services do not qualify to earn Points. Excluded products or services will be
identified in store or in the product description online. You are responsible
for reviewing all applicable product or service descriptions and promotional
materials to determine whether a purchase is qualified to earn Points.

            VIP Members will receive three (3) Points for each $1 of QNS; and

            VIP Gold Members will receive four (4) Points for each $1 of QNS.

The QNS is calculated based on the purchase amount for qualifying purchases
after all returns, refunds, credits, discounts, coupons, taxes, shipping,
redeemed Lakeshore Bucks or Lakeshore Gift Cards, and Lakeshore Gift Card
purchases have been deducted from the purchase amount, rounded up to the nearest
dollar.

Points received for items that are returned will be deducted from your Points
balance. If any deduction puts your Program account into a negative Points
balance, you will not be eligible to receive Lakeshore Bucks.

It can take up to two (2) business days from the date of a purchase, return, or
other transaction involving Points for your updated Points balance to be
reflected in your account.

BONUS POINTS: From time to time, Lakeshore will offer the opportunity to earn
bonus Points. The promotional materials may identify additional qualifying
events, exclusions, and restrictions. Certain products may be excluded and/or
limit promotional bonus Points opportunities. Generally, you will be notified of
any bonus Point promotions by email.

INTERACTION POINTS: Points can be earned for a variety of non-transaction
interactions you participate in. For example:

Program Rewards

Interaction Type

Points

Maximum

Rate a product or write a product review[i]

100

Maximum of five (5) reviews within a 90-day period

Complete your extended account profile[ii]

200

One time only

Someone else purchases from your registry

20

Maximum of five (5) eligible purchases from your registry within a 90-day period

Refer-A-Friend [iii]

200

Five (5) per 90-day period

Join the Program through a Refer-A-Friend Link

200

One time only

EXPIRATION: If there are no Points earned on your account for at least twelve
(12) months, all Points in your account will expire on the date that is twelve
(12) months from the last date on which you earned any Points.

Earn Lakeshore Bucks

Upon reaching certain Point accumulation thresholds, you will be eligible to
convert your Points into Lakeshore Bucks. Lakeshore Bucks can be used to obtain
an enumerated discount on qualifying purchases at Lakeshore Locations.

LAKESHORE BUCKS: Points may be converted to Lakeshore Bucks in $5 increments
starting at 500 Points, which can be converted to $5 Lakeshore Bucks (1,000
Points converted to $10 Lakeshore Bucks, 2,000 Points converted to $20 Lakeshore
Bucks). The threshold number of Points for conversion to Lakeshore Bucks and the
timing of the conversion of Points to Lakeshore Bucks may vary from time to
time, at Lakeshore’s sole discretion. Lakeshore Bucks may be combined with each
other and with available valid coupons and promotions offers. In order to
convert Points to Lakeshore Bucks, you must log in to your Lakeshore account and
convert the applicable Points. 

BONUS LAKESHORE BUCKS: From time to time, Lakeshore may offer the opportunity to
earn Bonus Lakeshore Bucks, which may have exclusions and restrictions as
outlined in the applicable promotional materials. Generally, Lakeshore will
notify you of any Bonus Lakeshore Bucks promotions via the email address
associated with your Program account.

REDEEMING LAKESHORE BUCKS: When you redeem Lakeshore Bucks to purchase a
qualifying product or service, the value of the Lakeshore Bucks will be applied
against the total purchase price, including applicable taxes and shipping fees,
if any. Lakeshore Bucks may not be used as payment on a Lakeshore business or
organizational account or to purchase Lakeshore Gift Cards. The full value of
your Lakeshore Bucks must be used in one transaction; any unused value is
forfeited. Lakeshore Bucks cannot be split, and no change is returned to your
account for any unused value. To use Lakeshore Bucks on a qualifying purchase,
you must self-identify as a Program member during checkout in store and let the
associate know that you want to use Lakeshore Bucks for the transaction, or
check out online when logged in to your Program account and select the Lakeshore
Bucks that you want to use. Lakeshore Bucks cannot be applied to any previous
purchases.

RETURNS: If you return any products or services that were purchased with
Lakeshore Bucks, you will not receive any replacement Lakeshore Bucks or cash
credit for the Lakeshore Bucks that were used during the original purchase.

EXPIRATION: Lakeshore Bucks expire thirty (30) days from the date of conversion
from Points to Lakeshore Bucks. Bonus Lakeshore Bucks expire on the date
specified in the promotional materials. You can determine when any Lakeshore
Bucks or Bonus Lakeshore Bucks expire by checking your Program account.

No Cash Value

Points and Lakeshore Bucks have no cash value and cannot be exchanged for cash
or credit. You have no ownership interest in the Program, Points, or Lakeshore
Bucks, and they do not constitute property. The use of the word “earn” or
similar language in marketing materials in relation to the Program does not
imply that the Points or Lakeshore Bucks have any value. Points and Lakeshore
Bucks may not be purchased or sold and are not transferable except as otherwise
stated here.

 

Additional Program Benefits

You are eligible for certain Program benefits based on your Status Level. These
benefits must be used in the Anniversary Year in which they are awarded, and any
unused benefits will be forfeited at 11:59 pm, PT, on the last day of the
Anniversary Year in which they were awarded. At the beginning of the next
Anniversary Year, the available benefits will be renewed based on the Status
Level achieved at the end of the previous membership year. If you advance to the
VIP Gold Status Level during that year, you will be entitled to the benefits for
the VIP Gold Status Level. You are only eligible for one Birthday Gift or one
Special Event Gift (we will select the gift at our discretion) in an Anniversary
Year, regardless of whether or not you advance in Status Level or become or
cease being a teacher during that year.

These additional annual benefits are as outlined here:

Additional Program Rewards

Benefits

VIP Status Level

VIP Gold Status Level

In-Store-Only Perks

 * 15% off select items marked in store
 * $0.10-per-foot discount on lamination

 * 15% off select items marked in store
 * $0.10-per-foot discount on lamination

Standard Shipping Benefit

$6.99 flat rate ground shipping (see “Standard Shipping Benefit” below for
details)

$4.99 flat rate ground shipping (see “Standard Shipping Benefit” below for
details)

Birthday Gift or Special Event Gift (as applicable)[iv]

✔

✔

Exclusive Promotions

✔

✔

 

Standard Shipping Benefit

VIP Members will receive standard ground shipping on qualifying purchases at
$6.99 for orders shipped to a single address in the contiguous United States
(i.e., excluding Hawaii and Alaska). The benefit does not apply to
shipping-restricted items as indicated on lakeshorelearning.com (e.g.,
furniture, paint, large/heavy items, etc.).

VIP Gold Members will receive standard ground shipping on qualifying purchases
at $4.99 for orders shipped to a single address in the contiguous United States
(i.e., excluding Hawaii and Alaska). The benefit does not apply to
shipping-restricted items as indicated on lakeshorelearning.com (e.g.,
furniture, paint, large/heavy items, etc.).

The standard shipping benefit is not valid on international shipping or
shipping-restricted items. You must check out with a valid Lakeshore Program
account to receive the standard shipping benefit. The standard shipping benefit
has no cash value. Purchases made before you became a Program member or while
you were not logged in to your Program account are not eligible for the standard
shipping benefit.

 

Additional Terms of Participation

General Provisions

These Program Terms supersede all previous terms and conditions applicable to
the Program. All Program benefits, offers, rewards, and services are subject to
availability and change. Except as otherwise expressly prohibited or limited by
applicable laws, Lakeshore may at any time amend, modify, supplement, or
terminate the Program, these Program Terms, the structure for earning Points or
Lakeshore Bucks, or advancing Status Level(s), even though such changes may
affect the value of Points, or the ability to obtain certain benefits or Points,
or to redeem Lakeshore Bucks. If the Program is terminated, all unredeemed
benefits will be forfeited without any obligation or liability and will not be
honored upon termination or after the conclusion of the notice period, if any.
In all matters relating to the administration of the Program, the decisions of
Lakeshore will be final. 

We reserve the right to cancel or suspend your participation in the Program in
the event of fraud, abuse of privileges or the Program, violation of these
Program Terms or any applicable laws, or at our discretion for any reason or no
reason at all. Any Points or Lakeshore Bucks in your account will become void at
the time of cancellation. We may revoke some or all of your Lakeshore Bucks if
we determine that you received Lakeshore Bucks due to an error, through fraud or
deception, or in any manner not authorized.

The Program is not available and is void where prohibited by federal, state, or
local law or regulation.

Other terms and conditions may apply to the Program, the Points, and/or
Lakeshore Bucks. It is your responsibility to read all applicable promotional
materials.

You are responsible for any tax liability related to your participation in the
Program, use of Points, or redemption of Lakeshore Bucks.

Privacy

Personal information that you provide to Lakeshore in connection with the
Program will be handled in accordance with Lakeshore’s Privacy Policy, available
at www.lakeshorelearning.com/about/privacy-policy. When you enroll in the
Program and provide us your email address, you are opting in to receive
marketing emails from us. You may change your marketing email preferences at any
time by clicking on the link found at the bottom of our marketing emails. You
will, however, continue to receive transactional messages from us regarding the
Program.

Severability

If any provision of these Program Terms or the application of any such provision
to any person or circumstance is held invalid, illegal, or unenforceable for any
reason whatsoever, the remaining provisions of these Program Terms and the
application of such provisions to other persons or circumstances shall not be
affected. To the fullest extent possible, the court finding any provision
invalid, illegal, or unenforceable shall modify and construe the provision so as
to render it valid and enforceable as against all persons or entities and to
give the maximum possible protection to persons subject to indemnification
within the bounds of validity, legality, and enforceability.

No Waiver

Lakeshore’s failure to insist upon or enforce strict compliance with any
provision of these Program Terms shall not be construed as a waiver of any
provision or right and will not prevent us from enforcing such right or
provision in the future. Nothing in these Program Terms will limit Lakeshore
from exercising any legal rights or remedies that it may have.

Headings

The headings for each of these Program Terms are for convenience of reference
only. Such headings shall be ignored in the interpretation or construction of
any of these Program Terms.

Complete Understanding

These Program Terms and the Privacy Policy referenced herein constitute the
entire understanding between you and Lakeshore with respect to the Program.

Errors or Inconsistencies

Despite our best efforts to ensure accuracy, errors occasionally occur. We
reserve the right to correct such errors at any time even if it affects pending
benefits, rewards, Points, or Lakeshore Bucks in your account. In the event of
any inconsistency or discrepancy between the Program Terms or other statements
contained in any related materials or advertising, the terms of the then-current
Program Terms shall prevail, govern, and control.

Disputes over Account Control

If there is a dispute regarding control of an account, the person controlling
the account will be deemed to be the natural person who is assigned to the email
address and/or phone number associated with the account based upon the records
of a phone company, an Internet provider, an online service provider, or other
organization that is responsible for assigning email addresses or phone numbers,
subject to Lakeshore’s sole discretion (although it has no responsibility to do
so) to conclude that fraud or other deceptive activity occurred in relation to
the account and to take any steps it deems appropriate at its sole discretion
(but without any obligation).

Cancellation of Membership

You must maintain an active Program membership to earn and retain Points. You
may opt out of the Program at any time and close your account by contacting our
Customer Service department. Deciding to close your account is final and will
result in a deletion of all accrued Points and/or Lakeshore Bucks, which cannot
be recovered once you decide to delete your account.

Limitations of Liability and Damages

EXCEPT AS OTHERWISE EXPRESSLY PROVIDED, THE PROGRAM AND ALL PRODUCTS AND
SERVICES ARE PROVIDED ON AN “AS IS” BASIS. LAKESHORE DISCLAIMS ALL WARRANTIES OF
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AND THOSE
ARISING OUT OF A COURSE OF DEALING OR USAGE OF TRADE. LAKESHORE DOES NOT WARRANT
THAT THE PROGRAM WILL BE UNINTERRUPTED OR ERROR-FREE.

YOUR PARTICIPATION IN THE PROGRAM IS AT YOUR OWN RISK. NEITHER LAKESHORE NOR ITS
AFFILIATED OR RELATED ENTITIES OR ITS VENDORS OR CONTENT PROVIDERS SHALL BE
LIABLE TO ANY PERSON OR ENTITY FOR ANY DIRECT OR INDIRECT LOSS, DAMAGE (WHETHER
ACTUAL, CONSEQUENTIAL, PUNITIVE, SPECIAL, OR OTHERWISE), INJURY, CLAIM, OR
LIABILITY OF ANY KIND OR CHARACTER WHATSOEVER BASED UPON OR RESULTING FROM YOUR
PARTICIPATION IN OR INABILITY TO PARTICIPATE IN THE PROGRAM.

YOU AGREE TO INDEMNIFY, DEFEND, AND HOLD LAKESHORE AND ITS SHAREHOLDERS,
OFFICERS, DIRECTORS, EMPLOYEES, AGENTS, DISTRIBUTORS, VENDORS, AND AFFILIATES
HARMLESS FROM AND AGAINST ANY AND ALL THIRD-PARTY CLAIMS, DEMANDS, LIABILITIES,
COSTS, OR EXPENSES, INCLUDING REASONABLE ATTORNEYS’ FEES, RESULTING FROM OR
ARISING OUT OF YOUR BREACH OF ANY OF THESE LAKESHORE REWARDS TERMS AND
CONDITIONS.

If any part of these warranty disclaimers or limitations of liability is found
to be invalid or unenforceable for any reason or if we are otherwise found to be
liable to you in any manner, then our aggregate liability for all claims under
such circumstances shall not exceed ten dollars ($10). Some jurisdictions do not
allow the exclusion of certain warranties or the limitation or exclusion of
liability for damages. Accordingly, some of the above indemnities, limitations,
and disclaimers may not apply to you. To the extent we may not, as a matter of
applicable law, disclaim any warranty or limit our liability, the scope and
duration of such warranty and the extent of our liability will be the minimum
permitted under such law.

We may assign our rights and obligations under these Program Terms, including in
connection with a merger, an acquisition, sale of assets or equity, or by
operation of law.

These Program Terms are governed by the laws of the State of California, without
regard to any conflict of law provisions. Any action relating to the Program or
any transaction with Lakeshore must be brought in the state or federal courts
located in Los Angeles, California. You consent and submit to the personal
jurisdiction of such courts for the purposes of any such action.

CUSTOMER SERVICE

For questions or assistance, just give us a call at (800) 428-4414, Monday
through Friday, 5 am–6 pm, PT. You may also email us at
Lakeshore@lakeshorelearning.com.
 

--------------------------------------------------------------------------------

[i] You must rate a product or write a product review on a product that you
purchased or used in your household within the prior calendar year. To earn
Points for rating a product or writing a product review, you must be logged in
to your account and select a product from your purchase history to rate or
review. You do not receive more Points for writing a favorable review.

[ii] Completing your extended profile means providing us with your address,
phone number, birthday (if you are a teacher) or special event (if you are not a
teacher), grade level you teach (if applicable), and favorite categories and
subjects. You can complete your extended profile when logged in to your account.

[iii] When logged in to your account, you may send a “Refer-A-Friend” link to
invite a friend to join the Program. You may be able to generate an automatic
email or message via social media to your friend containing the applicable
referral link. You represent and warrant that (i) you have the necessary consent
from each such friend to whom you send a message regarding the Program and (ii)
you will at all times remain compliant with CAN-SPAM, the TCPA, and any other
applicable laws. For you to receive Program Points for any referral, your friend
must use the unique link you send to them, be over the age of eighteen (18), be
a legal resident of the United States of America, and create a Program account.

We may terminate your eligibility to earn Program Points or terminate your
account if you take any of the following actions: (1) Open multiple accounts,
including with different email addresses, in order to generate additional
Program Points; (2) Refer customers using spam, display advertising, sponsored
links, unsolicited emails, automated systems or bots, scripts or automatic
dialers, or links on message boards or forums; (3) Use false names, impersonate
other people, or otherwise provide false or misleading information to us; (4)
Offer incentives to others who register new accounts; (5) Violate these terms;
(6) Use our brand in connection with disparaging or defamatory content; content
that promotes racism, bigotry, hatred, discrimination, or physical harm against
any group or individual; offensive, abusive, intimidating, or harassing content;
content that is sexually explicit, obscene, and/or contains nudity; any
political and/or religious statement; any content containing images or reference
to illegal drugs, alcohol, tobacco, weapons, or firearms; or content that
violates someone else’s privacy; (7) Sell or otherwise attempt to transfer for
remuneration a referral link; (8) Violate or infringe the rights of any third
party; or (9) Pay to advertise your referral link or the Program, including via
Google, Facebook, Twitter, Bing, and Craigslist.

You understand and agree that any communications you send with respect to the
Program are being sent by you as an individual, on your own behalf, and not on
behalf of us. You are not acting as our agent nor will you be deemed our
employee. As such, while you can and should include your referral link in
communications about the Program, you must not, without our written permission,
include any of our trademarks or other materials in such communications. The
content of all of your communications about the Program must be yours alone. You
will not misrepresent or embellish your relationship with us or write, say, or
post anything you know is untrue or may be misleading. If someone has asked you
to stop sending them messages about us, you will immediately stop

[iv] Members who are teachers and who have added their birthday to their
extended profile will receive a Birthday Gift (gift to be chosen at Lakeshore’s
sole discretion). Members who are not teachers and who have added their special
event to their extended profile will receive a gift for that special event (gift
to be chosen at Lakeshore’s sole discretion).

 

CURRENT PROMOTIONS DETAILS

March's Rainbow of Savings!
Valid on select items through 03/31/24, 11:59 pm, PT, on in-store or online
purchases only. Limit 10 of each item per customer. While supplies last.
Products cannot be resold or used for commercial purposes. Cannot be combined
with any other coupon, discount or offer. Not applicable on prior purchases. No
cash value. Returns are subject to the discounted purchase price and to
Lakeshore’s return policy. Void where prohibited. Subject to restrictions and
change without notice.

$5 Off $5 Welcome Bonus
Offer valid for the next 30 days and for Lakeshore Rewards members only. Redeem
for $5 off purchase of $5 or more. Purchase total must be made in a single
transaction. Limit one coupon per customer. Offer valid for one-time use on
in-store or online purchase only. Not valid on sale, discounted, clearance or
shipping-restricted items. Products cannot be resold or used for commercial
purposes. Cannot be used toward the purchase of gift cards or combined with any
other coupon, discount or offer. Not applicable on prior purchases or
custom-stocked items. Excludes sales tax and shipping charges. No ship-to or
special orders. Valid on in-stock items only. No cash value. Returns are subject
to the discounted purchase price and to Lakeshore’s return policy. Must present
coupon code at time of purchase. Void where prohibited. Subject to restrictions
and change without notice.

Free Shipping with $59 Minimum Purchase
For Lakeshore Rewards members only. Valid only online through 03/31/24, 11:59
pm, PT. $59 minimum purchase excludes sales tax, downloadable software and gift
card purchases. Purchase total must be made in a single transaction. Offer will
be applied on qualifying orders at time of checkout. Orders must ship to a
single address within the contiguous United States. Standard shipping only.
Excludes items with shipping restrictions. Cannot be used on prior purchases or
custom-stocked items. Products cannot be resold or used for commercial purposes.
Valid on in-stock items only. No cash value. Void where prohibited. Subject to
restrictions and change without notice.

Spend $50, Get 500 Bonus Points (Up to 4,000 Bonus Points, or $400 Spent)
For Lakeshore Rewards Members only. Valid on qualifying in-store and online
purchases through 03/24/24. Spend a minimum of $50 on qualifying purchases and
get an additional 500 Bonus Reward Points. Points may take up to 72 hours to
appear in account. Minimum purchase total must be achieved in a single
transaction, excluding sales tax, shipping charges and the purchase of gift
cards. Not applicable on prior purchases or custom-stocked items. Products
cannot be resold or used for commercial purposes. No cash value. Must provide
valid Rewards Member email or log in to account at time of purchase. Void where
prohibited. Subject to additional restrictions and change without notice. See
Rewards Terms and Conditions for more details.

Buy One, Get One 50% Off
Valid through 03/27/24, 11:59 pm, PT. Purchase one item at regular price and
then purchase a second item of equal or lesser value at 50% off its
nondiscounted price. Limit one coupon code per customer and valid for one-time
use on in-store or online purchases only. Not valid on sale, discounted,
clearance or shipping-restricted items. Purchase must be made in a single
transaction. Products cannot be resold or used for commercial purposes. Cannot
be used toward the purchase of gift cards or combined with any other coupon,
discount or offer. Not applicable on prior purchases or custom-stocked items.
Excludes sales tax and shipping charges. No ship-to or special orders. Valid on
in-stock items only. No cash value. Returns are subject to the discounted
purchase price and to Lakeshore’s return policy. Void where prohibited. Subject
to restrictions and change without notice.

 

CURRENT PROMOTIONS DETAILS

Buy One, Get One 50% Off                
Valid through 08/25/24, 11:59 pm, PT. Purchase one item at regular price and
then purchase a second item of equal or lesser value at 50% off its
nondiscounted price. Limit one coupon code per customer and valid for one-time
use on in-store or online purchases only. Not valid on sale, discounted,
clearance or shipping-restricted items. Purchase must be made in a single
transaction. Products cannot be resold or used for commercial purposes. Cannot
be used toward the purchase of gift cards or combined with any other coupon,
discount or offer. Not applicable on prior purchases or custom-stocked items.
Excludes sales tax and shipping charges. No ship-to or special orders. Valid on
in-stock items only. No cash value. Returns are subject to the discounted
purchase price and to Lakeshore’s return policy. Void where prohibited. Subject
to restrictions and change without notice.

Up to 50% Off Doorbusters in Stores & Online                                  
Offer valid 07/15/24-09/08/24 online and in stores on eligible items. Products
cannot be resold or used for commercial purposes. Cannot be combined with any
other coupon, discount or offer. Not applicable on prior purchases. Excludes
sales tax and shipping charges. No ship-to or special orders. No cash value. All
sales final. All merchandise sold as is. Void where prohibited. Subject to
restrictions and change without notice.

25% Off Decor and More in Stores & Online                                  
Offer valid 07/15/24-09/08/24 online and in stores on eligible items. Products
cannot be resold or used for commercial purposes. Cannot be combined with any
other coupon, discount or offer. Not applicable on prior purchases. Excludes
sales tax and shipping charges. No ship-to or special orders. No cash value. All
sales final. All merchandise sold as is. Void where prohibited. Subject to
restrictions and change without notice.

Free Shipping with $59 Minimum Purchase                                  
For Lakeshore Rewards members only. Valid online through 09/08/24, 11:59 pm, PT.
$59 minimum purchase excludes sales tax, downloadable software and gift card
purchases. Purchase total must be made in a single transaction. Offer will be
applied on qualifying orders at time of checkout. Orders must ship to a single
address within the contiguous United States. Standard shipping only. Excludes
items with shipping restrictions. Cannot be used on prior purchases or
custom-stocked items. Products cannot be resold or used for commercial purposes.
Valid on in-stock items only. No cash value. Void where prohibited. Subject to
restrictions and change without notice.

$10 Off $10 Welcome Bonus                                  
Offer valid for new Lakeshore Rewards enrollments only. Once enrolled, offer is
valid for the next 30 days. $10 Welcome Bonus is available for a limited time,
through 12/31/24, 11:59 pm, PT. Redeem for $10 off purchase of $10 or more.
Purchase total must be made in a single transaction. Limit one coupon per
customer. Offer valid for one-time use on in-store or online purchase only. Not
valid on sale, discounted, clearance or shipping-restricted items. Products
cannot be resold or used for commercial purposes. Cannot be used toward the
purchase of gift cards or combined with any other coupon, discount or offer. Not
applicable on prior purchases or custom-stocked items. Excludes sales tax and
shipping charges. No ship-to or special orders. Valid on in-stock items only. No
cash value. Returns are subject to the discounted purchase price and to
Lakeshore’s return policy. Must present coupon code at time of purchase. Void
where prohibited. Subject to restrictions and change without notice.

$6.99 Flat Rate Shipping                                  
VIP Members will receive standard ground shipping on qualifying purchases at
$6.99 for orders shipped to a single address in the contiguous United States
(i.e., excluding Hawaii and Alaska). The benefit does not apply to
shipping-restricted items as indicated on lakeshorelearning.com (e.g.,
furniture, paint, large/heavy items, etc.). The standard shipping benefit is not
valid on international shipping or shipping-restricted items. You must check out
with a valid Lakeshore Rewards account to receive the standard shipping benefit.
The standard shipping benefit has no cash value. Purchases made before you
became a Rewards member or while you were not logged in to your Rewards account
are not eligible for the standard shipping benefit.

$4.99 Flat Rate Shipping                                  
VIP Gold Members will receive standard ground shipping on qualifying purchases
at $4.99 for orders shipped to a single address in the contiguous United States
(i.e., excluding Hawaii and Alaska). The benefit does not apply to
shipping-restricted items as indicated on lakeshorelearning.com (e.g.,
furniture, paint, large/heavy items, etc.). The standard shipping benefit is not
valid on international shipping or shipping-restricted items. You must check out
with a valid Lakeshore Rewards account to receive the standard shipping benefit.
The standard shipping benefit has no cash value. Purchases made before you
became a Rewards member or while you were not logged in to your Rewards account
are not eligible for the standard shipping benefit.

   
   
   
   
   
   
   
   
   
   
 * Find Your Store
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Free Resources
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Services
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Registries
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Lists
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Stores
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Gift Cards
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Quick Order
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   


LAKESHORE HOME PAGE LOGO



Search: To navigate through search suggestions, begin typing then use down and
up arrow keys. Search
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Account
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * 0 Cart
   
   
   
   
   
   
   
   
   
   
   
   

Lakeshore Home Page Logo

   Cart Items
   
   
   
   
   
   
   
   
 * Sign Out
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * 0 Cart
   
   
   
   
   
   
   
   
   
   
   
   

Accessible Menu - Main
   
   
   
   
   
   
   
   
   
   
 * Shop All
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Shop by Age
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Furniture
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Learn
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Play
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Arts & Crafts
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Teaching Supplies
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Featured
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 * Sale
   
   
   
   
   
   
   
   
   
   
   
   
   


Lakeshore Home Page Logo


 
Stay Connected

Sign up for special offers and news sent directly to you. See Privacy Policy

 

 

 

I typically shop for
   
   
   
   
 * Classroom / Organization
   
   
 * Home
   
   
 * Both
   
   
 * I typically shop for

 
Sign Up

Shop Now Back to school doorbusters
Shop Now Classroom Decor
everything you need for your haul! Explore More Back to School
 
home_page.rr2 false


SAVE ON CLASSROOM ESSENTIALS

Easy-Clean Craft Trays - Set of 4
$14.99
reg. $24.99
5.0 out of 5 stars
Help-Yourself Book Bins
$5.99 - $34.99
reg. $9.99 - $57.99
4.7 out of 5 stars
Double-Sided Magnetic Write & Wipe Board
$4.99 - $48.99
reg. $9.99 - $98.99
4.8 out of 5 stars
Write & Wipe Thin-Line Markers
$3.99 - $4.99
reg. $3.99 - $7.49
4.6 out of 5 stars
Create & Design Drill Kit
$14.99
reg. $29.99
4.9 out of 5 stars
Black Connect & Store Book Bins
$4.99 - $28.99
reg. $7.99 - $44.99
5.0 out of 5 stars
Light-Up Countdown Timer
$19.99
reg. $29.99
4.6 out of 5 stars
Giant Magnetic Letters - Lowercase
$10.99
reg. $17.99
5.0 out of 5 stars
See-Inside Magnetic Blocks
$54.99
reg. $89.99
4.8 out of 5 stars
Write & Wipe Daily Schedule Pocket Chart
$11.99
reg. $19.99
5.0 out of 5 stars
Squeeze, Scoop & Count Ice Cream Shop
$12.99
reg. $21.99
4.9 out of 5 stars
Write & Wipe Broad-Tip Markers
$4.99 - $5.99
reg. $4.99 - $8.99
4.8 out of 5 stars
Wobble Cushion
$14.99
reg. $24.99
4.5 out of 5 stars
Best-Buy Bins - Set of 4
$11.49
reg. $22.99
5.0 out of 5 stars

Fallback/ATG
 

SIGN IN

Email

Password

Sign In
Cancel

Find a List

Don’t have an account?  Register now.

Forgot Password?
 

B2B REDIRECT


 

WRITE A REVIEW

We’re sorry, but this item is no longer available.

 

THANK YOU

Your opinion matters to us, and we really appreciate you taking the time to let
us know how we’re doing.

Close
 

ACCESS TO DESIGN RESOURCES

Oops. You do not have access to the Design Resources page. Please click here to
request access.

Close
 

REVIT ACCESS

We're sorry! There was an error with the download. Please try again.

Close
 

INVALID REGISTRY

We’re sorry! The registry you’re trying to view is no longer available.

Close
 

SESSION EXPIRED


Continue - dismiss modal
 

REGISTER



First Name

Last Name

Email


Password


Minimum 10 characters

Minimum one uppercase letter

Minimum one lowercase letter

Minimum one number

Minimum one special character:`~!@#$%^*()-_=+|;:,.?

No spaces

Strength:



- Minimum 10 characters Minimum one uppercase letter Minimum one lowercase
letter Minimum one number Minimum one special character:`~!@#$%^*()-_=+|;:,.?
Minimum one special character: `~!@#$%^*()-_=+|;:,.? No spaces
I typically shop for:

Classroom/Organization

Home

Both


Yes, I would like to receive news and promotions via email.

Keep me signed in


Keep unchecked if using a public device or public Wi-Fi.

See Privacy Policy
Cancel
Register

I am a GSA member
 

THANK YOU FOR REGISTERING WITH LAKESHORE!




 

GSA MEMBERSHIP



Forgot Password?

 

FORGOT PASSWORD?

Please enter your email address, and we’ll send you instructions for resetting
your password. If you do not receive an email, the email address you provided
may not be registered.
Email

Cancel
Submit
 

FIND ANOTHER STORE


CHOOSE A LOCATION

Search



 

GSA LOG-IN REDIRECT

To simplify your shopping journey, you’re being redirected to our main Lakeshore
website. All cart items and contract pricing will be retained.

Continue - dismiss modal
 

COUPON UNAVAILABLE



Close

Customer Support
   
   
 * Live Chat (Offline)
 * Contact Us
 * Track My Order
 * Shipping
 * Returns and Exchanges
 * FAQs
 * Lakeshore Catalogs
 * Credit Application
   
   

   
   
 * Gift Cards
 * Mail Preferences
 * Product Safety
 * Feedback
 * eProcurement Sign‑In
 * GSA Sign‑Up & Sign-In
 * Funding Opportunities
 * Accessibility
 * 
   
   

Our Company
   
   
 * Careers
 * Our Story
 * CA Supply Chains Act
 * Partnerships
 * Lakeshore Warranties
 *  
   
   

Stay Connected

Sign up for special offers and news sent directly to you.

enter your email address
Join

Sign up for exclusive text offers and deals.

See Privacy Policy

         
 
Get the App
Scan the QR code to download our app.


   
 *  
   
   



*View - current promotions promotion details.

Privacy Policy | Children’s Policy | Do Not Sell My Personal Information | Do
Not Share My Personal Information/Targeted Advertising

©2024 Lakeshore Learning Materials. All rights reserved.

Your Privacy Rights


OPT OUT OF TARGETED ADVERTISING

When you visit our website, we store cookies on your browser to collect
information. The information collected might relate to you, your preferences or
your device, and is mostly used to make the site work as you expect it to and to
provide a more personalized web experience. However, you can choose not to allow
certain types of cookies, which may impact your experience of the site and the
services we are able to offer. Click on the different category headings to find
out more and change our default settings according to your preference. You
cannot opt-out of our First Party Strictly Necessary Cookies as they are
deployed in order to ensure the proper functioning of our website (such as
prompting the cookie banner and remembering your settings, to log into your
account, to redirect you when you log out, etc.). For more information about the
First and Third Party Cookies used please follow this link.
More information
Allow All


MANAGE CONSENT PREFERENCES

Accordion Header

STRICTLY NECESSARY COOKIES

Always Active

These cookies are necessary for the website to function and cannot be switched
off in our systems. They are usually only set in response to actions made by you
which amount to a request for services, such as setting your privacy
preferences, logging in or filling in forms. You can set your browser to block
or alert you about these cookies, but some parts of the site will not then work.
These cookies do not store any personally identifiable information.

 * FUNCTIONAL COOKIES
   
   Always Active
   
   These cookies enable the website to provide enhanced functionality and
   personalisation. They may be set by us or by third party providers whose
   services we have added to our pages. If you do not allow these cookies then
   some or all of these services may not function properly.

Accordion Header

OPT OUT OF SALE OF SHARING/TARGETED ADVERTISING

Opt Out of Sale of Sharing/Targeted Advertising

As a California consumer, you have the right to opt-out from the sale or sharing
of your personal information at any time across business platform, services,
businesses and devices. You can opt-out of the sale and sharing of your personal
information by using this toggle switch. As a Virginia, Utah, Colorado and
Connecticut consumer, you have the right to opt-out from the sale of your
personal data and the processing of your personal data for targeted advertising.
You can opt-out of the sale of your personal data and targeted advertising by
using this toggle switch. For more information on your rights as a United States
consumer see our privacy notice.

 * TARGETING COOKIES
   
   Switch Label label
   
   These cookies may be set through our site by our advertising partners. They
   may be used by those companies to build a profile of your interests and show
   you relevant adverts on other sites. They do not store directly personal
   information, but are based on uniquely identifying your browser and internet
   device. If you do not allow these cookies, you will experience less targeted
   advertising.

 * PERFORMANCE COOKIES
   
   Switch Label label
   
   These cookies allow us to count visits and traffic sources so we can measure
   and improve the performance of our site. They help us to know which pages are
   the most and least popular and see how visitors move around the site. All
   information these cookies collect is aggregated and therefore anonymous. If
   you do not allow these cookies we will not know when you have visited our
   site, and will not be able to monitor its performance.

Back Button


PERFORMANCE COOKIES



Search Vendors Search Icon
Filter Icon

Clear
checkbox label label
Apply Cancel
Consent Leg.Interest
checkbox label label
checkbox label label
checkbox label label

Confirm My Choices

Opens in new window
PDF Download
Word Download
Excel Download
PowerPoint Download
Document Download
Explore your accessibility options


close carousel