/* ==========================================================================
   Incrediwear static rebuild
   Tokens extracted from the original theme:
   - Font: Helvetica/Arial system stack, headings weight 400, ls -0.05em
   - Ink: #321E1E on white | dark band: #333333 | overlay text: #FFFFFF
   - Buttons: 30px pill, uppercase
   ========================================================================== */
/* ---------- Reset ---------- */
*, *::before, *::after {
    box-sizing: border-box;
}
body {
    margin: 0;
}
img, video, svg {
    display: block;
    max-width: 100%;
}
ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
p, h1, h2, h3, h4, h5, h6 {
    margin: 0;
}
a {
    color: inherit;
    text-decoration: none;
}
button {
    font: inherit;
    color: inherit;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}
[hidden] {
    display: none !important;
}
/* ---------- Tokens ---------- */
:root {
    --font-stack: Helvetica, Arial, sans-serif;
    --ink: #321E1E;
    --border-light: #EBE9E9;
    --dark-band: #333333;
    --dark-band-border: #474747;
    --text-base: 0.75rem;
    --gutter: 1.25rem;
    --section-spacing: 2.5rem;
    --radius-pill: 1.875rem;
    --header-height: 60px;
}
nav.woocommerce-breadcrumb {
    display: none;
}
@media (min-width: 700px) {
    :root {
        --text-base: 0.875rem;
        --gutter: 2rem;
    }
}
@media (min-width: 1000px) {
    :root {
        --section-spacing: 3.5rem;
        --header-height: 72px;
    }
}
@media (min-width: 1399px) {
    :root {
        --gutter: 3rem;
        --section-spacing: 4.5rem;
    }
}
body {
    font: 400 var(--text-base)/1.4 var(--font-stack);
    color: var(--ink);
    background: #fff;
    letter-spacing: 0;
}
body.drawer-open {
    overflow: hidden;
}
/* ---------- Typography ---------- */
.h1, .h3, .h4, .h7, .display-m, .giant-heading, h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-stack);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.1;
    overflow-wrap: anywhere;
    -webkit-font-smoothing: antialiased;
}
.display-m {
    font-size: calc(clamp(3.25rem, 2.3701rem + 3.754vw, 6.875rem) * 0.9);
}
.h1 {
    font-size: calc(clamp(3rem, 2.3325rem + 2.8479vw, 5.75rem) * 0.9);
}
.h3, main h3 {
    font-size: calc(clamp(2rem, 1.6359rem + 1.5534vw, 3.5rem) * 0.9);
}
.h4 {
    font-size: calc(clamp(1.75rem, 1.4466rem + 1.2945vw, 3rem) * 0.9);
    line-height: 1.2;
}
h4 {
    font-size: calc(clamp(1.75rem, 1.4466rem + 1.2945vw, 3rem) * 0.9);
    line-height: 1.2;
}
h5 {
    font-size: calc(clamp(1.375rem, 1.2233rem + 0.6472vw, 2rem) * 0.9);
    line-height: 1.2;
}
.h7 {
    font-size: calc(clamp(1rem, 0.9545rem + 0.1942vw, 1.1875rem) * 0.9);
}
.subheading {
    font-size: 0.6875rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
@media (min-width: 700px) {
    .subheading {
        font-size: 0.75rem;
    }
}
.text-subdued {
    opacity: 0.65;
}
.text-end {
    text-align: end;
}
/* ---------- Buttons (pill, uppercase, glow sweep on hover) ---------- */
.button {
    position: relative;
    display: inline-block;
    padding: 0.75rem 1.5rem;
    border: 1px solid transparent;
    border-radius: var(--radius-pill);
    background: #fff;
    color: #080912;
    font-size: 0.75rem;
    letter-spacing: 0;
    text-transform: uppercase;
    text-align: center;
    overflow: hidden;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
}
@media (min-width: 700px) {
    .button {
        padding: 0.875rem 2.5rem;
        font-size: 0.8125rem;
    }
}
.button::after {
    content: "";
    position: absolute;
    top: -10%;
    left: -30%;
    height: 120%;
    width: min(40px, 60%);
    background: rgba(0, 0, 0, 0.08);
    transform: skewX(-20deg) translateX(-120%);
    transition: transform 0.55s cubic-bezier(0.19, 1, 0.22, 1);
}
.button:hover::after {
    transform: skewX(-20deg) translateX(calc(100% + 350%));
}
.button--dark {
    background: #333333;
    color: #fff;
}
.button--dark::after {
    background: rgba(255, 255, 255, 0.12);
}
.button--light {
    background: #fff;
    color: #333333;
}
/* ---------- Utilities ---------- */
.overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, var(--overlay-opacity, 0));
    pointer-events: none;
    z-index: 1;
}
.section-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}
.section-heading {
    padding-inline: var(--gutter); }
/* reveal-on-scroll */ .reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.reveal.is-revealed {
    opacity: 1;
    transform: translateY(0);
}
/* ==========================================================================
   ANNOUNCEMENT BAR
   ========================================================================== */
.announcement-bar {
    background: var(--dark-band);
    color: #fff;
    text-align: center;
    padding: 0.75rem var(--gutter);
    font-size: 0.6875rem;
    letter-spacing: 0.04em;
}
/* ==========================================================================
   HEADER
   ========================================================================== */
.site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: #fff;
    color: var(--ink);
    transition: box-shadow 0.25s ease;
}
.site-header.is-scrolled {
    box-shadow: 0 2px 16px rgba(0, 0, 0, 0.06);
}
.header__inner {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-areas: "logo secondary";
    align-items: center;
    min-height: var(--header-height);
    padding-inline: var(--gutter); gap: 1rem;
}
@media (min-width: 1000px) {
    .header__inner {
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        grid-template-areas: "primary logo secondary";
    }
}
.header__logo {
    grid-area: logo;
    justify-self: start;
}
@media (min-width: 1000px) {
    .header__logo {
        justify-self: center;
    }
}
.header__logo img {
    width: 185px;
    height: auto;
}
@media (min-width: 700px) {
    .header__logo img {
        width: 345px;
    }
}
.header__primary-nav {
    grid-area: primary;
    display: none;
}
@media (min-width: 1000px) {
    .header__primary-nav {
        display: block;
    }
}
.header__primary-nav ul {
    display: flex;
    gap: 1.75rem;
}
.header__primary-nav a {
    font-size: 0.8125rem;
    padding-block: 1.5rem; display: inline-block;
    transition: opacity 0.2s;
}
.header__primary-nav a:hover {
    opacity: 0.6;
}
.header__secondary-nav {
    grid-area: secondary;
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 1.1rem;
}
.header__icon {
    position: relative;
    display: inline-flex;
    padding: 0.25rem;
    transition: opacity 0.2s;
}
.header__icon:hover {
    opacity: 0.6;
}
.header__icon--account {
    display: none;
}
@media (min-width: 1000px) {
    .header__icon--account {
        display: inline-flex;
    }
}
.cart-count {
    position: absolute;
    top: -2px;
    right: -4px;
    background: var(--ink);
    color: #fff;
    border-radius: 999px;
    font-size: 9px;
    min-width: 14px;
    height: 14px;
    line-height: 14px;
    text-align: center;
}
.header__hamburger {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 26px;
    height: 26px;
}
.header__hamburger span {
    display: block;
    height: 1.5px;
    width: 100%;
    background: currentColor;
}
@media (min-width: 1000px) {
    .header__hamburger {
        display: none;
    }
}
/* ---------- Mega menus ---------- */
.mega-menu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    border-top: 1px solid var(--border-light);
    border-bottom: 1px solid var(--border-light);
    padding: 2.5rem var(--gutter);
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity 0.25s ease, transform 0.25s ease;
    pointer-events: none;
}
.mega-menu.is-open {
    opacity: 1;
    transform: none;
    pointer-events: auto;
}
.mega-menu__inner {
    display: flex;
    justify-content: space-between;
    gap: 3rem;
    _max-width: 1600px;
    margin-inline: auto; }
.mega-menu__links {
    display: flex;
    gap: 4rem;
}
.mega-menu__col .subheading {
    margin-bottom: 1.1rem;
    opacity: 0.55;
}
.mega-menu__col li {
    margin-bottom: 0.6rem;
}
.mega-menu__col a {
    font-size: 0.875rem;
    transition: opacity 0.2s;
}
.mega-menu__col a:hover {
    opacity: 0.6;
}
/* .mega-menu__list-lg a { font-size: 1.25rem; letter-spacing: -0.02em; } */
.mega-menu__list-lg li {
    margin-bottom: 1rem;
}
.mega-menu__promos {
    display: flex;
    gap: 1.25rem;
}
.mega-menu__promo {
    width: 240px;
    max-width: 22vw;
}
.promo__image {
    overflow: hidden;
    aspect-ratio: 4 / 5;
}
.promo__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}
.mega-menu__promo:hover .promo__image img {
    transform: scale(1.05);
}
.mega-menu__promo .subheading {
    margin-top: 0.75rem;
}
/* ==========================================================================
   MOBILE MENU DRAWER
   ========================================================================== */
.drawer-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 90;
}
.drawer-overlay.is-visible {
    opacity: 1;
    pointer-events: auto;
}
.menu-drawer {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: min(24rem, 92vw);
    background: #fff;
    color: var(--ink);
    z-index: 100;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    overflow: hidden;
}
.menu-drawer.is-open {
    transform: none;
}
.menu-drawer__header {
    display: flex;
    justify-content: flex-end;
    padding: 1.1rem 1.25rem;
    border-bottom: 1px solid var(--border-light);
}
.menu-drawer__panel {
    position: absolute;
    top: 3.5rem;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    padding: 1.5rem 1.5rem 2rem;
    overflow-y: auto;
    transform: translateX(105%);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
}
.menu-drawer__panel.is-active {
    transform: none;
}
.menu-drawer__panel[data-panel="main"]:not(.is-active) {
    transform: translateX(-105%);
}
.menu-drawer__list li {
    margin-bottom: 0.5rem;
}
.menu-drawer__link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    font-size: calc(clamp(1.75rem, 1.4466rem + 1.2945vw, 3rem) * 0.7);
    letter-spacing: -0.04em;
    padding-block: 0.4rem; text-align: left;
}
.menu-drawer__footer {
    margin-top: auto;
    padding-top: 2rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}
.menu-drawer__social {
    display: flex;
    gap: 1.1rem;
}
.menu-drawer__account {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.875rem;
}
.menu-drawer__back {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 1.5rem;
}
.menu-drawer__group {
    margin-bottom: 1.75rem;
}
.menu-drawer__group .subheading {
    margin-bottom: 0.9rem;
    opacity: 0.55;
}
.menu-drawer__group li {
    margin-bottom: 0.55rem;
}
.menu-drawer__group a {
    font-size: 1rem;
}
/* ==========================================================================
   HERO SLIDESHOW
   ========================================================================== */
.hero {
    position: relative;
    aspect-ratio: 0.563;
    overflow: hidden;
    background: #000;
}
@media (min-width: 1000px) {
    .hero {
        aspect-ratio: 1.775;
    }
}
/* Slick containers must inherit the hero height */
.hero__slides, .hero__slides .slick-list, .hero__slides .slick-track {
    width: 100%;
    height: 100%;
}
/*
 * Important:
 * Do not use opacity: 0 or position: absolute here.
 * Slick fade mode handles slide visibility and positioning.
 */
.hero__slide {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    opacity: 1;
    pointer-events: auto;
    overflow: hidden;
}
/* Ensure every Slick slide fills the hero */
.hero__slides .slick-slide {
    height: 100%;
}
.hero__slides .slick-slide > div {
    height: 100%;
}
/* Media */
.hero__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.hero__media picture {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
}
.hero__media img, .hero__media video {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* Responsive videos */
.hero__video--mobile {
    display: block;
}
.hero__video--desktop {
    display: none;
}
@media (min-width: 1000px) {
    .hero__video--mobile {
        display: none;
    }
    .hero__video--desktop {
        display: block;
    }
}
/* Overlay */
.hero__media .overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(0, 0, 0, var(--overlay-opacity, 0.2));
    pointer-events: none;
}
/* Content */
.hero__content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.25rem;
    padding: var(--gutter);
    text-align: center;
    color: #fff;
}
.hero__heading {
    max-width: 32rem;
}
.hero__content .display-m {
    max-width: 1140px;
    line-height: 1;
}
.hero__content h5 {
    max-width: 20rem;
}
/* Markers */
.hero__markers {
    position: absolute;
    bottom: 1.5rem;
    left: 50%;
    z-index: 3;
    display: flex;
    gap: 0.6rem;
    transform: translateX(-50%);
}
.hero__markers button {
    position: relative;
    width: 28px;
    height: 14px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}
.hero__markers button::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    height: 2px;
    background: rgba(255, 255, 255, 0.45);
    transform: translateY(-50%);
    transition: background 0.2s;
}
.hero__markers button.is-active::after, .hero__markers button:hover::after {
    background: #fff;
}
/* ==========================================================================
   SCROLLING MARQUEE
   ========================================================================== */
.marquee {
    background: #fff;
    color: var(--ink);
    padding-block: 40px; overflow: hidden;
    white-space: nowrap;
}
@media (min-width: 1000px) {
    .marquee {
        padding-block: 60px;
    }
}
.marquee__track {
    display: flex;
    width: max-content;
    animation: marquee 40s linear infinite;
}
.marquee__item {
    display: flex;
}
.marquee__item p {
    font-size: 6vw;
    letter-spacing: -0.05em;
    line-height: 1.1;
    margin-right: 40px;
}
@media (min-width: 1000px) {
    .marquee__item p {
        font-size: 2vw;
        margin-right: 35px;
    }
}
@keyframes marquee {
    to {
        transform: translateX(-20%);
    }
    /* 5 identical items -> one item width */
}
/* ==========================================================================
   FEATURED PRODUCTS
   ========================================================================== */
.featured-products {
    padding-block: var(--section-spacing); padding-top: 0;
}
.product-carousel {
    position: relative;
    display: grid;
    grid-template-columns: minmax(250px, 25%) minmax(0, 1fr);
    /*   padding-inline: var(--gutter); */
}
.product-carousel__slider {
    position: relative;
    min-width: 0;
    overflow: hidden;
}
/* ==========================================================================
   STATIC INTRO CARD
   ========================================================================== */
.product-card--intro {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 2 / 3;
    overflow: hidden;
    color: #fff;
    border: 1px solid var(--border-light);
    height: 100%;
    border: none;
}
.product-card__bg {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}
.product-card--intro:hover .product-card__bg {
    transform: scale(1.04);
}
.product-card--intro .overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(0, 0, 0, var(--overlay-opacity, 0.13));
    pointer-events: none;
}
.product-card--intro__content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.25rem;
    padding: 1.25rem;
    text-align: center;
}
/* ==========================================================================
   SLICK STRUCTURE
   ========================================================================== */
.product-carousel__track.products {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}
.product-carousel__track.products::before, .product-carousel__track.products::after {
    display: none;
    content: none;
}
.product-carousel__track .slick-list {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.product-carousel__track .slick-track {
    display: flex;
    height: 100%;
    margin-left: 0;
}
.product-carousel__track .slick-slide {
    float: none;
    height: auto;
    min-height: 1px;
}
/* ==========================================================================
   WOOCOMMERCE PRODUCT CARD
   ========================================================================== */
.woocommerce .product-carousel__track.products li.product, .product-carousel__track.products li.product {
    position: relative;
    float: none;
    clear: none;
    display: block;
    width: auto;
    height: auto;
    aspect-ratio: 4 / 5;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--border-light);
    border-left: 0;
    background: #f4f4f4;
}
.product-carousel__track li.product .woocommerce-loop-product__link {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    overflow: hidden;
}
.product-carousel__track li.product .woocommerce-loop-product__link::after {
    content: "";
    position: absolute;
    inset: 50% 0 0;
    z-index: 1;
    background: linear-gradient( to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5) );
    pointer-events: none;
}
.woocommerce .product-carousel__track li.product a img, .product-carousel__track li.product a img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    object-fit: cover;
    transition: transform 0.6s ease;
}
.product-carousel__track li.product:hover a img {
    transform: scale(1.04);
}
/* Product title */
.woocommerce .product-carousel__track li.product .woocommerce-loop-product__title, .product-carousel__track li.product .woocommerce-loop-product__title {
    position: absolute;
    right: 1.25rem;
    bottom: 2.75rem;
    left: 1.25rem;
    z-index: 2;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.3;
    text-align: right;
}
/* Product price */
.woocommerce .product-carousel__track li.product .price, .product-carousel__track li.product .price {
    position: absolute;
    right: 1.25rem;
    bottom: 1.1rem;
    left: 1.25rem;
    z-index: 2;
    display: block;
    margin: 0;
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.75rem;
    line-height: 1.2;
    text-align: right;
}
.product-carousel__track li.product .price del {
    opacity: 0.6;
}
.product-carousel__track li.product .price ins {
    color: inherit;
    font-weight: inherit;
    text-decoration: none;
}
/* Sale badge */
.woocommerce .product-carousel__track li.product .onsale, .product-carousel__track li.product .onsale {
    z-index: 3;
}
/*
 * The original design only displays image, title and price.
 * Hide WooCommerce's add-to-cart button.
 */
.product-carousel__track li.product > .button, .product-carousel__track li.product > .added_to_cart {
    display: none;
}
/* ==========================================================================
   CAROUSEL ARROWS
   ========================================================================== */
.carousel-arrow {
    position: absolute;
    top: 50%;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: var(--ink);
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.12);
    cursor: pointer;
    transform: translateY(-50%);
    transition: transform 0.2s ease, opacity 0.2s ease;
}
.carousel-arrow:hover {
    transform: translateY(-50%) scale(1.06);
}
.carousel-arrow--prev {
    left: 1rem;
}
.carousel-arrow--next {
    right: 1rem;
}
.carousel-arrow.slick-disabled {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
/* ==========================================================================
   TABLET
   ========================================================================== */
@media (min-width: 700px) and (max-width: 999px) {
    .product-carousel {
        grid-template-columns: 46% 54%;
    }
}
/* ==========================================================================
   MOBILE
   ========================================================================== */
@media (max-width: 699px) {
    .product-carousel {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
    }
    .product-card--intro {
        aspect-ratio: 4 / 5;
    }
    .product-carousel__slider {
        width: 100%;
    }
    .carousel-arrow {
        width: 46px;
        height: 46px;
    }
    .carousel-arrow--prev {
        left: 0.75rem;
    }
    .carousel-arrow--next {
        right: 0.75rem;
    }
}
/* ==========================================================================
   COLLECTION LIST
   ========================================================================== */
.collection-list {
    padding-bottom: var(--gutter);
}
.collection-list .section-heading {
    margin-bottom: 1.75rem;
}
.collection-list__grid {
    display: grid;
    grid-template-columns: 1fr;
}
@media (min-width: 700px) {
    .collection-list__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (min-width: 1000px) {
    .collection-list__grid {
        grid-template-columns: repeat(4, 1fr);
    }
}
.collection-card {
    position: relative;
    display: block;
    min-height: 320px;
    color: #fff;
    overflow: hidden;
}
@media (min-width: 1000px) {
    .collection-card {
        min-height: 30vw;
    }
}
.collection-card > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}
.collection-card:hover > img {
    transform: scale(1.05);
}
.collection-card .h4 {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 1rem;
    text-wrap: balance;
}
/* ==========================================================================
   DYNAMIC GRIDS (collage sections)
   ========================================================================== */
.dyn-grid {
    position: relative;
    overflow: hidden;
    color: #fff;
}
.giant-heading {
    font-size: clamp(10px, 15vw, 80px);
    line-height: 0.9;
    letter-spacing: -0.05em;
}
.giant-heading--md {
    font-size: clamp(10px, 10vw, 80px);
    line-height: 1;
}
.giant-heading--gear {
    font-size: clamp(10px, 7vw, 80px);
    line-height: 0.8;
    white-space: nowrap;
}
@media (min-width: 1000px) {
    .giant-heading {
        font-size: clamp(10px, 8vw, 140px);
    }
    .giant-heading--md {
        font-size: clamp(10px, 5vw, 140px);
    }
    .giant-heading--gear {
        font-size: clamp(10px, 4vw, 140px);
    }
}
/* --- Grid 1: FABRIC OF THE FUTURE (absolute collage) --- */
.dyn-grid--fabric {
    background: #1a1a1a;
}
.dyn-grid__container {
    position: relative;
    padding: var(--section-spacing) var(--gutter);
}
.dyn-grid--fabric .dyn-grid__grid {
    position: relative;
    aspect-ratio: 0.62;
}
@media (min-width: 1000px) {
    .dyn-grid--fabric .dyn-grid__grid {
        aspect-ratio: 1.35;
    }
}
.dyn-grid--fabric .cell {
    position: absolute;
}
.dyn-grid--fabric .cell--img img {
    width: 100%;
    height: auto;
}
.dyn-grid--fabric .cell--text {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}
/* mobile placement (8-col reference) */
.cell--f8 {
    left: 0;
    top: 3%;
    width: 62%;
    z-index: 6;
}
/* FABRIC   */
.cell--f5 {
    right: 0;
    top: 0;
    width: 36%;
    z-index: 5;
}
/* 6.webp   */
.cell--f1 {
    right: 0;
    top: 9%;
    width: 72%;
    z-index: 1;
}
/* 8.webp   */
.cell--f4 {
    left: 0;
    top: 30%;
    width: 50%;
    z-index: 4;
}
/* 4.webp   */
.cell--f3 {
    right: 0;
    top: 42%;
    width: 50%;
    z-index: 3;
}
/* 7.webp   */
.cell--f6 {
    left: 25%;
    top: 55%;
    width: 50%;
    z-index: 7;
    align-items: center;
    text-align: center;
}
/* OF THE */
.cell--f2 {
    left: 12%;
    top: 66%;
    width: 62%;
    z-index: 2;
}
/* 5.webp   */
.cell--f7 {
    right: 0;
    bottom: 0;
    width: 75%;
    z-index: 7;
    align-items: flex-end;
}
/* FUTURE */
@media (min-width: 1000px) {
    .cell--f8 {
        left: 12.5%;
        top: 5%;
        width: 38%;
    }
    .cell--f5 {
        right: 0;
        top: 12%;
        width: 19%;
        z-index: 5;
    }
    .cell--f1 {
        right: 0;
        top: 0;
        width: 30%;
    }
    .cell--f4 {
        left: 6%;
        top: 24%;
        width: 25%;
    }
    .cell--f3 {
        left: 62.5%;
        top: 66%;
        width: 25%;
    }
    .cell--f6 {
        left: 27%;
        top: 48%;
        width: 44%;
    }
    .cell--f2 {
        left: 25%;
        top: 72%;
        width: 28%;
    }
    .cell--f7 {
        right: 12%;
        bottom: 4%;
        width: 44%;
    }
}
/* --- Grid 2: GEAR UP --- */
.dyn-grid--gearup {
    aspect-ratio: 0.85;
}
@media (min-width: 1000px) {
    .dyn-grid--gearup {
        aspect-ratio: 2.18;
    }
    /* matches 10.webp (3010x1382) */
}
.dyn-grid--gearup .dyn-grid__grid {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    padding: 14% var(--gutter) 0;
}
@media (min-width: 1000px) {
    .dyn-grid--gearup .dyn-grid__grid {
        gap: 2.5rem;
        padding-top: 7%;
    }
}
.cell--g1 {
    display: none;
}
/* ==========================================================================
   READING TEXT
   ========================================================================== */
.reading-text {
    position: relative;
    background: url("../images/9.webp") center / cover fixed;
    color: #fff;
    padding: clamp(6rem, 18vh, 12rem) var(--gutter);
}
.reading-text__content {
    max-width: 62rem;
    margin-inline: auto; text-align: center;
}
.rt-word {
    opacity: 0.1;
    transition: opacity 0.35s ease;
}
/* ==========================================================================
   MEDIA BLOCKS
   ========================================================================== */
.media-blocks {
    display: grid;
    grid-template-columns: 1fr;
}
@media (min-width: 700px) {
    .media-blocks {
        grid-template-columns: repeat(2, 1fr);
    }
}
.media-block {
    position: relative;
    display: block;
    aspect-ratio: 33 / 25.5;
    overflow: hidden;
    color: #fff;
}
.media-block__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}
a.media-block:hover .media-block__bg {
    transform: scale(1.03);
}
.media-block__content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1.5rem;
    padding: clamp(1.5rem, 5vw, 4rem);
}
.media-block__content--start {
    align-items: flex-start;
    text-align: left;
}
.media-block__content--center {
    align-items: center;
    text-align: center;
}
.media-block__content h5 {
    max-width: 24rem;
    font-weight: 400;
}
.media-block__content h3 em {
    font-style: italic;
}
/* ==========================================================================
   CTA BANNER
   ========================================================================== */
.cta-banner {
    position: relative;
    overflow: hidden;
    color: #fff;
    aspect-ratio: 0.8;
}
@media (min-width: 1000px) {
    .cta-banner {
        aspect-ratio: 1.497;
    }
}
.cta-banner picture {
    position: absolute;
    inset: 0;
}
.cta-banner__content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.25rem;
    text-align: center;
    padding: var(--gutter);
}
.cta-banner__content h4 {
    max-width: 24rem;
}
/* ==========================================================================
   TRUST ICONS
   ========================================================================== */
.trust-icons {
    background: var(--dark-band);
    color: #fff;
}
.trust-icons__grid {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    gap: 2rem;
}
.trust-icons__grid::-webkit-scrollbar {
    display: none;
}
@media (min-width: 1000px) {
    .trust-icons__grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 3rem;
    }
}
.trust-icon {
    flex: 0 0 78%;
    scroll-snap-align: center;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.9rem;
    border-right: 1px solid var(--dark-band-border);
    padding: var(--section-spacing) var(--gutter);
}
.trust-icon:last-child {
    border: none;
}
@media (min-width: 1000px) {
    .trust-icon {
        flex-basis: auto;
    }
}
.trust-icon .text-subdued {
    max-width: 260px;
    font-size: 0.75rem;
    line-height: 1.5;
}
/* ==========================================================================
   FOOTER
   ========================================================================== */
.site-footer {
    background: var(--dark-band);
    color: #fff;
    border-top: 1px solid var(--dark-band-border);
}
.site-footer__main {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    padding: var(--section-spacing) var(--gutter) 2rem;
}
@media (min-width: 700px) {
    .site-footer__main {
        grid-template-columns: repeat(2, 1fr);
        gap: 2.5rem 2rem;
    }
}
@media (min-width: 1000px) {
    .site-footer__main {
        grid-template-columns: repeat(4, 1fr) 1.6fr;
        gap: 2rem;
    }
}
.footer-col__title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0;
    padding-block: 1rem; border-bottom: 1px solid var(--dark-band-border);
    cursor: pointer;
}
@media (min-width: 700px) {
    .footer-col__title {
        padding-block: 0;
        border-bottom: none;
        margin-bottom: 1.25rem;
        cursor: default;
    }
    .footer-col__chevron {
        display: none;
    }
}
.footer-col.is-open .footer-col__chevron {
    transform: rotate(180deg);
}
.footer-col__chevron {
    transition: transform 0.25s;
}
.footer-col__links {
    display: none;
    padding-block: 0.75rem; }
@media (min-width: 700px) {
    .footer-col__links {
        display: block !important;
        padding-block: 0; }
}
.footer-col__links li {
    margin-bottom: 0.55rem;
}
.footer-col__links a {
    font-size: 0.8125rem;
    color: rgba(255, 255, 255, 0.85);
    transition: color 0.2s;
}
.footer-col__links a:hover {
    color: #fff;
}
.footer-newsletter {
    padding-top: 1.5rem;
}
@media (min-width: 700px) {
    .footer-newsletter {
        padding-top: 0;
        grid-column: 1 / -1;
    }
}
@media (min-width: 1000px) {
    .footer-newsletter {
        grid-column: auto;
    }
}
.footer-newsletter .footer-col__title {
    border-bottom: none;
    cursor: default;
    padding-block: 0; margin-bottom: 1rem;
}
.footer-newsletter > p {
    font-size: 0.8125rem;
    margin-bottom: 1.25rem;
}
.footer-newsletter > p a {
    text-decoration: underline;
}
.footer-newsletter .field {
    position: relative;
    margin-bottom: 1rem;
}
.footer-newsletter input {
    width: 100%;
    background: transparent;
    border: 1px solid var(--dark-band-border);
    border-radius: var(--radius-pill);
    color: #fff;
    font: inherit;
    padding: 0.9rem 1.25rem;
    outline: none;
    transition: border-color 0.2s;
}
.footer-newsletter input:focus {
    border-color: #fff;
}
.footer-newsletter label {
    position: absolute;
    left: 1.25rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.8125rem;
    color: rgba(255, 255, 255, 0.6);
    pointer-events: none;
    transition: all 0.2s ease;
}
.footer-newsletter input:focus + label, .footer-newsletter input:not(:placeholder-shown) + label {
    top: 0;
    font-size: 0.625rem;
    background: var(--dark-band);
    padding-inline: 0.3rem; }
.form-message {
    font-size: 0.75rem;
    margin-top: 0.75rem;
    color: #8FD19E;
}
.form-message.is-error {
    color: #FF9C9C;
}
.footer-newsletter__legal {
    font-size: 0.6875rem;
    margin-top: 1rem;
}
.separator {
    border: none;
    border-top: 1px solid var(--dark-band-border);
    margin: 0;
}
.site-footer__aside {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.5rem var(--gutter);
}
.footer-social {
    display: flex;
    gap: 1.1rem;
}
.footer-social a {
    opacity: 0.85;
    transition: opacity 0.2s;
}
.footer-social a:hover {
    opacity: 1;
}
.footer-copyright {
    font-size: 0.75rem;
    opacity: 0.8;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner.button.button--light {
    background-color: #fff;
    color: #000;
    cursor: pointer;
    width: 40%;
}
.nl-wrap {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
}
.footer-newsletter .field {
    margin-bottom: 0;
    width: calc(60% - 0.75rem);
}
span.wpcf7-spinner {
    position: absolute;
}
.wpcf7-not-valid-tip {
    position: absolute;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border: none;
    padding: 0;
    font-size: 12px;
    padding-top: 10px;
}
/* ==========================================================================
   COLLECTION / ALL PRODUCTS PAGE
   ========================================================================== */
.h6 {
    font-family: var(--font-stack);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.2;
    font-size: calc(clamp(1.1875rem, 1.1117rem + 0.3236vw, 1.5rem) * 0.9);
}
.button--outline {
    background: transparent;
    color: var(--ink);
    border-color: var(--ink);
}
.button--outline::after {
    display: none;
}
/* ---------- Banner ---------- */
.collection-banner {
    padding: 2rem 1.5rem 2rem 1.5rem;
    border-bottom: 1px solid var(--border-light);
}
.collection-banner .h3 {
    text-align: left;
    padding: 0 var(--gutter);
}
/* ---------- Toolbar ---------- */
.collection__toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0 var(--gutter) 1.25rem;
    padding-block: 1.8rem; border-bottom: 1px solid var(--border-light);
}
.collection__count {
    opacity: 0.7;
}
.collection__toolbar-actions {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}
.collection__layout {
    display: none;
    gap: 0.35rem;
}
@media (min-width: 700px) {
    .collection__layout {
        display: flex;
    }
}
.layout-btn {
    display: inline-flex;
    padding: 0.35rem;
    color: rgba(50, 30, 30, 0.35);
    transition: color 0.2s;
}
.layout-btn.is-active {
    color: var(--ink);
}
.layout-btn:hover {
    color: var(--ink);
}
.collection__filter-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    transition: opacity 0.2s;
}
.collection__filter-toggle:hover {
    opacity: 0.6;
}
/* ---------- Product grid ---------- */
.product-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    margin: 0 0.5px;
    padding-bottom: 4rem;
}
@media (min-width: 700px) {
    .product-grid[data-cols="2"] {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (min-width: 700px) {
    .product-grid[data-cols="4"] {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (min-width: 1000px) {
    .product-grid[data-cols="4"] {
        grid-template-columns: repeat(4, 1fr);
    }
}
@media (min-width: 1000px) {
    .product-grid[data-cols="2"] {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 700px) {
    .product-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (max-width: 480px) {
    .product-grid {
        grid-template-columns: repeat(2, 1fr);
    }
	.site-footer__aside {
		flex-direction: column;
	}
}
.pcard {
    position: relative;
    display: block;
    color: var(--ink);
    border: 1px solid var(--border-light);
    margin: -0.5px;
    /* collapse shared borders */
    overflow: hidden;
}
.pcard.is-hidden {
    display: none;
}
.pcard__media {
    position: relative;
    aspect-ratio: 2 / 3;
    overflow: hidden;
    background: #faf4f0;
}
.pcard__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}
.pcard:hover .pcard__media img {
    transform: scale(1.04);
}
.pcard__info {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.45rem;
    padding: 0.9rem 1rem 1.1rem;
    position: absolute;
    bottom: 0;
    color: #fff;
    flex-direction: column;
    right: 0;
    width: 100%;
}
.pcard__title {
    font-size: 0.8125rem;
}
.pcard__price {
    font-size: 0.8125rem;
    opacity: 0.75;
    white-space: nowrap;
}
.collection__empty {
    padding: 3rem var(--gutter);
    text-align: center;
    font-size: 0.9375rem;
    opacity: 0.7;
}
/* ---------- Facets drawer (right side) ---------- */
.facets-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 90;
}
.facets-overlay.is-visible {
    opacity: 1;
    pointer-events: auto;
}
.facets-drawer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(24rem, 92vw);
    background: #fff;
    color: var(--ink);
    z-index: 100;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
}
.facets-drawer.is-open {
    transform: none;
}
.facets-drawer__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid var(--border-light);
}
.facets-drawer__close {
    display: inline-flex;
    padding: 0.25rem;
}
.facets-drawer__body {
    flex: 1;
    overflow-y: auto;
    padding: 0.5rem 1.5rem 1.5rem;
}
.facet-group {
    padding: 1.5rem 0;
    border-bottom: 1px solid var(--border-light);
}
.facet-group:last-child {
    border-bottom: none;
}
.facet-group__title {
    opacity: 0.55;
    margin-bottom: 1rem;
}
.facet-options {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}
.facet-radio {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    font-size: 0.875rem;
    cursor: pointer;
}
.facet-radio input {
    accent-color: var(--ink);
    width: 15px;
    height: 15px;
}
/* availability toggle switch */
.facet-toggle {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.875rem;
    cursor: pointer;
}
.facet-toggle input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.facet-toggle__track {
    position: relative;
    width: 40px;
    height: 22px;
    border-radius: 999px;
    background: #e0dad6;
    transition: background 0.2s;
    flex: 0 0 auto;
}
.facet-toggle__track::after {
    content: "";
    position: absolute;
    top: 2px;
    left: 2px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    transition: transform 0.2s;
}
.facet-toggle input:checked + .facet-toggle__track {
    background: var(--ink);
}
.facet-toggle input:checked + .facet-toggle__track::after {
    transform: translateX(18px);
}
/* price range */
.price-range {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
.price-input {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex: 1;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-pill);
    padding: 0.55rem 0.9rem;
}
.price-input span {
    opacity: 0.6;
    font-size: 0.875rem;
}
.price-input input {
    width: 100%;
    border: none;
    outline: none;
    font: inherit;
    background: transparent;
    color: var(--ink);
}
.price-input input::-webkit-outer-spin-button, .price-input input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.price-range__sep {
    font-size: 0.8125rem;
    opacity: 0.6;
}
.facets-drawer__footer {
    display: flex;
    gap: 0.75rem;
    padding: 1.25rem 1.5rem;
    border-top: 1px solid var(--border-light);
}
.facets-drawer__footer .button {
    flex: 1;
    padding-inline: 1rem;
}
.facetwp-selections ul {
    padding: 1.25rem var(--gutter) 1.25rem;
}
div#product-count .facetwp-facet.facetwp-facet-count.facetwp-type-pager {
    margin-bottom: 0;
}
/* ==========================================================================
   SINGLE PRODUCT PAGE
   ========================================================================== */
.product {
    padding: var(--section-spacing) 0;
}
.product__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    padding-inline: var(--gutter); }
@media (min-width: 1000px) {
    .product__grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 3.5rem;
        align-items: start;
    }
}
/* ---------- Gallery ---------- */
@media (min-width: 1000px) {
    .product__gallery {
        position: sticky;
        top: calc(var(--header-height) + 1rem);
    }
}
.pgallery__stage {
    position: relative;
    aspect-ratio: 3 / 4;
    background: #faf4f0;
    overflow: hidden;
}
.pgallery__slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.3s ease;
}
.pgallery__slide.is-active {
    opacity: 1;
}
.pgallery__slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.pgallery__thumbs {
    display: flex;
    gap: 0.6rem;
    margin-top: 0.75rem;
    flex-wrap: wrap;
}
.pgallery__thumb {
    width: 64px;
    height: 64px;
    border: 1px solid var(--border-light);
    overflow: hidden;
    opacity: 0.6;
    transition: opacity 0.2s, border-color 0.2s;
}
.pgallery__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.pgallery__thumb.is-active {
    opacity: 1;
    border-color: var(--ink);
}
.pgallery__thumb:hover {
    opacity: 1;
}
/* Main gallery prev/next arrows */
.pgallery__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.85);
    color: var(--ink, #1a1a1a);
    cursor: pointer;
    transition: background 0.2s, opacity 0.2s;
    -webkit-appearance: none;
    appearance: none;
}
.pgallery__nav:hover {
    background: #fff;
}
.pgallery__nav--prev {
    left: 0.75rem;
}
.pgallery__nav--next {
    right: 0.75rem;
}
.pgallery__nav svg {
    display: block;
}
@media (max-width: 640px) {
    .pgallery__nav {
        width: 38px;
        height: 38px;
    }
    .pgallery__nav--prev {
        left: 0.5rem;
    }
    .pgallery__nav--next {
        right: 0.5rem;
    }
}
/* ---------- Info column ---------- */
.product__info {
    max-width: 34rem;
}
.product-title {
    text-align: left;
    margin-bottom: 0.75rem;
}
.product-price {
    margin-bottom: 1.75rem;
}
.variant {
    margin-bottom: 1.5rem;
}
.variant__label {
    margin-bottom: 0.75rem;
    opacity: 0.8;
}
.variant__label span {
    font-weight: 700;
}
.size-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}
.size-pill {
    cursor: pointer;
}
.size-pill input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.size-pill span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    padding: 0.65rem 1rem;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-pill);
    font-size: 0.8125rem;
    transition: border-color 0.2s, background 0.2s, color 0.2s;
}
.size-pill.is-active span {
    border-color: var(--ink);
    background: var(--ink);
    color: #fff;
}
.size-pill:hover span {
    border-color: var(--ink);
}
.buy-row {
    display: flex;
    gap: 0.75rem;
    align-items: stretch;
}
button.single_add_to_cart_button.button.product-atc {
    background-color: #000;
    color: #fff;
}
button.single_add_to_cart_button.button.product-atc:after {
    background: rgb(255 255 255 / 18%);
}
.qty {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-pill);
    padding: 0 0.25rem;
}
.qty__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 44px;
    color: var(--ink);
}
.qty__btn:disabled {
    opacity: 0.3;
    cursor: default;
}
.qty__input {
    width: 34px;
    border: none;
    outline: none;
    text-align: center;
    font: inherit;
    background: transparent;
    -moz-appearance: textfield;
}
.qty__input::-webkit-outer-spin-button, .qty__input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.product-atc {
    flex: 1;
}
.product-atc.is-added {
    background: #168342;
    color: #fff;
}
.separator--light {
    border-top: 1px solid var(--border-light);
    margin: 2rem 0;
}
/* ---------- Description prose ---------- */
.product-description {
    font-size: 0.9375rem;
    line-height: 1.6;
}
.product-description .prose-heading {
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0;
    margin: 1.5rem 0 0.6rem;
}
.product-description .prose-heading:first-child {
    margin-top: 0;
}
.product-description p {
    margin-bottom: 0.75rem;
}
.product-description a {
    text-decoration: underline;
}
.product-description ul {
    list-style: disc;
    padding-left: 1.25rem;
    margin-bottom: 0.75rem;
}
.product-description ul ul {
    list-style: circle;
    margin: 0.4rem 0;
}
.product-description li {
    margin-bottom: 0.35rem;
}
.size-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0.75rem 0 1rem;
    font-size: 0.875rem;
    text-align: center;
}
.size-table th, .size-table td {
    border: 1px solid var(--border-light);
    padding: 0.5rem;
}
.size-table th {
    font-weight: 700;
}
.size-table__alt td {
    background: #f5f6f7;
}
/* ---------- Text with icons ---------- */
.text-icons {
    border-top: 1px solid var(--border-light);
    border-bottom: 1px solid var(--border-light);
    padding: var(--section-spacing) var(--gutter);
}
.text-icons__row {
    display: flex;
    gap: 1.5rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}
.text-icons__row::-webkit-scrollbar {
    display: none;
}
@media (min-width: 700px) {
    .text-icons__row {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }
}
.text-icon {
    flex: 0 0 70%;
    scroll-snap-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.9rem;
    text-align: center;
}
@media (min-width: 700px) {
    .text-icon {
        flex-basis: auto;
    }
}
.text-icon h5 {
    font-weight: 400;
}
/* ---------- Specifications ---------- */
.specs {
    background: #EBF0F2;
    color: var(--ink);
    padding: var(--section-spacing) var(--gutter);
}
.specs__inner {
    max-width: 42rem;
    margin-inline: auto; text-align: center;
}
.subheading-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 1.45rem;
    color: #000;
}
.specs__inner h2 {
    margin-bottom: 1.25rem;
}
.specs__body {
    max-width: 100%;
    margin: 0 auto 2rem;
    font-size: 0.9375rem;
    line-height: 1.6;
}
.specs__list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    max-width: 100%;
    margin-inline: auto;
    text-align: left;
}
.specs__list li {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    font-size: 0.9375rem;
    padding-block: 1.65rem;border-top: solid 1px #d9dbdd;
}
.specs__list li:last-child {
    border-bottom: solid 1px #d9dbdd;
}
.spec-check {
    flex: 0 0 auto;
    color: #fe6f1e;
}
/* ---------- Product stats (dynamic grid) ---------- */
.pstats {
    background: var(--dark-band);
    color: #fff;
    padding: var(--section-spacing) var(--gutter);
    overflow: hidden;
}
.pstats__inner {
    max-width: 1300px;
    margin-inline: auto;
    text-align: center;
    max-width: 100%;
}
.pstats__headline {
    font-size: clamp(2rem, 7vw, 5rem);
    line-height: 1;
    margin-bottom: 6.5rem;
}
.pstats__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem 1rem;
    margin-bottom: 4.5rem;
}
@media (min-width: 900px) {
    .pstats__grid {
        grid-template-columns: repeat(4, 1fr);
    }
}
.stat__num {
    font-family: var(--font-stack);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1;
    font-size: clamp(3.5rem, 9vw, 7rem);
}
.stat__label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-top: 0.5rem;
    opacity: 0.85;
}
/* ---------- Related products ---------- */
.related {
    padding: var(--section-spacing) 0;
    overflow: hidden;
}
.related .section-heading {
    margin-bottom: 1.75rem;
}
/* Related products carousel (Slick). Only slick core CSS is loaded, so slide
   gutters and the dots are styled here. */
.related__carousel {
    position: relative;
}
/* Before Slick initialises, show the cards side by side (no vertical stack /
   flash of unstyled content). */
.related__track:not(.slick-initialized) {
    display: flex;
    gap: 12px;
    overflow: hidden;
}
.related__track:not(.slick-initialized) .pcard {
    flex: 0 0 calc(25% - 9px);
}
.related__track .slick-list {
    margin: 0 -6px;
}
.related__track .slick-slide {
    padding: 0;
    height: auto;
}
.related__track .slick-slide > .pcard {
    margin: 0;
}
/* Dots rendered as a single segmented bar */
.related__carousel .slick-dots {
    display: flex;
    gap: 0;
    align-items: stretch;
    list-style: none;
    width: 100%;
    max-width: 240px;
    margin: 1.5rem auto 0;
    padding: 0;
    border-radius: 999px;
    overflow: hidden;
}
.related__carousel .slick-dots li {
    flex: 1 1 0;
    height: 4px;
    margin: 0;
}
.related__carousel .slick-dots li button {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: var(--border-light, #e0dcd7);
    color: transparent;
    font-size: 0;
    line-height: 0;
    cursor: pointer;
    transition: background 0.25s ease;
}
.related__carousel .slick-dots li button::before {
    display: none;
}
.related__carousel .slick-dots li.slick-active button, .related__carousel .slick-dots li button:hover {
    background: var(--ink, #1a1a1a);
}
@media (max-width: 600px) {
    .related__track:not(.slick-initialized) .pcard {
        flex: 0 0 100%;
    }
}
/* ==========================================================================
   CONTACT FORM 7
   ========================================================================== */
.contact {
  padding: calc(var(--section-spacing) + 1rem) var(--gutter) var(--section-spacing);
}

.contact__inner {
  max-width: 36rem;
  margin-inline: auto;
}

.contact__header {
  text-align: center;
  margin-bottom: 2.5rem;
}

.contact__badge,
.faq-page__badge,
.labeling__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.4rem 0.9rem;
  border: 1px solid var(--border-light);
  border-radius: var(--radius-pill);
  margin-bottom: 1.5rem;
  opacity: 0.85;
}

.contact__badge::before,
.faq-page__badge::before,
.labeling__badge::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ink);
}

.contact__header h1 {
  margin-bottom: 1.25rem;
}

.contact__intro {
  max-width: 26rem;
  margin-inline: auto;
  font-size: 0.875rem;
  line-height: 1.6;
  opacity: 0.75;
}

.contact__social {
  display: flex;
  justify-content: center;
  gap: 1.1rem;
  margin-top: 1.75rem;
}

.contact__social a {
  color: var(--ink);
  opacity: 0.6;
  transition: opacity 0.2s;
}

.contact__social a:hover {
  opacity: 1;
}

/* ---------- Form ---------- */
.contact-form .field-row {
  display: grid;
  gap: 1rem;
}

@media (min-width: 700px) {
  .contact-form .field-row {
    grid-template-columns: 1fr 1fr;
  }
}

.contact-form .field {
  position: relative;
  margin-bottom: 1rem;
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  background: transparent;
  border: 1px solid var(--border-light);
  color: var(--ink);
  font: inherit;
  padding: 0.95rem 1.1rem;
  outline: none;
  transition: border-color 0.2s;
}

.contact-form input {
  border-radius: var(--radius-pill);
}

.contact-form textarea {
  border-radius: 1.25rem;
  resize: vertical;
  min-height: 8.5rem;
}

.contact-form input:focus,
.contact-form textarea:focus {
  border-color: var(--ink);
}

.contact-form label {
  position: absolute;
  left: 1.1rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.8125rem;
  color: rgba(50, 30, 30, 0.55);
  pointer-events: none;
  transition: all 0.2s ease;
}

.contact-form .field--area label {
  top: 1.1rem;
  transform: none;
}

.contact-form input:focus+label,
.contact-form input:not(:placeholder-shown)+label,
.contact-form textarea:focus+label,
.contact-form textarea:not(:placeholder-shown)+label {
  top: 0;
  transform: translateY(-50%);
  font-size: 0.625rem;
  color: var(--ink);
  background: #fff;
  padding-inline: 0.3rem;
}

.contact-form__submit {
  margin-top: 0.5rem;
  text-align: center;
}

.contact-form__submit .button {
  min-width: 12rem;
}

.contact-form .form-message {
  color: #2E7D32;
  text-align: center;
}

.contact-form .form-message.is-error {
  color: #C62828;
}

/* ---------- Contact info ---------- */
.contact-info {
  text-align: center;
  padding: 0 var(--gutter) var(--section-spacing);
}

.contact-info__inner {
  max-width: 30rem;
  margin-inline: auto;
  padding-top: 2.5rem;
  border-top: 1px solid var(--border-light);
}

.contact-info p {
  margin-bottom: 1rem;
  font-size: 0.875rem;
  line-height: 1.7;
  opacity: 0.8;
}

.contact-info p:last-child {
  margin-bottom: 0;
}

.contact-info a {
  color: var(--ink);
  text-decoration: underline;
}
.contact-form .field-row {
	display: grid;
	gap: 1rem;
}
@media (min-width: 700px) {
	.contact-form .field-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
.contact-form .field {
	position: relative;
	margin-bottom: 1rem;
}
/*
 * Wrapper που προσθέτει αυτόματα το Contact Form 7.
 */
.contact-form .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}
/* Fields */
.contact-form input:not([type="submit"]),
.contact-form textarea {
	box-sizing: border-box;
	display: block;
	width: 100%;
	margin: 0;
	padding: 0.95rem 1.1rem;
	border: 1px solid var(--border-light);
	background: transparent;
	color: var(--ink);
	font: inherit;
	outline: none;
	box-shadow: none;
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease;
}
.contact-form input:not([type="submit"]) {
	min-height: 52px;
	border-radius: var(--radius-pill);
}
.contact-form textarea {
	min-height: 8.5rem;
	border-radius: 1.25rem;
	resize: vertical;
}
.contact-form input:not([type="submit"]):focus,
.contact-form textarea:focus {
	border-color: var(--ink);
	box-shadow: 0 0 0 1px var(--ink);
}
/* Floating labels */
.contact-form .field > label {
	position: absolute;
	top: 50%;
	left: 1.1rem;
	z-index: 2;
	margin: 0;
	padding: 0;
	color: rgba(50, 30, 30, 0.55);
	font-size: 0.8125rem;
	line-height: 1;
	pointer-events: none;
	transform: translateY(-50%);
	transform-origin: left center;
	transition:
		top 0.2s ease,
		transform 0.2s ease,
		font-size 0.2s ease,
		color 0.2s ease,
		background-color 0.2s ease;
}
/* Αρχική θέση label στο textarea */
.contact-form .field--area > label {
	top: 1.1rem;
	transform: none;
}
/*
 * Float όταν το field έχει focus.
 * Το :focus-within λειτουργεί παρά το wrapper span του CF7.
 */
.contact-form .field:focus-within > label {
	top: 0;
	padding-inline: 0.3rem;
	background: #fff;
	color: var(--ink);
	font-size: 0.625rem;
	transform: translateY(-50%);
}
/*
 * Float όταν υπάρχει ήδη τιμή στο input/textarea.
 */
.contact-form .field:has(input:not(:placeholder-shown)) > label,
.contact-form .field:has(textarea:not(:placeholder-shown)) > label,
.contact-form .field:has(input:-webkit-autofill) > label {
	top: 0;
	padding-inline: 0.3rem;
	background: #fff;
	color: var(--ink);
	font-size: 0.625rem;
	transform: translateY(-50%);
}
/* Validation fields */
.contact-form .wpcf7-not-valid {
	border-color: #c62828 !important;
	box-shadow: 0 0 0 1px #c62828 !important;
}
.contact-form .wpcf7-not-valid-tip {
	display: block;
	margin: 0.45rem 0 0;
	padding-left: 1.1rem;
	color: #c62828;
	font-size: 0.75rem;
	line-height: 1.4;
}
/*
 * Όταν εμφανιστεί validation message, κρατάμε το label επάνω.
 */
.contact-form .field:has(.wpcf7-not-valid) > label {
	top: 0;
	padding-inline: 0.3rem;
	background: #fff;
	color: #c62828;
	font-size: 0.625rem;
	transform: translateY(-50%);
}
/* Submit */
.contact-form__submit {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.8rem;
	margin-top: 0.5rem;
	text-align: center;
}
.contact-form__submit .button {
	min-width: 12rem;
}
.contact-form__submit .wpcf7-spinner {
	margin: 0;
}
/* CF7 response */
.contact-form .wpcf7-response-output {
	width: 100%;
	margin: 1rem 0 0 !important;
	padding: 0.9rem 1rem !important;
	border: 1px solid var(--border-light) !important;
	border-radius: 0.75rem;
	font-size: 0.8125rem;
	line-height: 1.5;
	text-align: center;
}
.contact-form .wpcf7-form.sent .wpcf7-response-output {
	border-color: #2e7d32 !important;
	background: rgba(46, 125, 50, 0.07);
	color: #2e7d32;
}
.contact-form .wpcf7-form.invalid .wpcf7-response-output,
.contact-form .wpcf7-form.failed .wpcf7-response-output,
.contact-form .wpcf7-form.spam .wpcf7-response-output,
.contact-form .wpcf7-form.aborted .wpcf7-response-output {
	border-color: #c62828 !important;
	background: rgba(198, 40, 40, 0.07);
	color: #c62828;
}
@media (max-width: 699px) {
	.contact-form .field-row {
		grid-template-columns: 1fr;
	}
}


/* ==========================================================================
   RETUNR FORM
   ========================================================================== */
.simple_page .entry-content h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 24px;
    color: #000;
  }
  .form-wrap {
    max-width: 824px;
    margin: 0 auto;
    margin-top: 0;
    padding-bottom: 0;
  }
  .form_row.fr3 .form-group {
    width: 100%;
    max-width: 100%;
  }
  .form_row.fr2 {
    margin-bottom: 24px;
  }
  .wpcf7-list-item label {
    position: relative;
    cursor: pointer;
    padding-top: 3px;
    padding-left: 35px;
    display: block;
    font-weight: normal;
    font-size: 13px;
    line-height: 20px;
    text-align: left;
    color: #2f2f2f;
  }
  .wpcf7-list-item input[type="checkbox"] {
    position: relative;
    visibility: hidden;
    width: 0px;
    height: 0px;
    margin: 0;
  }
  .wpcf7-list-item input[type="checkbox"] + span:before {
    display: block;
    position: absolute;
    content: "";
    height: 23px;
    width: 23px;
    border: 1px solid #000;
    top: 0;
    background-color: transparent;
    color: #ffffff;
    border-radius: 50%;
    right: unset;
    left: 0;
  }
  .wpcf7-list-item input[type="checkbox"] + span:after {
    display: block;
    position: absolute;
    content: "\2713";
    border-radius: 100%;
    height: 23px;
    width: 23px;
    visibility: hidden;
    font-size: 19px;
    left: 0;
    color: #000;
    z-index: 999;
    top: 1px;
    display: flex;
    align-items: center;
    justify-content: CENTER;
  }
  span.wpcf7-list-item {
    width: 100%;
    max-width: calc(100% - 10px) !important;
    height: 23px;
    margin-right: auto !important;
    margin-left: 0;
    color: var(--m1);
  }
  .wpcf7-list-item input[type="checkbox"]:checked + span:after {
    visibility: visible;
  }
  .newsletter-accept {
    width: 100%;
    font-weight: 300;
    font-size: 15px;
    color: #fff;
    padding-right: 52px;
  }
  .form-wrap .form-group input.wpcf7-submit:hover {
    background-color: var(--m3);
  }
  .form_col {
    display: flex;
    justify-content: space-between;
  }
  .form_col.fc1 {
    margin-top: 0;
  }
  .form-wrap .form-group input,
  .form-wrap .form-group select {
    height: 46px;
    background-color: transparent;
    border: solid 1px #c2c2c2;
    width: 100%;
    padding-left: 14px;
    padding-right: 22px;
    font-weight: 500;
    font-size: 15px;
    text-align: left;
    color: var(--m1);
    outline: none !important;
    border-radius: 4px;
    min-height: 52px;
    border-radius: var(--radius-pill);
    border: 1px solid var(--border-light);
  }
  .form-wrap .form-group label {
    padding-bottom: 7px;
    display: block;
    text-align: left;
    color: #000;
    line-height: 18px;
    font-weight: 500;
    font-size: 15px;
  }
  .form_col {
    display: flex;
    justify-content: space-between;
  }
  .form_col .form-group {
    width: calc(50% - 8px);
  }
  .form_row,
  .form_col {
    margin-bottom: 38px;
  }
  .form_col.fc1 {
    margin-top: 0;
  }
  .form-wrap .form-group input.wpcf7-submit {
    border-color: #c2c2c2 !important;
    width: 100%;
    max-width: 220px !important;
    height: 53px !important;
    background: var(--m1);
    padding: 0 !important;
    border: none !important;
    transition: all 300ms;
    cursor: pointer;
    text-align: center;
    color: #fff;
    border-radius: 8px !important;
    width: 100%;
    font-weight: 500;
    font-size: 15px;
  }
  .form_row .form-group textarea {
    height: 151px;
    background-color: transparent;
    border-radius: 4px;
    border-color: #c2c2c2;
    padding-left: 14px;
    padding-right: 22px;
    outline: none;
    border: 1px solid var(--border-light);
    width: 100%;
    border-radius: var(--radius-pill);
  }
  .form_row.fr3 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
  }
  .form_row.fr3 span.wpcf7-spinner {
    display: none;
  }
  input#datepicker {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill='%23000000' version='1.1' id='Capa_1' width='40px' height='40px' viewBox='0 0 610.398 610.398' xml:space='preserve'%3E%3Cg%3E%3Cg%3E%3Cpath d='M159.567,0h-15.329c-1.956,0-3.811,0.411-5.608,0.995c-8.979,2.912-15.616,12.498-15.616,23.997v10.552v27.009v14.052 c0,2.611,0.435,5.078,1.066,7.44c2.702,10.146,10.653,17.552,20.158,17.552h15.329c11.724,0,21.224-11.188,21.224-24.992V62.553 V35.544V24.992C180.791,11.188,171.291,0,159.567,0z'/%3E%3Cpath d='M461.288,0h-15.329c-11.724,0-21.224,11.188-21.224,24.992v10.552v27.009v14.052c0,13.804,9.5,24.992,21.224,24.992 h15.329c11.724,0,21.224-11.188,21.224-24.992V62.553V35.544V24.992C482.507,11.188,473.007,0,461.288,0z'/%3E%3Cpath d='M539.586,62.553h-37.954v14.052c0,24.327-18.102,44.117-40.349,44.117h-15.329c-22.247,0-40.349-19.79-40.349-44.117 V62.553H199.916v14.052c0,24.327-18.102,44.117-40.349,44.117h-15.329c-22.248,0-40.349-19.79-40.349-44.117V62.553H70.818 c-21.066,0-38.15,16.017-38.15,35.764v476.318c0,19.784,17.083,35.764,38.15,35.764h468.763c21.085,0,38.149-15.984,38.149-35.764 V98.322C577.735,78.575,560.671,62.553,539.586,62.553z M527.757,557.9l-446.502-0.172V173.717h446.502V557.9z'/%3E%3Cpath d='M353.017,266.258h117.428c10.193,0,18.437-10.179,18.437-22.759s-8.248-22.759-18.437-22.759H353.017 c-10.193,0-18.437,10.179-18.437,22.759C334.58,256.074,342.823,266.258,353.017,266.258z'/%3E%3Cpath d='M353.017,348.467h117.428c10.193,0,18.437-10.179,18.437-22.759c0-12.579-8.248-22.758-18.437-22.758H353.017 c-10.193,0-18.437,10.179-18.437,22.758C334.58,338.288,342.823,348.467,353.017,348.467z'/%3E%3Cpath d='M353.017,430.676h117.428c10.193,0,18.437-10.18,18.437-22.759s-8.248-22.759-18.437-22.759H353.017 c-10.193,0-18.437,10.18-18.437,22.759S342.823,430.676,353.017,430.676z'/%3E%3Cpath d='M353.017,512.89h117.428c10.193,0,18.437-10.18,18.437-22.759c0-12.58-8.248-22.759-18.437-22.759H353.017 c-10.193,0-18.437,10.179-18.437,22.759C334.58,502.71,342.823,512.89,353.017,512.89z'/%3E%3Cpath d='M145.032,266.258H262.46c10.193,0,18.436-10.179,18.436-22.759s-8.248-22.759-18.436-22.759H145.032 c-10.194,0-18.437,10.179-18.437,22.759C126.596,256.074,134.838,266.258,145.032,266.258z'/%3E%3Cpath d='M145.032,348.467H262.46c10.193,0,18.436-10.179,18.436-22.759c0-12.579-8.248-22.758-18.436-22.758H145.032 c-10.194,0-18.437,10.179-18.437,22.758C126.596,338.288,134.838,348.467,145.032,348.467z'/%3E%3Cpath d='M145.032,430.676H262.46c10.193,0,18.436-10.18,18.436-22.759s-8.248-22.759-18.436-22.759H145.032 c-10.194,0-18.437,10.18-18.437,22.759S134.838,430.676,145.032,430.676z'/%3E%3Cpath d='M145.032,512.89H262.46c10.193,0,18.436-10.18,18.436-22.759c0-12.58-8.248-22.759-18.436-22.759H145.032 c-10.194,0-18.437,10.179-18.437,22.759C126.596,502.71,134.838,512.89,145.032,512.89z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: calc(100% - 11px);
    background-size: 27px;
  }
  select.wpcf7-form-control.wpcf7-select.form-control {
    height: 46px;
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    text-align: left;
    outline: none !important;
    font-weight: 300;
    font-size: 16px;
    color: #000;
    border-radius: 6px;
    background: transparent;
    border: 1px solid #b4b4b4;
    min-height: 52px;
    border-radius: var(--radius-pill);
    border: 1px solid var(--border-light);
  }
  .form_col.fw.fc5 .form-group {
    width: 32%;
  }
  h2.return_title.rtitle2 {
    margin-top: 20px;
    margin-bottom: 15px;
  }
  h2.return_title.rtitle1 {
    margin-top: 40px;
	  margin-bottom: 15px;
  }
  @media screen and (max-width: 767px) {
    .form_col {
      flex-direction: column;
    }
    .form_row,
    .form_col {
      margin-bottom: 0;
    }
    .form_col .form-group {
      width: 100%;
      margin-bottom: 27px;
    }
    .form_col.fw.fc5 .form-group {
      width: 100%;
    }
  }
  @media screen and (max-width: 640px) {
    .form_row.fr3 {
      flex-direction: column;
    }
    .newsletter-accept {
      padding-right: 0;
    }
    .form_row.fr3 .form-group {
      margin-top: 27px;
    }
    .form_row .form-group textarea {
      height: 112px;
    }
    .form-wrap .form-group input.wpcf7-submit {
      line-height: 44px !important;
      height: 44px !important;
    }
  }
  .form-wrap .form-group input::placeholder,
  .form-wrap .form-group textarea::placeholder {
    color: #000;
    font-weight: normal;
    font-size: 15px;
  }
  .form_row .form-group textarea {
    outline: none !important;
  }

.general-page-content .wpcf7-not-valid-tip {
    font-size: 13px;
}
/* ==========================================================================
   FAQ PAGE
   ========================================================================== */
.faq-page {
    padding: calc(var(--section-spacing) + 1rem) var(--gutter) var(--section-spacing);
}
.faq-page__inner {
    max-width: 46rem;
    margin-inline: auto; }
.faq-page__header {
    text-align: center;
    margin-bottom: 2.5rem;
}
.faq-page__header h1 {
    margin-top: 0.25rem;
}
.faq-group {
    margin-bottom: 2.5rem;
}
.faq-group:last-child {
    margin-bottom: 0;
}
.faq-group__title {
    margin-bottom: 0.35rem;
}
.faq-item {
    border-bottom: 1px solid var(--border-light);
}
.faq-group .faq-item:first-of-type {
    border-top: 1px solid var(--border-light);
}
.faq-item__q {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
    padding: 1.15rem 0;
    background: none;
    border: none;
    color: var(--ink);
    font: inherit;
    font-size: 0.8125rem;
    letter-spacing: 0.02em;
    text-align: left;
    cursor: pointer;
}
.faq-item__q:hover {
    opacity: 0.7;
}
.faq-item__chevron {
    flex-shrink: 0;
    transition: transform 0.25s;
}
.faq-item.is-open .faq-item__chevron {
    transform: rotate(180deg);
}
.faq-item__a {
    display: none;
    padding: 0 0 1.25rem;
}
.faq-item__a p {
    font-size: 0.875rem;
    line-height: 1.6;
    opacity: 0.8;
    max-width: 42rem;
}
.faq-item__a a {
    color: var(--ink);
    text-decoration: underline;
}
/* Still-have-questions CTA */
.faq-cta {
    text-align: center;
    padding: 0 var(--gutter) var(--section-spacing);
}
.faq-cta__inner {
    max-width: 34rem;
    margin-inline: auto; padding-top: 2.5rem;
    border-top: 1px solid var(--border-light);
}
.faq-cta__inner h2 {
    margin-bottom: 0.75rem;
}
.faq-cta__inner p {
    font-size: 0.875rem;
    opacity: 0.75;
    margin-bottom: 1.5rem;
}
/* ==========================================================================
   LABELING INFORMATION PAGE
   ========================================================================== */
.labeling {
    padding: calc(var(--section-spacing) + 1rem) var(--gutter) var(--section-spacing);
}
.labeling__inner {
    max-width: 100%;
    margin-inline: auto; }
.labeling__header {
    text-align: center;
    margin-bottom: 2.5rem;
}
.labeling__intro {
    max-width: 30rem;
    margin: 1rem auto 0;
    font-size: 0.875rem;
    line-height: 1.6;
    opacity: 0.75;
}
.labeling__images {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}
.labeling__images img {
    width: 100%;
    height: auto;
    border: 1px solid var(--border-light);
    border-radius: 0.5rem;
}
.labeling__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1rem;
    margin-top: 2.5rem;
}
/* ==========================================================================
   ABOUT US PAGE
   ========================================================================== */
/* Hero collage: giant heading lines wrapping a row of images */
.about-hero {
    padding: calc(var(--section-spacing) + 1rem) var(--gutter) var(--section-spacing);
    text-align: center;
    overflow: hidden;
}
.about-hero__images {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.9rem;
    align-items: center;
    max-width: 80rem;
    margin: 1.75rem auto;
}
@media (min-width: 1000px) {
    .about-hero__images {
        grid-template-columns: repeat(4, 1fr);
        gap: 1.25rem;
        margin-block: 2.5rem; }
}
.about-hero__images img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 0.5rem;
}
/* Movement banner (reuses .cta-banner) */
.cta-banner--about .cta-banner__content em {
    font-style: italic;
}
.cta-banner--about .cta-banner__content h5 {
    max-width: 30rem;
    font-weight: 400;
    opacity: 0.92;
}
/* Founder */
.founder {
    display: grid;
    grid-template-columns: 1fr;
}
@media (min-width: 1000px) {
    .founder {
        grid-template-columns: 1fr 1fr;
        align-items: center;
    }
}
.founder__media img {
    width: 100%;
    height: auto;
    display: block;
}
.founder__content {
    padding: var(--section-spacing) var(--gutter);
    max-width: 42rem;
}
@media (min-width: 1000px) {
    .founder__content {
        padding-inline: clamp(2rem, 5vw, 5rem);
    }
}
.founder__content .subheading {
    opacity: 0.55;
    margin-bottom: 1rem;
}
.founder__content h2 {
    margin-bottom: 1.5rem;
}
.founder__body {
    font-size: 0.9375rem;
    line-height: 1.75;
    opacity: 0.85;
}
/* ==========================================================================
   WOOCOMMERCE — variable product: colour swatches, native select, variation UI
   (These layer on top of the shared .size-pill / .qty / .pgallery styles.)
   ========================================================================== */
/* WooCommerce's real <select> is required in the DOM (its variation script
   reads chosen options from it) but hidden visually — kept accessible. */
.wc-native-select {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}
/* …but keep the "Clear" link visible & clickable */
.wc-native-select .reset_variations {
    position: static;
    width: auto;
    height: auto;
    margin: 0.75rem 0 0;
    clip: auto;
    clip-path: none;
    display: inline-block;
    font-size: 0.75rem;
    text-decoration: underline;
    opacity: 0.7;
}
.wc-native-select .reset_variations:hover {
    opacity: 1;
}
.variant__current {
    font-weight: 700;
}
/* Colour swatches */
.color-swatches {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}
.color-swatch {
    position: relative;
    cursor: pointer;
    line-height: 0;
}
.color-swatch input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.color-swatch__dot {
    display: block;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    border: 1px solid var(--border-light);
    box-shadow: inset 0 0 0 2px #fff;
    transition: box-shadow 0.15s, border-color 0.15s;
}
.color-swatch:hover .color-swatch__dot {
    border-color: var(--ink);
}
.color-swatch.is-active .color-swatch__dot {
    border-color: var(--ink);
    box-shadow: inset 0 0 0 3px #fff;
}
/* Variation options that don't fit the current selection. Dimmed with a rotated
   strike-through line, purely as a hint — every option stays fully selectable.
   An impossible combination is reflected on the Add-to-cart button instead.
   Works for size pills, colour swatches and any further attribute groups. */
.attr-option.is-unavailable {
    position: relative;
    cursor: pointer;
}
.attr-option.is-unavailable::after {
    content: "";
    position: absolute;
    left: -1px;
    right: -1px;
    top: 50%;
    height: 2px;
    background: var(--ink, #1a1a1a);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85);
    transform: translateY(-50%) rotate(-18deg);
    transform-origin: center;
    pointer-events: none;
}
.size-pill.is-unavailable span {
    opacity: 0.4;
}
.size-pill.is-unavailable:hover span {
    border-color: var(--border-light);
    background: transparent;
    color: inherit;
}
.color-swatch.is-unavailable .color-swatch__dot {
    opacity: 0.4;
}
.color-swatch.is-unavailable:hover .color-swatch__dot {
    border-color: var(--border-light);
}
/* WooCommerce variation price / availability / add-to-cart */
.single_variation_wrap {
    margin-top: 0.5rem;
}
.woocommerce-variation-price {
    margin-bottom: 1rem;
}
.woocommerce-variation-price .price {
    font-size: 1.1rem;
    font-weight: 700;
}
.woocommerce-variation-availability .stock {
    font-size: 0.8125rem;
    margin-bottom: 0.75rem;
}
.woocommerce-variation.single_variation {
    margin-bottom: 1rem;
}
.woocommerce-variation-add-to-cart {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}
.woocommerce-variation-add-to-cart.woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button {
    opacity: 0.35;
    cursor: not-allowed;
    pointer-events: none;
}
button.single_add_to_cart_button.button.alt {
    background-color: #000;
    color: #fff;
}
button.single_add_to_cart_button.button.alt:after {
    background: rgb(255 255 255 / 24%);
}
/* Chosen combination has no purchasable / in-stock variation */
.single_add_to_cart_button.is-unavailable-combo,
.single_add_to_cart_button[disabled] {
    opacity: 0.5;
    cursor: not-allowed;
}
/* slick-lightbox: force the overlay opaque (some environments leave it at
   opacity:0 so the page shows through). Remove to restore the fade. */
.slick-lightbox {
    background: rgba(0, 0, 0, 0.9) !important;
}
.slick-lightbox.slick-lightbox-hide {
    opacity: 0;
}
.slick-lightbox.slick-lightbox-show {
    opacity: 1 !important;
}
/* Lightbox prev/next arrows. Only slick core CSS is loaded (no slick-theme),
   which sets the arrow buttons to font-size:0 / color:transparent, so make our
   SVG arrows visible and position them clear of the image. */
.slick-lightbox .slick-arrow {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    padding: 0;
    color: #fff;
    background: rgba(0, 0, 0, 0.35);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    z-index: 10;
    transition: background 0.2s, opacity 0.2s;
    position: absolute;
    top: 50%;
}
.slick-lightbox .slick-arrow:hover {
    background: rgba(0, 0, 0, 0.6);
}
.slick-lightbox .slick-arrow svg {
    display: block;
}
.slick-lightbox .slick-prev {
    left: 1.5rem;
}
.slick-lightbox .slick-next {
    right: 1.5rem;
}
.slick-lightbox .slick-arrow.slick-disabled {
    opacity: 0.35;
    cursor: default;
}
@media (max-width: 640px) {
    .slick-lightbox .slick-arrow {
        width: 44px;
        height: 44px;
    }
    .slick-lightbox .slick-prev {
        left: 0.5rem;
    }
    .slick-lightbox .slick-next {
        right: 0.5rem;
    }
}
/* ==========================================================================
   TECHNOLOGY PAGE
   ========================================================================== */
/* Hero */
.tech-hero {
    min-height: 85vh;
}
.tech-hero .cta-banner__content {
    max-width: 55rem;
    padding: var(--gutter);
    text-align: center;
}
.tech-hero .h1 {
    margin-bottom: 0.75rem;
}
.tech-hero .h5 {
    opacity: 0.92;
    max-width: 36rem;
    margin-inline: auto; }
/* Element infused fabric collage */
.tech-collage {
    position: relative;
    color: #fff;
    overflow: hidden;
}
.tech-collage__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}
.tech-collage__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.25);
    z-index: 1;
}
.tech-collage__inner {
    position: relative;
    z-index: 2;
    min-height: 85vh;
    padding: var(--section-spacing) var(--gutter);
}
/* All cells: positioned absolutely on desktop, flow on mobile */
.tech-collage__cell {
    position: relative;
    /* flow on mobile */
    width: 100%;
    max-width: 24rem;
    margin: 1.5rem auto;
    overflow: hidden;
    border-radius: 0.5rem;
}
.tech-collage__cell img {
    width: 100%;
    height: auto;
    display: block;
}
.tech-collage__heading {
    font-size: clamp(2rem, 10vw, 80px);
    letter-spacing: -0.05em;
    line-height: 1;
    text-align: center;
    margin-bottom: 1rem;
}
.tech-collage__text {
    text-align: center;
    max-width: 32rem;
    margin: 2rem auto 0;
}
.tech-collage__text h6 {
    font-size: clamp(0.9375rem, 1.5vw, 1.25rem);
    line-height: 1.6;
    font-weight: 400;
    opacity: 0.9;
}
/* Desktop: absolute positions matching grid areas (17-col, 7-row) */
@media (min-width: 1000px) {
    .tech-collage__inner {
        min-height: 93vh;
        padding: 0;
    }
    .tech-collage__cell {
        position: absolute;
        max-width: none;
        margin: 0;
        border-radius: 0.5rem;
    }
    .tech-collage__cell img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    /* 6.png  — grid-area: 1/3/-1/5  → top:0%, left:11.8%, w:11.8%, h:100% */
    .tech-collage__cell--2 {
        left: 11.8%;
        top: 0;
        width: 11.8%;
        height: auto;
    }
    /* 7.png  — grid-area: 2/15/-1/17 → top:14.3%, left:82.4%, w:11.8%, h:85.7% */
    .tech-collage__cell--1 {
        left: 82.4%;
        top: 14.3%;
        width: 11.8%;
        height: auto%;
    }
    /* Frame_139 — grid-area: 3/12/-1/15 → top:28.6%, left:64.7%, w:17.6%, h:71.4% */
    .tech-collage__cell--3 {
        left: 64.7%;
        top: 28.6%;
        width: 17.6%;
        height: auto%;
    }
    /* 7.webp  — grid-area: 3/2/-1/5 → top:28.6%, left:5.9%, w:17.6%, h:71.4%  (+2vw vertical) */
    .tech-collage__cell--4 {
        left: 5.9%;
        top: calc(28.6% + 2vw);
        width: 17.6%;
        height: auto%;
    }
    /* Heading — grid-area: 3/4/-1/12  → center of that area */
    .tech-collage__heading {
        position: absolute;
        top: 21%;
        left: 0;
        right: 0;
        width: auto;
        margin: 0;
        font-size: clamp(2rem, 5.5vw, 140px);
        z-index: 3;
        pointer-events: none;
		max-width: 1180px;
        text-align: left;
        margin: 0 auto;
    }
    /* Body text — grid-area: 6/2/-1/11 → starts at row 6 = 71.4% */
    .tech-collage__text {
		position: absolute;
        bottom: 18%;
        left: 0;
        right: 0;
        width: auto;
        max-width: 32rem;
        margin: 0 auto;
        padding: 0 var(--gutter);
        z-index: 3;
        pointer-events: none;
        text-align: left;
        margin-left: 0;
        margin-right: auto;
        max-width: 33%;
        left: 5%;
    }
}
/* Media blocks */
.tech-media {
    display: grid;
    grid-template-columns: 1fr;
}
@media (min-width: 700px) {
    .tech-media {
        grid-template-columns: repeat(2, 1fr);
    }
}
.tech-media__item {
    position: relative;
    overflow: hidden;
}
.tech-media__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    aspect-ratio: 1 / 1;
}
.tech-media__caption {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--gutter);
    background: rgba(0, 0, 0, 0.25);
    color: #fff;
    text-align: center;
}
.tech-media__caption h5 {
    max-width: 22rem;
    font-weight: 400;
}
/* Circulation banner */
.tech-circulation .cta-banner__content {
    max-width: 54rem;
    text-align: center;
    padding: var(--gutter);
}
.tech-circulation .h3 {
    margin-bottom: 1.25rem;
}
.tech-circulation__body {
    max-width: 40rem;
    margin-inline: auto; }
.tech-circulation__body h6 {
    font-size: clamp(0.9375rem, 1.1vw, 1.25rem);
    line-height: 1.7;
    font-weight: 400;
    opacity: 0.95;
}
/* Studies band */
.tech-studies {
    position: relative;
    padding: calc(var(--section-spacing) * 1.5) var(--gutter);
    color: #fff;
    text-align: center;
    overflow: hidden;
}
.tech-studies__inner {
    position: relative;
    z-index: 2;
    max-width: 70rem;
    margin-inline: auto; }
.tech-studies__heading {
    font-size: calc(clamp(2rem, 1.6359rem + 1.5534vw, 3.5rem) * 0.9);
    margin-bottom: 0.75rem;
}
.tech-studies__intro {
    max-width: 48rem;
    margin: 0 auto 1rem;
    font-size: clamp(0.75rem, 1vw, 0.95rem);
    line-height: 1.6;
    opacity: 0.85;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.tech-studies__sub {
    margin-bottom: 2.5rem;
    opacity: 0.8;
}
.tech-stats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}
@media (min-width: 700px) {
    .tech-stats {
        grid-template-columns: repeat(4, 1fr);
        gap: 2rem;
    }
}
.tech-stat {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
.tech-stat .subheading {
    opacity: 0.7;
}
.tech-stat .h1 {
    font-size: calc(clamp(3rem, 2.3325rem + 2.8479vw, 5.75rem) * 0.9);
}
/* Study cards */
.tech-study {
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    background: #e8eff2;
}
@media (min-width: 1000px) {
    .tech-study {
        grid-template-columns: 0.45fr 0.55fr;
    }
    .tech-study--reverse {
        grid-template-columns: 0.55fr 0.45fr;
    }
}
.tech-study__media img {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 4 / 5;
    object-fit: cover;
}
.tech-study__content {
    padding: var(--section-spacing) var(--gutter);
    max-width: 44rem;
}
@media (min-width: 1000px) {
    .tech-study--reverse .tech-study__content {
        order: -1;
    }
}
.tech-study__content .h4 {
    margin-bottom: 1.25rem;
}
.tech-study__content ul {
    list-style: disc;
    padding-left: 1.2rem;
    margin-bottom: 2rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}
.tech-study__content li h6 {
    font-size: 0.9375rem;
    line-height: 1.6;
    font-weight: 400;
}
.tech-study__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}
/* ==========================================================================
   BLOG / NEWS PAGE
   ========================================================================== */
.news__inner {
    max-width: var(--content-max, 72rem);
    margin-inline: auto;
    padding-inline: var(--gutter);
    max-width: 100%;
    }
.news__header {
    padding: calc(var(--section-spacing) + 1rem) 0 0;
    text-align: center;
}
.news__header .h2 {
    margin-bottom: 0;
}
.news__posts {
    padding: 1.5rem 0 var(--section-spacing);
}
/* Tag filter bar */
.blog-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    list-style: none;
    margin: 0 0 2rem;
    padding: 0;
    justify-content: center;
}
.blog-tags li a {
    display: block;
    padding: 0.35rem 0.85rem;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--ink);
    opacity: 0.6;
    border: 1px solid var(--border-light);
    border-radius: 100px;
    text-decoration: none;
    transition: opacity 0.15s, background 0.15s;
}
.blog-tags li a:hover, .blog-tags li.is-active a {
    opacity: 1;
    background: var(--ink);
    color: #fff;
    border-color: var(--ink);
}
/* Blog post grid */
.blog-post-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2.5rem;
}
@media (min-width: 700px) {
    .blog-post-list {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (min-width: 1000px) {
    .blog-post-list {
        grid-template-columns: repeat(3, 1fr);
    }
}
/* Blog post card */
.blog-post-card {
    display: block;
    text-decoration: none;
    color: inherit;
    border-radius: 0.5rem;
    overflow: hidden;
    transition: transform 0.2s;
}
.blog-post-card:hover {
    transform: translateY(-2px);
}
.blog-post-card__image {
    overflow: hidden;
    border-radius: 0.5rem;
}
.blog-post-card__image img {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
    transition: transform 0.4s;
}
.blog-post-card:hover .blog-post-card__image img {
    transform: scale(1.05);
}
.blog-post-card__content {
    padding: 1rem 0 0;
}
.blog-post-card__content .meta-information {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    opacity: 0.6;
    margin-bottom: 0.35rem;
    display: flex;
    gap: 0.75rem;
    align-items: center;
}
.blog-post-card__content .h5 {
    display: block;
    margin-bottom: 0.5rem;
    line-height: 1.3;
}
.blog-post-card__content p {
    font-size: 0.875rem;
    line-height: 1.6;
    opacity: 0.7;
}
/* Featured / highlighted card */
.blog-post-card--featured {
    grid-column: 1 / -1;
}
.blog-post-card--featured:hover {
    transform: none;
}
.blog-post-card__featured-media {
    position: relative;
    overflow: hidden;
    border-radius: 0.5rem;
    min-height: 20rem;
    display: flex;
    align-items: flex-end;
}
.blog-post-card__featured-media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s;
}
.blog-post-card--featured:hover .blog-post-card__featured-media img {
    transform: scale(1.03);
}
.blog-post-card__featured-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.2) 60%, rgba(0,0,0,0.1) 100%);
    z-index: 1;
}
.blog-post-card__featured-content {
    position: relative;
    z-index: 2;
    color: #fff;
    padding: 2rem;
    max-width: 44rem;
}
.blog-post-card__featured-content .meta-information {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    opacity: 0.8;
    margin-bottom: 0.5rem;
    display: flex;
    gap: 0.75rem;
    align-items: center;
}
.blog-post-card__featured-content .h2 {
    margin-bottom: 0.75rem;
    line-height: 1.1;
}
.blog-post-card__featured-content p {
    font-size: 0.9375rem;
    line-height: 1.6;
    opacity: 0.9;
}
/* Pagination */
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin-top: 2.5rem;
}
.pagination__link, .pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.25rem;
    height: 2.25rem;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    text-decoration: none;
    color: var(--ink);
    opacity: 0.6;
    border: 1px solid var(--border-light);
    border-radius: 50%;
    transition: opacity 0.15s, background 0.15s, color 0.15s;
}
.pagination__link:hover, .pagination__link.is-active, .pagination .page-numbers:hover, .pagination .page-numbers.current {
    opacity: 1;
    background: var(--ink);
    color: #fff;
    border-color: var(--ink);
}
.pagination .page-numbers.prev, .pagination .page-numbers.next {
    border: 1px solid var(--border-light);
    font-size: 0;
}
.pagination .page-numbers.prev svg, .pagination .page-numbers.next svg {
    width: 14px;
    height: 14px;
}
.pagination .page-numbers.next svg {
    margin-left: 2px;
}
.pagination .page-numbers.prev svg {
    margin-right: 2px;
}
.pagination .page-numbers.dots {
    border: none;
    opacity: 0.4;
}
.circle-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    border: 1px solid var(--border-light);
    color: var(--ink);
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
}
.circle-button:hover {
    background: var(--ink);
    color: #fff;
}
/* ==========================================================================
   SHIPPING PAGE
   ========================================================================== */
.text-center {
    text-align: center;
}
.shipping__inner {
    max-width: var(--content-max, 72rem);
    margin-inline: auto; padding-inline: var(--gutter); }
.shipping__icons {
    padding: calc(var(--section-spacing) + 1rem) 0 var(--section-spacing);
}
.shipping__icons .h2 {
    margin-bottom: 2rem;
}
.shipping__icons-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
}
@media (min-width: 700px) {
    .shipping__icons-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
.shipping__icon-item {
    text-align: center;
    padding: 1.5rem 1rem;
    border: 1px solid var(--border-light);
    border-radius: 0.5rem;
}
.shipping__icon-item svg {
    width: 2rem;
    height: 2rem;
    margin-bottom: 0.75rem;
    color: var(--ink);
}
.shipping__icon-item .h6 {
    margin-bottom: 0.35rem;
}
.shipping__icon-item .text-subdued {
    font-size: 0.8125rem;
}
.shipping__icon-item a {
    color: var(--ink);
    text-decoration: underline;
}
.shipping__details {
    padding: 0 var(--gutter) var(--section-spacing);
}
.shipping__details-content {
    max-width: 48rem;
    margin-inline: auto; line-height: 1.7;
    font-size: 0.9375rem;
}
.shipping__details-content p {
    margin-bottom: 1.75rem;
    opacity: 0.85;
}
.shipping__details-content p:last-child {
    margin-bottom: 0;
}
.shipping__details-content b, .shipping__details-content strong {
    color: var(--ink);
    opacity: 1;
}
/* ==========================================================================
   BLOG POST (SINGLE)
   ========================================================================== */
.blog-post-banner {
    background: var(--bg-secondary);
}
.section-split {
    display: flex;
    flex-direction: column;
}
@media (min-width: 700px) {
    .section-split {
        flex-direction: row;
        min-height: 37rem;
    }
}
.section-split__column {
    flex: 1 1 50%;
    display: flex;
}
.section-split__column--image {
    align-items: stretch;
}
.section-split__column--flushed {
    padding: 0;
}
.section-split__column--image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.content-box {
    display: flex;
    align-items: center;
    padding: 2rem var(--container-gutter, 1.25rem);
    flex: 1 1 50%;
}
@media (min-width: 700px) {
    .content-box {
        padding: 3rem 2.5rem;
    }
}
.align-self-center {
    align-self: center;
}
.v-stack {
    display: flex;
    flex-direction: column;
}
.h-stack {
    display: flex;
    align-items: center;
}
.gap-1 {
    gap: 0.25rem;
}
.gap-2 {
    gap: 0.5rem;
}
.gap-3 {
    gap: 0.75rem;
}
.gap-4 {
    gap: 1rem;
}
.gap-4\\.5 {
    gap: 1.25rem;
}
.gap-5 {
    gap: 1.5rem;
}
.gap-5\\.5 {
    gap: 1.75rem;
}
.gap-6 {
    gap: 2rem;
}
.gap-7 {
    gap: 2.5rem;
}
.gap-8 {
    gap: 3rem;
}
.gap-10 {
    gap: 4rem;
}
@media (min-width: 700px) {
    .sm\\:gap-10 {
        gap: 4rem;
    }
}
.blog-post-content {
    padding: var(--section-vertical-spacing, 2.5rem) 0;
}
.section-spacing {
    padding: var(--section-vertical-spacing, 2.5rem) 0;
}
.container {
    max-width: 100%;
    padding-inline: var(--container-gutter, 1.25rem); margin-inline: auto;
}
@media (min-width: 1400px) {
    .container {
        max-width: 1400px;
    }
}
.max-w-md {
    max-width: 48rem;
}
.mx-auto {
    margin-inline: auto; }
.article-main {
    width: 100%;
}
.meta-information {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    opacity: 0.7;
}
.meta-information .shape {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    display: inline-block;
}
.meta-information a {
    color: inherit;
    text-decoration: none;
}
.meta-information a:hover {
    text-decoration: underline;
}
.uppercase {
    text-transform: uppercase;
}
/* Prose - article body typography */
.prose {
    line-height: 1.7;
    font-size: 0.9375rem;
    color: var(--ink);
}
.prose * {
    margin-bottom: 20px;
}
.prose p {
    margin-bottom: 1.5rem;
    opacity: 0.85;
}
.prose p:last-child {
    margin-bottom: 0;
}
.prose h2 {
    font-size: 1.5rem;
    margin: 2.5rem 0 1rem;
    line-height: 1.2;
}
.prose h3 {
    font-size: 1.25rem;
    margin: 2rem 0 0.75rem;
    line-height: 1.3;
}
.prose a {
    color: var(--ink);
    text-decoration: underline;
    text-underline-offset: 2px;
}
.prose a:hover {
    opacity: 0.7;
}
.prose strong {
    color: var(--ink);
    opacity: 1;
}
.prose--compact p {
    margin-bottom: 0.75rem;
    font-size: 0.875rem;
}
.prose--compact .meta-information {
    margin-bottom: 0.35rem;
}
/* Share buttons */
.share-buttons {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    list-style: none;
    margin: 0;
    padding: 0;
}
.share-buttons__item a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    border: 1px solid var(--border-light);
    color: var(--ink);
    transition: background 0.15s, color 0.15s;
}
.share-buttons__item a:hover {
    background: var(--ink);
    color: #fff;
}
.share-buttons__item svg {
    width: 1rem;
    height: 1rem;
}
/* Prev / next section */
.blog-post-prev-next {
    background: var(--bg-secondary);
}
.blog-post-prev-next .section-stack {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}
.blog-post-prev-next .h-stack svg {
    transform: rotate(180deg);
}
.blog-post-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2.5rem;
}
@media (min-width: 700px) {
    .blog-post-list {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (min-width: 1000px) {
    .blog-post-list {
        grid-template-columns: repeat(3, 1fr);
    }
}
.scroll-area {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.bleed {
    margin-inline: calc(-1 * var(--container-gutter, 1.25rem)); padding-inline: var(--container-gutter, 1.25rem);
}
@media (min-width: 700px) {
    .sm\\:unbleed {
        margin-inline: 0;
        padding-inline: 0; }
}
.blog-post-card__image-container {
    overflow: hidden;
    border-radius: 0.5rem;
}
.blog-post-card__image-container img {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
    transition: transform 0.4s;
}
.blog-post-card:hover .blog-post-card__image-container img {
    transform: scale(1.05);
}
.size-full {
    width: 100%;
    height: auto;
}
.capped-icon {
    flex-shrink: 0;
}
.group-hover\:zoom {
    transition: transform 0.4s;
}
.group:hover .group-hover\:zoom {
    transform: scale(1.05);
}
/*GENERAL PAGES*/
:root {
  --mw: calc(95% + (var(--pad) *2));
  --sitew: 1300px;
  --pad: 10px;
  --padfw: 10px;
  --padhd: 32px;
  --header: 130px;
  --sheader: 124px;
  --topbar:32px;
  --fheader: calc(var(--header) + var(--topbar));
}
.main-wrapper {
    padding-left: var(--pad);
    padding-right: var(--pad);
}
.mw {
    width: var(--mw);
	max-width:var(--sitew);
}
.m-auto {
    margin-left: auto;
    margin-right: auto;
}
.general-page-content {
    margin-top: 55px;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%; /* 28.8px */
    letter-spacing: -0.36px;
    color: var(--color-grey-5);
    padding-bottom: 50px;
}
.general-page-title h1 {
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: -2.5px;
    font-size: 3rem;
    color: var(--color-dark-grey-3);
}
.general-page-content b,.general-page-content strong {
    font-weight: 700;
    color: #000 !important;
}
.general-page-content p,.general-page-content div {
    margin-bottom: 32px;
	color: #000;
}
.general-page-content a {
    color: #000;
    font-weight: 500;
}
section.main-wrapper.general-title-page {
    margin-top: 60px;
}
.general-page-content h1,
.general-page-content h2,
.general-page-content h3 {
    margin-bottom: 32px;
    color: #000;
}
.general-page-content ul {
    list-style: disc;
    color: #000;
    margin-bottom: 20px;
    padding-left: 30px;
}
.general-page-content ol {
    color: #000;
    margin-bottom: 20px;
    padding-left: 30px;
}
.general-page-content a {
    text-decoration: underline;
}
/*END OF GENERAL PAGES*/


/* ==========================================================================
   SIDEBAR SEARCH
   ========================================================================== */

.sidebar-search {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	justify-content: flex-end;
	visibility: hidden;
	pointer-events: none;
}

.sidebar-search.is-open {
	visibility: visible;
	pointer-events: auto;
}

/* Dark blurred page overlay */
.sidebar-search__overlay {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	background: rgba(12, 12, 12, 0.68);
	backdrop-filter: blur(7px);
	-webkit-backdrop-filter: blur(7px);
	cursor: pointer;
	opacity: 0;
	transition:
		opacity 0.45s ease,
		visibility 0.45s ease;
}

.sidebar-search.is-open .sidebar-search__overlay {
	opacity: 1;
}

/* Right panel */
.sidebar-search__panel {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	width: min(40vw, 680px);
	height: 100%;
	background: #fff;
	color: var(--ink, #171717);
	box-shadow: -14px 0 40px rgba(0, 0, 0, 0.12);
	transform: translateX(100%);
	transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.sidebar-search.is-open .sidebar-search__panel {
	transform: translateX(0);
}

/* Header */
.sidebar-search__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 76px;
	padding: 0 var(--gutter, 28px);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.sidebar-search__title {
	margin: 0;
	font-size: 1rem;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.sidebar-search__close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #f1f1f1;
	color: inherit;
	cursor: pointer;
	transition:
		transform 0.25s ease,
		background-color 0.25s ease;
}

.sidebar-search__close:hover {
	background: #e7e7e7;
	transform: rotate(90deg);
}

/* Search content */
.sidebar-search__content {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	padding: 28px var(--gutter, 28px) 50px;
}

.sidebar-search__form {
	position: relative;
	z-index: 5;
}

/* ==========================================================================
   ADVANCED WOO SEARCH
   ========================================================================== */

.sidebar-search .aws-container {
	width: 100%;
}

.sidebar-search .aws-container .aws-search-form {
	position: relative;
	height: auto;
}

.sidebar-search .aws-container .aws-search-field {
	width: 100%;
	height: 56px;
	padding: 0 55px 0 0;
	border: 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.22);
	border-radius: 0;
	background: transparent;
	color: inherit;
	font-family: inherit;
	font-size: 1rem;
	box-shadow: none;
	outline: none;
	transition: border-color 0.25s ease;
}

.sidebar-search .aws-container .aws-search-field:focus {
	border-color: #111;
	box-shadow: none;
}

.sidebar-search .aws-container .aws-search-field::placeholder {
	color: rgba(0, 0, 0, 0.45);
}

.sidebar-search .aws-container .aws-search-btn {
	width: 50px;
	border: 0;
	background: transparent;
}

/*
 * Search results dropdown.
 * The plugin may append this element outside .sidebar-search,
 * so both selectors are included.
 */
.sidebar-search .aws-search-result,
body > .aws-search-result {
	z-index: 100001 !important;
	border: 0;
	border-radius: 0;
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

.sidebar-search .aws-search-result {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	width: 100% !important;
	max-height: none;
	margin-top: 20px;
	box-shadow: none;
}

.sidebar-search .aws-search-result ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	padding: 0;
}

.sidebar-search .aws-search-result ul li {
	min-width: 0;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-top: 0;
}

.sidebar-search .aws-search-result ul li:nth-child(even) {
	border-left: 0;
}

/* Popular searches */
.sidebar-search__suggestions {
	margin-top: 30px;
	padding-top: 24px;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.sidebar-search__suggestions-title {
	margin: 0 0 15px;
	font-size: 0.75rem;
	color: rgba(0, 0, 0, 0.5);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.sidebar-search__suggestion-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.sidebar-search__suggestion-list button {
	padding: 9px 14px;
	border: 1px solid rgba(0, 0, 0, 0.14);
	border-radius: 30px;
	background: transparent;
	color: inherit;
	font-family: inherit;
	font-size: 0.8rem;
	cursor: pointer;
	transition:
		background-color 0.2s ease,
		color 0.2s ease,
		border-color 0.2s ease;
}

.sidebar-search__suggestion-list button:hover {
	border-color: #111;
	background: #111;
	color: #fff;
}

/* Disable page scrolling while open */
body.search-sidebar-open {
	overflow: hidden;
}

/* Tablet */
@media (max-width: 1199px) {
	.sidebar-search__panel {
		width: min(55vw, 640px);
	}
}

/* Mobile */
@media (max-width: 767px) {
	.sidebar-search__panel {
		width: 100%;
	}

	.sidebar-search__header {
		min-height: 68px;
	}

	.sidebar-search__content {
		padding-top: 20px;
	}

	.sidebar-search .aws-search-result ul {
		grid-template-columns: 1fr;
	}

	.sidebar-search .aws-search-result ul li:nth-child(even) {
		border-left: 1px solid rgba(0, 0, 0, 0.1);
	}
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
	.sidebar-search__overlay,
	.sidebar-search__panel,
	.sidebar-search__close {
		transition: none;
	}
}
.sidebar-search .aws-search-result {
	animation: sidebarSearchResults 0.35s ease both;
}

@keyframes sidebarSearchResults {
	from {
		opacity: 0;
		transform: translateY(12px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/*FACET*/
:root{
    --color-white-1: #FFFFFF;
    --color-white-2: #FAFAFA;
    --color-white-3: #F6F6F6;
    --color-white-4: #EAEAEA;
    --color-black: #000000;
    --color-red-1: #FF6969;
    --color-red-2: #F15D5D;
    --color-grey-0: #DEDEDE;
    --color-grey-1: #D9D9D9;
    --color-grey-2: #D0D0D0;
    --color-grey-3: #C4C4C4;
    --color-grey-4: #868686;
    --color-grey-5: #676767;
    --color-dark-grey-1: #535353;
    --color-dark-grey-2: #3D3D3D;
    --color-dark-grey-3: #2B2B2B;
    --color-dark-grey-4: #868686;
    --color-text-primary: var(--color-dark-grey-3);
    --color-text-secondary: #3C3834;
}
.fwp-custom-sidebar details.fwp-toggle-wrap {
    padding: 12px 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 20px;
  }
  .fwp-custom-sidebar summary.fwp-toggle-title {
    cursor: pointer;
    font-weight: 700;
    font-size: 16px;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    outline: none;
    border-bottom: 1px solid #e1e1e1;
    padding-bottom: 20px;
    color: var(--color-dark-grey-2);
  }
  .facetwp-facet-product_categories .facetwp-radio:last-child {
    margin-bottom: 0 !important;
  }
  .fwp-custom-sidebar summary.fwp-toggle-title::-webkit-details-marker {
    display: none;
  }
  .fwp-custom-sidebar summary.fwp-toggle-title::after {
    content: "";
    font-size: 18px;
    color: #666;
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.75374 0.253125C9.83177 0.332675 9.89371 0.427319 9.93597 0.531597C9.97824 0.635875 10 0.747723 10 0.860689C10 0.973655 9.97824 1.0855 9.93597 1.18978C9.89371 1.29406 9.83177 1.3887 9.75374 1.46825L5.5911 5.74688C5.5137 5.82708 5.42162 5.89074 5.32017 5.93419C5.21872 5.97763 5.10991 6 5 6C4.8901 6 4.78128 5.97763 4.67983 5.93419C4.57838 5.89074 4.4863 5.82708 4.40891 5.74688L0.246265 1.46825C0.168233 1.3887 0.106297 1.29406 0.0640298 1.18978C0.021763 1.0855 2.98023e-06 0.973655 2.98023e-06 0.860689C2.98023e-06 0.747723 0.021763 0.635875 0.0640298 0.531597C0.106297 0.427319 0.168233 0.332675 0.246265 0.253125C0.323659 0.172919 0.415736 0.109258 0.517188 0.0658139C0.618639 0.0223697 0.727455 2.26498e-06 0.837359 2.26498e-06C0.947263 2.26498e-06 1.05608 0.0223697 1.15753 0.0658139C1.25898 0.109258 1.35106 0.172919 1.42845 0.253125L5 3.93274L8.57155 0.253125C8.64894 0.172919 8.74102 0.109258 8.84247 0.0658139C8.94392 0.0223697 9.05274 2.26498e-06 9.16264 2.26498e-06C9.27255 2.26498e-06 9.38136 0.0223697 9.48282 0.0658139C9.58427 0.109258 9.67635 0.172919 9.75374 0.253125Z' fill='%23868686'/%3E%3C/svg%3E%0A");
    width: 10px;
    height: 10px;
    background-repeat: no-repeat;
    background-position: center;
  }
  .fwp-custom-sidebar .fwp-toggle-content {
    padding-top: 15px;
    padding-bottom: 5px;
    font-size: 14px;
  }
  .facetwp-checkbox {
    position: relative;
    background: none !important;
    line-height: 20px;
    padding-left: 32px !important;
    margin-bottom: 16px !important;
    font-size: 16px !important;
    color: var(--color-grey-4) !important;
    font-weight: 400;
    display: flex;
    justify-content: space-between;
  }
  .facetwp-checkbox:after {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: solid 1px var(--color-grey-3);
    left: 0;
    top: 0;
  }
  .facetwp-facet-price_slider .noUi-horizontal .noUi-handle {
    width: 18px;
    height: 18px;
    background-color: var(--color-red-2);
    border-radius: 50%;
    top: -6px;
    border: none;
  }
  .facetwp-facet-price_slider .noUi-target {
    padding: 0 9px;
    width: 100%;
    height: 6px;
    background-color: var(--color-red-2);
    border: none;
    border-radius: 40px;
  }
  .facetwp-facet-price_slider .noUi-handle.noUi-handle-lower {
    right: -9px;
  }
  .facetwp-facet-price_slider .noUi-handle.noUi-handle-upper {
    right: -9px;
  }
  .facetwp-facet-price_slider .facetwp-slider-reset {
    display: none;
  }
  .facetwp-facet-price_slider span.facetwp-slider-label {
    font-size: 16px;
    color: var(--color-dark-grey-3);
    font-weight: 500;
  }
  .facetwp-type-radio .facetwp-radio {
    position: relative;
    background: none !important;
    line-height: 20px;
    padding-left: 32px !important;
    margin-bottom: 16px !important;
    font-size: 16px !important;
    color: var(--color-grey-4) !important;
    font-weight: 400;
    display: flex;
    justify-content: space-between;
  }
  .facetwp-type-radio .facetwp-radio:after {
    content: "";
    position: absolute;
    width: 19px;
    height: 19px;
    border-radius: 50%;
    border: solid 1px var(--color-grey-3);
    left: 0;
    top: 0;
  }
  .facetwp-type-radio .facetwp-radio.checked:before {
    content: "";
    width: 10px;
    height: 10px;
    background-color: var(--color-dark-grey-3);
    position: absolute;
    left: 5px;
    top: 5px;
    z-index: 1;
    border-radius: 50%;
  }
  .facetwp-facet-yper_chroma .facetwp-radio {
    padding: 0 !important;
    position: static;
    margin-bottom: 0 !important;
    display: block;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .facetwp-facet-yper_chroma .facetwp-radio:before,
  .facetwp-facet-yper_chroma .facetwp-radio:after {
    display: none;
  }
  .facetwp-facet-yper_chroma .facetwp-radio span.facetwp-counter {
    display: none;
  }
  .facetwp-facet-yper_chroma span.color_txt {
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    color: var(--color-dark-grey-3);
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    padding-right: 14px;
  }
  .facetwp-facet.facetwp-facet-yper_chroma.facetwp-type-radio {
    display: grid;
    grid-template-columns: repeat(5, minmax(34px, 1fr));
    position: relative;
    padding-bottom: 35px;
    margin-bottom: 0;
    gap: 14px;
    display: grid;
    grid-template-columns: repeat(5, 32px);
    column-gap: 14px;
    row-gap: 12px;
    justify-content: flex-start;
    align-items: center;
  }
  .facetwp-facet.facetwp-facet-yper_chroma.facetwp-type-radio
    .facetwp-radio:first-child {
    display: none;
  }
  .facetwp-facet.facetwp-facet-yper_chroma.facetwp-type-radio
    .facetwp-display-value {
    padding-right: 0;
  }
  .facetwp-facet.facetwp-facet-yper_chroma.facetwp-type-radio .color_bg {
    margin-right: 0;
  }
  span.color_bg {
    margin-right: 0 !important;
  }
  .facetwp-facet-yper_chroma .facetwp-radio.checked {
    border: 1px solid var(--color-grey-4);
    border-radius: 50%;
  }
  span.facetwp-counter {
    font-size: 14px !important;
  }
  .fwp-custom-sidebar details.fwp-toggle-wrap:last-child {
    padding-bottom: 0;
  }
  .facetwp-facet-product_categories .facetwp-radio {
    background: none !important;
    padding-left: 16px !important;
    text-transform: uppercase;
  }
  .facetwp-facet-product_categories .facetwp-radio:after,
  .facetwp-facet-product_categories .facetwp-radio:before {
    display: none;
  }
  .fwp-toggle-content .facetwp-facet {
    margin-bottom: 0 !important;
  }
  .facetwp-checkbox:last-child {
    margin-bottom: 0 !important;
  }
  .facetwp-facet.facetwp-facet-price_slider.facetwp-type-slider {
    margin-bottom: 22px !important;
  }
  @media (max-width: 991px) {
    .facetwp-facet.facetwp-facet-yper_chroma.facetwp-type-radio {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
    }
  }
}
.noUi-target {}
.facetwp-slider.noUi-target.noUi-ltr.noUi-horizontal.noUi-txt-dir-ltr.ready {
    border: none;
    background-color: #e6e4e4;
    border-radius: 0 !IMPORTANT;
    height: 3px;
}
.noUi-handle {
    border-radius: 50% !important;
    top: -7px !important;
    width: 15px !important;
    height: 15px !IMPORTANT;
    border: solid 1px #000 !important;
}
.noUi-connect {
    background-color: #000 !important;
}
.noUi-connects {
    border-radius: 0 !IMPORTANT;
}
.facetwp-slider-reset {
    box-shadow: none !important;
    border-radius: 60px !important;
    padding: 10px 41px !important;
    margin-top: 10px !important;
    border-color: #e6e4e4 !important;
}
.facetwp-facet.facetwp-facet-price_range.facetwp-type-slider {
    margin-top: 10px !IMPORTANT;
}
select {}
.facetwp-facet.facetwp-facet-sort_products.facetwp-type-sort {}
.facetwp-facet.facetwp-facet-sort_products.facetwp-type-sort select {
    width: 100%;
    height: 40px;
    display: block;
    padding: 0 10px;
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.75374 0.253125C9.83177 0.332675 9.89371 0.427319 9.93597 0.531597C9.97824 0.635875 10 0.747723 10 0.860689C10 0.973655 9.97824 1.0855 9.93597 1.18978C9.89371 1.29406 9.83177 1.3887 9.75374 1.46825L5.5911 5.74688C5.5137 5.82708 5.42162 5.89074 5.32017 5.93419C5.21872 5.97763 5.10991 6 5 6C4.8901 6 4.78128 5.97763 4.67983 5.93419C4.57838 5.89074 4.4863 5.82708 4.40891 5.74688L0.246265 1.46825C0.168233 1.3887 0.106297 1.29406 0.0640298 1.18978C0.021763 1.0855 2.98023e-06 0.973655 2.98023e-06 0.860689C2.98023e-06 0.747723 0.021763 0.635875 0.0640298 0.531597C0.106297 0.427319 0.168233 0.332675 0.246265 0.253125C0.323659 0.172919 0.415736 0.109258 0.517188 0.0658139C0.618639 0.0223697 0.727455 2.26498e-06 0.837359 2.26498e-06C0.947263 2.26498e-06 1.05608 0.0223697 1.15753 0.0658139C1.25898 0.109258 1.35106 0.172919 1.42845 0.253125L5 3.93274L8.57155 0.253125C8.64894 0.172919 8.74102 0.109258 8.84247 0.0658139C8.94392 0.0223697 9.05274 2.26498e-06 9.16264 2.26498e-06C9.27255 2.26498e-06 9.38136 0.0223697 9.48282 0.0658139C9.58427 0.109258 9.67635 0.172919 9.75374 0.253125Z' fill='%23000000'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: calc(100% - 10px) center;
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
}
.facetwp-facet.facetwp-facet-color.facetwp-type-color {}
.facetwp-facet.facetwp-facet-color.facetwp-type-color .facetwp-color {
    border-radius: 50%;
}
/*END OF FACET*/

/* WPML language switcher in header/menu */
.wpml-ls {
    width: auto !important;
    min-width: 55px !important;
    margin-left: 0 !important;
}
.wpml-ls-legacy-dropdown {
    width: 55px !important;
}
.wpml-ls-legacy-dropdown a {
    height: 30px !important;
    line-height: 30px !important;
    padding: 0 24px 0 10px !important;
    font-size: 13px !important;
    background: transparent !important;
    color: #111 !important;
    border: none !IMPORTANT;
    border-bottom: none !IMPORTANT;
}
.wpml-ls-legacy-dropdown .wpml-ls-flag {
    width: 18px !important;
    height: auto !important;
    margin-right: 4px !important;
}
.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
    right: 8px !important;
    
}
ul#wpml-ls-submenu-default {
    border-top: none !IMPORTANT;
}
.is-scrolled .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
    color: oklch(var(--foreground-ch) / 0.75);
}
/* END OF WPML language switcher in header/menu */

#moove_gdpr_save_popup_settings_button:not(.gdpr-floating-button-custom-position) {
    bottom: 42px;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo-holder img {
    max-height: initial !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
    max-width: 100% !IMPORTANT;
}


.payment-icons {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  flex-wrap: wrap;
}

.payment-icons img {
  display: block;
  width: auto;
  object-fit: contain;
}

/* Visa Secure */
.payment-icons .visa-secure {
  height: 55px;
}

/* Mastercard Identity Check */
.payment-icons .id-check {
  height: 45px;
}

/* Visa */
.payment-icons .visa {
  height: 32px;
}

/* Mastercard */
.payment-icons .mastercard {
  height: 40px;
}

/* Maestro */
.payment-icons .maestro {
  height: 40px;
}

@media (max-width: 600px) {
  .payment-icons {
    gap: 12px;
  }

  .payment-icons .visa-secure {
    height: 45px;
  }

  .payment-icons .id-check {
    height: 38px;
  }

  .payment-icons .visa {
    height: 27px;
  }

  .payment-icons .mastercard,
  .payment-icons .maestro {
    height: 34px;
  }
}