/*
Theme Name: Sober Child Theme
Theme URI: http://uix.store/sober/
Author: UIX Themes
Author URI: http://uix.store
Description: Sober is a fully responsive Premium WordPress Theme with a pixel perfect design and extensive functionality
Version: 1.0.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sober-child
Tags: one-column, two-columns, right-sidebar, custom-colors, custom-menu, featured-images, flexible-header, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready
Template: sober
*/
@font-face {
    font-family: 'Fraunces';
    src: url('../sober-child/fonts/Fraunces-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Fraunces';
    src: url('../sober-child/fonts/Fraunces-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Fraunces';
    src: url('../sober-child/fonts/Fraunces-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Fraunces';
    src: url('../sober-child/fonts/Fraunces-RegularItalic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Fraunces';
    src: url('../sober-child/fonts/Fraunces-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Fraunces';
    src: url('../sober-child/fonts/Fraunces-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
}

:root {
    --leaderboard-image-slider-content-height: 0px;
}

.hide {
    display: none !important;
}

/* Header */
.site-header {
    padding: 20px 0;
}

.woocommerce-page-header {
    background-color: #f3f3f3;
}

.no-page-header .site-header {
    border-bottom: unset;
}

.site-header .sober-container {
    padding-left: 20px;
    padding-right: 20px;
}

.site-header .toggle-nav {
    color: black !important;
}

.site-header .main-navigation {
    min-width: 50%;
}

.site-header .main-navigation .nav-menu {
    display: flex;
    justify-content: space-between;
}

.nav-menu > li > a,
.nav-menu a {
    font-size: unset !important;
    color: black !important;
}

.nav-menu > li > a:after {
    background: black !important;
}

.header-icon li svg {
    width: 23px !important;
    height: 23px !important;
}

.header-icon svg {
    stroke-width: 1px;
    fill: none !important;
    stroke: none !important;
}

.header-icon li.menu-item-cart {
    margin-right: 0;
}

.header-icon li.menu-item-cart span.count {
    font-size: 9px;
    width: 15px;
    height: 15px;
    right: 20.5px;
    top: 20.5px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white !important;
    background-color: #bf181a !important;
}

/* Language switcher */
.nav-menu li.pll-parent-menu-item ul {
    min-width: 100px;
}

.header-icon .list-dropdown {
    font-size: 1em;
}

.header-icon .list-dropdown .current {
    color: black !important;
}

.header-icon .list-dropdown ul {
    transform: translate(-33px, 36px);
}

/* Homepage */
.home .site-content,
.blog .site-content {
    padding-top: 0;
}

.home .sober-product-grid .product-filter {
    margin: 0 0 40px 0;
}

.home .sober-product-grid .filter .line-hover.active::after,
.home .sober-product-grid .filter .line-hover:hover::after {
    height: 0;
    width: 0;
    transition: none;
}

.home .sober-product-grid .filter li {
    color: #808080;
}

.home .sober-product-grid .filter li.active {
    color: black;
}

.home .uc_content.uc-items-wrapper {
    height: auto;
    max-height: none;
    align-items: flex-start;
    padding-bottom: 14px;
    box-sizing: content-box;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
    scrollbar-gutter: stable;
}

.home .uc_content.uc-items-wrapper::-webkit-scrollbar {
    height: 8px;
}

.home .uc_content.uc-items-wrapper::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.35);
    border-radius: 4px;
}

.home .uc_content.uc-items-wrapper::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.07);
}

/* OSM - Contact page */
.leaflet-layer {
    filter: grayscale(100%) contrast(80%) brightness(110%);
}

.leaflet-popup {
    left: -120px !important;
    bottom: 30px !important;
}

.leaflet-popup-content {
    width: 200px;
    font-size: 1.167em !important;
}

.marker-description {
    color: black !important;
}

.leaflet-container .marker-description a {
    color: #c22228 !important;
}

/* Products section - Shop */
.sober-product-carousel {
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
    padding: 3.5em;
}

.sober-product-carousel * {
    height: 100%;
}

.woocommerce.archive .site-content {
    padding-top: 45px;
}

.woocommerce .shop-toolbar {
    padding: 0;
    margin: 0 0 45px 0;
    border: none;
}

.woocommerce .shop-toolbar .woocommerce-result-count {
    color: black;
    font-size: 1em;
}

.woocommerce .shop-toolbar .row,
.woocommerce .shop-toolbar .toolbar-control {
    display: flex;
    align-items: center;
}

.woocommerce .shop-toolbar .row {
    flex-wrap: wrap;
}

.woocommerce .shop-toolbar .toolbar-control .product-size {
    display: none;
}

.woocommerce .shop-toolbar .toolbar-control .toggle-filter > svg {
    display: none;
}

.woocommerce .shop-toolbar .toolbar-control .filter a {
    color: black;
}

.woocommerce .shop-toolbar .toolbar-control .filter fieldset svg {
    margin: -1px 6px 0 0;
    stroke: transparent;
    fill: transparent;
}

.woocommerce .shop-toolbar .row::before,
.woocommerce .shop-toolbar .row::after,
.woocommerce .shop-toolbar .clearfix::before,
.woocommerce .shop-toolbar .clearfix::after {
    content: unset;
}

.woocommerce .shop-toolbar .products-filter {
    display: flex;
    gap: 25px 50px;
    flex-wrap: wrap;
}

.woocommerce .shop-toolbar .products-filter li {
    font-size: 1em;
    padding: 0;
    margin: 0;
}

.woocommerce .shop-toolbar .toolbar-control .totals {
    display: block;
}

.woocommerce .shop-toolbar .products-filter li.active a {
    color: black;
}

.woocommerce .shop-toolbar .products-filter li a {
    color: #808080;
}

.woocommerce .shop-toolbar .products-filter li.line-hover.active::after,
.woocommerce .shop-toolbar .products-filter li.line-hover:hover:after {
    height: 0;
    width: 0;
    transition: none;
}

/* Level 2 category filters */
.woocommerce .shop-toolbar .nav-filter--children {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid #e5e5e5;
}

.woocommerce .shop-toolbar .products-filter--children[hidden] {
    display: none;
}

.woocommerce .shop-toolbar .products-filter--children {
    gap: 25px 35px;
}

.woocommerce .shop-toolbar .products-filter--children li {
    font-size: 0.875em;
}

.woocommerce .shop-toolbar .products-filter--children li a {
    padding-bottom: 2px;
}

.woocommerce .shop-toolbar .products-filter--children li.active a,
.woocommerce .shop-toolbar .products-filter--children li:hover a {
    color: black;
}

/* Category selects: tabs replacement on narrow screens (see @media 768). */
.woocommerce .shop-toolbar__selects {
    display: none;
}

.woocommerce .shop-toolbar__select {
    border: none;
    padding: 0;
    font-weight: 500;
    color: black;
    background: transparent;
    font-size: 1em;
}

.woocommerce .shop-toolbar .filter-widgets h2 {
    font-size: 1em;
    line-height: 1.5em;
    margin-bottom: 1em !important;
}

.woocommerce .shop-toolbar .filter-widgets h3 {
    font-size: 1em;
    margin-bottom: 0.75em !important;
}

.woocommerce .shop-toolbar .filter-widgets .close svg {
    stroke: #23232c;
    fill: #23232c;
    height: 15px;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filters__open-overlay {
    display: none;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filters__overlay {
    background: inherit;
    color: inherit;
    inset: 0;
    pointer-events: auto;
    position: relative;
    transition: none;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filters__overlay-header {
    display: none;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filters__overlay-dialog {
    background: inherit;
    color: inherit;
    position: relative;
    transform: none;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filters__overlay-content {
    overflow-y: visible;
    padding: 0;
}

/* Filter overlay content */
.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filter-removable-chips__items li {
    border: none;
    padding: 0;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filter-removable-chips__items li span {
    line-height: 0.875em;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filter-removable-chips__items li svg {
    width: 100%;
    height: 100%;
    margin: 0;
}

.woocommerce .shop-toolbar .filter-widgets .wp-block-button__link {
    border: none;
    background: none;
    color: black;
    text-decoration: underline !important;
    font-size: 0.875em;
    text-align: left;
    padding: 0 !important;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filter-price-slider input {
    border: none;
    padding: 0;
}

.woocommerce .shop-toolbar .filter-widgets .wp-block-woocommerce-product-filter-checkbox-list {
    padding-left: 1em;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filter-checkbox-list__input-wrapper::before {
    background: white;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filter-checkbox-list__input {
    border: 1px solid black;
}

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filter-checkbox-list__input .wc-block-product-filter-checkbox-list__text {
    color: #808080;
}

/* End of filter overlay content  */

.woocommerce .shop-toolbar .filter-widgets .wc-block-product-filters__overlay-footer {
    display: none;
}

.woocommerce ul.products {
    transition: 500ms;
}

.sober-product-carousel .woocommerce ul.products {
    margin: 0;
}

.woocommerce ul.products.filters-opened {
    margin-right: 390px;
}

.sober-product-carousel .woocommerce ul.products.filters-opened .owl-dots {
    margin: 0;
}

.woocommerce ul.products li.product {
    text-align: left;
}

.woocommerce ul.products li.product h3 {
    font-size: 1.125em !important;
    font-weight: 500 !important;
    line-height: 1.75em;
    padding: 0 !important;
}

.woocommerce ul.products li.product .product-header {
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
}

.sober-product-carousel .woocommerce ul.products li.product .product-header {
    box-shadow: none;
    display: flex;
    margin-bottom: 2em;
}

.sober-product-carousel .woocommerce ul.products li.product .featured-product-left {
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 5em 0;
}

.sober-product-carousel .woocommerce ul.products li.product .featured-product-left,
.sober-product-carousel .woocommerce ul.products li.product .featured-product-right {
    width: 50%;
    margin: 0 3em;
}

.sober-product-carousel .woocommerce ul.products li.product .featured-product-left *,
.sober-product-carousel .woocommerce ul.products li.product .featured-product-right * {
    height: auto;
}

.woocommerce ul.products li.product a img {
    padding: 30px;
    object-fit: contain;
    aspect-ratio: 1/1;
    /* height: calc(100vw / 5 - 44px); */
}

.sober-product-carousel .woocommerce ul.products li.product a img {
    padding: 0;
}

.sober-product-carousel .woocommerce ul.products li.product .featured-product-left .product-carousel-title {
    font-size: 2.375em;
    margin: 0;
}

.sober-product-carousel .woocommerce ul.products li.product .featured-product-left .description {
    color: black;
    font-family: Fraunces;
    font-weight: 300;
    font-size: 1.25em;
    line-height: 1.25em;
    margin-bottom: 0;
}

.sober-product-carousel .woocommerce ul.products li.product .featured-product-left .price-quickview {
    display: flex;
    align-items: center;
}

.sober-product-carousel .woocommerce ul.products li.product .featured-product-left .price-quickview > * {
    width: 50%;
}

.sober-product-carousel .woocommerce ul.products li.product .featured-product-right {
    position: relative;
}

.sober-product-carousel .woocommerce ul.products li.product .featured-product-right img {
    max-height: 550px;
    object-fit: contain;
}

.sober-product-carousel .woocommerce ul.products li.product .featured-product-right .buttons {
    display: none;
}

.sober-product-carousel .woocommerce .ribbons .featured {
    display: none;
}

.sober-product-carousel .woocommerce ul.products li.product .woocommerce-loop-product__title {
    display: flex;
    flex-direction: column;
    padding: 0;
    align-items: flex-start;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title a {
    font-size: 1.125em;
    font-weight: 500;
}

.sober-product-carousel .woocommerce ul.products li.product .woocommerce-loop-product__title a:not(.woocommerce-loop-product__link) {
    font-size: 1.875em;
    font-weight: 500;
    margin-bottom: 1rem;
}

.sober-product-carousel .woocommerce ul.products li.product .woocommerce-loop-product__title span {
    text-transform: uppercase;
    font-size: 0.875em;
    font-weight: 500;
}

.woocommerce ul.products li.product .product-details {
    display: flex;
    justify-content: space-between;
}

.woocommerce ul.products li.product .product-details .product-artist-dimensions {
    display: flex;
    flex-direction: column;
}

.woocommerce ul.products li.product .product-details .product-artist-dimensions .artist {
    text-transform: uppercase;
}

.woocommerce ul.products li.product .product-details .product-artist-dimensions .dimensions {
    color: black;
}

.woocommerce ul.products li.product .product-details .product-artist-dimensions .artist,
.woocommerce ul.products li.product .product-details .product-artist-dimensions .dimensions {
    font-size: 0.875em;
}

.woocommerce ul.products li.product .price {
    width: fit-content;
    padding: 0.75em 1em;
    /* Set per product by sober_child_price_badge_styles() from the badge
       colours, fallbacks are the colours used for products without a badge */
    background-color: var(--product-price-bg, #f3f3f3);
    color: var(--product-price-color, #111114);
    align-self: end;
    font-size: 1em;
    font-weight: 500;
    line-height: 1em;
}

/* Prices inside a carousel keep the neutral background */
.woocommerce ul.products.owl-carousel li.product {
    --product-price-bg: #f3f3f3;
    --product-price-color: #111114;
}

/* The parent theme greys out the price of out of stock products, which would
   override the sold out badge colour */
.woocommerce ul.products:not(.owl-carousel) li.product.outofstock .price {
    color: var(--product-price-color, #909097);
}

.sober-product-carousel .woocommerce ul.products li.product .price {
    padding: 1.5em 1em;
    text-align: center;
    align-self: unset;
    width: 100%;
    margin-right: 20px;
}

.woocommerce ul.products li.product .price .amount {
    font-size: 0.875em;
}

.sober-product-carousel .woocommerce ul.products li.product .price .amount {
    font-size: 1em;
}

.woocommerce .all-products a.button {
    border: 1px solid black;
    font-weight: normal;
    line-height: 1em;
    padding: 1em 0;
}

.woocommerce ul.products li.product .buttons {
    padding: 10px;
}

.sober-product-carousel .woocommerce ul.products li.product .buttons {
    position: unset;
    padding: 0;
}

.woocommerce ul.products li.product .buttons .add_to_cart_button,
.woocommerce ul.products li.product .buttons .sober-loop-atc-button {
    display: none;
}

.woocommerce ul.products li.product .buttons .quick_view_button {
    transition-delay: unset;
    border-radius: 0;
    width: 100%;
    margin: 0;
    background-color: black;
    height: 60px;
    line-height: 60px;
}

.woocommerce ul.products li.product:hover .buttons .quick_view_button {
    transform: translateY(calc(-100% - 20px));
}

.sober-product-carousel .woocommerce ul.products li.product .buttons .quick_view_button {
    line-height: 1em;
    height: unset;
    min-height: unset;
    padding: 1.5em 1em;
    /* margin-left: 2em; */
}

.sober-product-carousel .woocommerce ul.products li.product .buttons .quick_view_button,
.sober-product-carousel .woocommerce ul.products li.product:hover .buttons .quick_view_button {
    transform: none;
    opacity: unset;
}

/* Quick view modal */
.quick-view-modal .modal-content {
    transform: none;
    top: unset;
}

.quick-view-modal .modal-content .container {
    width: 100%;
    padding: 0;
}

.quick-view-modal .modal-content .product {
    height: 100%;
}

.quick-view-modal .modal-content .product .close-modal {
    top: 35px;
    right: 35px;
    z-index: 2;
}

.quick-view-modal .modal-content .product .close-modal svg,
.quick-view-modal .modal-content .product .close-modal:hover svg {
    fill: white;
}

.quick-view-modal .modal-content .product .product-quickview {
    display: flex;
    flex-direction: column;
    background-color: black;
    height: 100vh;
    width: 100vw;
}

.quick-view-modal .modal-content .product .product-summary .images,
.quick-view-modal .modal-content .product .product-summary .summary {
    width: 100%;
}

.quick-view-modal .modal-content .product .product-summary .images {
    height: auto;
    background-color: black;
    flex: 1 1 auto;
    overflow: auto;
}

.quick-view-modal .modal-content .product .product-summary .images div:not(.owl-nav),
.quick-view-modal .modal-content .product .product-summary .images div a,
.quick-view-modal .modal-content .product .product-summary .images div a img {
    height: 100% !important;
}

.woocommerce div.product div.images div.thumbnails {
    display: none !important;
}

.quick-view-modal .owl-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    bottom: 0;
    width: calc(100% - 5em);
    height: 100%;
}

.quick-view-modal .owl-nav .owl-prev,
.quick-view-modal .owl-nav .owl-next {
    padding: 0;
    height: 50%;
}

.quick-view-modal .owl-nav .owl-prev::before,
.quick-view-modal .owl-nav .owl-next::before {
    content: '';
    display: block;
    width: 10px;
    height: 17px;
    background-image: url(images/arrow-slider.png);
    background-repeat: no-repeat;
}

.quick-view-modal .owl-nav .owl-prev.disabled::before,
.quick-view-modal .owl-nav .owl-next.disabled::before {
    opacity: 0.25;
    cursor: default;
}

.quick-view-modal .owl-nav .owl-next::before {
    transform: rotate(180deg);
}

.quick-view-modal .owl-nav .owl-prev svg,
.quick-view-modal .owl-nav .owl-next svg {
    display: none;
}

.woocommerce div.product div.images .woocommerce-product-gallery__image--placeholder {
    border: none;
}

.woocommerce div.product div.images .woocommerce-product-gallery__slider {
    padding: 2.5em;
}

.woocommerce div.product div.images .woocommerce-product-gallery__slider .woocommerce-product-gallery__image a {
    cursor: default !important;
}

.quick-view-modal .modal-content .product .product-summary .images img {
    object-fit: contain;
    height: 100% !important;
}

.quick-view-modal .modal-content .product .product-summary .summary {
    height: auto !important;
    padding: 0;
    width: 70%;
    margin: auto;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-wrapper {
    float: none;
    overflow: unset;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content {
    display: flex;
    justify-content: space-between;
    align-items: end;
    padding: 0 0 2.5em;
    right: 0;
    color: white;
    overflow: hidden;
    position: relative;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content * {
    text-align: left;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .product_title {
    margin-bottom: 2rem;
    font-size: 1.85em;
    font-weight: bold;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .product_title a {
    color: white;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .product_artist {
    text-transform: uppercase;
    font-size: 1.285em;
    line-height: 1.285em;
    font-weight: bold;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .dimensions-year-category {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.75em 2.5em;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .dimensions-year-category p {
    line-height: 1.1425em;
    font-size: 1.1425em;
    display: contents;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .dimensions-year-category p:not(:last-child) {
    margin-bottom: 0.75em;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .dimensions-year-category p span:first-child {
    font-weight: bold;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .stock {
    display: none;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .cart {
    margin-bottom: 0;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .cart .quantity,
.quick-view-modal .modal-content .product .product-summary .summary .ss-content .cart svg {
    display: none;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .cart button {
    text-align: center;
    min-width: 265px;
    font-size: 16px;
    border: 1px solid white;
    background-color: black;
}

.quick-view-modal .modal-content .product .product-summary .summary .ss-content .cart button:hover {
    border: 1px solid black;
    color: black;
    background-color: white;
}

.quick-view-modal .modal-content .product .images a .data-caption {
    position: absolute;
    width: 100%;
    bottom: 0;
    margin: 0;
    padding: 0.75rem 1.25rem;
    color: white;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0) 100%);
}

/* Product detail page */
.woocommerce.single-product .site-content .container {
    width: 100%;
    padding: 0 40px;
    margin-top: 50px;
}

.woocommerce.single-product div.product.layout-style-5 .product-summary {
    align-items: unset;
    padding: 40px;
    margin-bottom: 80px;
}

.woocommerce.single-product div.product.layout-style-5 div.images {
    order: unset;
    width: 60%;
    padding: 0;
    margin-right: 40px;
}

.woocommerce.single-product div.product.layout-style-5 div.images img {
    max-height: 600px;
    width: 100%;
    object-fit: contain;
    height: auto;
}

.woocommerce.single-product div.product.layout-style-5 div.images div.thumbnails {
    display: flex !important;
    gap: 20px;
    position: unset;
    transform: unset;
    width: 100%;
    padding: 0;
    margin-top: 30px;
    overflow-x: auto;
}

.woocommerce.single-product div.product.layout-style-5 div.images div.thumbnails .woocommerce-product-gallery__image {
    width: 90px;
    min-width: 90px;
    height: 90px;
    margin: 0;

    img {
        border: 2px solid rgba(0,0,0,0);
    }

    &.active img {
        border-color: #c22228;
    }
}

.woocommerce.single-product div.product.layout-style-5 div.images div.thumbnails .woocommerce-product-gallery__image > a {
    height: 100%;
}

.woocommerce.single-product div.product.layout-style-5 div.images div.thumbnails .woocommerce-product-gallery__image img {
    object-fit: cover;
    height: inherit;
}


.woocommerce.single-product div.product.layout-style-5 div.summary {
    width: 40%;
    padding: 0;
    font-size: 1em;
    max-height: unset;
}

.woocommerce.single-product div.product.layout-style-5 .title-artist {
    margin-bottom: 2.5em;
}

.woocommerce.single-product div.product.layout-style-5 .title-artist > * {
    font-size: 2.375em;
    line-height: 1em;
    font-weight: 500;
    color: black;
}

.woocommerce.single-product div.product.layout-style-5 .title-artist .product_title {
    margin-bottom: 0.5em;
}

.woocommerce.single-product div.product.layout-style-5 .title-artist .product_artist {
    font-size: 1.5em;
    text-transform: uppercase;
}

.woocommerce.single-product div.product.layout-style-5 .price-cart {
    display: flex;
    align-items: start;
    margin-bottom: 1.5em;
}

.woocommerce.single-product div.product.layout-style-5 .price-cart > * {
    margin-bottom: 0;
    width: 50%;
}

.woocommerce.single-product div.product.layout-style-5 .price-cart .price {
    font-size: 1em;
    font-weight: 500;
    line-height: 1em;
    /* Set per product by sober_child_price_badge_styles() from the badge
       colours, fallbacks are the colours used for products without a badge */
    background-color: var(--product-price-bg, #f3f3f3);
    color: var(--product-price-color, #111114);
    padding: 1.5em 1em;
    text-align: center;
    align-self: unset;
    margin-right: 20px;
}

.woocommerce.single-product div.product.layout-style-5 .price-cart .cart .single_add_to_cart_button {
    width: 100%;
    background-color: black;
    line-height: 1em;
    padding: 1.5em 1em;
}

.woocommerce.single-product div.product.layout-style-5 .price-cart .cart .single_add_to_cart_button svg {
    display: none;
}

.woocommerce.single-product div.product.layout-style-5 .price-block .price {
    margin-top: 0;
    margin-bottom: 0;
}

.woocommerce.single-product div.product.layout-style-5 .sober-financing-cta {
    margin: 0.75em 20px 0 0;
    text-align: center;
}

.woocommerce.single-product div.product.layout-style-5 .sober-financing-cta a,
.woocommerce.single-product div.product.layout-style-5 .sober-financing-cta a:hover,
.woocommerce.single-product div.product.layout-style-5 .sober-financing-cta a:focus {
    color: #000;
    cursor: pointer;
    display: inline-block;
    position: relative;
    text-decoration: none;
}

.woocommerce.single-product div.product.layout-style-5 .sober-financing-cta a::after {
    background-color: #23232c;
    bottom: -3px;
    content: "";
    height: 2px;
    position: absolute;
    right: 0;
    transition: all 0.5s;
    width: 0;
}

.woocommerce.single-product div.product.layout-style-5 .sober-financing-cta a:hover::after,
.woocommerce.single-product div.product.layout-style-5 .sober-financing-cta a:focus::after {
    left: 0;
    width: 100%;
}

.woocommerce.single-product div.product.layout-style-5 .description {
    color: black;
}

.woocommerce.single-product div.product.layout-style-5 .description .woocommerce-product-details__short-description {
    font-size: inherit;
    margin-bottom: 1.25em;
}

.woocommerce.single-product div.product.layout-style-5 .description .woocommerce-product-details__short-description p:first-child {
    font-weight: 500;
    margin-bottom: 1.25em;
}

.woocommerce.single-product div.product.layout-style-5 .description .woocommerce-product-details__short-description p:not(:first-child) {
    font-family: Fraunces;
}

.woocommerce.single-product div.product.layout-style-5 div.images .woocommerce-product-gallery__wrapper {
    max-height: unset;
}

.woocommerce.single-product div.product.layout-style-5 div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__slider {
    width: 100%;
    padding: 0;
}

.woocommerce.single-product div.product.layout-style-5 .dimensions-year-category {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.75em 2.5em;
}

.woocommerce.single-product div.product.layout-style-5 .dimensions-year-category > p:not(:last-child) {
    margin-bottom: 1.25em;
}

.woocommerce.single-product div.product.layout-style-5 .dimensions-year-category > p {
    display: contents;
}

.woocommerce.single-product div.product.layout-style-5 .dimensions-year-category > p span:first-child {
    font-weight: 500;
}

.woocommerce.single-product div.product.layout-style-5 form.cart div.quantity {
    display: none;
}

.woocommerce.single-product .related {
    border-top: none;
    padding: 0;
    margin-bottom: -45px;
}

.woocommerce.single-product .related h2 {
    text-align: left;
    margin: 0 0 50px;
    font-size: 1.875em;
    font-weight: 500;
}

.woocommerce.single-product .related ul.products {
    margin-bottom: 0;
}

/* Cart page */
.woocommerce-cart .entry-header {
    margin: 0;
}

.woocommerce-cart .site-content table {
    border: none;
}

.wc-block-cart__empty-cart__title.with-empty-cart-icon::before,
.wp-block-separator.has-alpha-channel-opacity,
.wp-block-woocommerce-product-new,
.wp-block-woocommerce-empty-cart-block .wp-block-heading:not(.wc-block-cart__empty-cart__title) {
    display: none;
}

.wc-block-cart .wc-block-cart__submit-button {
    line-height: 1em;
    border: 1px solid black;
    padding: 1em 2em;
    transition: .5s;
    background-color: transparent;
    color: black;
    min-height: 0 !important;
}

.wc-block-cart .wc-block-cart__submit-button:hover {
    background-color: black;
    color: white;
}

/* Artists listing, Expositions listing and Blog pages */
.page-template-archive-artist .page-header,
.page-template-archive-exhibition .page-header,
.page-template-archive-fair .page-header,
.post-type-archive-product .page-header,
.tax-product_cat .page-header,
.blog .page-header,
.woocommerce-checkout .page-header {
    padding: 0;
    margin-top: 50px;
    background-color: unset;
}

.page-template-archive-artist .page-header .page-title,
.page-template-archive-exhibition .page-header .page-title,
.page-template-archive-fair .page-header .page-title,
.post-type-archive-product .page-header .page-title,
.tax-product_cat .page-header .page-title,
.blog .page-header .page-title,
.woocommerce-checkout .page-header .page-title {
    padding: 0;
    text-align: left;
    font-size: 3.125em;
    font-weight: 500;
}

/* Product category archives are flagged page-header-text-light by the parent
   theme, which would leave the title white on the now transparent background. */
.tax-product_cat .page-header .page-title {
    color: black;
}

.woocommerce-checkout .page-header .page-title {
    margin: 0;
}

.page-template-archive-artist .page-header .breadcrumb,
.page-template-archive-exhibition .page-header .breadcrumb,
.page-template-archive-fair .page-header .breadcrumb,
.post-type-archive-product .page-header .breadcrumb,
.tax-product_cat .page-header .breadcrumb,
.blog .page-header .breadcrumb,
.woocommerce-checkout .page-header .breadcrumb {
    display: none;
}

.page-template-archive-artist .content-area.artists-archive {
    display: flex;
    margin-bottom: 45px;
}

.page-template-archive-exhibition .exhibitions-filter,
.page-template-archive-fair .fairs-filter,
.blog .press-filter {
    margin-top: 45px;
}

/**
 * Listing filters (year, artists): a <details> styled to blend into the filter
 * bar, its list overlaying the listing when open. Both filters share this
 * component since a native select cannot style its options.
 *
 * --listing-filter-box is the width reserved for the checkbox: it aligns the
 * "Deselect all" row, which has none, with the other options.
 */
.listing-filters {
    --listing-filter-box: 1em;
    --listing-filter-gap: 0.625em;
    display: flex;
    align-items: flex-start;
    gap: 30px;
}

.listing-filter {
    position: relative;
}

.listing-filter-summary {
    cursor: pointer;
    font-weight: 500;
    color: black;
    list-style: none;
}

.listing-filter-summary::-webkit-details-marker {
    display: none;
}

.listing-filter-summary::after {
    content: '';
    display: inline-block;
    margin-left: var(--listing-filter-gap);
    vertical-align: middle;
    border: 4px solid transparent;
    border-top-color: currentColor;
    transform: translateY(2px);
}

.listing-filter[open] > .listing-filter-summary::after {
    transform: translateY(-2px) rotate(180deg);
}

.listing-filter-list {
    position: absolute;
    z-index: 10;
    top: 100%;
    left: 0;
    min-width: 220px;
    max-height: 320px;
    overflow-y: auto;
    padding: 15px;
    background: #fff;
    border: 1px solid #e5e5e5;
}

.listing-filter-option {
    display: flex;
    align-items: baseline;
    gap: var(--listing-filter-gap);
    margin: 0 0 8px;
    font-weight: 400;
    color: black;
    cursor: pointer;
}

.listing-filter-option:last-child {
    margin-bottom: 0;
}

/**
 * Checkboxes matching the shop's exposed filters
 * (.wc-block-product-filter-checkbox-list__input, overridden above): a 1em
 * square, black border on white, black tick when selected. The browser default
 * is therefore dropped (appearance: none).
 *
 * Being explicit here is needed twice over:
 *  - the parent theme hides every checkbox under .woocommerce
 *    (`.woocommerce input[type=checkbox]{display:none}`), a class these listing
 *    pages carry;
 *  - the tick is a background-image, not a pseudo-element, as those are
 *    unreliable on an <input> across browsers — which is why WooCommerce pairs
 *    its own checkbox with an <svg> sibling.
 */
.listing-filter-option input[type="checkbox"],
.listing-filter-option input[type="radio"],
.woocommerce .listing-filter-option input[type="checkbox"],
.woocommerce .listing-filter-option input[type="radio"] {
    display: block;
    flex: none;
    box-sizing: border-box;
    width: var(--listing-filter-box);
    height: var(--listing-filter-box);
    margin: 0;
    padding: 0;
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid black;
    border-radius: 2px;
    background: white no-repeat center;
    cursor: pointer;
}

/* Single choice: keep the round radio affordance. */
.listing-filter-option input[type="radio"],
.woocommerce .listing-filter-option input[type="radio"] {
    border-radius: 50%;
}

.listing-filter-option input[type="checkbox"]:checked,
.woocommerce .listing-filter-option input[type="checkbox"]:checked {
    /* Same tick path as WooCommerce, see ProductFilterCheckboxList.php */
    background-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 10 8%22 fill=%22none%22%3E%3Cpath d=%22M9.25 1.19922L3.75 6.69922L1 3.94922%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3C/svg%3E');
    background-size: 0.6em;
}

.listing-filter-option input[type="radio"]:checked,
.woocommerce .listing-filter-option input[type="radio"]:checked {
    background-image: radial-gradient(circle, black 0 45%, transparent 50%);
    background-size: 0.55em 0.55em;
}

.listing-filter-option input:focus-visible,
.woocommerce .listing-filter-option input:focus-visible {
    outline: 1px solid black;
    outline-offset: 1px;
}

/* Same row as the options, offset by the width of a checkbox. */
.listing-filter-option-reset {
    padding-left: calc(var(--listing-filter-box) + var(--listing-filter-gap));
    text-decoration: none;
}

.listing-filter-option-reset:hover {
    text-decoration: underline;
}
.page-template-archive-exhibition .no-exhibitions,
.page-template-archive-exhibition .no-fairs {
    margin: 20px 0 45px;
}

.page-template-archive-artist ul.products {
    padding-top: 50px
}

.page-template-archive-artist ul.products.artists-names {
    display: unset;
    column-count: 2;
}

.page-template-archive-artist ul.products.artists-names,
.page-template-archive-artist ul.products.artists-works {
    margin: 0;
}

.page-template-archive-exhibition ul.products,
.page-template-archive-fair ul.products,
.blog ul.products {
    padding-top: 20px
}

.page-template-archive-artist.woocommerce ul.products li.product,
.page-template-archive-exhibition.woocommerce ul.products li.product,
.page-template-archive-fair.woocommerce ul.products li.product,
.blog .woocommerce ul.products li.product {
    display: flex;
    flex-direction: column;
}

.page-template-archive-artist.woocommerce ul.products.artists-names li.product {
    margin-bottom: 15px;
}

.page-template-archive-artist.woocommerce ul.products.artists-works li.product {
    display: none;
}

.page-template-archive-artist.woocommerce ul.products.artists-works li.product.active {
    display: block;
}

.page-template-archive-artist ul.products li.product .product-header,
.page-template-archive-exhibition ul.products li.product .product-header,
.page-template-archive-fair ul.products li.product .product-header,
.blog ul.products li.product .product-header {
    flex: 1;
}

.page-template-archive-artist ul.products.artists-works li.product .product-header {
    box-shadow: none;
}

.page-template-archive-artist ul.products li.product .product-header .artist-image,
.page-template-archive-exhibition ul.products li.product .product-header .exhibition-image,
.page-template-archive-fair ul.products li.product .product-header .fair-image,
.blog ul.products li.product .product-header .press-image {
    object-fit: contain;
    height: 100%;
    aspect-ratio: 1/1;
}

.page-template-archive-artist ul.products.artists-works li.product .product-header .artist-image {
    max-height: 500px;
    aspect-ratio: unset;
    padding: 0;
}

.page-template-archive-exhibition ul.products li.product > a,
.page-template-archive-fair ul.products li.product > a {
    display: flex;
    flex-direction: column;
}

.page-template-archive-artist ul.products li.product h3 {
    font-size: 2rem !important;
}

.page-template-archive-artist ul.products.artists-names li.product h3 {
    text-transform: uppercase;
}

.page-template-archive-exhibition ul.products li.product > a .artists,
.page-template-archive-fair ul.products li.product > a .artists {
    font-size: 0.875em;
    text-transform: uppercase;
    color: rgb(124, 124, 128);
}

.page-template-archive-exhibition ul.products li.product > a .dates,
page-template-archive-fair ul.products li.product > a .dates {
    font-size: 0.875em;
    text-transform: uppercase;
}

/* Artist and Exposition detail pages */
.archive.tax-pa_artistes .page-header,
.archive.tax-pa_expositions .page-header,
.archive.tax-pa_foires .page-header {
    background-image: none !important;
    background-color: white !important;
    padding: 50px 0;
}

.archive.tax-pa_artistes .page-header .page-title,
.archive.tax-pa_expositions .page-header .page-title,
.archive.tax-pa_foires .page-header .page-title {
    color: black !important;
    font-size: 3.125em;
    font-weight: 500;
    padding: 0;
}

.archive.tax-pa_artistes .page-header .breadcrumb,
.archive.tax-pa_expositions .page-header .breadcrumb,
.archive.tax-pa_foires .page-header .breadcrumb {
    display: none !important;
}

.archive.tax-pa_artistes .site-content,
.archive.tax-pa_artistes .woocommerce-tabs,
.archive.tax-pa_expositions .site-content,
.archive.tax-pa_expositions .woocommerce-tabs,
.archive.tax-pa_foires .site-content,
.archive.tax-pa_foires .woocommerce-tabs {
    padding-top: 0 !important;
}

.archive.tax-pa_artistes .woocommerce-tabs,
.archive.tax-pa_expositions .woocommerce-tabs,
.archive.tax-pa_foires .woocommerce-tabs {
    padding: 0 10em;
    margin-bottom: 50px;
}

.archive.tax-pa_artistes .woocommerce-tabs ul.tabs,
.archive.tax-pa_expositions .woocommerce-tabs ul.tabs,
.archive.tax-pa_foires .woocommerce-tabs ul.tabs {
    border-top: none !important;
    padding: 0 !important;
}

.archive.tax-pa_artistes.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.archive.tax-pa_expositions.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.archive.tax-pa_foires.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: #808080;
    font-size: 1.125em;
}

.archive.tax-pa_artistes.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.archive.tax-pa_expositions.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.archive.tax-pa_foires.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: black;
}

.archive.tax-pa_artistes .woocommerce-tabs ul.tabs li a:after,
.archive.tax-pa_expositions .woocommerce-tabs ul.tabs li a:after,
.archive.tax-pa_foires .woocommerce-tabs ul.tabs li a:after {
    display: none;
}

.archive.tax-pa_artistes .woocommerce-tabs .panel,
.archive.tax-pa_expositions .woocommerce-tabs .panel,
.archive.tax-pa_foires .woocommerce-tabs .panel {
    text-align: left !important;
    margin-bottom: 0 !important;
}

.archive.tax-pa_artistes .woocommerce-tabs .panel ul,
.archive.tax-pa_expositions .woocommerce-tabs .panel ul,
.archive.tax-pa_foires .woocommerce-tabs .panel ul {
    margin-bottom: 0;
}

/* Description tab */
.archive.tax-pa_artistes .woocommerce-tabs #tab-description,
.archive.tax-pa_expositions .woocommerce-tabs #tab-description,
.archive.tax-pa_foires .woocommerce-tabs #tab-description {
    display: flex;
    flex-wrap: wrap;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-description .image,
.archive.tax-pa_expositions .woocommerce-tabs #tab-description .image,
.archive.tax-pa_foires .woocommerce-tabs #tab-description .image {
    width: 40%;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-description .image img,
.archive.tax-pa_expositions .woocommerce-tabs #tab-description .image img,
.archive.tax-pa_foires .woocommerce-tabs #tab-description .image img {
    width: 100%;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-description .content,
.archive.tax-pa_expositions .woocommerce-tabs #tab-description .content,
.archive.tax-pa_foires .woocommerce-tabs #tab-description .content {
    width: 60%;
    padding-left: 1.5em;
    color: black;
    font-family: Fraunces;
    font-size: 1.125em;
    line-height: 1.5em;
    font-weight: 300;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-description .content p:first-of-type:empty,
.archive.tax-pa_expositions .woocommerce-tabs #tab-description .content p:first-of-type:empty,
.archive.tax-pa_foires .woocommerce-tabs #tab-description .content p:first-of-type:empty {
    display: none;
    margin: 0 !important;
}

/* Interview tab (artist, exhibition and fair pages)
   The main player keeps a 16:9 box so swapping a video never shifts the page.
   The thumbnail strip reuses the description gallery wrapper, hence its arrows. */
.archive.tax-pa_artistes .woocommerce-tabs #tab-interview .content,
.archive.tax-pa_expositions .woocommerce-tabs #tab-interview .content,
.archive.tax-pa_foires .woocommerce-tabs #tab-interview .content {
    width: 100%;
}

.interview-gallery .interview-player {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
}

.interview-gallery .interview-player > * {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.interview-gallery .interview-player video {
    object-fit: contain;
}

/* tarteaucitron sizes its own placeholder inline, which its "engage" notice
   then has to live inside. */
.interview-gallery .interview-player iframe {
    display: block;
}

.interview-gallery .interview-caption {
    margin: 1em 0 0;
    color: #808080;
    font-size: 1.125em;
}

.interview-gallery .interview-caption:empty {
    display: none;
}

.interview-gallery .interview-thumbs-wrapper {
    width: 100%;
    margin-top: 1.5em;
    display: flex;
    align-items: center;
    gap: 1.5em;
}

.interview-gallery .interview-thumbs {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 1.5em;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    padding-bottom: 0.75em;
    -webkit-overflow-scrolling: touch;
}

.interview-gallery .interview-thumb {
    position: relative;
    flex: 0 0 auto;
    /* Follows the viewport continuously instead of stepping between
       breakpoints — em units would only follow the inherited font size, which
       barely moves — and aspect-ratio holds the 16:9 so the two dimensions can
       never drift apart. Read as floor / rate / ceiling: 267px wide from
       1484px up, shrinking down to 128x72 at 711px and never below. */
    width: clamp(128px, 18vw, 267px);
    aspect-ratio: 16 / 9;
    height: auto;
    padding: 0;
    overflow: hidden;
    border: 3px solid transparent;
    background: #f0f0f0;
    cursor: pointer;
    opacity: 0.6;
    transition: opacity 0.2s ease;
    scroll-snap-align: start;
}

.interview-gallery .interview-thumb:hover,
.interview-gallery .interview-thumb-active {
    opacity: 1;
}

.interview-gallery .interview-thumb-active {
    border-color: #c22228;
}

/* The border marks which video is playing, so it steps out of the way while a
   tile is hovered. Only its colour goes: dropping the border itself would
   resize the tile and shift the whole strip. */
.interview-gallery .interview-thumb:hover {
    border-color: transparent;
}

/* Either an <img> or the <video> itself, seeked to its first second. */
.interview-gallery .interview-thumb-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Caption and source credit, shown on hover — on every tile alike, whether it
   carries an image or not. */
.interview-gallery .interview-thumb-info {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 0.5em 0;
    padding: 2em;
    color: #fff;
    text-align: center;
    background: rgba(0, 0, 0, 0.55);
    opacity: 0;
    transition: opacity 0.2s ease;
}

.interview-gallery .interview-thumb:hover .interview-thumb-info {
    opacity: 1;
}

.interview-gallery .interview-thumb-caption {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 1em;
    line-height: 1.15;
}

.interview-gallery .interview-thumb-source {
    font-size: 0.8125em;
    opacity: 0.5;
    line-height: 1.15;
}

.interview-gallery .interview-thumb-play {
    position: absolute;
    top: 50%;
    left: 50%;
    /* Same idea as the tile, with one clamp driving the whole badge: every
       length below is in em, so the disc and its triangle scale together from
       this single value. Multiply it by 3.125 to read the disc: 50px wide at
       the top, down to a 34px floor that keeps the badge legible on the
       smallest tiles — it is that floor alone that sets the phone size. */
    font-size: clamp(10.9px, 1.08vw, 16px);
    width: 3.125em;
    height: 3.125em;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.75);
    transition: opacity 0.2s ease;
}

.interview-gallery .interview-thumb-play::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    /* The -40% rather than -50% offsets the triangle's own centre of mass,
       which sits a third of the way from its base, not halfway. */
    transform: translate(-40%, -50%);
    border-style: solid;
    border-width: 0.5em 0 0.5em 0.75em;
    border-color: transparent transparent transparent #fff;
}

/* The badge would sit right on top of the caption, so it steps aside on hover. */
.interview-gallery .interview-thumb:hover .interview-thumb-play {
    opacity: 0;
}

/* Description image gallery (thumbnail strip, horizontal scroll on overflow) */
.archive.tax-pa_artistes .woocommerce-tabs > .image-gallery-wrapper,
.archive.tax-pa_expositions .woocommerce-tabs #tab-description .image-gallery-wrapper,
.archive.tax-pa_foires .woocommerce-tabs #tab-description .image-gallery-wrapper {
    width: 100%;
    margin-top: 2.5em;
    display: flex;
    align-items: center;
    gap: 1.5em;
}

/* On the artist pages the strip sits above the tab navigation rather than at
   the end of a panel, so its spacing goes the other way round. */
.archive.tax-pa_artistes .woocommerce-tabs > .image-gallery-wrapper {
    margin-top: 0;
    margin-bottom: 2.5em;
}

/* Scroll arrows, revealed by the front-end only when the strip overflows */
.image-gallery-wrapper .image-gallery-nav {
    display: none;
    flex: 0 0 auto;
    padding: 0;
    border: 0;
    background: none;
    cursor: pointer;
    /* The strip reserves 0.75em under its items for the scrollbar, and the
       wrapper centres on that taller box — which would leave the arrows half
       that padding below the thumbnails. Mirroring the padding as a margin
       puts their centre back on the centre of the thumbnails. */
    margin-bottom: 0.75em;
}

.image-gallery-scrollable .image-gallery-nav {
    display: block;
}

/* Chevron drawn in CSS rather than taken from images/arrow-slider.png: that
   asset is a white arrow, made for the sliders that sit over an image, and it
   is invisible on the white background these strips stand on. */
/* The mark is an L — a left and a bottom border — so its ink sits towards one
   corner, not in the middle of its box. Rotated 45 degrees that puts it about
   26% of its width off centre, which shows up as soon as the button is a disc.
   The translate puts the ink back in the middle; it is written before the
   rotation so it applies on the horizontal axis of the page, not of the mark. */
.image-gallery-wrapper .image-gallery-nav::before {
    content: '';
    display: block;
    width: 11px;
    height: 11px;
    border-left: 2px solid #000;
    border-bottom: 2px solid #000;
    transform: translateX(10%) rotate(45deg);
}

.image-gallery-wrapper .image-gallery-nav-next::before {
    transform: translateX(-25%) rotate(-135deg);
}

.image-gallery-wrapper .image-gallery-nav:disabled {
    cursor: default;
}

.image-gallery-wrapper .image-gallery-nav:disabled::before {
    opacity: 0.25;
}

.archive.tax-pa_artistes .woocommerce-tabs > .image-gallery-wrapper .image-gallery,
.archive.tax-pa_expositions .woocommerce-tabs #tab-description .image-gallery,
.archive.tax-pa_foires .woocommerce-tabs #tab-description .image-gallery {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 1.5em;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    padding-bottom: 0.75em;
    -webkit-overflow-scrolling: touch;
}

.archive.tax-pa_artistes .woocommerce-tabs > .image-gallery-wrapper .image-gallery-item,
.archive.tax-pa_expositions .woocommerce-tabs #tab-description .image-gallery-item,
.archive.tax-pa_foires .woocommerce-tabs #tab-description .image-gallery-item {
    flex: 0 0 auto;
    margin: 0;
    max-width: 100%;
    scroll-snap-align: start;
}

.archive.tax-pa_artistes .woocommerce-tabs > .image-gallery-wrapper .image-gallery-item a,
.archive.tax-pa_expositions .woocommerce-tabs #tab-description .image-gallery-item a,
.archive.tax-pa_foires .woocommerce-tabs #tab-description .image-gallery-item a {
    display: block;
    cursor: zoom-in;
}

.archive.tax-pa_artistes .woocommerce-tabs > .image-gallery-wrapper .image-gallery-item img,
.archive.tax-pa_expositions .woocommerce-tabs #tab-description .image-gallery-item img,
.archive.tax-pa_foires .woocommerce-tabs #tab-description .image-gallery-item img {
    display: block;
    max-height: 250px;
    max-width: 100%;
    width: auto;
    height: auto;
}

.archive.tax-pa_expositions .page-header .page-title,
.archive.tax-pa_foires .page-header .page-title {
    display: flex;
    flex-direction: column;
    gap: 0.5em;
}

/* Related exhibitions / fairs / artists tabs reuse the listing card grid */
.archive.tax-pa_artistes .woocommerce-tabs #tab-expositions .content ul.products li.product,
.archive.tax-pa_artistes .woocommerce-tabs #tab-foires .content ul.products li.product,
.archive.tax-pa_expositions .woocommerce-tabs #tab-artists .content ul.products li.product,
.archive.tax-pa_foires .woocommerce-tabs #tab-artists .content ul.products li.product {
    display: flex;
    flex-direction: column;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-expositions .content ul.products li.product .product-header,
.archive.tax-pa_artistes .woocommerce-tabs #tab-foires .content ul.products li.product .product-header,
.archive.tax-pa_expositions .woocommerce-tabs #tab-artists .content ul.products li.product .product-header,
.archive.tax-pa_foires .woocommerce-tabs #tab-artists .content ul.products li.product .product-header {
    flex: 1;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-expositions .content ul.products li.product .product-header .exhibition-image,
.archive.tax-pa_artistes .woocommerce-tabs #tab-foires .content ul.products li.product .product-header .fair-image,
.archive.tax-pa_expositions .woocommerce-tabs #tab-artists .content ul.products li.product .product-header .artist-image,
.archive.tax-pa_foires .woocommerce-tabs #tab-artists .content ul.products li.product .product-header .artist-image {
    object-fit: contain;
    height: 100%;
    aspect-ratio: 1/1;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-expositions .content ul.products li.product > a,
.archive.tax-pa_artistes .woocommerce-tabs #tab-foires .content ul.products li.product > a {
    display: flex;
    flex-direction: column;
}

.archive.tax-pa_expositions .woocommerce-tabs #tab-artists .content ul.products li.product h3,
.archive.tax-pa_foires .woocommerce-tabs #tab-artists .content ul.products li.product h3 {
    font-size: 2rem !important;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-expositions .content ul.products li.product > a .artists,
.archive.tax-pa_artistes .woocommerce-tabs #tab-foires .content ul.products li.product > a .artists {
    font-size: 0.875em;
    text-transform: uppercase;
    color: rgb(124, 124, 128);
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-expositions .content ul.products li.product > a .dates,
.archive.tax-pa_artistes .woocommerce-tabs #tab-foires .content ul.products li.product > a .dates {
    font-size: 0.875em;
    text-transform: uppercase;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-articles .content ul,
.archive.tax-pa_expositions .woocommerce-tabs #tab-articles .content ul,
.archive.tax-pa_foires .woocommerce-tabs #tab-articles .content ul {
    list-style-type: none;
    padding: 0;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-articles .content ul li,
.archive.tax-pa_expositions .woocommerce-tabs #tab-articles .content ul li,
.archive.tax-pa_foires .woocommerce-tabs #tab-articles .content ul li {
    line-height: 1em;
    margin-bottom: 1em;
}

.archive.tax-pa_artistes .woocommerce-tabs #tab-articles .content ul li a,
.archive.tax-pa_expositions .woocommerce-tabs #tab-articles .content ul li a,
.archive.tax-pa_foires .woocommerce-tabs #tab-articles .content ul li a {
    font-weight: 500;
    font-size: 1.125em;
}

/* Product listing */
.archive.tax-pa_artistes .related,
.archive.tax-pa_expositions .related,
.archive.tax-pa_foires .related {
    border-top: none;
    padding: 0;
    margin-bottom: -45px;
}

.archive.tax-pa_artistes .related h2,
.archive.tax-pa_expositions .related h2,
.archive.tax-pa_foires .related h2 {
    text-align: left;
    margin: 0 0 50px;
    font-size: 1.875em;
    font-weight: 500;
}

.archive.tax-pa_artistes .related ul.products,
.archive.tax-pa_expositions .related ul.products,
.archive.tax-pa_foires .related ul.products {
    margin-bottom: 0;
}

/* Gallery page */
.testimonials figure img {
    aspect-ratio: 1/1;
    object-fit: contain;
    padding: 30px;
    width: 100%;
}

.testimonials h3 {
    margin: 1.25em 0 !important;
}

article.hentry a:not(.sober-button):not(.quick_view_button):not(.uc_button):not(.wc-block-components-button):not(:has(img)):not(:has(span.leaderboard-image-slider__item-button)),
.woocommerce ul.products li.product a:not(.quick_view_button):not(:has(h3)),
.woocommerce ul.products li.product a h3,
footer a,
.archive.tax-pa_artistes .woocommerce-tabs #tab-articles .content ul li a:not(span),
.archive.tax-pa_expositions .woocommerce-tabs #tab-articles .content ul li a:not(span),
.archive.tax-pa_foires .woocommerce-tabs #tab-articles .content ul li a:not(span),
.archive.tax-pa_artistes .woocommerce-tabs #tab-articles .content ul li a span,
.archive.tax-pa_expositions .woocommerce-tabs #tab-articles .content ul li a span,
.archive.tax-pa_foires .woocommerce-tabs #tab-articles .content ul li a span {
    text-decoration: underline;
    text-decoration-color: transparent;
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
    transition: text-decoration-color .5s !important;
    text-decoration-skip-ink: auto;
}

article.hentry a:not(.sober-button):not(.quick_view_button):not(.uc_button):not(.wc-block-components-button):not(:has(img)):not(:has(span.leaderboard-image-slider__item-button)):hover,
.woocommerce ul.products li.product a:not(.quick_view_button):not(:has(h3)):hover,
.woocommerce ul.products li.product a:hover h3,
footer a:hover,
.archive.tax-pa_artistes .woocommerce-tabs #tab-articles .content ul li a:not(span):hover,
.archive.tax-pa_expositions .woocommerce-tabs #tab-articles .content ul li a:not(span):hover,
.archive.tax-pa_foires .woocommerce-tabs #tab-articles .content ul li a:not(span):hover,
.archive.tax-pa_artistes .woocommerce-tabs #tab-articles .content ul li a:hover span,
.archive.tax-pa_expositions .woocommerce-tabs #tab-articles .content ul li a:hover span,
.archive.tax-pa_foires .woocommerce-tabs #tab-articles .content ul li a:hover span {
    text-decoration-color: currentColor;
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
    text-decoration-skip-ink: auto;
}

.blog .pagination {
    display: flex;
    justify-content: center;
}

/* Blog detail page */
.single-post .entry-thumbnail img {
    max-height: 100px;
    width: auto;
}

.single-post .article .entry-content {
    text-align: center;
}

/* Customer account */
.woocommerce ul.order_details {
    padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-content .hello-customer strong {
    text-transform: unset;
}

.woocommerce .recent-orders,
.woocommerce .woocommerce-order-details__title {
    margin: 50px 0 30px;
}

.woocommerce .table-responsive {
    border: none;
    margin-bottom: 3rem;
}

.woocommerce .table-responsive table.my_account_orders th[class^="woocommerce-orders-table__header"]:not(:first-child) {
    padding: 10px;
}

.woocommerce .table-responsive table.my_account_orders td[class^="woocommerce-orders-table__cell"] {
    padding: 20px 10px;
}

.woocommerce .woocommerce-order-details p:last-of-type {
    display: none;
}

.woocommerce .woocommerce-order-details .table-responsive {
    width: 50%;
    margin: auto;
}

.woocommerce .woocommerce-order-details .table-responsive table.order_details td.product-name {
    display: flex;
    align-items: center;
    width: max-content;
}

.woocommerce .woocommerce-order-details .table-responsive .product-name-quantity {
    max-width: 250px;
    text-wrap: auto;
    margin: 0 1em;
}

.woocommerce .woocommerce-customer-details .woocommerce-customer-details--email {
    display: flex;
    align-items: center;
}

.woocommerce .woocommerce-customer-details address {
    border: 2px solid #f1f2f4;
    padding: 40px;
    border-radius: 0;
}

.woocommerce-page .checkout {
    margin-right: -15px;
    margin-left: -15px;
}

.woocommerce-checkout .woocommerce-login-form {
    top: 50%;
    left: 50%;
    transform: translate(-50%, 0%);
}

.woocommerce-checkout .woocommerce-coupon-form {
    display: none;
}

.woocommerce #payment label,
.woocommerce ul#shipping_method label {
    text-transform: unset;
}

.woocommerce-checkout form.checkout {
    width: calc(100% + 30px);
}

.woocommerce-checkout form.checkout table.shop_table td.product-name {
    display: inline-flex;
    align-items: center;
    padding-right: 10px;
}

.woocommerce-checkout form.checkout table.shop_table td.product-name .product-image {
    max-width: 48px;
    height: auto;
    margin: 0 1em 0 0;
}

.woocommerce-checkout input[type="radio"] + label::before {
    border-radius: 50%;
    border: 1px solid rgba(25, 23, 17, .48);
    background: unset;
}

.woocommerce-checkout input[type="radio"]:checked + label::before {
    border: 1px solid black;
}

.woocommerce-checkout input[type="radio"] + label::after {
    content: unset;
}

.woocommerce-checkout input[type="radio"]:checked + label::after {
    background: #000;
    border-radius: 50%;
    content: "";
    display: block;
    height: .75em;
    left: 12px;
    margin: 0;
    min-height: 12px;
    min-width: 12px;
    position: absolute;
    top: 10px;
    transform: translate(-50%, -50%);
    width: .75em;
}

.woocommerce-checkout .password-input {
    display: block;
}

.woocommerce-checkout form.checkout label {
    color: black !important;
}

.woocommerce-account-fields > * {
    padding-left: 0 !important;
}

.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address {
    margin-left: 0;
}

div.woocommerce-MyAccount-content .alg-wc-frontend-billing-edit.hide {
    display: none !important;
}

.woocommerce-checkout #payment div.place-order .button {
    line-height: 1em;
    border: 1px solid black;
    padding: 1em 2em;
    transition: .5s;
    background-color: transparent;
    color: black;
}

.woocommerce-checkout #payment div.place-order .button:hover {
    background-color: black;
    color: white;
}

.woocommerce .sober-child-checkout-message {
    clear: both;
    margin: 0 0 3rem 0 !important;
}

.woocommerce .sober-child-checkout-message svg {
    width: 100%;
    height: 100%;
}

/* Generic elements */
.site-content {
    padding-bottom: 50px;
}

.leaderboard-image-slider-section {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.leaderboard-image-slider .slider-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 40px;
}

.leaderboard-image-slider .slider-content > div {
    width: 50%;
}

.leaderboard-image-slider .slider-content .left .leaderboard-image-slider__item-title {
    margin-top: 0;
    margin-bottom: 1rem;
    font-size: 3.125em;
}

.leaderboard-image-slider .slider-content .left .leaderboard-image-slider__item-subtitle {
    margin-bottom: 0;
    color: black;
    text-transform: uppercase;
}

.leaderboard-image-slider .slider-content .right {
    text-align: right;
}

.leaderboard-image-slider .slider-content .right .leaderboard-image-slider__item-text {
    margin-bottom: 1.5rem;
    color: black;
    font-weight: 500;
    text-transform: uppercase;
}

.leaderboard-image-slider .slider-content .right .leaderboard-image-slider__item-button {
    line-height: 1em;
    border: 1px solid black;
    padding: 1em 2em;
    transition: .5s;
    text-transform: uppercase;
    display: block;
    width: fit-content;
    margin-left: auto;
}

.leaderboard-image-slider .slider-content .right .leaderboard-image-slider__item-button:hover {
    border: 1px solid black;
    background-color: black;
    color: white;
}

.leaderboard-image-slider .owl-stage .owl-item img {
    min-height: 250px;
    max-height: 650px;
    object-fit: cover;
    background-color: black;
}

.leaderboard-image-slider .owl-nav .owl-prev {
    left: 40px;
    bottom: calc(var(--leaderboard-image-slider-content-height) + 40px);
}

.leaderboard-image-slider .owl-nav .owl-next {
    right: 40px;
    bottom: calc(var(--leaderboard-image-slider-content-height) + 40px);
}

.leaderboard-image-slider .owl-nav .owl-prev,
.leaderboard-image-slider .owl-nav .owl-next {
    padding: 0;
    height: fit-content;
    top: unset;
}

.leaderboard-image-slider .owl-nav .owl-prev::before,
.leaderboard-image-slider .owl-nav .owl-next::before {
    content: '';
    display: block;
    width: 10px;
    height: 17px;
    background-image: url(images/arrow-slider.png);
    background-repeat: no-repeat;
}

.leaderboard-image-slider .owl-nav .owl-prev.disabled::before,
.leaderboard-image-slider .owl-nav .owl-next.disabled::before {
    opacity: 0.25;
    cursor: default;
}

.leaderboard-image-slider .owl-nav .owl-next::before {
    transform: rotate(180deg);
}

.leaderboard-image-slider .owl-nav .owl-prev svg,
.leaderboard-image-slider .owl-nav .owl-next svg {
    display: none;
}

.elementor-widget-sober-info-list {
    word-break: break-word;
}

.sober-message-box.closeable {
    margin: 5em 1.25em;
}

.sober-alert-bar .woocommerce-error {
    margin: 5em 1.25em !important;
    padding: 20px 65px 20px 80px !important;
}

.sober-alert-bar .woocommerce-error .message-icon {
    width: unset;
}

.woocommerce-error {
    color: #d45757;
    background-color: #ffd0d0;
    border-color: #cc1818;
}

.woocommerce-error li {
    border: none !important;
}

/* Contact Form 7 */
.wpcf7 form .wpcf7-response-output {
    margin: 2em 0em 3em;
}

.request_form_quote .mode-retrait {
    text-align: left;
}

.request_form_quote .mode-retrait .wpcf7-list-item {
    display: block;
}

.request_form_quote .mode-retrait .wpcf7-list-item input[type="radio"] {
    display: inline-block;
}

.custom-row > p {
    display: flex;
    margin-right: calc(-.5 * 1rem);
    margin-left: calc(-.5 * 1rem);
}

.custom-row > p > * {
    padding-right: calc(.5 * 1rem);
    padding-left: calc(.5 * 1rem);
    width: 100%
}

.wpcf7-acceptance .wpcf7-list-item {
    margin-left: 0;
}

.wpcf7-form .submit p {
    text-align: center;
}

.wpcf7-form .wpcf7-form-control:not(.wpcf7-submit, .wpcf7-acceptance, .hcaptcha) {
    border-bottom: 1px solid black;
    color: black;
}

.wpcf7-form .wpcf7-form-control:not(.wpcf7-acceptance, .hcaptcha)::placeholder {
    color: black;
}

.wpcf7-form .wpcf7-submit {
    line-height: 1em !important;
    border: 1px solid black !important;
    padding: 1em 2em !important;
    transition: .5s;
    text-transform: uppercase;
    display: block;
    width: fit-content;
    margin: auto;
    background: transparent;
    color: black !important;
    background: transparent !important;
}

.wpcf7-form .wpcf7-submit:not(:disabled):hover {
    background-color: black !important;
    color: white !important;
}

/* TARTEAUCITRON */
/* Icon - Management panel */
.tarteaucitronSelfLink {
    display: none !important;
}

#tarteaucitronIcon {
    z-index: 1999 !important;
}

#tarteaucitronRoot .tarteaucitronIsAllowed .tarteaucitronAllow .tarteaucitronCheck::before,
#tarteaucitronRoot .tarteaucitronIsDenied .tarteaucitronAllow .tarteaucitronCheck::before,
#tarteaucitronRoot .tarteaucitronAllow .tarteaucitronCheck::before {
    content: '\2713' !important;
}

#tarteaucitronRoot .tarteaucitronIsDenied .tarteaucitronDeny .tarteaucitronCross::before,
#tarteaucitronRoot .tarteaucitronIsAllowed .tarteaucitronDeny .tarteaucitronCross::before,
#tarteaucitronRoot .tarteaucitronDeny .tarteaucitronCross::before {
    content: '\2717' !important;
}

#tarteaucitronIcon #tarteaucitronManager img {
    width: 50% !important;
    margin: auto;
}

#tarteaucitronIcon #tarteaucitronManager {
    background-color: #c22228 !important;
    height: 50px !important;
    width: 50px !important;
    transform: translate(1vw, 12px) !important;
    padding: 0 !important;
    border: 1px solid #fff;
}

#tarteaucitronRoot .tarteaucitronH1,
#tarteaucitronRoot .tarteaucitronH2,
#tarteaucitron #tarteaucitronInfo,
#tarteaucitron #tarteaucitronServices .tarteaucitronDetails:not(.tarteaucitronDetailsInline) {
    color: #fff;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronClosePanelCookie,
#tarteaucitron #tarteaucitronClosePanel {
    background: #333333;
    color: #fff;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronHidden,
#tarteaucitron #tarteaucitronServices .tarteaucitronHidden {
    background: rgba(51, 51, 51, 0.07);
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronTitle,
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle button,
#tarteaucitron #tarteaucitronInfo,
#tarteaucitron #tarteaucitronServices .tarteaucitronDetails,
#tarteaucitronRoot .asCatToggleBtn {
    color: #fff;
    background: #333;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronTitle + [id^="tarteaucitronDetails"],
#tarteaucitron #tarteaucitronServices .tarteaucitronLine:hover {
    background:rgba(51, 51, 51, 0.2);
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine {
    background:rgba(51, 51, 51, 0.1);
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed {
    border-color: #1B870B;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied {
    border-color: #9C1A1A;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
    background: #333;
    border: 3px solid #333;
    border-left: 9px solid #333;
    border-top: 5px solid #333;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine:hover {
    background: #333;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny,
.tac_activate .tarteaucitronAllow {
    background: #555;
    color: #fff;
    padding: 6px 10px;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed.tarteaucitronIsSelected {
    background-color: #1B870B;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny,
#tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied.tarteaucitronIsSelected,
#tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied2.tarteaucitronIsSelected {
    background-color: #9C1A1A;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow {
    background-color: #1B870B;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny {
    background-color: #9C1A1A;
}

#tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow{
    opacity: 0.4;
}

#tarteaucitron .tarteaucitronBorder, #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain, #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList, #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronHidden, #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
    border-color: #333 !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig {
    background: #333;
    color: #fff;
}

#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog,
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert,
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong,
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert .tarteaucitronPartnersList * {
    color: #fff;
}

#tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronAlertBig #tarteaucitronPersonalize2,
.tarteaucitronCTAButton,
#tarteaucitron #tarteaucitronPrivacyUrl,
#tarteaucitron #tarteaucitronPrivacyUrlDialog,
#tarteaucitronRoot .tarteaucitronDeny,
#tarteaucitronRoot .tarteaucitronAllow {
    background: #008300;
    color: #fff;
    line-height: 1.5;
    padding: 5px 10px;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
    line-height: 1.5;
}

#tarteaucitronRoot .tarteaucitronDeny {
    background: #9C1A1A;
}

#tarteaucitronAlertBig #tarteaucitronCloseAlert, #tarteaucitron #tarteaucitronPrivacyUrl, #tarteaucitron #tarteaucitronPrivacyUrlDialog {
    padding: 5px 10px;
}

#tarteaucitronRoot .tarteaucitronCross::before,
#tarteaucitronRoot .tarteaucitronCheck::before,
#tarteaucitronRoot .tarteaucitronPlus::before {
    color: #fff;
}

#tarteaucitronAlertSmall {
    background: #333;
}

#tarteaucitronAlertSmall #tarteaucitronManager,
#tarteaucitronAlertSmall #tarteaucitronCookiesNumber,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesTitle strong,
#tarteaucitronCloseCross {
    color: #fff;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesTitle {
    background: #333;
}

.tac_activate {
    display: flex;
    justify-content: center;
    font-size: inherit;
}

.tac_activate .tac_float {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1em 0;
}

.tac_activate .tac_float .tarteaucitronAllow {
    background-color: #1B870B;
    line-height: 1.5;
}

.tarteaucitronIsAllowed .tarteaucitronDeny {
    opacity: 0.4 !important;
}

.tarteaucitronIsDenied .tarteaucitronAllow {
    opacity: 0.4 !important;
}

.tarteaucitronIsAllowed .tarteaucitronAllow {
    opacity: 1 !important;
}

.tarteaucitronIsDenied .tarteaucitronDeny {
    opacity: 1 !important;
}

.tarteaucitronLine .tarteaucitronAllow, .tarteaucitronLine .tarteaucitronDeny {
    opacity: 0.4;
}

#tarteaucitronServices_mandatory button.tarteaucitronAllow {
    opacity: 1;
}

/* Footer logo */
footer .footer-widgets .container {
    width: 100%;
    padding: 0 40px;
}

footer.site-footer .footer-info {
    font-size: 1em;
    font-weight: 300;
}

.footer-info .footer-social .socials-menu a {
    color: black;
}

footer.site-footer .footer-widgets::before,
footer.site-footer .footer-info::before {
    display: none;
}

footer .footer-top .sober-container .widget_block {
    padding: 0;
    margin: 0;
}

footer .footer-top .sober-container .widget_block p {
    font-family: Fraunces;
    font-weight: 300;
}

footer .footer-widgets .widget ul.menu li {
    line-height: 1em;
    margin-bottom: 1.5em;
}

footer .footer-widgets .widget ul.menu li a {
    color: black;
}

footer .footer-top .sober-container .widget_block .wp-block-columns .wp-block-column {
    font-size: 1.125em;
}

footer .footer-top .sober-container .widget_block .wp-block-columns .wp-block-column > * {
    margin-bottom: 2.7778em;
}

footer .footer-top .sober-container .widget_block .wp-block-columns .wp-block-column .wp-block-group figure img {
    max-width: 175px;
}

footer .footer-top .sober-container .widget_block .wp-block-columns .wp-block-column .wp-block-group .widget_text {
    flex: 1;
    align-self: stretch;
}

footer .footer-top .sober-container .widget_block .wp-block-columns .wp-block-column .wp-block-group .widget_text .custom-html-widget {
    height: 100%;
}

footer .footer-top .footer-shipping {
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #f3f3f3;
    padding: 0 5em;
}

footer .footer-top .wp-block-group-is-layout-flex > .widget_text {
    padding: 0;
    margin-left: 3em;
}

footer .footer-top .footer-shipping > div h3 {
    font-size: 1em;
    line-height: 1em;
    font-weight: 500;
    text-transform: uppercase;
    margin-top: 0;
    margin-bottom: 1rem;
}

footer .footer-top .footer-shipping > div p {
    /* font-family: Fraunces; */
    line-height: 1em;
    margin-bottom: 0;
}

footer .footer-top .footer-shipping .widget_block,
footer .footer-top .footer-shipping .widget_text {
    padding: 0;
    margin: 0;
}

footer .footer-widgets {
    font-size: 0.9375em;
}

footer .footer-widgets .row {
    display: flex;
}

footer .footer-widgets .footer-widgets-area-1 {
    align-self: stretch;
}

footer .footer-widgets .footer-widgets-area-1 > div,
footer .footer-widgets .footer-widgets-area-1 > div > div {
    height: 100%;
}

.footer-widgets .sober-contact-box .contact-info {
    margin-bottom: 2em;
}


.footer-widgets .sober-contact-box .info-name {
    color: black;
    font-weight: 600;
}

.footer-widgets .sober-contact-box .info-value {
    font-family: Fraunces;
}

.footer-widgets .sober-contact-box .contact-info,
.footer-widgets .widget-title,
.footer-widgets ul li,
.footer-widgets ul li a,
.widget ul.menu li a,
.footer-widgets button,
.footer-widgets input,
.footer-widgets select,
.footer-widgets textarea,
.widget .sib_signup_form input[type="submit"] {
    font-size: 1em !important;
}

.footer-widgets a {
    color: black;
}

.footer-widgets .widget-title {
    font-weight: 600;
    font-family: Outfit;
}

.footer-widgets .textwidget > p {
    font-family: Fraunces;
}

/* footer .footer-widgets .footer-widgets-area-1 .widget figure {
	margin: 0;
}

footer .footer-widgets .footer-widgets-area-1 .widget figure img {
	height: 65px;
	width: auto;
} */

.widget .sib_signup_form,
.sib_signup_form div[class^="sib_signup_box_inside_"] input[type="checkbox"] {
    position: relative;
}

.sib_signup_form div[class^="sib_signup_box_inside_"] input[type="checkbox"] + p.input-label {
    display: inline-block;
    margin-bottom: 0;
}

.site-footer .sib_signup_form input[type="text"],
.site-footer .sib_signup_form input[type="email"],
.site-footer .sib_signup_form input[type="submit"] {
    background-color: rgba(0, 0, 0, 0);
}

.widget .sib_signup_form input[type="search"],
.widget .sib_signup_form input[type="email"] {
    border: 0;
    border-bottom-width: 0px;
    border-bottom-style: none;
    border-bottom-color: currentcolor;
    border-bottom: 2px solid #f1f2f4;
    border-radius: 0;
    font-weight: 400;
    width: 100%;
    padding: 10px 50px 10px 0;
    transition: all .5s;
}

.widget .sib_signup_form .sib-email-area {
    margin: 1.5em 0;
}

.widget .sib_signup_form input[type="email"] {
    padding: 0;
    color: black;
    border-bottom: 1px solid black;
}

.widget .sib_signup_form input[type="email"]::placeholder {
    color: black;
}

.widget .sib_signup_form input[type="submit"] {
    color: black;
    box-shadow: none;
    border: 0;
    border-radius: 0;
    background-color: rgba(0, 0, 0, 0);
    text-transform: uppercase;
    padding: 0;
    position: unset;
    line-height: 1em;
    border: 1px solid black;
    padding: 1em 2em;
    font-weight: 300;
}

.widget .sib_signup_form input[type="submit"]:hover {
    border: 1px solid black;
    background-color: black;
    color: white;
}

.woocommerce .footer-widgets-area input[type="checkbox"],
.woocommerce .footer-widgets-area input[type="radio"] {
    display: inline-block;
    margin-right: 0.25em;
    border: 1px solid #e4e6eb;
    background-color: #e4e6eb;
    appearance: none;
    width: 14px;
    height: 14px;
}

.widget .sib_signup_form input[type="checkbox"]:focus {
    outline: none;
}

.widget .sib_signup_form input[type="checkbox"]:checked {
    border-color: #23232c;
    background-color: #fff;
}

.widget .sib_signup_form input[type="checkbox"]:before {
    content: "";
    position: absolute;
    border-left: 1px solid #e4e6eb;
    border-left-color: rgb(228, 230, 235);
    border-bottom: 1px solid #e4e6eb;
    border-bottom-color: rgb(228, 230, 235);
    width: 9px;
    height: 4px;
    left: 2px;
    top: 3px;
    transform: rotate(-45deg);
    border-top-color: rgba(0, 0, 0, 0);
    border-right-color: rgba(0, 0, 0, 0);
    transition: all .5s;
}

.widget .sib_signup_form input[type="checkbox"]:checked:before {
    border-color: #23232c;
}

/** XX-Large devices */
@media (max-width: 1400px) {
    .sober-product-carousel {
        padding: 3.5em 1em;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-left {
        padding: 2.5em 0;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-right img {
        height: 500px;
        max-height: unset;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-left,
    .sober-product-carousel .woocommerce ul.products li.product .featured-product-right {
        margin: 0 2em;
    }

    .archive.tax-pa_artistes .woocommerce-tabs,
    .archive.tax-pa_expositions .woocommerce-tabs,
    .archive.tax-pa_foires .woocommerce-tabs,
    .blog.sidebar-single-right .sober-container .content-area {
        padding: 0 calc(5em + 15px);
    }

    .blog .page-header .sober-container {
        padding: 0 calc(5em + 40px);
    }

    footer .footer-top .footer-shipping {
        padding: 0 2.5em;
    }

    .page-template-archive-artist .content-area.artists-archive {
        gap: 0 2em;
    }

    .page-template-archive-artist ul.products.artists-names {
        column-gap: 2em;
    }
}

/** X-Large devices */
@media (max-width: 1200px) {
    .woocommerce .woocommerce-order-details .table-responsive {
        width: 75%;
    }

    /* .woocommerce ul.products li.product a img {
        height: calc(100vw / 3 - 50px);
    } */
    .quick-view-modal .modal-content .product .product-summary .summary {
        padding: 0 2.5em;
    }

    .quick-view-modal .modal-content .product .product-summary .summary {
        width: 100%;
    }

    .woocommerce div.product div.images .woocommerce-product-gallery__slider.owl-carousel {
        padding: 2.5em 2.5em 5em;
    }

    .quick-view-modal .owl-nav {
        position: relative;
        align-items: end;
        padding: 2em 0;
        width: auto;
        height: auto;
    }

    .quick-view-modal .owl-nav .owl-prev,
    .quick-view-modal .owl-nav .owl-next {
        height: auto;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-left {
        padding: 0;
    }

    footer .footer-top .sober-container .widget_block .wp-block-columns .wp-block-column .wp-block-group {
        flex-direction: column;
    }

    footer .footer-top .sober-container .widget_block .wp-block-columns .wp-block-column .wp-block-group figure {
        margin-bottom: 2.7778em;
    }

    footer .footer-top .sober-container .widget_block .wp-block-columns .wp-block-column .wp-block-group .widget_text {
        margin-left: 0;
        height: 85px;
        flex: unset;
    }

    .archive.tax-pa_artistes .site-content .sober-container {
        padding: 0 5em;
    }

    .archive.tax-pa_artistes .woocommerce-tabs,
    .archive.tax-pa_expositions .woocommerce-tabs,
    .archive.tax-pa_foires .woocommerce-tabs {
        padding: 0;
    }

    .page-template-archive-artist ul.products.artists-names {
        column-count: 1;
    }

    footer .footer-top .sober-container .widget_block .wp-block-columns .wp-block-column > *:not(p) {
        margin-bottom: 0;
    }
}

/** Large devices */
@media (max-width: 992px) {
    .woocommerce .woocommerce-customer-details .woocommerce-column--billing-address {
        margin-bottom: 5rem;
    }

    .sober-modal .modal-content {
        padding-top: 0;
    }

    .quick-view-modal .modal-content .product form.cart .button {
        margin-bottom: 0;
    }

    .quick-view-modal .modal-content .product .product-summary .summary {
        margin: 0;
    }

    .quick-view-modal .modal-content .product .product-summary .summary .ss-content {
        flex-direction: column;
        align-items: unset;
    }

    .quick-view-modal .modal-content .product .product-summary .summary .ss-content div {
        margin-bottom: 2em;
    }

    .sober-product-carousel {
        padding: 2em 3.5em;
        font-size: 14px;
    }

    .sober-product-carousel .woocommerce ul.products li.product .product-header {
        flex-direction: column-reverse;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-left {
        min-height: 325px;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-left,
    .sober-product-carousel .woocommerce ul.products li.product .featured-product-right {
        width: 100%;
        margin: 2em 0;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-right img {
        height: unset;
        max-height: 375px;
    }

    .sober-product-carousel .woocommerce ul.products li.product .product-header {
        margin-bottom: 0;
    }

    footer .footer-widgets .container .row {
        flex-wrap: wrap;
    }

    footer .footer-top .sober-container .widget_block .wp-block-columns .wp-block-column .wp-block-group .widget_text {
        height: auto;
    }

    footer .footer-top .footer-shipping {
        flex-direction: column;
        padding: 1em;
    }

    footer .footer-top .footer-shipping div:not(:last-child) {
        margin-bottom: 3rem;
    }

    .archive.tax-pa_artistes .site-content .sober-container {
        padding: 0 40px;
    }

    .archive.tax-pa_artistes .woocommerce-tabs #tab-description,
    .archive.tax-pa_expositions .woocommerce-tabs #tab-description,
    .archive.tax-pa_foires .woocommerce-tabs #tab-description {
        flex-direction: column;
    }

    .archive.tax-pa_artistes .woocommerce-tabs #tab-description .image,
    .archive.tax-pa_expositions .woocommerce-tabs #tab-description .image,
    .archive.tax-pa_foires .woocommerce-tabs #tab-description .image {
        width: 100%;
        margin-bottom: 2em;
    }

    .archive.tax-pa_artistes .woocommerce-tabs #tab-description .image img,
    .archive.tax-pa_expositions .woocommerce-tabs #tab-description .image img,
    .archive.tax-pa_foires .woocommerce-tabs #tab-description .image img {
        max-height: 500px;
        object-fit: contain;
    }

    .archive.tax-pa_artistes .woocommerce-tabs #tab-description .content,
    .archive.tax-pa_expositions .woocommerce-tabs #tab-description .content,
    .archive.tax-pa_foires .woocommerce-tabs #tab-description .content {
        width: 100%;
        padding-left: unset;
    }

    .woocommerce.single-product div.product.layout-style-5 div.images {
        margin-right: 0;
        margin-bottom: 40px;
    }

    .woocommerce.single-product div.product.layout-style-5 .product-summary {
        padding: 0;
        display: flex;
        flex-direction: column;
    }

    .woocommerce.single-product div.product.layout-style-5 div.images,
    .woocommerce.single-product div.product.layout-style-5 div.summary {
        width: 100%;
    }

    .woocommerce.single-product div.product.layout-style-5 div.images img {
        max-height: 500px;
    }

    .woocommerce.single-product div.product.layout-style-5 .product-summary {
        margin-bottom: 80px !important;
    }

    .woocommerce.single-product div.product.layout-style-5 .price-cart .cart .single_add_to_cart_button {
        margin-bottom: 0;
    }

    .woocommerce.single-product div.product.layout-style-5 div.images div.thumbnails {
        margin: 30px 0 0 0;
    }

    .woocommerce.single-product div.product.layout-style-5 div.images div.thumbnails .woocommerce-product-gallery__image {
        width: 75px;
        min-width: 75px;
        height: 75px;
    }

    /* Stack the toolbar as one column so the level 2 filters can be ordered
       between the level 1 tabs and the controls, instead of falling under them.
       The two .row wrappers are flattened (they carry no negative gutter here,
       so column padding keeps its alignment) to reorder across both at once. */
    .woocommerce .shop-toolbar {
        display: flex;
        flex-direction: column;
    }

    .woocommerce .shop-toolbar .row {
        display: contents;
    }

    .woocommerce .shop-toolbar .nav-filter {
        margin-bottom: 1em;
        order: 1;
    }

    .woocommerce .shop-toolbar .nav-filter--children {
        margin-top: 0;
        margin-bottom: 3.5em;
        order: 2;
    }

    .woocommerce .shop-toolbar .controls {
        order: 3;
    }

    .woocommerce .shop-toolbar .controls .toolbar-control {
        float: left;
        justify-content: space-between;
        width: 100%;
    }

    .woocommerce .shop-toolbar .controls .toolbar-control .data-filter {
        padding: 0;
    }

    .woocommerce .shop-toolbar .toolbar-control li {
        border-right: none;
    }

    .blog.sidebar-single-right .sober-container .content-area {
        padding: 0 15px;
    }

    .blog .page-header .sober-container {
        padding: 0 40px;
    }

    .blog article.hentry .post-thumbnail img {
        max-width: 150px;
    }

    .page-template-archive-artist ul.products.artists-names {
        column-count: 2;
    }

    .page-template-archive-artist ul.products.artists-works {
        display: none;
    }
}

/** Medium devices */
@media (max-width: 768px) {
    /* Swap the two rows of category tabs for two native selects, easier to use
       on a phone. Only when the selects exist (category tab type), so other
       toolbar configurations keep their tabs. */
    .woocommerce .shop-toolbar--has-mobile-select .nav-filter {
        display: none;
    }

    .woocommerce .shop-toolbar__selects {
        display: flex;
        flex-direction: column;
        gap: 1em;
        order: 1;
        margin-bottom: 2em;
    }

    .woocommerce .woocommerce-order-details .table-responsive {
        width: 100%;
        margin: 0;
    }

    .woocommerce .woocommerce-order-details .table-responsive table.order_details tr th:first-child,
    .woocommerce .woocommerce-order-details .table-responsive table.order_details tr td:first-child {
        padding-right: 10px;
    }

    .woocommerce .woocommerce-order-details .table-responsive table.order_details tr th:not(:first-child),
    .woocommerce .woocommerce-order-details .table-responsive table.order_details tr td:not(:first-child) {
        padding-left: 10px;
    }

    .sober-modal .modal-content {
        padding-top: 0;
    }

    .quick-view-modal .modal-content .product .product-summary .summary {
        width: 100%;
    }

    .sober-product-carousel {
        padding: 2em;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-left .price-quickview > * {
        width: 100%;
    }

    .sober-product-carousel .woocommerce ul.products li.product .price {
        margin-right: 0;
    }

    .leaderboard-image-slider .slider-content {
        flex-direction: column;
    }

    .leaderboard-image-slider .slider-content > div {
        width: 100%;
    }

    .leaderboard-image-slider .slider-content .left {
        margin-bottom: 2em;
    }

    .leaderboard-image-slider .slider-content .right {
        text-align: left;
    }

    .leaderboard-image-slider .slider-content .right .leaderboard-image-slider__item-button {
        margin-left: unset;
    }

    .archive.tax-pa_artistes .site-content .sober-container {
        padding: 0 20px;
    }

    .woocommerce .shop-toolbar .filter-widgets {
        box-shadow: 0 4px 10px 0 rgba(3, 3, 3, .1);
        position: fixed;
        top: 0;
        right: -10px;
        min-width: 390px;
        padding: 30px;
        background: #fff;
        z-index: 1600;
    }

    .page-template-archive-artist.woocommerce ul.products li.product,
    .page-template-archive-exhibition.woocommerce ul.products li.product,
    .page-template-archive-fair.woocommerce ul.products li.product {
        width: 100%;
    }

    .site .sober-container,
    .site .container {
        padding-left: 40px;
        padding-right: 40px;
    }

    .blog article.hentry {
        flex-direction: column;
        gap: 2em 0;
    }

    .blog article.hentry .post-thumbnail img {
        max-height: 100px;
        max-width: unset;
    }

    /* --- Thumbnail strips: arrows over the thumbnails ---------------------
       On a phone the two arrows and the gaps around them would eat a third of
       the width, so they lift out of the flow and sit over the strip, which
       then spans the whole wrapper. The disc keeps the chevron readable
       whatever scrolls underneath. */
    .image-gallery-wrapper {
        position: relative;
    }

    .image-gallery-wrapper .image-gallery-nav {
        position: absolute;
        /* Out of the flow the margin used above no longer carries, so the same
           half padding comes off the offset instead. */
        top: calc(50% - 0.375em);
        z-index: 2;
        width: 25px;
        height: 25px;
        margin-bottom: 0;
        transform: translateY(-50%);
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.75);
    }

    .image-gallery-wrapper .image-gallery-nav::before {
        width: 8px;
        height: 8px;
    }

    /* Centring the chevron needs flex, which has to be declared on the same
       selector that reveals the arrow — putting it on the plain wrapper rule
       would show the arrows even when there is nothing to scroll. */
    .image-gallery-scrollable .image-gallery-nav {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .image-gallery-wrapper .image-gallery-nav-prev {
        left: 15px;
    }

    .image-gallery-wrapper .image-gallery-nav-next {
        right: 15px;
    }

    /* An arrow with nothing left to reach would only be in the way. */
    .image-gallery-wrapper .image-gallery-nav:disabled {
        display: none;
    }

    /* --- Interview strip --------------------------------------------------
       Two lines of caption no longer fit once the tile is this narrow; the
       source credit is one short line, so it stays. These two selectors carry
       one level more than the base rules they override, on purpose: this block
       sits above the interview section, so it must not depend on source order.
    */
    .interview-gallery .interview-thumb-info .interview-thumb-caption {
        display: none;
    }

    /* An overlay left with nothing in it would dim the thumbnail for no
       reason: that is every tile but the external ones, which keep a credit. */
    .interview-gallery .interview-thumb-info:not(:has(.interview-thumb-source)) {
        display: none;
    }

    /* Small tiles want a small gap, or the strip reads as mostly whitespace. */
    .interview-gallery .interview-thumbs-wrapper .interview-thumbs {
        gap: 0.75em;
    }

    /* --- Listing filters --------------------------------------------------- */
    .listing-filters {
        flex-direction: column;
        gap: 15px;
    }
}

/** Small devices */
@media (max-width: 576px) {
    .custom-row > p {
        flex-wrap: wrap;
    }

    .custom-row > p span:first-child {
        margin-bottom: 30px;
    }

    .elementor-widget-sober-info-list .info-icon {
        flex: 0 0 40px;
        margin-right: 0 !important;
    }

    .woocommerce .woocommerce-order-details .table-responsive table.order_details td.product-name {
        flex-direction: column-reverse;
        align-items: start;
    }

    .woocommerce .woocommerce-order-details .table-responsive .product-name-quantity {
        margin-bottom: 1em;
        margin-left: 0;
    }

    .woocommerce-checkout form.checkout table.shop_table td.product-name {
        flex-direction: column;
        align-items: flex-start;
    }

    .woocommerce-checkout form.checkout table.shop_table td.product-name .product-image {
        margin: 0 0 1em;
    }

    .sober-product-carousel {
        font-size: 12px;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-left {
        height: 325px;
        min-height: unset;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-right {
        margin: 0;
    }

    .sober-product-carousel .woocommerce ul.products li.product .featured-product-right img {
        height: 375px;
        max-height: unset;
    }

    .woocommerce.single-product div.product.layout-style-5 .price-cart > * {
        width: 100%;
    }

    .woocommerce.single-product div.product.layout-style-5 .price-cart {
        gap: 20px;
        flex-wrap: wrap;
    }

    .woocommerce.single-product div.product.layout-style-5 .price-cart .price {
        margin-right: 0;
    }

    .page-template-archive-artist ul.products.artists-names {
        column-count: 1;
    }
}

/* Small devices - landscpape mode */
@media (max-height: 576px) and (max-width: 992px) {
    .quick-view-modal .modal-content .product .product-summary .summary {
        display: none;
    }
}

/* Old version styles for listing pages */
@media screen and (max-width: 481px) {
    .woocommerce ul.products li.product {
        width: 100%;
    }

    /* .woocommerce ul.products li.product a img {
        height: calc(100vw - 40px);
    } */
}

@media (max-width: 400px) {
    .quick-view-modal .modal-content .product .close-modal {
        right: 60px;
    }
}

.woocommerce .ribbons .ribbon {
    height: auto;
}

.ribbons .featured.woocommerce-badge::before {
    font-family: 'FontAwesome';
    font-weight: normal;
    content: "\f004";
    margin-right: 5px;
}