/** Fonts **/

@import url('https://fonts.googleapis.com/css?family=Lato:400,600,700&subset=latin-ext');
@import url('https://fonts.googleapis.com/css2?family=PT+Sans:wght@400;700&display=swap');

/** Titles **/

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500&display=swap');
* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

html,
body {
    color: #333;
    margin: 0;
    padding: 0;
    height: 100%;
    font-family: 'Lato', sans-serif;
    font-weight: 400;
    font-size: 14px;
}


/* row-col spacing */

.padding-0 {
    padding: 0 !important;
}

.padding-md {
    padding: 5px !important;
}

.padding-3 {
    padding: .3rem;
}


/** Links **/

a {
    color: #333;
}

a:hover {
    color: #cb857c;
}


/** Headings, gral. **/

h1,
h2 {
    font-family: 'Playfair Display', serif;
    font-weight: 500;
    color: #333;
}

h3,
h4,
h5,
h6 {
    font-family: 'Lato', sans-serif;
    color: #333;
    font-weight: 400;
}

h3 a,
h4 a,
h5 a,
h6 a {
    color: #333;
}

h1 {
    font-size: 28px;
}

h2 {
    font-size: 24px;
}

h3 {
    font-size: 18px;
    font-weight: 600;
}

h4 {
    font-size: 18px;
}

h5 {
    font-size: 17px;
}

h6 {
    font-size: 16px;
}

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
    font-size: 60%;
    font-family: 'Lato', sans-serif;
    color: #999;
}

p strong {
    font-weight: 700 !important;
}

h1 a:hover,
h1:focus,
h2 a:hover,
h2:focus {
    color: #000;
    text-decoration: underline;
    font-weight: 500 !important;
}

h3 a:hover,
h3:focus {
    color: #000;
    text-decoration: underline;
    font-weight: 600 !important;
}

h4 a:hover,
h4:focus {
    color: #000;
    text-decoration: underline;
    font-weight: 400 !important;
}

.bg-primary {
    background-color: #faf7f4 !important;
}

.bg-white {
    background-color: #fff;
}

.dropdown-toggle::after {
    display: none;
}

/** Buttons **/

.btn,
.btn-sm,
.btn.active,
.btn:active,
.btn:hover,
.btn:focus {
    outline: 0;
    box-shadow: none;
    border-radius: 0;
    border: none;
    box-shadow: none;
    font-size: 12px;
    line-height: 1.8;
}

.btn-primary {
    color: #fff;
    background-color: #cb9994;
    padding: 10px 30px;
    white-space: nowrap;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: #bd8781;
    font-weight: 400;
}

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
    background-color: #bd8781;
    border: none;
    color: #fff;
    outline: none !important;
    box-shadow: none !important;
}

.btn-default {
    color: #333;
    background-color: #ede5db;
    border-radius: 0;
    border: none !important;
    padding: 10px 30px;
}

.btn-default:hover,
.btn-default:focus {
    background-color: #eddbd5;
    font-weight: 400;
    color: #333;
}

.btn-default:active,
.btn-default.active,
.open>.dropdown-toggle.btn-default {
    color: #333;
    background-color: #eddbd5;
}

.btn-default:active,
.btn-default.active,
.open .dropdown-toggle.btn-default {
    background-color: #eddbd5;
}

.close {
    opacity: 1;
    text-shadow: none;
    font-weight: 400;
}

.btn-block {
    margin: 0;
}

.pointer {
    cursor: pointer;
}

.btn-active {
    background-color: #eddbd5;
    border-radius: 0;
    border: none !important;
    padding: 10px 30px;
    color: #333;
}

.btn-active:hover,
.btn-active:focus {
    background-color: #eddbd5;
    color: #333;
}

.btn-sm, .btn-sm:hover, .btn-sm:focus {
    padding: 10px 15px;
}

.btn-link {
    color: #333;
    text-decoration: underline;
}

.btn-link:hover,
.btn-link:focus {
    color: #333;
    color: #cb857c;
    font-weight: 400;
}

.btn-black {
    background-color: #333;
    color: #fff;
}

.btn-black:focus,
.btn-black:hover {
    color: #fff;
    background-color: #000;
    border-color: #000
}

.nav>li>a.btn-default {
    padding: 10px 30px;
}

.dropdown-menu>li>a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: normal;
    line-height: 1.428571429;
    color: #333;
    white-space: nowrap;
}

.dropdown-menu>li>a:hover .dropdown-menu>li>a {
    background-color: #ede5db;
    border: 2px solid #ede5db;
}

.choose-country-options.dropdown-menu>li>a {
    padding: 3px 10px;
}

.btn-primary[disabled],
.btn-primary[disabled]:hover,
.btn-primary[disabled]:focus,
.btn-primary[disabled]:active
.btn-primary[disabled].active {
    background-color: #bc9787;
    border-color: #bc9787;
}

.btn-primary:active:hover,
.btn-primary.active:hover,
.open>.dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open>.dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open>.dropdown-toggle.btn-primary.focus {
    color: #fff;
    background-color: #bd8781;
}

.btn-primary:active,
.btn-primary.active,
.open>.dropdown-toggle.btn-primary {
    background-image: none
}

.form-control {
    border: 1px solid #fff;
    box-shadow: none !important;
    border-radius: 0;
    height: 40px;
}

.form-control:hover,
.form-control:focus {
    border-color: #333;
    box-shadow: none !important;
}

.short-and-sweet-counter {
    color: #666666;
}

/* Fixes iphone not zooming*/
input[type='text'], input[type='number'], textarea {
    font-size: 16px !important;
}

select.input-sm {
    height: 40px;
    line-height: 40px;
}

ul,
ol {
    padding-inline-start: 15px;
}

.well {
    border: none;
    border-radius: 0;
    background-color: #faf7f4;
    box-shadow: none;
    min-height: 20px;
    padding: 19px;
    margin-bottom: 20px;
}

.well-dark {
    border: none;
    border-radius: 0;
    background-color: #f5eee6;
    box-shadow: none;
    min-height: 20px;
    padding: 20px;
    margin-bottom: 15px;
    min-height: 20px;
    padding: 19px;
    margin-bottom: 20px;
}

.well-dark a {
    text-decoration: none;
    color: #333;
}

.well-lg {
    border: none;
    border-radius: 0;
    background-color: #faf7f4;
    box-shadow: none;
    padding: 30px;
    min-height: 20px;
    padding: 19px;
    margin-bottom: 20px;
}

.small {
    font-size: 12px;
}

.crossed {
    text-decoration: line-through;
    color: #777;
}

.red {
    color: #df4655!important;
}

.pink-light {
    color: #cb857c;
}

.hidden {
    display: none;
}

.hidden-mobile {
    display: inline-block;
}

.gray {
    color: #666;
}

.gray-light {
    color: #999;
}

.newheading {
    text-align: center;
    padding: 3rem 5% 1rem 5%;
}

.alert {
    border-radius: 0;
}

.alert.alert-success {
    background: #fafbf9;
    border-color: #fff;
    color: #1c3c20;
    border-radius: 0;
}

.alert-danger {
    color: #fff;
    background-color: #cb857c;
    border-color: #cb857c;
}

.ad {
    background-color: #ede5db;
    text-align: center;
    padding: 10px;
    font-size: 12px;
}
a.ad:hover{
    color: #cb857c;
}

/* captions */

.caption-img {
    padding: 10px 0;
    height: 70px;
    overflow: hidden;
}

.caption-yarncomb {
    min-height: 90px;
}

.caption-yarncomb1 {
    padding: 10px 10px 0 10px;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
    height: 30px;
    font-weight: 700;
}

.caption-yarncomb2 {
    padding: 0 10px 10px 10px;
    margin-bottom: 0px;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
    height: 20px;
    font-weight: 700;
}

.caption-yarncomb3 {
    padding: 0 10px 10px 10px;
    margin-bottom: 20px;
    text-align: center;
    font-size: 12px;
    height: 30px;
}

.caption-gray-img {
    font-size: 11px;
    color: #889097;
    margin-top: 5px;
    height: 5px;
}

.mb {
    margin-bottom: 10px;
}

.mb-3 {
    margin-bottom: 30px;
}

.pt {
    padding-top: 10px;
}

.pb {
    padding-bottom: 15px;
}

.pr {
    padding-right: 0 5px;
}

.mt {
    margin-top: 15px;
}

/* Follow icons */

ul.follow-us {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
}

ul.follow-us li {
    margin: 8px;
    float: left;
}

ul.follow-us li a i {
    color: #333;
    font-size: 24px;
}

ul.follow-us li a i:hover {
    color: #d6a099 !important;
}

.buttonpopup {
    position: relative;
    display: inline-block;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.buttonpopup .popuptext {
    visibility: hidden;
    width: 160px;
    background-color: #fff;
    color: #333;
    border: 1px solid #faf7f4;
    box-shadow: 0 -8px 10px 0 rgba(0,0,0,0.1), 0 8px 10px 0 rgba(0,0,0,0.1), 0 6px 20px 0 rgba(0,0,0,-0.91);
    text-align: center;
    border-radius: 6px;
    padding: 8px 5px;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    margin-left: -80px;
}

.buttonpopup .popuptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #ffffff transparent transparent transparent;
}

.buttonpopup .show {
    visibility: visible;
    -webkit-animation: fadeIn 1s;
    animation: fadeIn 1s;
}

.buttonpopup .hide {
    visibility: visible;
    -webkit-animation: fadeOut 1s;
    animation: fadeOut 1s;
}

@-webkit-keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@-webkit-keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

@keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

.row.popup {
    max-width: 550px;
    margin: 0 auto;
    background: #fff;
    padding: 10px;
}

/* Tables - gral classes */

.table>thead>tr>.active,
.table>tbody>tr>.active,
.table>tfoot>tr>.active,
.table>thead>.active>td,
.table>tbody>.active>td,
.table>tfoot>.active>td,
.table>thead>.active>th,
.table>tbody>.active>th,
.table>tfoot>.active>th {
    background: #faf7f4;
}

.table>thead>tr>th,
.table>tbody>tr>th,
.table>tfoot>tr>th,
.table>thead>tr>td,
.table>tbody>tr>td,
.table>tfoot>tr>td {
    border-top: 1px solid #d7cdc3;
}

.table thead th{
    border-bottom: 1px solid #d7cdc3;
}

.table tbody>tr>td.vert-align {
    vertical-align: middle;
}

/***** Main layout*****/

#all {
    background: none;
    width: 100%;
    float: left;
    clear: both;
    padding: 0px;
    margin: 0px;
}

#site_wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
    clear: both;
    display: block;
    overflow: hidden;
}
#site_wrapper_wide {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0;
    clear: both;
    display: block;
    overflow: hidden;
}

#site_wrapper_full {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0;
    clear: both;
    display: block;
    overflow: hidden;
}

.container-menu {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
    clear: both;
    display: block;
    overflow: hidden;
}

.header {
    background: #faf7f4;
}

.logo {
    padding: 10px 5px;
    display: inline-block;
    margin-top: 40px;
}

.logo-xs {
    display: flex;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between;
    padding: 0 10px;
}

#header_wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
    clear: both;
    display: block;
    position: relative;
}

.header_search {
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
}

.logo-wrapper {
    justify-content: center;
    height: 142px;
}

/*mega menu */

.navbar-nav>li>a {
    background-color: #faf7f4;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 700;
    padding: 10px 15px;
    letter-spacing: 0.05em;
    margin: 0px 3px;
    color: #333;
}

.dropdown-large {
    position: static !important;
}

.dropdown-subheader {
    display: block;
    padding: 0px 0px;
    color: #333;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.dropdown-menu {
    border-radius: 0;
}

span.counter {
    color: #777;
    font-size: 12px;
}

ul ul ul {
    list-style: none;
}


/* mobile menu*/

.nav-mobile {
    background-color: #faf7f4;
    height: 70px;
    padding: 0 16px;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    position: fixed;
    right: 0;
    left: 0;
    z-index: 4000;
    transition: top 0.3s ease-in-out;
}

.search-mobile {
    display: flex;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between;
}

.nav-mobile .m-menu__checkbox,
.search-mobile .m-search__checkbox {
    display: none;
}

.nav-mobile label.m-menu__toggle,
label.m-search__toggle {
    cursor: pointer;
}

.nav-mobile .m-menu {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    max-width: 450px;
    width: calc(100vw - 45px);
    height: 100vh;
    overflow-y: scroll !important;
    overflow-x: hidden;
    -moz-transform: translate3d(-450px, 0, 0);
    -o-transform: translate3d(-450px, 0, 0);
    -ms-transform: translate3d(-450px, 0, 0);
    -webkit-transform: translate3d(-450px, 0, 0);
    transform: translate3d(-450px, 0, 0);
    -moz-transition: transform 0.35s;
    -o-transition: transform 0.35s;
    -webkit-transition: transform 0.35s;
    transition: transform 0.35s;
    z-index: 3000;
    background-color: #fff;
    padding-bottom: 100px;
}

.search-mobile .m-search {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100vw;
    height: 80px;
    overflow-y: scroll !important;
    overflow-x: hidden;
    -moz-transform: translate3d(0, -550px, 0);
    -o-transform: translate3d(0, -550px, 0);
    -ms-transform: translate3d(0, -550px, 0);
    -webkit-transform: translate3d(0, -550px, 0);
    transform: translate3d(0, -550px, 0);
    -moz-transition: transform 0.35s;
    -o-transition: transform 0.35s;
    -webkit-transition: transform 0.35s;
    transition: transform 0.35s;
    z-index: 3000;
    background-color: #fff;
}

.nav-mobile .m-menu__overlay {
    background-color: rgba(103, 103, 103, .5);
    position: absolute;
    width: 100%;
    top: 0;
    bottom: 0;
    margin: 0 0 0 -16px;
    z-index: 2000;
    display: none;
}

.nav-mobile .m-menu__header {
    padding: 0 20px;
    height: 50px;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between;
    -webkit-align-items: center;
    align-items: center;
    border-bottom: 1px solid #e8e8e8;
}

.search-mobile .m-search__header {
    padding: 0 20px;
    height: 75px;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between;
    -webkit-align-items: center;
    align-items: center;
    border-bottom: 1px solid #e8e8e8;
}

.nav-mobile .m-menu__footer {
    padding: 0 4rem 0 0;
    height: 60px;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between;
    -webkit-align-items: center;
    align-items: center;
    background: #faf7f4;
}

.nav-mobile .m-menu__header span {
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    width: 100%;
    text-transform: uppercase;
}

.nav-mobile .m-menu .m-menu,
.search-mobile .m-search .m-search {
    -moz-transform: translate3d(480px, 0, 0);
    -o-transform: translate3d(480px, 0, 0);
    -ms-transform: translate3d(480px, 0, 0);
    -webkit-transform: translate3d(480px, 0, 0);
    transform: translate3d(480px, 0, 0);
}

.nav-mobile .m-menu .menu-slide,
.search-mobile .m-search .search-slide {
    overflow-y: auto;
    margin-bottom: 0;
}

.nav-mobile .m-menu ul li a,
.nav-mobile .m-menu ul li label,
.search-mobile .m-search ul li a,
.m-search ul li label {
    display: block;
    text-align: left;
    padding: 0 15px;
    line-height: 47px;
    text-decoration: none;
    color: #333;
    cursor: pointer;
    font-size: 1rem;
    border-bottom: 1px solid #e8e8e8;
    position: relative;
    margin: 0;
}

.nav-mobile .m-menu ul li .children a {
    padding-left: 35px;
}

.nav-mobile .m-menu ul li .children .collapse a {
    padding-left: 55px;
}

.nav-mobile .m-menu ul li label {
    text-transform: uppercase;
}

.nav-mobile .m-menu ul li label .a-label__chevron::after,
.search-mobile .m-search ul li label .a-label__chevron::after {
    content: '';
    position: absolute;
    display: inline-block;
    height: 10px;
    width: 10px;
    border-color: #333;
    border-style: solid;
    border-width: 1px 1px 0 0;
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 50%;
    margin-top: -5px;
    right: 16px;
}

.nav-mobile .m-menu ul li .-invisible {
    border-bottom: 0;
}

.nav-mobile .m-menu .m-menu label.m-menu__toggle,
.search-mobile .m-search .m-search label.m-search__toggle {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    border-bottom: 0;
    padding: 0;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

.nav-mobile .m-menu__checkbox:checked~.m-menu__overlay,
.search-mobile .m-search__checkbox:checked~.m-search__overlay {
    display: block;
    position: fixed;
}

.nav-mobile .m-menu__checkbox:checked~.m-menu,
.search-mobile .m-search__checkbox:checked~.m-search {
    -moz-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.nav-mobile .m-menu ul,
.search-mobile .m-search ul {
    padding-inline-start: 0;
}

.nav-mobile .m-menu .menu-slide .dropdown-menu .show,
.search-mobile .m-search .search-slide .dropdown-menu .show {
    padding: 0 5px;
    margin: 0;
    border: none;
    position: static;
    float: none;
    width: auto;
    margin-top: 0;
    background-color: transparent;
    border: 0;
    box-shadow: none;
    transform: none;
}

.nav-link {
    padding: .3rem
}

.navigation-footer {
    display: block;
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
}

.nav-right {
    display: flex;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between;
    margin-left: auto;
}
/*prevents scroll when menu open*/
.fixed {
    position: fixed;
    overflow: hidden;
    margin: 0;
    touch-action: none;
    -ms-touch-action: none;
    height: 100vh;
}

.img-cont {
    position: relative;
    max-width: 100%;
}

.img-cont img.hover {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    object-fit: contain;
    opacity: 0;
    transition: opacity .2s;
}

.img-cont:hover img.hover {
    opacity: 1;
}

.pattern .info {
    height: 55px;
    /*height: 67px;*/
    overflow: hidden;
    font-size: 11px;
    margin: 0;
    line-height: 16px!important;
}

.info .drops-number {
    font-size: 14px;
    font-weight: 700;
    margin: 0 !important;
}

/* Comments */

.comment,
.question {
    margin: 0 0 10px 0;
    padding: 15px 5px;
    clear: both;
    border-radius: 0;
    overflow: hidden;
}

.comment {
    background: #f5eee6;
}

.question {
    background: #fff;
}

.comment span.date,
.question span.date {
    font-size: 12px;
    padding-top: 20px;
    background: none;
}

.question .answer {
    padding: 20px 15px 30px 50px;
    margin-left: -20px;
    margin-right: -20px;
    margin-bottom: -10px;
    background: none;
    font-size: 14px;
    border-top: 1px solid #e8e4e4;
}

.question .answer a {
    text-decoration: underline;
}

.question .answer iframe {
    display: none;
}

/* filters */

.filters-button {
    text-transform: uppercase;
    letter-spacing: 0.1rem;
    line-height: 1.428571429;
    display: block;
    font-weight: 700;
    color: #333;
    padding: 3px 0;
    font-size: 12px;
}

.filters-button i {
    font-size: 20px;
    padding: 10px;
}

.filterby {
    padding: 35px 0 10px 10px;
}

.selected-filters {
    font-weight: 700;
}

.selected-filters .btn-default {
    padding: 3px 10px;
    background: #faf7f4;
}

.selected-filters .btn-default i {
    padding-left: 20px;
}

.filter-container-top>li {
    float: left;
    color: #333;
    margin: 0;
    line-height: 30px;
    letter-spacing: 0.02em;
    font-family: 'Lato', sans-serif;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    background-color: #faf7f4;
    list-style: none;
    padding-inline-start: 0;
}

.filter-container-all {
    width: 100%;
    color: #333;
    margin: 0;
    line-height: 30px;
    letter-spacing: 0.02em;
    font-family: 'Lato', sans-serif;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    background-color: #faf7f4;
    list-style: none;
    padding-inline-start: 0;
}

.filter-container {
    border-top: 2px solid #fff;
    list-style: none;
}

.filter-container a {
    color: #333;
}

.filter-container a .filters-selected{
    font-weight: 700;
    color: #CB857C;
}

.filter-container a:hover {
    text-decoration: none;
}

.filter {
    position: relative;
    font-size: 13px;
    padding: 15px;
    display: block;
    line-height: 1.428571429;
    transition: color .25s cubic-bezier(.215, .61, .355, 1);
    overflow: hidden;
}

.filter i {
    position: absolute;
    width: 25px;
    right: 0;
    top: 0;
    padding: 18px 5px;
    font-size: 11px;
    letter-spacing: 0.05rem;
    background: #faf7f4;
}

.filter a {
    display: block;
    cursor: pointer;
}

.filter-check {
    position: relative;
    text-transform: uppercase;
    font-size: 11px;
    padding: 15px 40px;
    display: block;
    letter-spacing: 0.1rem;
    line-height: 1.428571429;
    transition: color .25s cubic-bezier(.215, .61, .355, 1);
    overflow: hidden;
}

.filter-check i {
    position: absolute;
    width: 25px;
    left: 0;
    top: 0;
    background: #faf7f4;
    padding: 22px 15px;
    font-size: 20px;
}

.filter-item a {
    display: block;
    cursor: pointer;
    font-weight: 400;
}

.filter-item .selected {
    font-weight: 700;
    color: #333;
}

.filter-header {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 1.428571429;
}

.filter-options {
    padding: .625rem 0;
    list-style: none;
    border-top: 3px solid #fff;
    max-height: 400px;
    overflow-y: auto;
    padding-inline-start: 0;
    background: #f6f1eb;
}

.filter-options-gal {
    padding: .625rem 0;
    list-style: none;
    border-top: 3px solid #fff;
    max-height: 350px;
    overflow-y: auto;
    padding-inline-start: 0;
    background: #fff;
    overflow-x: hidden;
    max-width: 300px;
}

.filter-options-col {
    padding: .625rem 0;
    list-style: none;
    border-top: 3px solid #fff;
    max-height: 320px;
    overflow-y: auto;
    padding-inline-start: 0;
    background: #fff;
    overflow-x: hidden;
}

.filter-item {
    font-size: 12px;
    text-transform: none;
    list-style: none;
    padding: 0 25px;
    display: block;
    letter-spacing: 0.05rem;
}

.filter-item-title {
    font-size: 12px;
    text-transform: none;
    list-style: none;
    padding: 3px;
    display: block;
    letter-spacing: 0.05rem;
    border-bottom: 1px solid #beb1b5a3;
    line-height: 18px;
    color: #9b8f93;
    margin: 5px 20px;
}

.filter-item a:hover,
.filter-item a:focus {
    color: #000000;
    font-weight: 700 !important;
}

.filter-input {
    margin: 5px 12px 0 0;
    border-radius: 10px;
}

.filter-input img {
    border-radius: 50%;
}

#categories-mobile .dropdown-backdrop {
    display: none;
}

svg {
    fill: #333;
    display: inline-block;
}

svg:hover {
    fill: #cb857c;
}

/*filter dropdown */

.filter-drop-container {
    padding-bottom: 40px;
}

.filter-drop-container ul {
    padding-inline-start: 0 !important;
}

.filter-drop-container li {
    float: left;
    list-style: none;
    padding: 0;
    margin-right: 10px;
    white-space: nowrap;
}

.filter-drop a {
    margin: 5px 0;
    padding: 0 10px 0 0;
    color: #333;
    display: block;
}

.filter-drop a:hover {
    color: #333;
    text-decoration: none;
}

.nodrop {
    text-transform: uppercase;
    text-align: left;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.1em;
    font-weight: 700;
    color: #333;
}

.no-drop a:hover {
    text-decoration: none;
    color: #CB857C;
}

.filter-dropdown {
    text-transform: uppercase;
    text-align: left;
    font-size: 12px;
    letter-spacing: 0.1em;
    background-color: #fff;
    border: none;
    padding-right: 12px;
    font-weight: 700;
    color: #333;
    margin: 0;
}

.filter-dropdown i {
    padding-left: 10px;
    color: #333;
}

.filter-options-drop {
    list-style: none;
    padding: .5rem 0 0;
}

.filter-item-drop {
    font-size: 12px;
    text-transform: none;
    list-style: none;
    margin: 0;
    display: block;
    width: 180px;
    /*overflow-x: hidden;*/
}

.filter-item-drop a:hover {
    text-decoration: none;
    color: #CB857C;
    font-weight: 400 !important;
}

/*sort  */

.sort-container {
    padding: 10px;
    display: block;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.428571429;
    list-style: none;
}

.dropdown-menu>.active>a,
.dropdown-menu>.active>a:hover,
.dropdown-menu>.active>a:focus {
    color: #CB857C;
}

.sort-container .dropdown-menu {
    border-radius: 0!important;
    right: 0!important;
}

.sortby .dropdown-menu {
    right: 0!important;
    border-radius: 0!important;
}

.sort-button {
    text-transform: uppercase;
    text-align: right;
    font-size: 12px;
    letter-spacing: 0.1em;
    line-height: 1.428571429;
    background-color: #fff;
    border: none;
    padding-right: 12px;
    margin: 7px 0 0;
    color: #333;
    border-radius: 0;
    padding: 10px;
    margin: 0;
    font-weight: 700;
    cursor: pointer;
}

.filter-button {
    text-transform: uppercase;
    letter-spacing: 0.1em;
    line-height: 1.428571429;
}

.sort-button i {
    padding-left: 10px;
    padding-top: 2px;
}

.sort-options {
    list-style: none;
    padding: 4rem 1rem 0 0;
    text-align: right;
}

.sort-item {
    padding: 4px 10px;
    display: block;
    font-size: 12px;
    letter-spacing: 0.1em;
    line-height: 1.428571429;
    list-style: none;
    overflow: hidden;
}

.sort-item .active,
.sort-item a:hover,
.dropdown-item.sort-item:hover {
    color: #CB857C;
    list-style: none;
    background-color: #fff !important;
    text-decoration: none;
    font-weight: 400 !important;
}

.no-results {
    padding: 20px;
    background: #faf7f4;
    max-width: 800px;
    margin: 20px 15px;
}

#browseColour .filter {
    display: inline-block;
}

.feature-cats {
    padding: 0 5%;
}

.img-rel {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: 0;
}

.ratio-4-5 {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 5;
    background-color: #faf7f4;
    overflow: hidden;
    animation: fadeInAnimation 1s ease-in-out;
}

.ratio-6-7 {
    position: relative;
    width: 100%;
    aspect-ratio: 6 / 7;
    background-color: #faf7f4;
    overflow: hidden;
    animation: fadeInAnimation 1s ease-in-out;
}

.ratio-4-3 {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    background-color: #faf7f4;
    animation: fadeInAnimation 1s ease-in-out;
}

.ratio-3-2 {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 2;
    background-color: #faf7f4;
    animation: fadeInAnimation 1s ease-in-out;
}

.ratio-pattern {
    position: relative;
    width: 100%;
    padding-top: 155%;
    background-color: #faf7f4;
    animation: fadeInAnimation 1s ease-in-out;
}

.ratio-2-3 {
    position: relative;
    width: 100%;
    aspect-ratio: 2 / 3;
    margin-bottom: 0.6rem;
    animation: fadeInAnimation 1s ease-in-out;
}

.ratio-1-1 {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    animation: fadeInAnimation 1s ease-in-out;
}

.ratio-16-9 {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    animation: fadeInAnimation 1s ease-in-out;
}

.insta-grid {
    width: 100%;
    aspect-ratio: 3 / 4;
    position: relative;
    overflow: hidden;
    background: #f0f0f0;
}

.insta-grid img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}

.scrim {
    background: linear-gradient(to top, #66534478 0%, rgb(101 92 78 / 8%) 50%, rgb(104 99 91 / 7%) 65%, rgb(162 162 162 / 6%) 75.5%, rgb(191 191 191 / 0%) 82.85%, rgb(230 230 230 / 1%) 88%, rgba(0, 0, 0, 0) 100%);
    width: calc(100% - 0.5rem);
    height: calc(100% - 0.5rem);
    position: absolute;
    bottom: 0.25rem;
    left: 0.25rem;
    z-index: 9;
    overflow: hidden;
}

.home-hero .scrim {
    bottom: 0.5rem;
}

.scrim-even {
    background: #77777726;
    width: calc(100% - 4px);
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 2px;
    z-index: 9;
    overflow: hidden;
}
/*
.video-image {
    position: relative;
    border-bottom: 1px solid #f2f2f2;

}

.video-image .scrim-even {
    border: none;
    width: calc(100% - 2px);
}

.video-image img {
    margin: auto;
}*/


/*scrollbar  */

.scrollable {
    --scrollbar-color-thumb: #d7c7ba;
    --scrollbar-color-track: #faf7f4;
    --scrollbar-width: thin;
    --scrollbar-width-legacy: 10px;
}

/* Modern browsers with `scrollbar-*` support */
@supports (scrollbar-width: auto) {
    .scrollable {
        scrollbar-color: var(--scrollbar-color-thumb) var(--scrollbar-color-track);
        scrollbar-width: var(--scrollbar-width);
    }
}

/* Legacy browsers with `::-webkit-scrollbar-*` support */
@supports selector(::-webkit-scrollbar) {
    .scrollable::-webkit-scrollbar-thumb {
        background: var(--scrollbar-color-thumb);
    }
    .scrollable::-webkit-scrollbar-track {
        background: var(--scrollbar-color-track);
    }
    .scrollable::-webkit-scrollbar {
        max-width: var(--scrollbar-width-legacy);
        max-height: var(--scrollbar-width-legacy);
    }
}

.scrollable-light {
    --scrollbar-color-thumb: #d7c7ba;
    --scrollbar-color-track: #fff;
    --scrollbar-width: thin;
    --scrollbar-width-legacy: 10px;
}

/* Modern browsers with `scrollbar-*` support */
@supports (scrollbar-width: auto) {
    .scrollable-light {
        scrollbar-color: var(--scrollbar-color-thumb) var(--scrollbar-color-track);
        scrollbar-width: var(--scrollbar-width);
    }

    .scrollable-light::-webkit-scrollbar {
        width: var(--scrollbar-width);
    }
}

/* Legacy browsers with `::-webkit-scrollbar-*` support */
@supports selector(::-webkit-scrollbar) {
    .scrollable-light::-webkit-scrollbar-thumb {
        background: var(--scrollbar-color-thumb);
    }
    .scrollable-light::-webkit-scrollbar-track {
        background: var(--scrollbar-color-track);
    }
    .scrollable-light::-webkit-scrollbar {
        width: var(--scrollbar-width-legacy);
        height: var(--scrollbar-width-legacy);
    }

    .scrollable-light::-webkit-scrollbar-button {
        display: none; /* Hide the scrollbar arrows in WebKit */
    }
}

.row.content {
    padding-top: 15px;
    padding-bottom: 20px;
    margin: 0;
    min-height: 43vh;
}

.top-nav {
    height: 40px;
}

.top-nav a:hover,
.top-nav a:focus {
    color: #CB857C;
    transition: all 0.2s;
}

.search-box {
    width: fit-content;
    height: fit-content;
    position: absolute;
    right: 100px;
    top: 15px;
    z-index: 97;
}

.fav-box {
    position: absolute;
    height: 30px;
    width: 40px;
    right: 15px;
    top: 15px;
    z-index: 100;
    text-align: center;
}

.news-box {
    position: absolute;
    right: 55px;
    top: 15px;
    z-index: 100;
    text-align: center;
    height: 30px;
    width: 40px;
}

.fav-box-m {
    display: flex;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between;
}

.news-box-m {
    display: flex;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between;
}

.input-search {
    height: 30px;
    width: 40px;
    border-style: none;
    font-size: 16px;
    outline: none;
    transition: all .5s ease-in-out;
    padding-right: 40px;
    color: #333;
    z-index: 10;
    display: block;
    background-color: #faf7f4;
    cursor: pointer;
}

.input-search::placeholder {
    color: #999;
    background-color: #faf7f4;
    font-size: 13px;
}

.search-box i {
    position: absolute;
    right: 10px;
    top: 10px;
    color: #333;
    display: block;
    pointer-events: none;
}

.btn-search:focus~.input-search {
    width: 310px;
    border-radius: 0px;
    background-color: transparent;
    border-bottom: 1px solid #999;
    transition: all 500ms cubic-bezier(0, 0.110, 0.35, 2);
}

.input-search:focus {
    width: 310px;
    border-radius: 0px;
    background-color: transparent;
    border-bottom: 1px solid #999;
    transition: all 500ms cubic-bezier(0, 0.110, 0.35, 2);
    background-color: #faf7f4;
    padding-left: 10px;
    color: #999;
}

.input-search:focus i {
    color: #CB857C;
}

/* Footer */

#footer_wrapper {
    width: 100%;
    padding: 0;
    clear: both;
    display: block;
    font-size: 13px;
    background: #faf7f4;
}

.footer {
    max-width: 1200px;
    margin: 0 auto;
    padding: 50px 10px;
    color: #333;
}
.footer .intro-text p {
    margin: 5px 0;
    font-size: 12px;
    color:#899199;
}

.footer a.list-group-item {
    background-color: #faf7f4;
    border: 2px solid #ffff;
}

.footer a.list-group-item:hover,
.footer a.list-group-item:focus {
    background-color: #faf7f4;
    color: #333;
}

.footer a.list-group-item.active {
    background-color: #d9c5ae;
    color: #fff;
    border: none;
}

#footer_wrapper .modal-header {
    border: none;
    background: #d9c5ae;
}

.footer .intro-text p {
    margin: 5px 0;
    font-size: 12px;
}

.footer ul.list-unstyled li {
    padding: 5px 0;
}

/* nav-tabs */

.nav-tabs .nav-item .nav-link {
    border: none;
    padding: 10px;
    background: #fff;
    font-size: 17px;
    /*text-transform: uppercase;*/
    font-weight: 600;
    white-space: nowrap;
    color: #333;
    cursor: pointer;
}

.nav-tabs .nav-item .nav-link.active {
    color: #cb857c;
    border: none;
    padding: 10px;
    border-bottom: 1px solid #cb857c;
}

.nav-tabs .nav-item {
    margin-bottom: 0;
}

.nav-tabs {
    border-bottom: 1px solid #fff;
}

.nav-tabs>li>a {
    margin-top: 4px;
    padding: 8px 20px 8px 20px;
    line-height: 2.0825;
    background-color: #ede5db;
}

.nav-tabs>li>a:hover,
.nav-tabs>li>a:focus {
    color: #000;
    outline: none;
    font-weight: 400;
    background-color: #eddbd5;
    text-decoration: none;
}

.nav-tabs>li.active>a {
    padding: 8px 20px 8px 20px;
    margin-top: 4px;
    color: #555;
    background-color: #fff;
    border-bottom: 1px solid #fff;
    border-bottom-color: transparent;
    cursor: default;
    outline: none;
    -webkit-transition: all .2s ease;
    -o-transition: all .2s ease;
    transition: all .2s ease
}

.breadcrumb {
    padding: 0;
    background: none;
    padding-bottom: 10px;
    margin-bottom: 0 !important;
    color: #777;
    font-size: 13px;
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
    white-space: nowrap;
    -ms-overflow-style: none;
    /* Internet Explorer 10+ */
    scrollbar-width: none;
    /* Firefox */
    flex-wrap: nowrap;
}

.breadcrumb::-webkit-scrollbar {
    display: none;
    /* Safari and Chrome */
}

.breadcrumb.center {
    text-align: center;
    justify-content: center;
}

.breadcrumb .dropdown {
    display: inline-block;
    border: 0;
}

.dropdown-menu>li>a:hover,
.dropdown-menu>li>a:focus {
    background: transparent;
}

.breadcrumb a {
    color: #777;
}

.breadcrumb a:hover {
    text-decoration: underline;
    font-size: 13px;
    font-weight: 400;
}

.pagination {
    z-index: 0;
    padding-left: 0;
    margin: 10px 0;
    border-radius: 0;
    font-size: 12px;
}

.pagination a {
    color: #333333;
}

.pagination .page-link:hover,
.pagination .page-link:focus {
    border: none;
    outline: none !important;
    box-shadow: none;
    color: #333;
    border: none;
}

.pagination .page-item.active .page-link:hover {
    color: #fff;
}

.page-item a:hover {
    text-decoration: none;
    color: #CB857C;
    font-weight: 400 !important;
}

.pagination.pagination-white>li>a {
    background-color: #fff;
}

.pagination>.active>a,
.pagination>.active>span,
.pagination>ul.active>a:hover,
.pagination>.active>span:hover,
.pagination>.active>a:focus,
.pagination>.active>span:focus {
    background-color: #bc9787!important;
    border-color: #bc9787!important;
    color: #ffffff;
}

.pagination>li>a,
.pagination>li>span {
    border-color: #faf7f4;
    background: #faf7f4;
    border-radius: 50% !important;
    padding: 7px;
    margin: 1px;
    width: 33px;
    height: 33px;
    text-align: center;
    color: #333;
}

.pagination>li>a:hover,
.pagination>li>a:focus {
    background-color: #f5eee6;
    border-radius: 50%;
}

.pager-bar.pagination>li>a,
.pager-bar.pagination>li>span {
    background: #fff;
    width: auto;
    border: none;
    text-transform: uppercase;
    font-size: 13px;
    display: block;
}

.pager-bar.pagination>li>a:hover,
.pager-bar.pagination>li>a:focus {
    border: none;
    color: #cb857c;
    outline: none !important;
    box-shadow: none;
    text-decoration: none;
    font-weight: 400 !important;
}

.pager-bar.pagination>li>a.page-link:hover {
    border: none;
    color: #cb857c;
    text-decoration: none;
    font-weight: 400 !important;
}

.carousel .slide {
    -webkit-transition: all .8s;
    -o-transition: all .8s;
    transition: all .8s;
}

.carousel-control {
    height: 40px;
    width: 40px;
    background: none scroll #bc9787;
    border-radius: 23px;
    position: absolute;
    top: 38%;
    z-index: 50;
}

.carousel-control i {
    top: 33%;
    left: 17px;
    color: rgb(255, 255, 255);
    position: absolute;
    text-shadow: none;
}

.carousel-control {
    opacity: 1;
    font-size: 12px;
}

.carousel-control:hover,
.carousel-control:focus {
    background: none scroll #c2ada4 !important;
}

.carousel-control.right {
    right: -15px;
    background-image: none;
}

.carousel-control.left {
    left: -15px;
    background-image: none;
}

.heading {
    line-height: 50px;
    margin: 15px 0;
    overflow: hidden;
    padding: 20px 0 0 20px;
    background: #faf7f4;
}

.heading p {
    text-transform: uppercase;
    float: left;
    font-size: 14px;
    letter-spacing: 0.1em;
}

.heading .categories-seeall {
    float: right;
    padding: 0 20px 0 0;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 0.1em;
}

.heading a:hover {
    color: #bc9787;
    font-weight: 400;
}

.row.divider {
    padding: 0;
    border-top: 1px dotted #dedede;
    margin: 10px 0;
}

.row.home {
    margin: 0;
}

.home .home-hero a {
    color: #fff !important;
}

.home .hero-text-col a {
    color: #fff !important;
}

.row.yarns {
    margin: 0;
}

.row.gallery {
    margin: 0;
    padding: 0 3%;
}

.row.yarns.yarns-home {
    padding: 0 4%;
}

.carousel-indicators {
    position: static;
    margin: 20px 0 0;
    overflow-x: scroll;
    display: inline;
}

.carousel-indicators>li {
    height: 8%;
    width: 15% !important;
    border-bottom: 0;
    opacity: 1;
}

.carousel-indicators li {
    text-indent: 0;
}

.carousel-indicators li img {
    display: block;
}

.carousel-indicators li.active {
    border: 1px solid #333;
}

.container-indicators {
    width: 102%
}

.list-inline-item:not(:last-child) {
    margin: 0 5px 0 0;
}

.list-inline-item:last-child {
    margin: 0;
    padding: 0;
}

.carousel-indicators.carousel-4img>li {
    width: calc(25% - 8px) !important;
}

.carousel-indicators.carousel-5img>li {
    width: calc(20% - 7px) !important;
}

.carousel-indicators.carousel-6img>li {
    width: calc(16.67% - 8px) !important;
}

.carousel-indicators.carousel-2-3img>li {
    width: calc(33% - 8px) !important;
}

.carousel.pointer-event {
    touch-action: manipulation;
}

.pattern-related {
    padding: 0;
    margin: 10px;
}

.pattern-related h3 {
    margin: 30px 0 10px -10px;
}

.favourite {
    font-size: 20px;
    padding: 0 0 20px 0;
}

.favourite a {
    color: #333;
}

.favourite a:hover,
.favourite a:focus {
    color: #bc9787;
}
.favourite-yc {
    font-size: 20px;
    padding: 0 0 20px 0;
}

.favourite-yc a {
    color: #333;
}

.favourite-yc a:hover,
.favourite-yc a:focus {
    color: #bc9787;
}

.max-400 {
    max-height: 400px;
    overflow-y: scroll;
    overflow-x: hidden;
}

.max-650 {
    max-height: 650px;
    overflow-y: scroll;
    overflow-x: hidden;
}

.nav-pattern {
    display: flex;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    -webkit-justify-content:flex-end;
    justify-content:flex-end;
    -ms-flex-pack:flex-end;
    margin-left: auto;
}

.share-container {
    position: relative;
}

.pattern-share-new, .pattern-print {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    z-index: 20;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
    list-style: none;
    padding: 0;
    margin-top: 15px;
    text-align: right;
}

.pattern-share-new.active {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0); 
}

.share-button {
    cursor: pointer;
}

.share-button.active i {
    color: #cb857c; 
}

.pattern-share-new li,
.pattern-print li {
    display: inline-block;
    margin-right: 10px;
}

.pattern-share-new i,
.pattern-print i {
    margin-right: 5px;
}

.pattern-share-new a,
.pattern-print a {
    padding: 20px;
    display: flex;
    align-items: center; 
    white-space: nowrap;
    height: 40px;
    background-color: #ede5db;
    margin: 0 5px 7px;
    border-radius: 20px;
    box-shadow: 0 6px 12px rgb(0 0 0 / 5%);
}

.pattern-share-new a:hover,
.pattern-print a:hover {
    height: 40px;
    background-color: #eddbd5;
    color: #333;
    text-decoration: none;
    margin: 0 5px 7px;
    border-radius: 20px;
}

.pattern-share-new a i,
.pattern-print a i {
    font-size: 17px;
    padding: 0px;
    margin: 8px;
    font-size: 16px;
    color: #333;
}

.thumb-caption {
    margin-bottom: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
    color: #666;
}

.thumb-caption a {
    color: #666;
}

.video-description .cat-img a:hover {
    text-decoration: none;
}

.product-label {
    position: absolute;
    z-index: 1;
    font-weight: 400;
    padding: .1rem .9rem;
    min-width: 45px;
    text-align: center;
    color: #333333;
    background-color: #fff;
    text-transform: uppercase;
}

.label-newp {
    color: #fff;
    background-color: #d6a099;
    font-size: 10px;
    top: 0.8rem;
}

.label-discontinued {
    color: #fff;
    background-color: #aaa;
    font-size: 10px;
    top: 0.8rem;
}

.label-coming-soon {
    color: #fff;
    background-color: #d6a099;
    font-size: 10px;
    top: 0.8rem;
}

.product-action-vertical {
    display: flex;
    flex-direction: column;
    position: absolute;
    right: 1.8rem;
    top: 0.1rem;
    background-color: transparent;
    z-index: 10;
    transform: translateX(-15px);
}

.pattern .product-action-vertical {
    transform: translate(10px, 10px);
}

.btn-product-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: none;
    font-size: .9rem;
    line-height: 1;
    padding: 0;
    border-radius: 50%;
    color: #333;
    background-color: #fff;
}

.products-category-grid-media-container {
    display: flex;
    justify-content: space-between;
    position: relative;
    width: calc(100% + 1px);
    margin-bottom: -1.5px;
}

.products-category-grid-media-carousel {
    width: 100%;
}

.products-category-grid-media-carousel__viewport {
    display: flex;
    -ms-overflow-style: none;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.products-category-grid-media-carousel ul,
.products-category-grid-media-carousel ul li {
    list-style: none;
}

.products-category-grid-media-carousel-item {
    flex-shrink: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    width: 100%;
}

.print-only {
    display: none;
}

.contact-us a {
    text-decoration: underline;
}

.videoWrapper {
    position: relative;
    padding-bottom: 56.31%;
    height: 0;
    margin-bottom: 10px;
}

.videoWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*.videoWrapper.pattern-video iframe {
    padding: 0 12px 18px 0;
}*/

.videoWrapper.ratio-1-1 {
    padding-top: 44%;
    margin: 0;
}

.videoWrapper.ratio-2-3 {
    padding-top: 98.3%;
    margin-bottom: 0.4%;
}

/* Product grids */

.buttons .prod_desc {
    font-size: 12px;
}

.buttons .prod_desc .price {
    margin-top: 5px;
    font-weight: 700;
    margin-bottom: 5px;
}

.needles .prod_desc {
    font-size: 12px;
}

.needles .prod_desc .price {
    margin-top: 5px;
    font-weight: 700;
    margin-bottom: 5px;
}

.needles .campaign {
    position: absolute;
    top: 10px;
    right: 25px;
    width: 40px;
    width: 40px;
}

/***** search.php *****/

.buttons-container{
    display: flex;
    justify-content: space-between;
}

.knitting-btn, .crochet-btn {
    letter-spacing: 0.05rem;
    line-height: 1.428571429;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
    min-width: 140px;
    color: #333;
}

.knitting-btn {
    margin-right: 3px;
}

.crochet-btn {
    margin-left: 3px;
}

.knitting-btn.default,
.crochet-btn.default {
    background-color: #faf7f4;
    padding: 10px 15px;
}

.knitting-btn.active,
.crochet-btn.active {
    background-color: #eddbd5;
    padding: 10px 15px;
}

.buttons-container a:hover {
    color: #cb857c;
    text-decoration: none;
}

.search-patterns .patterns {
    margin: 0 -5px 0;
}

.filter-counter {
    margin: 20px 0 0;
}

.scrollable-menu {
    height: auto;
    max-height: 40vh;
    overflow-x: hidden;
    overflow-y: auto;
}

/************* index.php *************/

.intro-main {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    transition: 0.5s;
    font-family: "Lato", sans-serif;
}

.intro-main h4 {
    font-family: "Lato", sans-serif;
    font-weight: 700;
    font-size: 15px;
}

.intro-main .left-section {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 50%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
}

.intro-main .right-section {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 50%;
    height: 100%;
    overflow: hidden;
    overflow-y: auto;
}

.intro-main .right-section .grid-content {
    padding: 20px;
}

.intro-main .top-section {
    width: 100%;
    height: 30%;
    display: block;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
}

.intro-main .visible-xs .top-section {
    background-position: center top;
}

.intro-main .down-section {
    width: 100%;
    position: absolute;
    top: 30%;
    display: block;
}

.intro-main .down-section .grid-content {
    padding: 0 20px;
}

.intro-main .list-langs {
    list-style: none;
}

.intro-main ul.list-langs {
    margin: 0 !important;
    padding: 0 !important;
}

.intro-main ul.list-langs li {
    padding: 2px;
}

.intro-main ul.list-langs li:hover {
    font-weight: 700;
    color: #cb857c;
    background: #fff;
}

.intro-main ul.list-langs a:hover {
    text-decoration: none;
}

.intro-main .section-spacer {
    height: 40px;
}

.intro-main .grid-footer {
    color: #666;
    padding: 10px 0;
    border-top: 1px dotted #e5e5e5;
    margin-top: 20px;
}

.intro-main .grid-footer a {
    color: #666;
}

/***** pattern.php *****/

.pattern-header, .pattern-intro, .pattern-diagrams, .navtabs-wrapper, .overflow-hidden {
    overflow: hidden;
}

.pattern-title h3 {
    font-weight: 400;
}

.pattern-print {
    position: absolute;
    top: 35px;
    left: 35px;
}

.pattern-print.active {
    opacity: 1;
    visibility: visible;
    transform: translate(-85%, 0); 
}

.pattern-intro {
    padding: 10px 0;
}

.pattern-instructions {
    padding-top: 10px;
    position: relative;
}

.pattern-instructions a {
    text-decoration: underline;
}

.pattern_text {
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 10px;
}

.pattern-prices a {
    text-decoration: underline;
}

.pattern-note {
    font-style: italic;
}

.pattern_copyright {
    font-size: 12px;
    color: #666;
    line-height: normal;
    background: #f5f5f5;
    padding: 20px 15px;
}

#diag_symbols {
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 15px;
}

#diag_symbols tr td {
    vertical-align: top;
}

#diag_symbols tr td.symbol {
    text-align: right;
}

.table td.symbol {
    text-align: right;
    min-width: 50px !important;
}

.pattern-material {
    font-size: 14px;
    line-height: 1.7;
}

.pattern-corrections p.warning, 
.pattern-corrections p.warning a {
    color: #cc3366;
}

.circle {
    display: inline;
    padding: 3px;
    margin: 1px;
    border-radius: 50%; 
    border: 1px solid #888888; 
    text-align: center;
}

.button-lines {
    padding: .6rem 1rem;
    border: 1px solid #253e5047;
    cursor: pointer;
    display: inline-block;
    width: 100%;
    background: #fff;
}

.button-lines i{
    position: absolute;
    width: 25px;
    right: 0;
    top: 25px;
    padding: 18px 5px;
    font-size: 11px;
    letter-spacing: 0.05rem;
}

.size-btn {
    height: 36px;
    min-width: calc(12% - 10px);
    border: 1px solid #253e5047; 
    background-color: #fff;
    cursor: pointer;
    transition: all 0.3s; 
    color: #333;
    text-decoration: none;
    font-size: 12px;
    margin: 2px 1px;
}

.size-btn:hover {
    background-color:rgb(250 242 237);
}

.size-btn.active {
    border-color: #d6a099;
    background-color: #d6a099;
    color: white;
}

.quickexplanation {
    text-decoration: none;
    border-bottom: 1px solid #253e5061;
}

.quickexplanation:hover {
    text-decoration: none;
    border-bottom: 1px solid #cb857c;
    color: #cb857c;
}

.quickexplanation:focus {
    text-decoration: none;
    border-bottom: 1px solid #cb857c;
    color: #cb857c;
}

[data-toggle="popover"] {
    cursor: pointer;
}

.popover-header{
    background-color: #faf7f4;
    border-bottom: 1px solid #ffffff;
}

.popover-body{
    color:#333;
}
.popover {
    border: 1px solid #faf7f4;
    box-shadow: 0 -8px 10px 0 rgba(0,0,0,0.1), 0 8px 10px 0 rgba(0,0,0,0.1), 0 6px 20px 0 rgba(0,0,0,0.09);
}

.popover-title-text {
    display: inline-block;
    vertical-align: middle;
}

.popover-close-icon {
    float: right;
    margin-top: 10px;
    cursor: pointer; 
}

.bs-popover-auto[x-placement^=top]>.arrow::before, .bs-popover-top>.arrow::before {
    border-top-color: #faf7f4 !important;
}

.sticky {
    position: static;
    display: none;
    transition: opacity 0.3s ease-in-out;
}

.modal.modal-transparent.fade .modal-dialog {
    /*transform: translate(50vw, 100%);
    transition: transform 0.3s ease-out;*/
    max-width: 600px;
}

.modal.modal-transparent.show .modal-dialog {
    /*transform: translate(0, 0);*/
    max-width: 600px;
}

/*@media (min-width: 768px) {
    .modal.modal-transparent .modal-dialog {
        transform: translate(30vw, 100%);
    }
}*/

#resultfelle {
    font-family: inherit;  
    font-size: inherit;    
    color: inherit;       
    background: transparent;  
    white-space: pre-wrap;   
}

#result {
    font-family: inherit;  
    font-size: inherit;    
    color: inherit;       
    background: transparent;  
    white-space: pre-wrap;   
}

.pattern-ad {
    padding: 10px 15px 0 0;
    margin-bottom: 50px;
}

.video-list-pattern li,
.lesson-list-pattern li,
.max-400 li {
    list-style: none;
}

.video-list-pattern a {
    text-decoration: none;
}

.faq {
    position: relative;
    font-size: 13px;
    padding: 10px 15px;
    display: block;
    line-height: 1.7;
    transition: color .25s cubic-bezier(.215, .61, .355, 1);
    overflow: hidden;
    background-color: #faf7f4;
}

.faq i {
    position: absolute;
    width: 30px;
    right: 0;
    top: 0;
    padding: 25px 5px;
    font-size: 11px;
    letter-spacing: 0.05rem;
}

.faq a {
    display: block;
    cursor: pointer;
}

div.pfaq {
    font-weight: bold;
}

.pfaq p {
    font-size: 13px;
    margin-bottom: 8px;
    font-weight: normal;
}

.pfaq p.pfaq-a {
    margin-top: 15px;
    font-weight: bold;
}
.pfaq p a {
    text-decoration: underline;
}

.pfaq .pfaq-q {
    margin-bottom: 5px;
}

.table-products {
    margin: 0;
}

.table.table-products>tbody>tr>td {
    border: none;
}

.table .table-products td {
    vertical-align: middle;
}

.table-products td.thumb {
    width: 150px;
}

/***** convertions.php *****/

.input-group-text {
    color: #333;
    background-color: #ede5db;
    border: 1px solid #ede5db;
    border-radius: 0;
}

.wash-care-container {
    border-bottom: 1px solid #eee;
    padding: 10px 15px;
}

/***** yarn.php *****/

.yarn_header {
    line-height: 1.7;
}

.oeko-text {
    font-size: 12px;
    color: #666;
}

.caption-yarn {
    padding: 10px 10px 0 10px;
    background: #ede5db;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
    height: 38px;
}

.yarn-wash-container {
    position: relative;
    height: 50px;
    margin: 10px 0;
}

.yarn-wash {
    height: 50px;
    margin: 10px 0;
}

.yarn-wash img {
    height: 50px;
    width: auto;
    position: absolute;
    top: -10px;
    left: -5px;
}

.row.prices,
.row.prices-header {
    background: #fff;
    padding: 10px 0;
    margin: 0;
}

.row.prices-header {
    font-weight: 700;
}

.price-table {
    min-width: 90px;
}

td.sn,
th.sn {
    padding-left: 55px;
    line-height: 15px;
}

td.sn h4 {
    margin: 0;
    padding: 3px 0;
}

td.sn.superstore {
    background: url('/img/retailers/store-icons-flat-superstore_sm.png') no-repeat 5px 5px;
}

.yarn-prices {
    background: #faf7f4;
    padding: 10px;
    margin: 15px 0;
    font-size: 13px;
}

.yarn-prices .content-panel {
    background: #faf7f4;
    padding: 10px 0;
}

.shadecard-images {
    position: absolute;
    z-index: 5;
    top: 7px;
    right: 12px;
    font-size: 1.4rem;
    color: #ffffffad;
}

.yarn-colour .info {
    height: 50px;
    overflow: hidden;
    font-size: 11px;
    padding: 5px 0;
}

/* yarn.php and needle.php */

.yprice {
    float: right;
    margin: 0;
    text-align: right;
    clear: right;
}

.yprice a {
    color: #666;
}

.yprice .from {
    margin: 0;
    line-height: 13px;
    color: #666;
    font-size: 11px;
}

.yprice .cost1 {
    font-size: 22px;
    margin: 0;
}

.yprice .cost2 {
    padding-top: 2px;
}

/***** yarns.php *****/

.yarns {
    margin: 0;
}

.yarns .sort-container {
    margin: 50px 0 20px;
}

.yarns .prod_desc {
    font-size: 12px;
    margin-bottom: 5px;
}

.yarn .prod_desc .price {
    margin-top: 5px;
}

.sale-campaign {
    color: #df4655;
    font-weight: 700;
    margin: 0;
    font-size: 14px;
}

.yarn .prod_desc .extra-info {
    font-size: 10px;
}

.yarns .yarn {
    position: relative;
    line-height: 16px;
}

.yarns .yarn .campaign {
    position: absolute;
    padding: 0.1rem 0.9rem;
    min-width: 45px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    background-color: #df4655;
    font-size: 12px;
    top: 2.5rem;
    left: 5px;
}

.yarns .yarn .campaign2 {
    position: absolute;
    padding: 0.1rem 0.9rem;
    min-width: 45px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    background-color: #333;
    font-size: 12px;
    top: 2.5rem;
}

.yarns .new {
    position: absolute;
    padding: 0.1rem 0.9rem;
    min-width: 45px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    background-color: #d6a099;
    font-size: 10px;
    top: 1rem;
    z-index: 9;
}

.yarn-colour .discontinued {
    position: absolute;
    padding: 0.1rem 0.9rem;
    min-width: 45px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    background-color: #aaa;
    font-size: 10px;
    top: 1rem;
    z-index: 5;
}

.yarn-colour .new {
    position: absolute;
    padding: 0.1rem 0.9rem;
    min-width: 45px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    background-color: #d6a099;
    font-size: 10px;
    top: 1rem;
    z-index: 5;
}

.yarn-colour .comingsoon {
    position: absolute;
    padding: 0.1rem 0.9rem;
    min-width: 45px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    background-color: #d6a099;
    font-size: 10px;
    top: 1rem;
    z-index: 5;
}

.yarn-colour .colour-match {
    position: absolute;
    color: #fff;
    font-size: 1.5rem;
    top: 5px;
    right: 5px;
    z-index: 8;
}

.yarns .color .prod_desc {

    font-size: 12px;
    margin-bottom: 10px;
}

.yarns .color .prod_desc h4 {
    overflow: hidden;
    white-space: nowrap;
}

.yarns .color .prod_desc .yarnname {
    overflow: hidden;
    white-space: nowrap;
}

.yarns .color .prod_desc .price,
.needles .prod_desc {
    margin-top: 5px;
}

.yarns .color .campaign {
    position: absolute;
    padding: .1rem .9rem;
    min-width: 45px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    background-color: #df4655;
    font-size: 11px;
    top: 2.5rem;
    left: 5px;
    z-index: 9;
}

/***** yarn-combinations *****/

.sort-combinations {
    padding: 0 10px;
}

.video-play {
    display: block;
    width: 50px;
    height: 50px;
    line-height: 42px;
    margin-left: -23px;
    background-color: transparent;
    font-size: 15px;
    text-align: center;
    color: #fff;
    border-radius: 50%;
    border: 3px solid #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
}

.video-play i {
    position: relative;
}

.yarn-comb {
    position: relative;
}

.yarn-comb i {
    position: absolute;
    font-size: 16px;
    top: 15px;
    right: 10px;
    z-index: 5;
    color: #ccc;
}

.yarn-comb i:hover {
    color: #cb857c;
    border-color: #cb857c;
}

.yarn-comb .caption {
    height: 90px;
} 

.caption-yarncomb1 {
    padding: 10px 10px 0 10px;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
    height: 30px;
    font-weight: 700;
}

.caption-yarncomb2 {
    padding: 0 10px 10px 10px;
    margin-bottom: 0px;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
    height: 20px;
    font-weight: 700;
}

.caption-yarncomb3 {
    padding: 0 10px 10px 10px;
    margin-bottom: 20px;
    text-align: center;
    font-size: 12px;
    height: 30px;
}

/***** colours.php *****/

.colours .yarns {
    margin: -15px 0;
}

.row.sort-colours {
    margin: 0 0 10px 0;
}

.row.yarns.yarn-colours {
    margin: 0;
    padding: 0 15px;
}

.sale-campaign-c {
    color: #df4655;
    font-weight: 700;
    margin: 0;
    font-size: 12px;
}

/*search.php and videos.php*/

#sidecats {
    width: 100%;
    color: #333;
    margin: 0 auto;
    line-height: 30px;
    letter-spacing: 0.02em;
    font-family: 'Lato', sans-serif;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#sidecats a {
    color: #333;
}

#sidecats h3 a {
    padding: 0 10px;
    display: block;
    text-decoration: none;
}

#sidecats a.bigcats {
    margin: 15px 0;
    padding: 0;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.428571429;
}

#sidecats li {
    margin-left: 5px;
    padding: 0;
    list-style-type: none;
}
#sidecats ul {
    padding-inline-start: 0;
}

#sidecats ul ul li a {
    font-size: 13px;
    margin: 0;
    text-decoration: none;
    height: 25px;
    display: block;
    transition: all 0.15s;
    position: relative;
}

#sidecats ul ul li a:hover {
    text-decoration: underline;
    color: #333;
}

#sidecats ul ul {
    display: none;
}

#sidecats li.active>ul {
    display: block;
}

#sidecats ul ul ul {
    font-size: 11px;
    margin-left: 5px;
}

#categories-mobile,
#categories-mobile ul {
    padding-inline-start: 0;
    list-style: none;
}

#categories-mobile li {
    list-style: none;
}

#categories-mobile ul li {
    list-style: none;
}

#categories-mobile li a {
    display: block;
    padding: 0 15px 0 35px;
}

#categories-mobile .maincat {
    text-transform: uppercase;
    padding: 0 15px 0 15px;
    background-color: #faf7f4;
}

#categories-mobile li,
#categories-mobile ul li {
    display: block;
    text-align: left;
    line-height: 47px;
    color: #333;
    cursor: pointer;
    font-size: 1rem;
    border-top: 1px solid #e8e8e8;
}

#categories-mobile li ul li ul li a {
    padding: 0 15px 0 55px;
}

#categories-mobile li ul li ul li ul li a {
    padding: 0 15px 0 75px;
}

#sidecats a:not(:only-child):after {
    content: "+";
    position: absolute;
    right: 30px;
    top: 0;
    padding: 0 5px;
    font-size: 13px;
    font-weight: 700;
    background: #fff;
}

#sidecats .active>a:not(:only-child):after {
    content: "";
}

#sidecats .active-selected a {
    font-weight: 700;
    color: #CB857C;
}

.cat .cat-text-container {
    position: absolute;
    bottom: 10px;
    left: 0;
    width: 100%;
    z-index: 10;
    overflow: hidden;
}

.cat-text {
    text-align: center;
    letter-spacing: .3px;
    padding: 6px;
    margin: 10px 23%;
    color: #fff;
    font-size: 16px;
    line-height: 1;
}

/***** home.php *****/

.cat-name {
    padding: 10px 0 5px;
    font-size: 13px;
    text-align: center;
}

.yarns-home {
    padding: 15px 0;
    margin: 0;
}

/***** home.php and videos.php *****/

.browse-cats {
    margin: 0 15px;
}

.browse-cats .cat {
    position: relative;
    text-align: center;
}

.browse-cats .cat .cat_img img {
    max-width: 100%;
}


/***** videos.php *****/

.card {
    border: none;
}
.card-body{
    padding: 1rem 0;
    min-height: 135px;
}
.card-text {
    font-size: 12px;
}
.video-play-icon {
    display: block;
    width: 40px;
    line-height: 40px;
    margin-left: 0;
    background-color: #30241ea8;
    font-size: 18px;
    text-align: center;
    color: #fff;
    border-radius: 50%;
    position: absolute;
    left: calc(50% - 20px);
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    border:none
}
.video-play-icon:hover {
    color:#fff;
    border: none;
}
.white-border {
    border-left: 2px solid #fff;
    border-right: 2px solid #fff;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 8;
}
.video-description {
    font-size: 14px;
}
.video-search-results a:hover {
    text-decoration: none;
    color: #333;
}
.video-home a:hover {
    text-decoration: none;
    color: #333;
}

.cat-text-video {
    text-align: center;
    letter-spacing: .3px;
    padding: 6px;
    margin: 10px 23%;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
}

/***** christmas-calendar.php *****/

.activity-text {
    clear: both;
    max-width: 350px;
    min-height: 90px;
    margin: 15px auto 25px;
    text-align: center;
}

.christmas-calendar {
    margin-top: 0;
    margin-bottom: 0;
    padding: 60px 20px 30px 20px;
    background: url("/img/holidays/christmas-calendar_ft-bg.jpg") no-repeat center top;
    color: #000;
    font-size: 14px;
}

.christmas-calendar .activity-text {
    max-width: 450px;
    margin: 0 auto 25px;
}

.christmas-doors {
    margin: 0 auto;
    max-width: 1180px;
}

.christmas-modal .modal-content {
    border-radius: 1px;
    background-color: #fff;
    max-width: 450px;
    margin: 0 auto;
}

.christmas-modal .modal-content .text {
    padding: 20px;
    text-align: center;
}


/***** yarn-groups.php *****/

.label-new {
    color: #f8c779;
    border: 1px solid #f8c779;
    font-size: 12px;
    padding: .2rem .4rem;
    line-height: 2;
    font-weight: 600;
    border-radius: 2px;
    margin-right: 5px;
}

.label-comingsoon {
    color: #f0a76b;
    border: 1px solid #f0a76b;
    font-size: 12px;
    padding: .2rem .4rem;
    line-height: 2;
    font-weight: 600;
    border-radius: 2px;
    margin-right: 5px;
}

.label-superwash {
    color: #e09ab5;
    border: 1px solid #e09ab5;
    font-size: 12px;
    padding: .2rem .4rem;
    line-height: 2;
    font-weight: 600;
    border-radius: 2px;
    margin-right: 5px;
}

.label-feltable {
    color: #6383b4;
    border: 1px solid #6383b4;
    font-size: 12px;
    padding: .2rem .4rem;
    line-height: 2;
    font-weight: 600;
    border-radius: 2px;
    margin-right: 5px;
}

/***** catalogues.php *****/

ul.pager-bar .dropdown-menu>li>a {
    font-size: 13px;
    text-align: left;
    padding: 3px 10px;
}

.text-inspiration {
    font-style: italic;
    text-align: center;
    margin: 0 auto 20px auto;
    max-width: 500px;
}

.catalogue_no {
    text-align: right;
    padding: 0 10px;
    position: absolute;
    right: 25px;
    bottom: 15px;
    font-weight: 600;
    font-size: 12px;
    color: #666;
    line-height: 30px;
    background: #fefefec2;
}

/* Findastore.php */

.stores {
    margin-top: 15px;
}

.stores table th {
    background: #eddbd5!important;
    color: #fff!important;
}

.stores table tr.sub-header th {
    background: #e2f0d9!important;
    color: #333!important;
}

.stores table th a {
    color: #fff!important;
}

/***** retailer.php *****/

.store {
    margin-top: 20px;
    font-family: 'PT Sans', sans-serif;
}

.store .product {
    position: relative;
}
.store .product h3 {
    font-size: 16px;
}

.product .campaign {
    position: absolute;
    padding: .1rem .9rem;
    min-width: 45px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    background-color: #333;
    font-size: 11px;
    top: 2.5rem;
    z-index: 5;
}

.store .product .caption {
    min-height: 100px;
}

.retailer-prices{
    font-size: 12px;
}

.store .store_icon {
    display: block;
}

.store .store_cover {
    text-align: center;
    position: relative;
    padding-top: 50px;
    margin: 0;
}

.store .store_cover .store_profile {
    max-width: 500px;
    background: #fff;
    padding: 5px 15px;
    margin: 0 auto 20px auto;
}

.store .store_address {
    font-size: 12px;
    margin-bottom: 10px;
}

.store .store_social {
    margin-bottom: 10px;
}

.store .store_about {
    padding: 10px 15px;
    margin: 10px auto;
}

.store .store_about a {
    text-decoration: underline;
    color: #cb857c;
}

.store .morecontent span {
    display: none;
}

/***** pricelist.php *****/

.table.yarn-list {
    font-size: 12px;
}

.table.prices {
    min-width: 80px;
}

.yarn-pricelist{
    min-width: 40vw;
}


/***** my-favorites.php and video.php *****/

.video-padding {
    padding: 0 5%;
}

.video-duration {
    position: absolute; 
    bottom: 6px; 
    left: 8px; 
    background-color: rgba(0, 0, 0, 0.75); 
    color: white; 
    padding: 2px 5px; 
    font-size: 12px; 
    border-radius: 3px;
}

.content .favorite {
    position: relative;
}

.unfav {
    position: absolute;
    top: 10px;
    right: 10px;
    border-radius: 50%;
    background: #f2f2f2;
    padding: 3px 8px;
    z-index: 20;
}

.my-favourites .well {
    max-width: 800px;
}

.my-favourites .favorite a:hover {
    text-decoration: none;
}

.my-favourites .favorite a small:hover {
    text-decoration: underline;
}


/* ss25 voting & collection */

.content.vote-full.ss25 {
    position: relative;
    font-family: 'Lato', sans-serif;
    color: #333;
    margin: 0;
    padding: 0 3%;
    /*background: url('/img/activity/collection/ss25-vote_ft-bg.jpg') no-repeat center top;*/
    font-size: 14px;
}

.content.collection-full.ss25 {
    position: relative;
    font-family: 'Lato', sans-serif;
    color: #333;
    margin: 0;
    /*background: url('/img/activity/collection/aw2425-vote_ft-bg.jpg') no-repeat center top;*/
    font-size: 14px;
}

.row .voting {
    margin: 0 auto;
    max-width: 1180px;
}

.row .collection {
    margin: 0 auto;
    max-width: 1180px;
}

.text-margin {
    margin: 30px 110px 50px 80px
}

.ss25-comment {
    max-width: 1180px;
    background: #faf7f4;
    padding-top: 20px;
    margin-bottom: 30px;
}

.ss25 .ss25-comment .text {
    padding: 30px 10px 0 50px;
    color: #333;
    font-size: 13px;
}

.media-2 {
    max-height: 190px;
    width: auto;
}

.model-img {
    position: relative;
}

.content.ss25 .pattern h4 {
    font-size: 18px !important;
    font-weight: 700;
}

.v-info {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px;
}

.collection-text {
    font-size: 14px;
    line-height: 1.7;
    max-width: 700px;
    margin: 25px auto;
    text-align: center;
}

.content.ss25 .activity-text {
    font-size: 14px;
    line-height: 1.7;
    max-width: 700px;
    margin: 40px auto 25px;
    text-align: center;
}

.content .ss25 .vt_model {
    margin-bottom: 5px;
}

.drops-n {
    font-size: 14px;
    font-weight: 700;
}

.c-name {
    margin: 10px 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 600;
    font-size: 15px;
    text-align: center;
}

.s-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 600;
    font-size: 15px;
    text-align: center;
}

.s-name a {
    color: #cb857c;
}

.vot-desc {
    font-size: 12px;
    text-align: center;
}

.vot-comm {
    margin: 10px 0;
    text-align: center;
}

.comm i {
    margin: 0 5px;
    font-size: 16px;
}

.comm a {
    margin: 0 5px;
}

.comm a:hover {
    text-decoration: none;
}

.comm-c {
    text-align: center;
}

.comm-c i {
    margin: 0 5px;
    font-size: 16px;
}

.comm-c a:hover {
    text-decoration: none;
}

.content.ss25 .votes_left {
    z-index: 900!important;
    width: 250px;
    margin: 0;
    background: #c9c3dd;
    color: #333;
    position: fixed;
    bottom: 0;
    left: 50%;
    margin-left: -125px;
    padding: 20px;
    font-size: 13px;
    text-align: center;
}

.content.ss25 .no_votes_left {
    z-index: 900!important;
    width: 250px;
    margin: 0;
    background: #9b90c1;
    color: #fff;
    position: fixed;
    bottom: 0;
    left: 50%;
    margin-left: -125px;
    padding: 20px;
    font-size: 13px;
    text-align: center;
}

#vote-button {
    margin: 0 0 10px;
    color: #3e4840;
    background: #f3ebe3;
    border-radius: 2px;
    overflow: auto;
    width: 100%;
}

#vote-button label {
    width: 100%;
    margin: 0 !important;
}

#vote-button label span {
    text-align: center;
    padding: 10px 0px;
    font-size: 11px;
    display: block;
    font-size: 13px;
}

#vote-button label input {
    display: none;
}

#vote-button input[type="checkbox"]:checked+.button-checkbox {
    background-color: #e7b2aa;
    color: #fff;
    border: none;
    content: "";
}

#vote-button input[type="checkbox"]:not(:checked)+.button-checkbox {
    background: #f3ebe3;
    cursor: pointer;
    color: #333;
    border: none;
    content: "";
}

.vot-mod {
    padding-left: 20px !important;
}

.vot-comm {
    text-align: right;
    padding-right: 15px !important;
    margin: 0;
}

.hero-header {
    position: relative;
}

.hero-header img {
    position: absolute;
    top: 0;
}

/* dropsalong */

.row.dropsalong .clue p {
    font-size: 14px;
    line-height: 1.7;
}

.row.dropsalong p a {
    color: #666;
    text-decoration: underline;
}

.row.dropsalong p a:hover,
.row.dropsalong p a:focus {
    color: #cb857c;
    font-weight: 400;
}

.row.dropsalong img {
    max-width: 100%;
    height: auto;
}

.img-cal {
    margin-bottom: 10px;
}

ul.cal-clues {
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: 24px;
    padding-bottom: 30px;
}

ul.cal-clues i {
    color: #bc9787;
    padding: 5px;
}

ul.cal-clues li.gray i {
    color: #b1b1b1;
}

ul.cal-clues li.more {
    padding-top: 5px;
}

.caption-xs {
    height: 35px;
    padding: 5px 0;
    overflow: hidden;
    text-align: center;
    margin-bottom: 20px;
    background-color: #fff;
}

.dropsalong .choose-country-container {
    margin-right: 0 !important;
}

.row.dropsalong .fa-child {
    color: #418d49;
    font-size: 16px;
}

.row.dropsalong .fa-female {
    color: #b62826;
    font-size: 16px;
}

.row.dropsalong .fa-male {
    color: #4a90e2;
    font-size: 16px;
}

/* Lessons */

.lessons {
    font-size: 14px;
    line-height: 1.7;
}

.lessons img {
    max-width: 100%;
}
.lessons iframe {
    padding: 10px 0;
}

.lessons a {
    text-decoration: underline;
}

.lessons-title-cont {
    min-height: 60px;
}

.lessons-title {
    margin-top: 0;
    font-size: 20px;
    line-height: 1.3;
    display: -webkit-box;
   -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.videos-title {
    margin-top: 0;
    line-height: 1.3;
    display: -webkit-box;
   -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.line-clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;  
    overflow: hidden;
    text-overflow: ellipsis;
}

.lesson-week {
    height: 230px;
    overflow: hidden;
}

.lesson-week a {
    letter-spacing: .03rem;
    text-decoration: underline;
}

.lesson-week a:hover,
.lesson-week a:focus {
    color: #bc9787;
}

.lessons-main {
    height: 130px;
    overflow: hidden;
}

.lessons-main a {
    letter-spacing: .03rem;
    text-decoration: underline;
}

.lessons-main a:hover,
.lessons-main a:focus {
    color: #bc9787;
}

.lessons .sort-container {
    margin-top: 0;
    padding: 0;
}

.row .browse-lessons {
    margin: 0;
}

.categories-container-all {
    width: 100%;
    color: #333;
    margin: 0 auto;
    line-height: 30px;
    letter-spacing: 0.02em;
    font-family: 'Lato', sans-serif;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    list-style: none;
    font-size: 13px;
}

.category {
    padding: 0 15px;
    display: block;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.428571429;
}

.category-item {
    margin-left: 5px;
    padding: 0;
    list-style-type: none;
}

.category-item a {
    color: #333;
}

.category-item a:hover,
.category-item a:focus {
    /*font-weight: 700 !important;*/
    text-decoration: underline;
    color: #333;
}

.category-options {
    padding-inline-start: 20px;
}

.category-item a .active-selected {
    color: #CB857C;
    font-weight: 700;
}

/* dropsfan-gallery.php */

.fans-counter {
    font-weight: 600;
    padding: 0 20px;
    position: absolute;
    top: -52px;
    right: 0;
    margin-top: 5px;
}

.dropsfan-entry .dropsfan-pic img {
    opacity: 1;
    display: block;
    max-width: 100%;
    max-height: 100%;
    transition: .3s ease;
    backface-visibility: hidden;
}

.dropsfan-entry .caption {
    height: 115px;
    padding: 5px 8px;
    background: #fff;
}

.pattern-gallery .dropsfan-entry .caption {
    background: #faf7f4;
}

.dropsfan-entry .caption-s {
    height: 60px;
    margin: 0 0 10px 0;
    padding: 5px 8px;
    background: #fff;
}

.caption h4 {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-bottom: 5px;
}

.dropsfan-entry .caption-s h4 {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-bottom: 5px;
}

.dropsfan-entry .plus {
    margin: 8px 0;
    text-align: right;
}

.dropsfan-entry .caption .info a {
    color: #666666;
}

.dropsfan-entry .dropsfan-pic-big {
    height: 508px;
    position: relative;
    overflow: hidden;
    background-size: cover;
    background-position: center;
}

.dropsfan-entry .dropsfan-pic {
    width: 100%;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    height: 250px;
    position: relative;
}

.pt-fans .dropsfan-entry .dropsfan-pic {
    width: 100%;
    padding-top: 125%;
    overflow: hidden;
    background-size: cover;
    background-position: center;
}

.modal-body .dropsfan-entry .dropsfan-pic {
    width: 100%;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    height: 600px;
    position: relative;
}

.modal-body .dropsfan-entry .dropsfan-pic.more-like-this {
    height: 80px;
}

.entry-info {
    z-index: 100;
    color: #fff;
    background: #bc978780;
    width: calc(100% - 8px);
    height: calc(100% - 8px);
    text-align: center;
    padding: 40% 0;
    /*border: 4px solid white;*/
    transition: .3s ease;
    opacity: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}

.dropsfan-entry:hover .entry-info {
    opacity: 1;
    display: block;
    color: #fff
}

.entry-info h4 {
    color: #fff !important;
}

.fanfav i {
    font-size: 22px;
    color: #fff;
    position: absolute;
    top: 15px;
    right: 15px;
}

.fanfav i:hover {
    color: #cb857c;
}

@media only screen and (min-width: 648px) and (max-width: 767px) {
    .entry-info {
        padding: 23% 0;
    }
    .modal-body .dropsfan-entry .dropsfan-pic.more-like-this {
        height: 200px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991.5px) {
    .entry-info {
        padding: 23% 0;
    }
    .modal-body h2 {
        font-size: 22px;
    }
    .modal-dialog.modal-gallery {
        max-width: 700px !important;
    }
    .dropsfan-entry .caption {
        height: auto;
    }
}

@media only screen and (max-width: 767px) {
    .dropsfan-entry .caption {
        height: 120px;
    }
}

@media only screen and (max-width: 577px) {
    .fans-counter {
        top: 10px;
        right: 0;
    }
    .dropsfan-entry .caption {
        padding: 0 !important;
        overflow: hidden;
    }
    .modal-body .dropsfan-entry .dropsfan-pic {
        height: 350px;
    }
    .modal-body .dropsfan-entry .dropsfan-pic.more-like-this {
        height: 90px;
    }
}


/* findastore.php and home.php */

.stores-card {
    background: #f9f7f6;
    border-radius: 4px;
    max-width: 400px;
    position: relative;
    height: 190px;
    margin: 10px auto;
}

.img-avatar {
    width: 80px;
    height: 80px;
    position: absolute;
    border-radius: 50%;
    top: 35px;
    left: 35px;
    z-index: 20;
}

.img-avatar.sn.superstore {
    background: url('/img/retailers/store-icons-flat-superstore.png') no-repeat center;
    background-size: cover;
}

.img-avatar.sn {
    background: url('/img/retailers/store-icons-flat.png') no-repeat center;
    background-size: cover;
}

.portada-cantainer {
    position: absolute;
    top: 0;
    width: 70px;
    height: 190px;
}

.portada {
    width: 100%;
    height: 100%;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    background-image: url('/img/retailers/covers/store_cover.jpg');
    background-position: bottom left;
    background-size: cover;
}

.sicons {
    padding: 10px 0;
}

.sicons i {
    color: #9f9687;
    padding: 0 3px;
}

.sicons a {
    color: #9f9687;
    padding: 0 3px;
}

.stores-info {
    padding: 20px 25px 0 120px;
    line-height: 15px;
    height: 180px;
    text-align: left;
}

.stores-info h4 {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-bottom: 5px;
}

.stores-info h4:hover{
    color:#cb857c;
}



.sn h4 {
    margin: 0;
    padding: 3px 0;
}

.sn h4:hover {
    color: #cb857c;
}

.stores-link {
    line-height: 20px;
    font-weight: 700;
    text-decoration: underline;
}

.stores-link a:hover,
.stores-link a:focus {
    color: #CB857C;
}

.store {
    margin-top: -15px;
}

.store .store_social {
    font-size: 16px;
}

.store .store_icon {
    display: block;
    position: absolute;
    top: 90px;
    right: 54%;
    width: 20px;
    height: 20px;
}

.store .store_cover .store_profile {
    max-width: 500px;
    background: #fff;
    padding: 70px 15px 0;
    margin: 100px auto 20px auto;
}

.stores tr.hover {
    cursor: pointer !important;
}


.feature .stores-card {
    height: 160px;
}

.feature .portada-cantainer {
    height: 160px;
}

.stores-mobile {
    max-height: 400px;
    overflow-y: scroll;
}


/*news*/

.all-news a {
    text-decoration: underline;
}

.all-news a:hover,
.all-news a:hover {
    color: #bc9787;
    font-weight: 400;
}

.article {
    min-height: 565px;
    overflow: hidden;
}

.news-category {
    margin: 10px 0;
    text-transform: uppercase;
    color: #bc9787;
    font-size: 10px;
    letter-spacing: 0.1em;
}

.news-category a {
    margin: 10px 0;
    text-transform: uppercase;
    color: #bc9787;
    font-size: 10px;
    letter-spacing: 0.1em;
}

.news-category a:hover,
.news-category a:focus {
    padding-bottom: 5px;
    text-decoration: underline;
    font-weight: 400;
}

.news-title {
    margin-top: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    height: 28px;
}

.news-main {
    height: 250px;
    overflow: hidden;
}

.news-main a {
    text-decoration: underline;
}

.news-main a:hover,
.news-main a:focus {
    color: #bc9787;
    font-weight: 400;
}

.news-subtitle {
    font-weight: 600;
}

.news-content a {
    letter-spacing: .03rem;
    text-decoration: underline;
}

.news-content a:hover,
.news-content a:focus {
    color: #bc9787;
    font-weight: 400;
}

.read-more {
    letter-spacing: .03rem;
    text-decoration: underline;
}

.read-more a:hover,
.read-more a:focus {
    color: #bc9787;
}

.news-footer {
    height: 50px;
    text-transform: uppercase;
    color: #ccc;
    font-size: 10px;
    letter-spacing: 0.1em;
}


/*.slider {
    width: 300px;
    height: 300px;
    display: flex;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}*/



/* home.php */

.row .news .ratio-3-2 {
    border-bottom: 2px solid #fff;
}

.hero-text {
    position: absolute;
    bottom: 10px;
    left: 10px;
    color: #fff;
    padding: 20px;
    z-index: 20;
}

.hero-text h1 {
    font-size: 30px;
    margin-top: 5px;
}

.hero-text p {
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: .5px;
}

.hero-text-col {
    position: absolute;
    bottom: 15px;
    left: 10px;
    color: #fff;
    padding: 0 10px;
    z-index: 20;
}

.hero-text-col h2 {
    margin-top: 0;
    margin-bottom: 5px;
    font-size: 18px;
}

.hero-text-col p {
    text-transform: uppercase;
    margin-bottom: 0;
    font-size: 10px;
    letter-spacing: .5px;
}


/* choose country */

.choose-country-container {
    text-transform: uppercase;
    padding: 10px;
    display: block;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.428571429;
    background-color: #faf7f4;
    list-style: none;
    margin-right: 15px;
}

.choose-country-button {
    text-transform: uppercase;
    background-color: #faf7f4;
    text-align: left;
    font-size: 12px;
    border: none;
    padding-right: 12px;
    margin: 0 5px;
    color: #555;
}

.choose-country-button i {
    position: absolute;
    width: 25px;
    right: -10px;
    top: -10px;
    background: #faf7f4;
    padding: 12px 5px;
    font-size: 11px;
}

.choose-country-options {
    padding: 0.625rem 0;
    left: -10px;
    list-style: none;
    width: 100%;
    border: none;
    overflow-y: auto;
    padding-inline-start: 0;
    max-height: 400px;
    overflow-y: auto;
    top: calc(100% + 0.6rem);
    box-shadow: 0 6px 12px rgb(0 0 0 / 18%);
}

.dropdown-options {
    padding: 0.625rem 0;
    left: -10px;
    list-style: none;
    width: auto;
    border: none;
    overflow-y: auto;
    padding-inline-start: 0;
    margin: 14px 0 0 -16px;
    max-height: 400px;
    overflow-y: auto;
    top: calc(100% + 0.6rem);
    box-shadow: 0 6px 12px rgb(0 0 0 / 18%);
}

.languages-dropdown{
    width: 230px;
}

.dropdown-lang {
    max-height: 400px;
    overflow-y: auto;
}
.dropdown-lang.dropdown-menu {
    right: 0;
}

button:focus {
    outline: none;
}

.choose-lang .choose-country-container {
    max-width: 500px;
}

.clue .choose-country-button i {
    right: 5px;
    top: 5px;
}

.modal-header {
    display: block;
    border: none;
    border-radius: 0;
}

.modal-header h5 {
    margin: 0;
}

.modal-content {
    border: none;
    border-radius: 0;
    box-shadow: none;
    max-width: 100%;
    left: 0;
    margin: 0;
    padding: 0;
}
.modal-content.yarn-content{
    top: 50px;
}

.modal-header .close {
    padding: 1.3rem 1.3rem;
}

.modal-footer {
    justify-content: flex-start; 
}

.slider-products {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    flex-wrap: nowrap;
    padding: 0 5%;
}

.slider-products.pt-yn {
    padding: 0 5% 0 0;
}

.zoom {
    cursor: zoom-in;
}

#zoom, #zoom-mobile {
    z-index: 5000;
}

#zoom .close, #zoom-mobile .close {
    position: absolute;
    top: 10px;
    right: 15px;
    z-index: 2;
    padding: 15px;
    background: #fff;
}

#zoom .modal-dialog {
    background-color: #fff;
    max-width: 100%;
    position: fixed;
    margin: 0;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow-y: scroll;
    overflow-x: hidden;
}

#zoom .modal-content {
    max-width: 1100px;
}

#zoom-mobile .slider-cat {
    width: 100vw;
    padding: 0;
}
.modal-content-container {
    display: flex;
   justify-content: center;
}

#patternCarouselZoom .carousel-indicators {
    display: block;
    overflow: hidden;
}

#patternCarouselZoom .carousel-indicators.carousel-2-3img>li  {
    width: calc(100% - 8px) !important;
}
#patternCarouselZoom .list-inline-item:not(:first-child) {
    margin: 8px 0 0;
}

/* Animations*/

.slideIn {
    animation: slideIn 1s ease-out 1.5s 1;
}

@keyframes slideIn {
    0% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(-50%);
    }
    100% {
        transform: translateX(0);
    }
}

/* Animations*/

.fadeIn {
    animation: fadeIn 1s ease-in;
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
/*
.fadeOut {
    animation: fadeOut 2s ease-out;
    animation-fill-mode: forwards;
}

@keyframes fadeOut {
    0% {
        opacity: 1;
        transform: translateY(0px) rotateY(0deg);
    }
    100% {
        opacity: 0;
        transform: translateY(150px) rotateY(10deg);
    }
}*/

.shake {
    animation: shake 3000ms alternate infinite;
}

@keyframes shake {
    0% {
      transform: rotateY(0deg);
    }
    100% {
      transform: rotateY(10deg);
    }
}

.bounce {
    animation: bounce 3000ms alternate infinite;
}

@keyframes bounce {
    from {
        transform: translateY(0px);
    }
    to {
        transform: translateY(-10px);
    }
}

@media only screen and (min-width: 240px) and (max-width: 450px) {
    .ss25-comment {
        background: #faf7f4;
        padding-bottom: 120px;
    }
    .content.ss25.activity-text {
        max-width: 400px;
    }
}

@media only screen and (max-width: 471px) {
    .filter-counter {
        margin: 15px 0 0;
    }
}

@media only screen and (max-width: 479px) {
    td.sn,
    th.sn {
        max-width: 150px;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    td.sn,
    th.sn {
        padding-left: 5px;
    }
    td.sn.superstore {
        padding-top: 50px;
        padding-left: 5px;
    }
    .store .store_icon {
        right: 62%;
    }
    .dropsfan-entry .dropsfan-pic-big {
        height: 350px;
    }
    .dropsfan-entry .dropsfan-pic {
        height: 180px;
    }
}

@media only screen and (min-width: 510px) and (max-width: 765px) {
    .row .structures {
        padding: 0 15px;
    }
}

@media only screen and (max-width: 549px) {
    .cat-text {
        margin: 0;
    }
    .cat-text-video {
        margin: 0;
        font-size: 16px;
        font-weight: 400;
    }
}

@media only screen and (min-width: 457px) and (max-width: 575px) {
    .responsive-search {
        padding: 0 10% !important;
    }
    .christmas-doors {
        padding: 0 10% !important;
    }
}

@media only screen and (min-width: 481px) and (max-width: 590px) {
    .lessons .filter-container-all {
        width: 100%;
        margin: 0;
    }
}

@media only screen and (max-width: 575px) {
    .video-search-results .card {
        border-bottom: 1px solid #eee;
    }
    .videoWrapper.ratio-16-9 {
        /*padding-bottom: 0;*/
        margin-bottom: 0;
    }
    .search-patterns {
        padding: 0 12%;
    }
    .nav-tabs .nav-item .nav-link {
        padding: 8px;
        font-size: 15px;
    }
    .nav-tabs .nav-item .nav-link.active {
        padding: 8px;
    }
}

@media only screen and (max-width: 585px) {
    .filter-container a {
        font-size: 14px;
    }
    .filter {
        font-size: 14px;
    }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
    .row .ypic {
        display: block!important;
    }
}

@media only screen and (min-width: 560px) and (max-width: 767px) {
    .pattern-related {
        padding: 0 10% 0 0;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .card-body{
        padding: 1rem;
        min-height: 170px;
    }
}

@media only screen and (min-width: 591px) and (max-width: 674px) {
    .lessons .filter-container-all {
        width: 100%;
        margin: 0;
    }
}

@media only screen and (max-width: 600px) {
    .size-btn {
        min-width: calc(18% - 10px);
    }
    #felle label,
    #øke label {
        min-height: 45px
    }
}

@media only screen and (max-width: 640px) {
    .yarn-colour .info {
        height: 40px;
    }
    .yarn-colour .info .name {
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .pattern img {
        margin: 0;
    }
}

@media only screen and (min-width: 673px) and (max-width: 767px) {
    .search-patterns {
        padding: 0 8%;
    }
    .lessons .filter-container-all {
        width: 100%;
        margin: 0;
    }
}

@media only screen and (max-width: 765px) {
    .media-2 {
        max-height: 130px;
        width: auto;
    }
    .school h3 {
        padding-bottom: 15px;
    }
    .row.dropsalong h2 {
        margin: 20px 0;
    }
    .filter-item {
        padding: 6px 25px;
        border-bottom: 1px solid #fff;
    }
    .filter-options {
        padding: 0;
        max-height: none;
    }
    .filter-container-all {
        font-size: 12px;
    }
    .shake {
        animation: shake 2000ms alternate infinite;
    }
    .bounce {
        animation: bounce 2000ms alternate infinite;
    }
    @keyframes bounce {
        from {
            transform: translateY(0px);
        }
        to {
            transform: translateY(-5px);
        }
    }
}

@media only screen and (max-width: 767px) {
    h1 {
        font-size: 26px;
    }
    h2 {
        font-size: 22px;
    }
    .well-lg {
        padding: 20px;
    }
    .hidden-mobile {
        display: none !important;
    }
    #footer_wrapper {
        margin: 0;
        padding: 0;
    }
    .pagination-sm {
        margin: 0;
    }
    .row.galley {
        padding: 0 5%;
    }
    .row .buttons {
        padding: 0 7%;
    }
    .yarn-wash img {
        height: 40px;
    }
    .max-650 {
        max-height: none;
        overflow-y: auto;
        overflow-x: hidden;
    }
    .show-as {
        float: right!important;
    }
    .question .answer {
        padding: 20px 15px 30px 30px;
    }
    .filters-cat-cont .filters-button {
        display: inline-block;
    }
    .categories-button {
        padding: 12px 0;
        text-transform: uppercase;
        letter-spacing: 0.1rem;
        line-height: 1.428571429;
        display: block;
        font-weight: 700;
        color: #333;
        font-size: 11px;
    }
    .filter-sort {
        padding: 12px 0;
        text-transform: uppercase;
        letter-spacing: 0.1rem;
        line-height: 1.428571429;
        display: block;
        font-weight: 700;
        color: #333;
        text-align: right;
        font-size: 11px;
    }
    .categories-filter {
        padding: 12px 0 12px 10px;
        text-transform: uppercase;
        letter-spacing: 0.1rem;
        line-height: 1.428571429;
        display: block;
        font-weight: 700;
        color: #333;
        font-size: 12px;
    }
    #filter-navbar-collapse .modal-header {
        border-bottom: 1px solid #eee;
    }
    .filters-button:hover,
    .filters-button:focus {
        background-color: #fff;
        padding: 3px 0;
    }
    .knitting-btn,
    .crochet-btn {
        min-width: 165px;
    }
    .news-footer {
        border-bottom: 1px solid #eee;
        margin-bottom: 20px;
    }
    .news-main {
        height: auto;
        margin-bottom: 20px;
    }
    .feature-cats {
        padding: 0 2%;
    }
    .dropdown-menu .choose-country-options {
        width: 100%;
        max-height: 400px !important;
    }
    .sort-container {
        margin: 0;
    }
    .hero-text {
        padding: 0 20px;
    }
    .modal-dialog {
        margin: 0 auto;
        max-width: 767px;
    }
    .modal.fade.modal-center {
        padding: 15px;
    }
    .modal {
        background: #fff;
        z-index: 5000;
        overflow-y: auto !important;
    }
    .modal.modal-transparent {
        background: #ffffff00 !important;
    }
    #categories-navbar-collapse .modal-body {
        min-height: 100vh;
        padding: 0;
    }
    #categories-navbar-collapse .modal-content {
        overflow-x: hidden;
    }
    #categories-navbar-collapse .modal-header {
        background: #faf7f4;
    }
    .slider-cat {
        width: 95vw;
        display: flex;
        overflow-x: auto;
        overflow-y: hidden;
        flex-wrap: nowrap;
        padding: 0 5%;
    }
    .slider-cat.pt-yn {
        padding: 0 5% 0 0;
    }
    .col-6.col-sm-3.slide-cat {
        width: 60vw;
        flex-shrink: 0;
    }
    .slide-pat {
        height: 90%;
        width: 100%;
    }
    .modal-mobile .modal-content {
        position: absolute;
        top: 0;
    }
    .modal-mobile-bottom .modal-content {
        position: absolute;
        bottom: -15px;
    }
    .languages-dropdown {
        width: 100%;
    }
    .row .voting {
        margin: 0 -10px;
    }
    .ss25 .ss25-comment .text {
        padding: 20px 20px 0 20px;
    }
    .ss25 .ss25-comment .text p {
        margin: 0;
    }
    .text-margin {
        margin: 30px 15px 10px 15px;
    }
    .ui-menu .ui-menu-item {
        overflow-x: hidden;
        max-width: 200px;
    }
    .ui-autocomplete .ui-front .ui-menu{
        max-height: 600px;
        overflow-y: scroll;
    }
    .c-name {
        margin: 0;
    }
    .content.ss25 .votes_left {
        font-size: 12px;
    }
    .portada-cantainer {
        height: 175px;
    }
    .stores-card {
        height: 175px;
    }
}

@media only screen and (min-width: 768px) {
    #filter-navbar-collapse {
        display: none;
    }
}

@media only screen and (min-width: 768px) and (max-width: 800px) {
    .filter-drop-container li {
        margin-right: 0;
    }
}

@media only screen and (min-width: 768px) and (max-width: 900px) {
    .padding-resp {
        padding: 10px !important;
    }
    .stores-info {
        padding: 20px 0 0 100px;
    }
    .portada-cantainer {
        width: 60px;
    }
    .img-avatar {
        left: 20px;
    }
}

@media only screen and (min-width: 768px)and (max-width: 960px) {
    #search-mobile {
        padding-top: 5rem;
    }
    #sidecats a:not(:only-child):after {
        right: 5px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1129px) {
    .knitting-btn,
    .crochet-btn {
        min-width: auto;
    }
}

@media only screen and (min-width: 887px) and (max-width: 991.5px) {
    .search-patterns {
        padding: 0 5%;
    }
    .cat-filters {
        padding-right: 0;
    }
    .video-padding {
        padding-right: 15px;
        padding-left: 15px;
    }
}

@media only screen and (max-width: 991.5px) {
    .pattern-main .breadcrumb {
        height: 100%;
        overflow: auto !important;
    }
    .row.header {
        background: none!important;
    }
    #site_wrapper {
        margin-top: 70px;
    }
    .ad {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 4050;
    }
    .max-400 {
        max-height: none;
        overflow-y: auto;
        overflow-x: hidden;
    }
    .breadcrumb {
        font-size: 12px;
    }
    .breadcrumb a:hover {
        font-size: 12px;
    }
    .logo-wrapper {
        padding: 0;
        height: auto;
    }
    .header_search {
        justify-content: space-between;
    }
    .top-nav {
        height: 0;
    }
    .search-box {
        right: 15px;
        top: 16px;
    }
    .input-search-mob {
        background: #fff;
        font-size: 12px;
        padding: 5px 5px 0;
        border-style: none;
        outline: none;
        display: inline-block;
        width: 100%;
        min-width: 70vw;
        height: 70px;
    }
    .btn-default.btn-search-mob {
        left: 15px;
        position: absolute;
        top: 5px;
        width: 10%;
        height: 65px;
        background-color: #fff;
        padding: 10px 20px;
    }
    .input-search-mob::placeholder {
        line-height: 1.5;
        background: #fff;
        color: #999;
        height: 40px;
        text-align: center;
    }
    .input-search-mob:focus {
        line-height: 1.5;
        background: #fff;
    }
    .input-search-m {
        width: calc(100vw - 120px);
        background: #fff;
        font-size: 16px;
        border-style: none;
        outline: none;
        display: inline-block;
        height: 70px;
        position: absolute;
        left: 60px;
        cursor: text;
    }
    .input-search-mob::placeholder {
        font-size: 11px;
    }
    .btn-search-m {
        background-color: #fff;
        width: 60px;
        height: 70px;
        position: absolute;
        left:0;
        right: 0;
        padding: 0;
    }
    .icon {
        float: right;
        padding-right: 0.5rem;
    }
    .icon:after {
        transform: rotate(180deg);
    }
    .sort-button {
        padding: 10px 10px 0 0 !important;
    }
    .maincats {
        line-height: 30px;
        background: transparent;
        font-size: 13px;
        text-transform: uppercase;
        list-style: none;
    }
    .bigmobcats {
        margin-left: 15px;
        text-transform: uppercase;
        line-height: 30px !important;
        font-size: 13px;
        padding: 5px 20px;
        letter-spacing: 0.08em;
        font-weight: 700!important;
    }
    #sort-container ul {
        list-style: none;
        text-decoration: none;
    }
    #sort-container li {
        list-style: none;
        padding: 0;
        text-decoration: none;
    }
    #sort-container a {
        color: #777;
        text-decoration: none;
        display: block;
        line-height: 20px;
        border-bottom: 1px solid #e4e4e4;
    }
    #sort-container .listcats {
        margin: 0;
    }
    .filters-title {
        color: #777;
        background: #e7e7e7;
        line-height: 30px !important;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        font-weight: 700;
        padding: 8px 18px 10px 20px;
    }
    #filter-container .filters-title {
        margin-left: 15px;
    }
    .filter-button {
        background-color: #fff;
        border: none;
        border-radius: 0;
        padding: 10px;
        margin: 0;
    }
    .display-none {
        display: none;
    }
    .navbar-collapse {
        padding-right: 0!important;
        padding-left: 0!important;
    }
    .filter-header {
        width: 100%;
    }
    .slider-cat-md {
        width: 100vw;
        display: flex;
        overflow-x: auto;
        overflow-y: hidden;
        flex-wrap: nowrap;
        padding: 0 30px;
    }
    /*.dropdown-menu {
        width: 100%;
        max-height: inherit;
    }*/
    .nav .open>a,
    .nav .open>a:hover,
    .nav .open>a:focus {
        background-color: #fff;
        border-color: #fff;
    }
    .custom-btn .nav .open>a,
    .nav .open>a:hover,
    .nav .open>a:focus {
        background-color: #eddbd5 !important;
    }
    .nav .open>a,
    .nav .open>a:hover,
    .nav .open>a:focus {
        background-color: #fff;
    }
    .nav>li>a>img {
        max-width: 85vw;
        padding: 0 20px;
    }
    .navbar-nav .open .dropdown-menu:last-child {
        border-bottom: 1px solid #e5e5e5;
    }
    .media-2 {
        max-height: 170px;
        width: auto;
    }
    .vot-comm {
        text-align: center;
        padding: 0 15px !important;
    }
    .vot-mod {
        text-align: center;
    }
    .comm {
        display: inline-block;
    }
    .lesson-week {
        height: auto;
        overflow: hidden;
    }
    .lessons-title-cont {
        height: auto;
    }
    .lessons-main {
        height: auto;
    }
    .lessons-title {
        height: auto;
    }
    .grow {
        transition: all .2s ease-in-out;
    }
    .grow:hover {
        transform: scale(1.5);
    }
    /*.sticky {
        right: 10px;
        bottom: 10px;
        display: none;
    }*/
}

@media screen and (min-width: 992px) {
    .navbar {
        padding: 0;
    }
    .navbar .dropdown {
        position: static;
    }
    .navbar .dropdown-menu {
        border: none;
        margin: 0;
        /*width: 100%;*/
        left: 0;
        right: 0;
        top: 45px;
        border-bottom: 3px solid #d7cdc3;
        background-color: #fff;
    }
}

@media only screen and (min-width: 1100px) {
    .yarn-combination {
        padding: 0 25px;
    }
}

@media only screen and (min-width: 1130px) and (max-width: 1350px) {
    .knitting-btn,
    .crochet-btn {
        min-width: 120px;
    }
}
/*
@media only screen and (max-width: 1200px) {
    #site_wrapper {
        overflow: visible;
        width: 100vw;
    }
}*/

/* Print Styles */

@media print {

    @page {
        size: 210mm 297mm;
        margin: 15mm;
    }
    body {
        width: 100%;
        display: block;
        background: #fff; 
        color: #444; 
        margin: 0 auto; 
        padding: 0;
        font-size: 14px;
        line-height: 1.7;
    }
    .print-only {
        display: block;
        visibility: visible;
        margin: 0 auto; 
    }
    .hiddenprint {
        display: none !important;
    }
    .quickexplanation{
        border: none;
    }
    table tr {
        page-break-inside: auto;
    }
    .padding-print{
        padding: 20px;
    }
    h1,
    h2,
    h3,
    h4,
    h5 {
        margin: 25px 0;
    }
    
    #footer_wrapper,
    .navbar,
    .nav-mobile,
    .header,
    form,
    iframe {
        display: none !important;
    }
    a[href]:after {
        content: none !important;
    }
    div.colours-print {
        display: block !important;
        page-break-inside: avoid;
    }
    .do-not-break-after {
        break-after: avoid;
    }
    .do-not-break-inside {
        break-inside: avoid;
    }
    .pattern-ad {
        break-before: always;
    }
    .carousel-item .active img {
        display: block;
    }
}

/* styles for better rendering yarn.php */

.off-screen1 {
    content-visibility: auto;
    contain-intrinsic-size: 431px;
}

.off-screen2 {
    content-visibility: auto;
    contain-intrinsic-size: 520px;
}

.off-screen3 {
    content-visibility: auto;
    contain-intrinsic-size: 477px;
}