/*
* ===================================================
*     Variables
* ===================================================
*/
:root {
    --bg-color: #faf9f4;
    --primary-color: #a7b29a;
}

/*
/*
* ===================================================
*     SETTINGS
* ===================================================
*/











h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{
    font-family: 'PT Sans', sans-serif;
}

body {
    background-color: #faf9f4;
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 1rem;
}

.modal-content,
.tooltip {
    background-color: #faf9f4;
}

.text-base {
    font-size: 1rem;
}

.mainmenu_font_size {
    font-size: 0.8rem;
}

/*
* ===================================================
*     COLORS
* ===================================================
*/

footer, .text-powered-by a, .text-powered-by a:hover {
    background-color: #3e3a34;
    color: #ffffff;
}

.block-toggler, .block-toggler:focus, .block-toggler:hover, .block-toggler[aria-expanded="true"] {
    color: #ffffff;
}

.block-toggler:hover .block-toggler-icon:before, .block-toggler[aria-expanded="true"] .block-toggler-icon:before, .block-toggler .block-toggler-icon:after, .block-toggler .block-toggler-icon:before, .block-toggler:hover .block-toggler-icon:after, .block-toggler[aria-expanded="true"] .block-toggler-icon:after {
    background-color: #ffffff;
}

.top-bar {
    background: #7a5e4b;
    color: #ffffff;
}

.navbar-bg {
    background-color: #a7b29a
}

a:hover, .navbar-checkout-btn:hover, .product-btn-addcart:hover, .detail-nav-link.nav-link:hover, .product-before-price {
    opacity: 0.7;
}

.navbar-light .navbar-nav .show > .nav-link, .navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .active > .nav-link:focus, .navbar-light .navbar-nav .active > .nav-link, .navbar-light .navbar-nav .active > .nav-link:hover, .navbar-light .navbar-nav .nav-link, .navbar-light .navbar-nav .nav-link:hover {
    color: #ffffff;
}

.navbar-light {
    background-color: #faf9f4;
}

.slider_pt_0 {
    padding-top: 0px !important;
}

.slider_mt_0 {
    margin-top: 0px !important;
}

.navbar-checkout-btn, .product-btn-addcart {
    color: #ffffff;
    background: #a7b29a;
    transition: all 0.2s ease-in-out;
}

.navbar-checkout-btn:hover, .product-btn-addcart:hover {
    color: #ffffff;
    background: #a7b29a;
}

.detail-nav-link.nav-link.active {
    border-color: transparent transparent #3e3a34 !important;
}

.footer-textcolor, .footer-textcolor:hover {
    color: #ffffff;
}

.footer-textcolor::after {
    background: #ffffff;
}

.img-logo {
    max-height: 200px;
}

.hr-text:after {
    background-color: #faf9f4;
}

.product-grid-header-show.active, .dropdown-item.active {
    font-weight: bold;
}

.dropdown-submenu .dropdown-menu-alignright {
        left: 100%;
        top: 0;
        margin-top: -.5rem;
    }

body, .fa-star-o:before, .form-label, .color-text-base:hover, .color-text-base:focus, .color-text-base, .btn-inverse, .btn-inverse:hover, .color-text-base:hover, .link-animated:after, .primary-bg, a, a:hover, .nav-link, .product-grid-header-show.active, .navbar-icon, .breadcrumb-item a, .product-before-price, .breadcrumb-item+.breadcrumb-item::before, .breadcrumb-item.active, .detail-nav-link.nav-link, .close, .table {
    color: #3e3a34;
}

.wishlist-btn.wishlist-add {
    color: #3e3a34 !important;
}

.color-dark, .dropdown-item.active {
    color: #222222;
}

.swiper-pagination-bullet-active {
    background: #3e3a34;
}

.text-soldout, .product-price, .nav-link.active, .color-primary, .nav-link.active, .product-grid-header-show.active, a, .product-grid-header-show.active:hover {
    color: #a7b29a;
}

.icon-count {
    background: #a7b29a;
}

@media(min-width:768px) {
    .manual-product-height {
        height: 400px !important;
        width: auto !important;
    }
}

.property_values {
    font-size: 0.8rem;
}

.property_values br {
    display: none;
}


/* toggle dropdown icon rotate */

.rotate {
  transform: rotate(-90deg);
  padding-right: 10px;
}

/*
* ===================================================
*     SWIFT SPECIFIC
* ===================================================
*/
.main-top-menu a {
    padding-left: 0px;
}

.btn {
    letter-spacing: 0;
}

.btn-cta, .btn-cta:hover, .btn-cta:focus, .btn-cta:active {
    background-color: #7a5e4b;
    color: #ffffff;
}

.btn-ordinary, .btn-ordinary:hover, .btn-ordinary:focus, .btn-ordinary:active {
    background-color: #a7b29a;
    color: #ffffff;
} 

.sidefont-1 {
    font-size: 0.7rem;
    padding-top: 0.3rem;
    padding-bottom: 0.3rem;
}

.sidefont-2 {
    font-size: 0.8rem;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
}

.sidefont-3 {
    font-size: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.sidefont-4 {
    font-size: 1.2rem;
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
}

.sidefont-5 {
    font-size: 1.4rem;
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
}

.btn-shop {
    padding: .45rem .2rem;
    font-size: .6rem;
}

.container .swiper-outside-nav .swiper-button-next {
    right: 0;
}

.container .swiper-outside-nav .swiper-button-prev {
    left: 0;
}

.search-wrapper {
    border: 1px solid rgba(34, 34, 34, 0.1);
}

.product-stars {
    opacity: 1;
    transform: none;
    -webkit-transform: none;
}

.sidebar {
    
}

@media(min-width:992px) {
    .sidebar {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }
    
    .main-content {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }
}

@media(min-width:1200px) {
    .sidebar {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    
    .main-content {
        -ms-flex: 0 0 80%;
        flex: 0 0 80%;
        max-width: 80%;
    }
}

.breadcrumb {
    padding: 0rem 1rem .75rem 1rem;
}

.side-newsletter {
    font-size: 0.8rem;
}

@media (min-width: 1310px) {
.container {
    max-width: 1280px;
}
}

.productlist-title {
    font-size: 1.1rem;
}

.modal-header .close {
    margin: -1rem auto -1rem auto;
}

.outline-none {
    outline: none;
}

@media (max-width: 576px) {
    .productsort, .productfilter {
        width: 100%;
        margin-bottom: 0.8rem;
    }
}

#description iframe {
    max-width: 100%;
} 

/*
* ===================================================
*     Ribbons
* ===================================================
*/
.product .ribbon--rectangle.ribbon--left {
    left: 8px !important;
}
.product .ribbon--rectangle.ribbon--right {
    right: 8px !important;
}

#product .ribbon--classic.ribbon--left {
    left: -4px !important;
    top: -4px !important;
}
#product .ribbon--classic.ribbon--right {
    right: -4px !important;
    top: -4px !important;
}

#product .ribbon--cirle.ribbon--left {
    top: -40px !important;
    left: -18px !important;
}
#product .ribbon--cirle.ribbon--right {
    top: -40px !important;
    right: -18px !important;
}

#product .ribbon--rectangle.ribbon--left {
    left: -7px !important;
}
#product .ribbon--rectangle.ribbon--right {
    right: -7px !important;
}

.ribbon--vertical > span, .ribbon--modern > span {
  box-shadow: none !important;
}

.ribbon--vertical.ribbon--left,
.ribbon--modern.ribbon--left {
  left: 15px !important;
}

.ribbon--vertical.ribbon--right,
.ribbon--modern.ribbon--right {
  right: 15px !important;
}

.form-control {
    height: auto;
}

/*
* ===================================================
*     Kategorimeny – søt skandinavisk stil
*     (mintgrønn / kremhvit / dus rosa)
* ===================================================
*/
#categoriesMenu {
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 6px 20px rgba(107, 74, 82, 0.1);
    background-color: #fff;
}

#categoriesMenu > h4 {
    font-family: 'PT Sans', sans-serif;
    color: #6b4a52;
    letter-spacing: 0.02em;
    padding: 0 0.25rem;
}

/* Hovedkategorier: større, kraftigere skrift og tydelig mintgrønn flate */
.sidemenu-main-item {
    border-bottom: 2px solid #fdf7f1;
    transition: filter 0.15s ease;
}

.sidemenu-main-item:last-of-type {
    border-bottom: none;
}

.sidemenu-main-item:hover,
.sidemenu-main-item:hover > div {
    filter: brightness(0.95);
}

.sidemenu-main-link {
    font-weight: 700;
    font-size: 1.15rem;
    letter-spacing: 0.01em;
    text-decoration: none !important;
}

.sidemenu-main-item.active {
    box-shadow: inset 5px 0 0 #e49cb3;
}

.sidemenu-cat-thumb {
    display: inline-flex;
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    margin-right: 0.65rem;
    border-radius: 9px;
    overflow: hidden;
    border: 2px solid rgba(255, 255, 255, 0.85);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
}

.sidemenu-cat-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Underkategorier: lysere, lettere og tydelig skilt fra hovedkategorier */
.sidemenu-sub-item {
    border-bottom: 1px solid rgba(107, 74, 82, 0.08);
    border-left: 3px solid #f1c6d3;
    transition: background-color 0.15s ease;
}

.sidemenu-sub-item:last-of-type {
    border-bottom: none;
}

.sidemenu-sub-item--deep {
    border-left-color: #f7dee6;
}

.sidemenu-sub-item:hover {
    background-color: #f7e4ea !important;
}

.sidemenu-sub-link {
    font-weight: 400;
    font-size: 0.92rem;
    text-decoration: none !important;
}

.sidemenu-sub-link.active {
    color: #c96d8a !important;
    font-weight: 600;
    opacity: 1 !important;
}

/* Mobilmeny (hurtigmeny): samme hierarki som sidomenyen */
#sidebarLeft .nav.flex-column:not(.ml-3) > li.nav-item > a.nav-link {
    font-weight: 800;
    font-size: 1.1rem;
    color: #3f3036;
    padding-top: 0.9rem;
    padding-bottom: 0.9rem;
}

/* Kvadratisk kategoribilde foran hovedkategorien i mobilmenyen */
.mobile-cat-row {
    display: inline-flex;
    align-items: center;
}

.mobile-cat-thumb {
    display: inline-flex;
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    margin-right: 0.7rem;
    border-radius: 9px;
    overflow: hidden;
    background-color: #fdf7f1;
    border: 2px solid #f1c6d3;
    box-shadow: 0 1px 4px rgba(107, 74, 82, 0.12);
}

.mobile-cat-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.mobile-cat-name {
    vertical-align: middle;
}

#sidebarLeft .nav.flex-column.ml-3 a.nav-link {
    font-weight: 400;
    font-size: 0.92rem;
    color: #6b4a52;
}

#sidebarLeft .nav.flex-column.ml-3 a.nav-link.show-all {
    font-style: italic;
    color: #c96d8a;
    opacity: 0.9;
}

#sidebarLeft a.nav-link.active {
    color: #c96d8a !important;
    font-weight: 700;
}

#sidebarLeft li.nav-item {
    border-bottom: 1px solid rgba(107, 74, 82, 0.08);
}