/******** Font ********/

/* Source Sans Pro */

/* Normal */
@font-face {
    font-family: 'Source Sans Pro';
    font-style: normal;
    font-weight: 300;
    src: local('Source Sans Pro Light'), local('SourceSansPro-Light'),
         url('../fonts/source-sans-pro-latin-300-normal.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/assets/fonts/source-sans-pro-latin-300-normal.woff') format('woff'), /* Modern Browsers */
         url('../fonts/SourceSansPro-Light.ttf') format('truetype'), /* Safari, Android, iOS */
}

@font-face {
    font-family: 'Source Sans Pro';
    font-style: normal;
    font-weight: 400;
    src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'),
         url('../fonts/source-sans-pro-latin-400-normal.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/assets/fonts/source-sans-pro-latin-400-normal.woff') format('woff'), /* Modern Browsers */
         url('../fonts/SourceSansPro-Regular.ttf') format('truetype'), /* Safari, Android, iOS */
}

@font-face {
    font-family: 'Source Sans Pro';
    font-style: normal;
    font-weight: 600;
    src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'),
         url('../fonts/source-sans-pro-latin-600-normal.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/assets/fonts/source-sans-pro-latin-600-normal.woff') format('woff'), /* Modern Browsers */
         url('../fonts/SourceSansPro-SemiBold.ttf') format('truetype'), /* Safari, Android, iOS */
}

@font-face {
    font-family: 'Source Sans Pro';
    font-style: normal;
    font-weight: 700;
    src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'),
         url('../fonts/source-sans-pro-latin-700-normal.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/assets/fonts/source-sans-pro-latin-700-normal.woff') format('woff'), /* Modern Browsers */
         url('../fonts/SourceSansPro-Bold.ttf') format('truetype'), /* Safari, Android, iOS */
}

@font-face {
    font-family: 'Source Sans Pro';
    font-style: normal;
    font-weight: 900;
    src: local('Source Sans Pro Black'), local('SourceSansPro-Black'),
         url('../fonts/source-sans-pro-latin-900-normal.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/assets/fonts/source-sans-pro-latin-900-normal.woff') format('woff'), /* Modern Browsers */
         url('../fonts/SourceSansPro-Black.ttf') format('truetype'), /* Safari, Android, iOS */
}

/* Italic */
@font-face {
    font-family: 'Source Sans Pro';
    font-style: italic;
    font-weight: 300;
    src: local('Source Sans Pro Light Italic'), local('SourceSansPro-Light-Italic'),
         url('../fonts/source-sans-pro-latin-300-italic.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/assets/fonts/source-sans-pro-latin-300-italic.woff') format('woff'), /* Modern Browsers */
         url('../fonts/SourceSansPro-LightItalic.ttf') format('truetype'), /* Safari, Android, iOS */
}

@font-face {
    font-family: 'Source Sans Pro';
    font-style: italic;
    font-weight: 400;
    src: local('Source Sans Pro Regular Italic'), local('SourceSansPro-Regular-Italic'),
         url('../fonts/source-sans-pro-latin-400-italic.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/assets/fonts/source-sans-pro-latin-400-italic.woff') format('woff'), /* Modern Browsers */
         url('../fonts/SourceSansPro-Italic.ttf') format('truetype'), /* Safari, Android, iOS */
}

@font-face {
    font-family: 'Source Sans Pro';
    font-style: italic;
    font-weight: 600;
    src: local('Source Sans Pro SemiBold Italic'), local('SourceSansPro-SemiBold-Italic'),
         url('../fonts/source-sans-pro-latin-600-italic.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/assets/fonts/source-sans-pro-latin-600-italic.woff') format('woff'), /* Modern Browsers */
         url('../fonts/SourceSansPro-SemiBoldItalic.ttf') format('truetype'), /* Safari, Android, iOS */
}

@font-face {
    font-family: 'Source Sans Pro';
    font-style: italic;
    font-weight: 700;
    src: local('Source Sans Pro Bold Italic'), local('SourceSansPro-Bold-Italic'),
         url('../fonts/source-sans-pro-latin-700-italic.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/assets/fonts/source-sans-pro-latin-700-italic.woff') format('woff'), /* Modern Browsers */
         url('../fonts/SourceSansPro-BoldItalic.ttf') format('truetype'), /* Safari, Android, iOS */
}

@font-face {
    font-family: 'Source Sans Pro';
    font-style: italic;
    font-weight: 900;
    src: local('Source Sans Pro Black Italic'), local('SourceSansPro-Black-Italic'),
         url('../fonts/source-sans-pro-latin-900-italic.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/assets/fonts/source-sans-pro-latin-900-italic.woff') format('woff'), /* Modern Browsers */
         url('../fonts/SourceSansPro-BlackItalic.ttf') format('truetype'), /* Safari, Android, iOS */
}

body {
    font-family: 'Source Sans Pro', sans-serif;
}

.top-menu a[data-depth="0"] {
    font-weight: 600;
    font-size: 1.125rem;
}

#products .products-section-title, 
.featured-products .products-section-title, 
.product-accessories .products-section-title {
    font-weight: 600;
}

.product-miniature .product-title a {
    font-size: 1rem;
}

.page-content.page-cms ul, p {
    font-size: 1rem;
}

span.current-price-value {
    font-size: 1.2rem;
}

.product-pack .pack-product-container .pack-product-name {
    font-size: .95rem;
}

.block-contact, .footer-container li a {
    font-size: 1rem;
}


/******* Styling ********/

/*** Colors ***/

/* Variables for colors */
:root {
    --gray-dark: #545454;
    --purple-dark: #765278;
    --purple-light: #8D618F;
    --green: #348277;
    --red-light: #be2731;
    --red-dark: #9A2028;
}

/* Dark gray */
#header,
#header .header-top a[data-depth="0"],
.product-miniature .product-title a,
.block-contact,
.footer-container li a,
#products .all-product-link,
.featured-products .all-product-link,
.product-accessories .all-product-link,
.page-content.page-cms ul,
.page-content.page-cms p,
#wrapper .breadcrumb li:last-child,
.product-prices .tax-shipping-delivery-label,
.product-miniature .highlighted-informations .quick-view,
.header-top .search-widgets form input[type="text"],
#products,
.form-control,
.form-control-comment,
.page-addresses .address .address-footer a,
.page-customer-account #content,
.table thead th,
body#checkout section.checkout-step small,
body#checkout #footer,
body#checkout #order-summary-content .step-edit,
.nav-item .nav-link,
.nav-item .nav-separtor,
.text-muted,
p {
    color: var(--gray-dark);
}

.text-muted {
    color: var(--gray-dark) !important;
}

/* Icons Slider */
.carousel .carousel-control .icon-next:hover i,
.carousel .carousel-control .icon-prev:hover i {
    color: var(--purple-light);
}

/* LOS Colors */
a,
a:hover,
a:focus,
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-outline-primary,
.btn-outline-secondary,
#header a:hover,
#header .top-menu a[data-depth="0"]:hover,
.dropdown:hover .expand-more,
.page-my-account #content .links a:hover i,
.search-widget form button[type="submit"] .search:hover,
.top-menu .sub-menu a:hover,
.product-miniature .highlighted-informations .quick-view:hover,
.account-list a:hover,
.block_newsletter form button[type="submit"] .search:hover,
.footer-container li a:hover,
#subcategories ul li .subcategory-name:hover,
.block-categories .arrows .arrow-down:hover,
.block-categories .arrows .arrow-right:hover,
.block-categories .collapse-icons .add:hover,
.block-categories .collapse-icons .remove:hover,
.cart-grid-body a.label:hover,
.pagination .current a,
.block_newsletter form input[type="text"]:focus + button .search,
.btn-unstyle:focus .expand-more,
.search-widget form input[type="text"]:focus + button .search,
.product-price,
.tabs .nav-tabs .nav-link.active,
#blockcart-modal .product-name,
body#checkout a:hover,
body#checkout a:focus {
    color: var(--purple-dark);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
    color: var(--purple-light);
}

/* Buttons and active elements */
.btn-primary,
.product-flags li.product-flag,
.brands-sort .select-list:hover,
.products-sort-order .select-list:hover,
.suppliers-sort .select-list:hover,
.custom-radio input[type="radio"]:checked + span,
#header .header-nav .cart-preview.active {
    background-color: var(--purple-dark);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary.active,
.btn-primary:active,
.btn-primary:active:hover,
.btn-primary:active:focus,
.open > .btn-primary.dropdown-toggle,
.btn-primary:disabled:hover,
.btn-primary.disabled.focus,
.btn-primary.disabled:focus,
.btn-primary:disabled.focus,
.btn-primary:disabled:focus,
#header .header-nav .cart-preview.active:hover,
#header .header-nav .cart-preview.active:has(a:focus) {
    background-color: var(--purple-light);
}

.btn-secondary:hover, .btn-tertiary:hover,
.btn-secondary:focus, .btn-tertiary:focus {
    color: #232323;
    background-color: #ddd;
    border-color: transparent;
}

.btn.btn-danger {
    color: #fff;
    background-color: var(--red-light);
    border-color: var(--red-light);
}

.btn.btn-danger:hover,
.btn.btn-danger:focus {
    color: #fff;
    background-color: var(--red-dark);
    border-color: var(--red-dark);
}

/* Border color */
.btn-outline-primary,
.btn-outline-secondary,
.tabs .nav-tabs .nav-link.active,
.tabs .nav-tabs .nav-link:hover,
.product-images > li.thumb-container .thumb.selected,
.product-images > li.thumb-container .thumb:hover,
#subcategories ul li:hover .subcategory-image a,
body#checkout section.checkout-step .address-item.selected {
    border-color: var(--purple-dark);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
    color: #fff;
    border-color: var(--purple-dark);
    background-color: var(--purple-dark);
}

.btn-primary,
.btn-outline-primary,
.btn-outline-secondary {
    border-radius: 0;
}

/* Language selector */
.language-selector button:focus {
    outline: 2px solid var(--purple-light);
}

/* Search */
#search_widget form input {
    border: 2px solid transparent;
}
#search_widget form input:focus {
    border: 2px solid var(--purple-light);
}

/* Produkt thumbnails */
.product-miniature .thumbnail-container .product-thumbnail:focus {
    opacity: 0.6;
    transform: scale(1.1);
    transition: .3s ease;
}

/* Forms */
.form-control:focus,
.input-group.focus {
    border-color: var(--purple-dark);
    outline-color: var(--purple-dark);
}

/* Green for success */

.done {                                           
    color: var(--green);
}

.text-success,
.bg-success {                                           
    color: var(--green) !important;
}

.bg-success {
    background-color: var(--green) !important;
}

body#checkout section.checkout-step.-reachable.-current .step-number {
    background-color: var(--green);
}


/*** Font ***/

.product-miniature .product-title {
    text-transform: none; /* Removed capitalize */
}


/*** Positioning ***/

/* Bigger text on contact page */
.contact-rich .block .data {
    font-size: 1rem;
}
@media (min-width: 576px) {
  .contact-rich .block a[href^="mailto:"] {
    font-size: 1rem;
  }
}

/* Remove blank white box on contact page, if contact form is disabled */
#contact div#content {
    background-color: #f6f6f6;
}

/** Categories */
/* Wrap text to avoid overflow */
.block-category {
    hyphens: auto;
    min-height: auto;
}

/* Remove category image .block-category */
.block-category .category-cover {
    display: none;
}

/* Smaller subcategories */
#subcategories ul li {
    hyphens: auto;
}
#subcategories ul li h5 {
    font-size: .9375rem;
}
@media screen and (min-width: 992px) {
    #subcategories ul li {
        width: calc(100%/6 - 20px);
        min-width: 160px;
    }    
}

/* For right outline on focus of ubw logo */
#_desktop_logo a {
    height: 100%;
    width: 100%;
    display: inline-block;
}

/*** Withdraw module */

/* Button */
.rbf-withdrawal-wrap .rbf-withdrawal-btn {
    display: inline-block;
    border-radius: 0;
}

.rbf-withdrawal-wrap .rbf-withdrawal-btn:hover, 
.rbf-withdrawal-wrap .rbf-withdrawal-btn:focus {
    outline: auto;
    outline-offset: initial;
    transform: none;
    background-color: var(--purple-light) !important;
}

.rbf-withdrawal-wrap .rbf-withdrawal-btn:hover {
    outline: none;
}

/* Form */
.rbf-withdrawal-form .rbf-step.is-active {
    background-color: var(--purple-dark);
}

.rbf-steps-front .rbf-step.is-active {
    color: #fff;
    background-color: var(--purple-dark);
}

.rbf-steps-front .rbf-step.is-done {
    color: #fff;
    background-color: var(--green);
}

.rbf-confirm-step label {
    text-align: left;
}

.rbf-withdrawal-form td .label {
    color: #fff;
    padding: 2px 5px;
}

.rbf-withdrawal-form td .label-success {
    background-color: var(--green);
}

.rbf-withdrawal-form td .label-info {
    color: var(--gray-dark);
}

.rbf-order-row--disabled {
    opacity: 1;
    color: #000;
}

.rbf-order-row--disabled td,
.rbf-order-row--disabled .rbf-order-ref-muted {
    color: var(--gray-dark);
}

.rbf-withdrawal-form .alert {
    margin-top: 1rem;
}

/* Status */
.rbf-status .label {
    font-size: 1rem;
}

.rbf-status .text-success {
    font-size: 1rem;
}

.rbf-status .rbf-timeline__item::before {
    background-color: var(--green);
}

/* For mobile */
@media screen and (max-width: 991px) {
    /* Wrap menu items */
    #top-menu .dropdown-item {
        white-space: normal;    
    }

    /* Product wrap order count and wishlist icon */
    .product-quantity {
        flex-wrap: wrap;
    }
    .product-quantity .wishlist-button-product {
        margin-left: .5rem;
    }

    /* Less padding for table with prices of products */
    .product-discounts > .table-product-discounts thead tr th {
        padding: .625rem .5rem;
    }

    /* Space top cross selling */
    section.product-accessories {
        margin-top: 2.5rem;
    }

    /* Space bottom copyright UB Wuerzburg */
    .footer-container .row {
        margin-bottom: .5rem;
    }

    /* Wrap text button to avoid overflow and space bottom */
    .psgdprinfo17 .btn {
        white-space: normal;
        margin-bottom: .5rem;
    }

    /* Smaller checkout logo */
    body#checkout #header .header-nav .logo {
        max-height: 2rem;
    }

    /* Fix Payment option text alignment */
    .payment-option label {
        text-align: left;
    }
}

/* For desktop */
@media screen and (min-width: 768px) {
    /* Aligning navigation */
    .header-top #_desktop_logo {
        width: auto;
    }
    .header-top .header-top-right {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        width: 100%;
    }
    /* set left column to full width, if contact form is disabled */
    body#contact #left-column {
        width: 100%;
    }
}