@font-face {
  font-family: 'avenir-demi';
  src: url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Demi.eot'); /* IE9 Compat Modes */
  src: url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Demi.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Demi.woff2') format('woff2'), /* Super Modern Browsers */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Demi.woff') format('woff'), /* Pretty Modern Browsers */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Demi.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Demi.svg#AvenirNextLTW01-Demi') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'avenir-bold';
  src: url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Bold.eot'); /* IE9 Compat Modes */
  src: url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Bold.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Bold.woff2') format('woff2'), /* Super Modern Browsers */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Bold.woff') format('woff'), /* Pretty Modern Browsers */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Bold.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Bold.svg#AvenirNextLTW01-Bold') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'avenir-regular';
  src: url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Regular.eot'); /* IE9 Compat Modes */
  src: url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Regular.woff') format('woff'), /* Pretty Modern Browsers */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Regular.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('//hosted.where2getit.com/joann/css/fonts/AvenirNextLTW01-Regular.svg#AvenirNextLTW01-Regular') format('svg'); /* Legacy iOS */
}

@font-face {
    font-family: icons;
    src: url(//hosted.where2getit.com/joann/css/fonts/icomoon.eot?bv0h2x&yocs=2i_&yoloc=us);
    src: url(//hosted.where2getit.com/joann/css/fonts/icomoon.eot?bv0h2x#iefix&yocs=2i_&yoloc=us) format("embedded-opentype"),url(//hosted.where2getit.com/joann/css/fonts/icomoon.ttf?bv0h2x&yocs=2i_&yoloc=us) format("truetype"),url(//hosted.where2getit.com/joann/css/fonts/icomoon.woff?bv0h2x&yocs=3e_2i_&yoloc=us) format("woff"),url(//hosted.where2getit.com/joann/css/fonts/icomoon.svg?bv0h2x#icomoon&yocs=3e_2i_&yoloc=us) format("svg");
    font-weight: 400;
    font-style: normal
}

.header {
    display: flex;
    flex-direction: column;
    color: rgb(99, 102, 107);
    font-family: avenir-regular, san-serif;
    font-size: 0.75rem;
}

.header__pre-banner {
    height: 2.5em;
    display: none;
    justify-content: center;
    background-color: #000;
    color: rgb(255, 255, 255);
    text-transform: uppercase;
}

.header__main, .header__user-tools {
    display: flex;
    align-items: center;
}

.header__main {
    justify-content: center;
}

.header__navbar {
    display: none;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid rgb(225, 225, 225);
}
.header > * {
    flex-shrink: 0;
    max-width: 100%;
}

.header__container {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 1260px;
    width: 100%;
}

.header__container--main {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.header__container--nav {
    position: relative;
}

.utility-menu {
    opacity: 0;
    width: 33px;
}


header button, header input, header select, header textarea, footer button, footer input, footer select, footer textarea {
    font-size: 125%;
}

.header__mobile-menu-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 1em 5vw;
    margin-right: -5vw;
    background-color: #63666b;
    border: none;
    background: transparent;
}


/*.header__mobile-menu-button {
    -webkit-appearance: none;
    margin-right: -5vw;
    padding: 1em 5vw;
    border-width: initial;
    border-style: none;
    border-color: initial;
    border-image: initial;
    background: transparent;
}
*/
.header__mobile-menu-button__icon {
    position: relative;
    width: 1.8em;
    height: 1.2em;
    transform: rotate(0deg);
    cursor: pointer;
    transition: 0.5s ease-in-out;
}

.header__mobile-menu-button--active {    
}

.header__mobile-menu-button__icon span {
    display: block;
    position: absolute;
    height: 0.2em;
    width: 100%;
    opacity: 1;
    left: 0px;
    transform: rotate(0deg);
    background: rgb(74, 74, 74);
    transition: 0.25s ease-in-out;
}

.header__mobile-menu-button__icon span:first-child {
    top: 0px;
}

.header__mobile-menu-button__icon span:nth-child(2), .header__mobile-menu-button__icon span:nth-child(3) {
    top: .5em;
    /*height: 0.2em;*/
}

.header__mobile-menu-button__icon span:nth-child(4) {
    top: 1em;
}

.header__mobile-menu-button--active .header__mobile-menu-button__icon span:first-child {
    top: .5em;
    width: 0;
    left: 50%;
}

.header__mobile-menu-button--active .header__mobile-menu-button__icon span:nth-child(2) {
    transform: rotate(45deg);
}

.header__mobile-menu-button--active .header__mobile-menu-button__icon span:nth-child(3) {
    transform: rotate(-45deg);
}

.header__mobile-menu-button--active .header__mobile-menu-button__icon span:nth-child(4) {
    top: .5em;
    width: 0;
    left: 50%;
}

.header__navbar-menus {
    width: 100%;
}

.header__navbar {
    display: none;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-bottom: 1px solid #e1e1e1;
}

.header__navbar--active {
    display: -ms-flexbox;
    display: flex;
}

.header__pre-nav a {
    color: rgb(255, 255, 255) !important;
}

.dropdown-menu__section {
    display: flex;
    width: 100%;
}

.my-fabric-svg_wrapper {
    display: inline-block;
    width: 74px;
    height: 1.5rem;
}
/*
.dropdown-menu__section.navigation-myfabric, .dropdown-menu__section.navigation-myfabric a {
    height: 100%;
}*/

 .dropdown-menu__section.navigation-myfabric a span {
    position: relative;
    top: 4px;
 }


/*======= Mobile header styles =======*/

.dropdown-menu__section--mobile-footer {
    font-size: 0.75rem;
    font-family: avenir-regular, san-serif;
    display: flex;
    flex-direction: column;
    border-top: 1px solid rgb(225, 225, 225);
    padding: 0.75em;
}

.dropdown-menu__section--mobile-footer div {
    padding: 0.75em;
}

.header__pre-nav {
    display: none;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.btn-line--tall {
    border-bottom-width: 0.5em;
    padding: 1.25em 1em 0.75em;
}

.btn-line {
    font-family: 'avenir-demi', san-serif;
    padding: 0.75em 0.75em 0.5em;
    border-bottom: 0.25em solid transparent;
    background: transparent;
    transition: border-color 0.2s linear;
}

.btn-line--white.mega-item--active, .btn-line--white:hover {
    border-bottom-color: #fff;
}

.btn-line--green.mega-item--active, .btn-line--green:hover {
    border-bottom-color: #73bd00;
}

header a:active, a:hover, footer a:active, a:hover {
    outline: 0;
}

.dropdown-menu2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 0.85rem;
}

.dropdown-menu__button {
    display: block;
    width: 100%;
    color: #63666b!important;
    font-family: 'avenir-demi', san-serif;
    text-align: left;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

/*======= footer styles =======*/

footer {
    font-family: avenir-regular, san-serif;
    max-width: none !important;
}

.site-footer__links {
    display: none;
}

.site-footer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    font-size: .625rem;
    color: #4a4a4a;
    border-top: 1px solid #e1e1e1;
    margin-top: 2.25em;
    padding-top: 2.75em;
}

.site-footer__header {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    text-align: center;
    font-size: 1.4em;
    font-family: avenir-bold,san-serif;
    text-transform: uppercase;
}

.site-footer__header-section {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-item-align: start;
    align-self: flex-start;
    margin-bottom: 2.75em;
}



.site-footer__logo {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
}

.flex-block-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
}

.social-links__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
}



.social-links__wrapper span {
    width: 100%;
}

/*.site-footer__social-links {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    margin-top: 1em;
}
*/
.site-footer__social-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    padding: 0;
    margin: 0;
    margin-top: .65em;
    font-size: 1.75rem;
    width: 100%;
}

/*.site-footer__social-links i {
    min-width: 3em;
    min-height: 2.5em;
    display: block;
    background-size: 2.5em;
}
[class*=" icon-"], [class^=icon-] {
    font-family: icons!important;
    font-size: 1rem;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
*/
.icon {
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 20px;
}

[class*=" icon-"], [class^=icon-] {
    font-family: icons!important;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    text-align: center;
    line-height: 1;
    display: inline-block;
    -webkit-transition: -webkit-transform .3s ease-in-out;
    transition: -webkit-transform .3s ease-in-out;
    transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out,-webkit-transform .3s ease-in-out;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.site-footer__social-links i {
    display: block;
}

.icon--twitter:before {
    content: "\ea96";
}

.icon--pinterest:before {
    content: "\ead1";
}

.icon--facebook:before {
    content: "\ea90";
}

.icon--google-plus:before {
    content: "\ea8b";
}

.icon--youtube:before {
    content: "\e900";
}

.icon--instagram:before {
    content: "\ea92";
}

/*.icon--twitter {
    background-image: url(images/twitter.png?yocs=v_&yoloc=us);
}
.icon--pinterest {
    background-image: url(images/pinterest.png?yocs=v_&yoloc=us);
}
.icon--facebook {
    background-image: url(images/facebook.png?yocs=v_&yoloc=us);
}
.icon--google-plus {
    background-image: url(images/googleplus.png?yocs=v_&yoloc=us);
}
.icon--youtube {
    background-image: url(images/youtube.png?yocs=v_&yoloc=us);
}
.icon--instagram {
    background-image: url(images/instagram.png?yocs=v_&yoloc=us);
}*/

/*.icon {
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 20px;
    min-height: 20px;
}
*/
.footer-links__col, .footer-links__slot {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
}

.footer-links__slot {
    line-height: 1rem;
}

.footer-links__slot ul {
    padding: 0;
    margin: 0;
}

.footer-links-header, .footer-links-header-h6 {
    font-family: 'avenir-bold',san-serif;
    font-size: .625rem;
    line-height: 16px;
    margin: 0;
}

.site-footer__footer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    color: #4a4a4a;
}

.site-footer__disclaimer-links {
    font-family: avenir-demi,san-serif;
    color: #63666b;
}

.site-footer__disclaimer-links ul {
    margin: 0;
    padding: 0;
    text-align: center;
}

.site-footer__disclaimer-links li {
    padding: 2em 1em;
    border-top: 1px solid #e1e1e1;
}

.site-footer__disclaimer-links li a {
    color: #63666b;
}

.site-footer__trademark {
    background: #f7f7f7;
    border-top: 1px solid #e1e1e1;
    padding: 2em;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .dropdown-menu__button {
        padding: 1.5em;
        border-bottom: 1px solid #e1e1e1;
    }

    header div, header img, footer div, footer img {
        max-width: 100%;
        height: auto;
    }
}

@media screen and (min-width: 480px) {
    
    .header__pre-banner {
        display: flex;
    }

    .site-footer {
        -ms-flex-align: center;
        align-items: center;
    }

    .site-footer__header {
        width: 100%;
        max-width: 1200px;
    }

    .site-footer__logo {
        margin-bottom: 1.5em;
    }

    .site-footer__footer {
        width: 100%;
        padding: 2em 0;
        background: #f7f7f7;
        border-top: 1px solid #e1e1e1;
    }

    .site-footer__footer ul {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .site-footer__footer li {
        border-top: none;
    }    

    .site-footer__footer li+li:before {
        content: "|";
        color: #e1e1e1;
        margin-right: 1.5em;
    }

    .site-footer__trademark {
        border-top: none;
        padding-top: 0;
        padding-bottom: 2em;
        font-family: avenir-demi,san-serif;
    }    
}

@media screen and (min-width: 768px) {

    header div, img, footer div, img  {
        max-width: 100%;
        height: auto;
    }

    .site-footer__header-section.social-links {
        justify-content: flex-end;
    }

    .header__pre-banner {
        /*height: 4em;*/
        height: 3.167em;
    }

    .header__main {
        padding: 0.5em 0px;
        border-bottom: 1px solid rgb(225, 225, 225);
    }

/*    .header__container {
        justify-content: space-between;
        margin: 0px 3em;
    }
*/

    .header__container {
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin: 0 3em;
    }
    .header__navbar {
        display: flex;
    }

    .header__navbar-menus {
        width: auto;
    }

    .header__mobile-menu-button {
        display: none;
    }

    .dropdown-menu2 {
        flex-direction: row;
    }   

    .dropdown-menu__section {
        z-index: 100;
        position: relative;
    }
    .dropdown-menu__section {
        display: flex;
        width: 100%;
    }
    .dropdown-menu__button {
        width: 24vw;
        max-width: 240px;
        -ms-flex-pack: center;
        justify-content: center;
        text-align: center;
    }

    .dropdown-menu__section--mobile-account, .dropdown-menu__section--mobile-footer, .dropdown-menu__section--mobile-spacer {
        display: none;
    }

    .dropdown-menu__section {
        z-index: 100;
        position: relative;
    }

    .flex-block-md-4 {
        -ms-flex-preferred-size: 33.33333%;
        flex-basis: 33.33333%;
        max-width: 33.33333%;
    }

    .footer-links__wrapper {
        max-width: 1200px;
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

    .site-footer__links {
        -ms-flex-pack: center;
        justify-content: center;
        padding-top: 6em;
        margin-bottom: 5em;
        border-top: 1px solid #e1e1e1;
    }

    .footer-links__wrapper, .site-footer__links {
        width: 100%;
        display: -ms-flexbox;
        display: flex;
    }

}

@media screen and (min-width: 1024px) {
    .header__pre-nav {
        display: -ms-flexbox;
        display: flex;
        position: absolute;
        right: 53px;
    }
}

@media screen and (min-width: 1200px) {
    .site-footer__logo {
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .social-links__wrapper {
        -ms-flex-preferred-size: 65%;
        flex-basis: 65%;
        max-width: 65%;
    }

    .footer-links__wrapper {
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}