@charset "UTF-8";

/* ============================================ */
/* ============== Include Styles ============== */
/* ============================================ */

@import '_font.css';
@import '_vars.css';
@import '_base.css';
@import '_editor.css';
@import '_menu.css';
@import '_actions.css';
@import '_cookies.css';

/* ============================================ */
/* =============== Theme Styles =============== */
/* ============================================ */

.banner__section {
    display: flex;
    align-items: center;
    position: relative;
    isolation: isolate;
    min-height: 700px;
    padding: var(--sp-v) var(--sp-h);
}
.banner__section .container {
    width: 100%;
}
.banner__section--content h1 {
    max-width: 1190px;
    font-size: var(--fs-xl);
    font-weight: 500;
    color: var(--cl-white);
    letter-spacing: 0.05pt;
    line-height: 1.2;
    margin-bottom: 1.5rem;
}
.banner__section--content p {
    max-width: 1120px;
    font-size: var(--fs-30);
    font-weight: 500;
    color: var(--cl-white);
    letter-spacing: 0.05pt;
    line-height: 1.45;
}
.banner__section--background {
    position: absolute;
    inset: 0;
    z-index: -1;
}
.banner__section--background:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    opacity: 0.79;
    mix-blend-mode: multiply;
    background: transparent linear-gradient(81deg, #373D3F 0%, #797D7E 100%) 0% 0% no-repeat padding-box;
}
.banner__section--background img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}
.banner__section--background .applications--swiper {
    position: absolute;
    inset: 0;
}
.applications--swiper .swiper-horizontal > .swiper-scrollbar, 
.applications--swiper .swiper-scrollbar.swiper-scrollbar-horizontal {
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    width: 100%;
}
.applications--swiper .swiper-scrollbar-drag {
    background: var(--cl-primary);
}

/*/*/

.title__section {
    display: flex;
    align-items: center;
    position: relative;
    padding: calc(var(--sp-v) / 2 ) var(--sp-h) calc(var(--sp-v) / 2 ) var(--sp-h);
    text-align: center;
    font-weight: 600;
    background-color: var(--cl-light);
}
.title__section .container {
    width: 100%;
}

/*/*/

.text__section {
    padding: var(--sp-v) var(--sp-h);
}
.text__section--gray {
    background-color: var(--cl-light);
}
.text__section--content {
    text-align: center;
}
.text__section--content h2 {
    margin-bottom: 1rem;
    font-size: var(--fs-38);
    font-weight: 700;
    letter-spacing: 1pt;
    text-transform: uppercase;
}
.text__section--content h3 {
    margin-bottom: 1.5rem;
    font-size: var(--fs-32);
    font-weight: 700;
    letter-spacing: 0.1pt;
    color: var(--cl-primary);
}
.text__section--content p {
    font-size: var(--fs-26);
}
.text__section--lists {
    padding: var(--sp-v) var(--sp-h) calc( var(--sp-v) * 0.5 );
}
.text__section--lists h2 {
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
}
.text__section--lists h3 {
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
}

/*/*/

.products__section {
    padding: var(--sp-v) var(--sp-h);
}
.products__section--content {
    text-align: center;
}
.products__section--content h2 {
    margin-bottom: 1rem;
    font-size: var(--fs-38);
    font-weight: 700;
    letter-spacing: 1pt;
    text-transform: uppercase;
}
.products__section--content h3 {
    margin-bottom: 1.5rem;
    font-size: var(--fs-32);
    font-weight: 700;
    letter-spacing: 0.1pt;
    color: var(--cl-primary);
}
.products__section--content p {
    font-size: var(--fs-26);
}
.products__section--carousel {
    padding: 2rem 0;
    margin-left: calc( -1 * var(--sp-h) );
    margin-right: calc( -1 * var(--sp-h) );
}
.carousel__product--images {
    display: grid;
    place-items: center;
    position: relative;
}
.carousel__product--images > div {
    grid-area: 1 / 1 / 2 / 2;
    width: 100%;
    height: auto;
    transition: all 200ms ease-in-out;
}
.carousel__product--images img {
    width: 100%;
    padding: 3rem;
}
.carousel__product--closed {
    opacity: 1;
    visibility: visible;
}
.carousel__product--opened {
    opacity: 0;
    visibility: hidden;
}
.products__section--carousel .swiper-slide-active .carousel__product--closed {
    opacity: 0;
    visibility: hidden;
}
.products__section--carousel .swiper-slide-active .carousel__product--opened {
    opacity: 1;
    visibility: visible;
}
.products__section--actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2rem;
}
.products__section--carousel .swiper-button-next, 
.products__section--carousel .swiper-button-prev {
    color: var(--cl-primary);
}

/*/*/

.features__section {
    padding: var(--sp-v) var(--sp-h);
    background-color: var(--cl-primary);
}
.features__section--content {
    text-align: center;
    margin-bottom: var(--sp-v);
}
.features__section--content h2 {
    margin-bottom: 1rem;
    font-size: var(--fs-38);
    font-weight: 700;
    letter-spacing: 1pt;
    text-transform: uppercase;
    color: var(--cl-white);
}
.features__section--content h3 {
    margin-bottom: 1.5rem;
    font-size: var(--fs-32);
    font-weight: 700;
    letter-spacing: 0.1pt;
    color: var(--cl-white);
}
.features__section--content p {
    font-size: var(--fs-26);
    color: var(--cl-white);
}
.features__section--gallery {
    display: flex;
    margin-bottom: 12rem;
}
.features__gallery--board {
    width: 65%;
    padding-right: 2rem;
    position: relative;
    margin-bottom: -5vw;
}
.features__gallery--list {
    width: 35%;
}
.features__gallery--list h2 {
    margin-bottom: 1rem;
    font-size: var(--fs-38);
    font-weight: 700;
    letter-spacing: 1pt;
    text-transform: uppercase;
    color: var(--cl-white);
}
.features__gallery--list li {
    margin-bottom: 1.5rem;
    font-size: var(--fs-30);
    font-weight: 400;
    letter-spacing: 0.1pt;
    color: var(--cl-white);
    line-height: 2;
}
.features__gallery--list li:not(:last-child) {
    margin-bottom: 0.5rem;
}
.features__gallery--list li span {
    cursor: pointer;
}
.features__gallery--list li.hovered span {
    font-weight: 700;
}
.features__gallery--list li span:hover {
    font-weight: 700;
}
.features__gallery--graphic {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: -7vw;
    margin-right: -3vw;
}
.features__gallery--pins {
    position: absolute;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    transform: translate(-2vw, 0);
}
.features__gallery--pin {
    position: absolute;
    height: max(2.5rem, 2vw);
    width: max(2.5rem, 2vw);
}
.features__gallery--pin span {
    position: absolute;
    height: min(2.5rem, 2vw);
    width: min(2.5rem, 2vw);
    cursor: pointer;
    transition: scale 150ms ease-in-out;
}
.features__gallery--pin span svg {
    fill: var(--cl-white);
    height: 100%;
    width: 100%;
    pointer-events: none;
}
.features__gallery--pin span:hover,
.features__gallery--pin.hovered span {
    scale: 1.5;
}
.features__gallery--pin div {
    position: absolute;
    opacity: 0;
    visibility: hidden;
    height: max(2.5rem, 2vw);
    width: max(2.5rem, 2vw);
    aspect-ratio: 1;
    max-width: unset;
    z-index: 1;
    border-radius: var(--br-50);
    border: max(min(0.55vw, 0.66rem), 0.25rem) solid var(--cl-white);
}
.features__gallery--pin:hover div,
.features__gallery--pin.hovered div {
    opacity: 1;
    visibility: visible;
    height: min(22rem, 18.5vw);
    width: min(22rem, 18.5vw);
}
.features__gallery--pin[data-pos="right"] div {
    top: 50%;
    left: 0;
    translate: 0 -50%;
    transition: 
        opacity 300ms ease-in-out 150ms, 
        visibility 300ms ease-in-out 150ms, 
        height 300ms ease-in-out 0ms, 
        width 300ms ease-in-out 0ms, 
        left 300ms ease-in-out 0ms;
}
.features__gallery--pin[data-pos="top"] div {
    bottom: 0;
    left: 50%;
    translate: -50% 0;
    transition: 
        opacity 300ms ease-in-out 150ms, 
        visibility 300ms ease-in-out 150ms, 
        height 300ms ease-in-out 0ms, 
        width 300ms ease-in-out 0ms, 
        bottom 300ms ease-in-out 0ms;
}
.features__gallery--pin[data-pos="right"]:hover div,
.features__gallery--pin[data-pos="right"].hovered div {
    left: min(5vw, 6rem);
}
.features__gallery--pin[data-pos="top"]:hover div,
.features__gallery--pin[data-pos="top"].hovered div {
    bottom: min(5vw, 6rem);
}
.features__gallery--pin label {
    opacity: 0;
    visibility: hidden;
    font-weight: 700;
    font-size: var(--fs-body-l);
    color: var(--cl-white);
    text-align: center;
    translate: -50% 0;
    width: max(15rem, 9vw);
    z-index: 1;
    line-height: 1.2;
    position: absolute;
}
.features__gallery--pin:hover label,
.features__gallery--pin.hovered label {
    opacity: 1;
    visibility: visible;
    transition: all 300ms ease-in-out;
    transition-delay: 300ms;
    bottom: min(2.5vw, 3rem);
    left: 50%;
}
.features__gallery--pin[data-pos="top"] span:after {
    content: "";
    width: 3px;
    height: 0;
    background-color: var(--cl-white);
    position: absolute;
    left: 50%;
    translate: -50% 0;
    bottom: 50%;
}
.features__gallery--pin[data-pos="top"]:hover span:after,
.features__gallery--pin[data-pos="top"].hovered span:after {
    height: min(5vw, 6rem);
    transition: height 150ms ease-in-out;
    transition-delay: 300ms;
}
.features__gallery--pin[data-pos="right"] span:after {
    content: "";
    height: 3px;
    width: 0;
    background-color: var(--cl-white);
    position: absolute;
    left: 50%;
    top: 50%;
    translate: 0 -50%;
}
.features__gallery--pin[data-pos="right"]:hover span:after,
.features__gallery--pin[data-pos="right"].hovered span:after {
    width: min(5vw, 6rem);
    transition: width 150ms ease-in-out;
    transition-delay: 300ms;
}

/*/*/

.quote__section {
    padding: calc(var(--sp-v) * 0.7) var(--sp-h);
    color:var(--cl-primary);
}
.quote__section--content {
    text-align: center;
}
.quote__section--content p.quote__section--quote {
    margin-bottom: 3rem;
    font-size: var(--fs-36);
    font-weight: 400;
    font-style: italic;
    line-height: 1.33;
}
.quote__section--content p:not(.quote__section--quote) {
    font-size: var(--fs-20);
    letter-spacing: 1pt;
    text-transform: uppercase;
    font-weight: 500;
}
.quote__section--content p:not(.quote__section--quote):has( .quote__section--occupation ) .quote__section--author:after {
    content: ",";
    margin-left: -3pt;
}
.quote__section--primary {
    background-color: var(--cl-primary);
    color: var(--cl-white);
}

/*/*/

.lists__section {
    padding: 0 var(--sp-h) var(--sp-v) var(--sp-h);
}
.lists__section--content h3 {
    font-size: var(--fs-26);
    text-transform: uppercase;
    letter-spacing: 1pt;
    color:var(--cl-primary);
    margin-bottom: 2.25rem;
    font-weight: 700;
}
.lists__section--content ul {
    display: grid;
    grid-template-columns: repeat(4, auto);
    gap: 2rem;
}
.lists__section--content ul li {
    display: flex;
    gap: 1rem;
    align-items: center;
    font-size: var(--fs-30);
    color: var(--cl-primary);
}
.lists__section--content ul li:not(:has(img)) {
    padding-left: 2.25rem;
    position: relative;
}
.lists__section--content ul li:not(:has(img)):before {
    content: "";
    height: 0.66rem;
    width: 0.66rem;
    background-color:var(--cl-primary);
    position: absolute;
    left: 0;
    top: 1.25rem;
    border-radius: var(--br-50);
}
.lists__section--content hr {
    margin-top: 4rem;
    margin-bottom: 4rem;
    border-bottom: 2px solid var(--cl-primary);
}
.lists__section--actions {
    padding-top: calc(0.75 * var(--sp-v));
    display: flex;
    align-items: center;
    justify-content: center;
}

/*/*/

.gallery__section--content ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}
.gallery__section--content ul li img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

/*/*/

.page__content--section {
    padding: var(--sp-v) var(--sp-h);
}

/*/*/

.code__contact--wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.code__contact--wrapper .custom-logo-link {
    display: block;
    margin-bottom: 1.25rem;
    max-width: 265px;
}
.code__contact--wrapper .code__contact--address {
    font-size: var(--fs-26);
    text-align: center;
    max-width: 300px;
}
.code__contact--wrapper .code__contact--phone {
    font-size: var(--fs-26);
    text-align: center;
    max-width: 300px;
    font-weight: 600;
}
.code__contact--wrapper .code__contact--email {
    font-size: var(--fs-26);
    text-align: center;
    max-width: 300px;
    font-weight: 600;
}

/* ============================================ */
/* =============== WooCommerce ================ */
/* ============================================ */

.woocommerce-products-header {
    padding: calc(var(--sp-v) * 1.25) var(--sp-h) calc(var(--sp-v) / 2 ) var(--sp-h);
}
.woocommerce-products-header h2 {
    margin-bottom: 1rem;
    font-size: var(--fs-38);
    font-weight: 700;
    letter-spacing: 1pt;
    text-transform: uppercase;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
.woocommerce-products-header p.has-medium-font-size {
    font-size: var(--fs-26);
}
.woocommerce-products-header + .woocommerce-notices-wrapper {
    padding: 0 var(--sp-h);
    padding-top: 0;
}
.woocommerce-products-header + .woocommerce-notices-wrapper > .woocommerce-message{
	max-width: var(--w-cont-m);
	margin: 0 auto;
}
.products__loop--section {
    padding: calc(var(--sp-v) / 2 ) var(--sp-h) 0 var(--sp-h);
}
.products__loop--section .products.columns-3:before {
    display: none;
}
.products__loop--section .products.columns-3:after {
    display: none;
}
.products__loop--section .products.columns-3 {
    display: flex;
    gap: 5rem;
    flex-wrap: wrap;
}
.products__loop--section .products.columns-3 .product {
    width: calc( ( 100% - 5rem * 2 ) / 3 ) !important;
    margin: 0;
}
.products__loop--section .products.columns-3 .product a {
    display: flex;
    flex-direction: column;
}
.products__loop--section .products.columns-3 .product a img {
    padding: 4rem;
    background-color: var(--cl-light);
    margin-bottom: 1.25rem;
}
.products__loop--section .products.columns-3 .product a h2 {
    font-size: var(--fs-32);
    font-weight: 600;
    line-height: 1.25;
    color: var(--cl-primary);
    margin-bottom: 0;
    padding: 0;
}
.products__loop--section .products.columns-3 .product .woocommerce-product-details__short-description p {
    font-size: var(--fs-22);
    font-weight: 500;
    margin-bottom: 0;
    line-height: 1.5;
}
.products__actions--section {
    padding: var(--sp-v) var(--sp-h);
}
.products__actions--content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2rem;
}

/*/*/

.single__product--section {
    padding: calc(var(--sp-v) * 0.625) var(--sp-h) var(--sp-v) var(--sp-h);
}
.single__product--section .container {
    display: grid;
    grid-template-columns: [col1-start] 560px  [col2-start] 1fr  [col2-end];
    grid-template-rows: [row1-start] auto [row2-start] auto [row2-end];
    gap: 4.5rem 4.5rem;
}
.single__product--gallery {
    grid-column: col1-start / col2-start;
    grid-row: row1-start ;
    position: relative;
    isolation: isolate;
}
.product--swiper {
    background-color: var(--cl-light);
    margin-bottom: 2rem;
}
.product--swiper .swiper-slide {
    width: 100% !important;
}
.product--swiper .swiper-slide .swiper-zoom-container {
    padding: 4.5rem;
}
.product--pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    bottom: 2rem !important;
    position: static !important;
}
.product--pagination span {
    height: 1.125rem;
    width: 1.125rem;
    background-color: var(--cl-white);
    border: 1px solid #dbdcdd;
    opacity: 1;
    margin: 0;
    border-radius: 50%;
}
.product--pagination .swiper-pagination-bullet-active {
    background-color: var(--cl-primary);
    border-color: var(--cl-primary);
}

/*/*/

.slide__zoom {
    height: 2rem;
    width: 2rem;
    border: 2px solid var(--cl-gray);
    border-radius: 50%;
    position: absolute;
    z-index: 1;
    bottom: 2rem;
    right: 2rem;
    cursor: pointer;
}
.slide__zoom:before {
    content: "";
    width: 1rem;
    height: 0.125rem;
    position: absolute;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    background-color:var(--cl-gray);
}
.slide__zoom:after {
    content: "";
    height: 1rem;
    width: 0.125rem;
    position: absolute;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    background-color:var(--cl-gray);
}
.slide__zoom:hover {
    border-color: var(--cl-primary);
}
.slide__zoom:hover:before {
    background-color:var(--cl-primary);
}
.slide__zoom:hover:after {
    background-color:var(--cl-primary);
}
.slide__zoom--out:after {
    display: none;
}

/*/*/

.single__product--section .entry-summary {
    grid-column: col2-start ;
    grid-row: row1-start / row2-end;
    float: none !important;
    width: 100% !important;
}
.single__product--description {
    margin-top: 3rem;
    max-width: 600px;
}
.single__product--description h2 {
    font-size: var(--fs-body-m);
    text-transform: uppercase;
    letter-spacing: 1pt;
    font-weight: 700;
    margin-bottom: 0.5rem;
}
.single__product--description p {
    margin-bottom: 0.25rem;
    line-height: 1.5;
}
.single__product--description ul,
.single__product--description ol {
    list-style: none;
    padding: 0;
    margin: 0;
    margin-bottom: 0.25rem;
}
.single__product--description ol {
    counter-reset: numbers-counter;
}
.single__product--description li {
    margin-top: 0;
    margin-bottom: 0.25rem;
}
.single__product--description li:last-child {
    margin-bottom: 0;
}
.single__product--description ol li {
    counter-increment: numbers-counter;
    padding-left: 2rem;
    position: relative;
}
.single__product--description ol li:before {
    content: counter(numbers-counter) '. ';
    position: absolute;
    right: calc(100% - 1.5rem);
    font-size: var(--fs-body-m);
    color: var(--cl-primary);
    font-weight: 700;
    line-height: 1.5;
}
.single__product--description ul li {
    padding-left: 2rem;
    position: relative;
}
.single__product--description ul li:before {
    content: "";
    height: 0.5rem;
    width: 0.5rem;
    border-radius: 50%;
    background-color: var(--cl-primary);
    position: absolute;
    top: 0.625rem;
    right: calc(100% - 1.5rem);
}
.single__product--specifications {
    margin-top: 3rem;
    padding-top: 2.5rem;
    border-top: 1px solid var(--cl-gray);
}
.single__product--specifications h2 {
    font-size: var(--fs-body-m);
    text-transform: uppercase;
    letter-spacing: 1pt;
    font-weight: 700;
    margin-bottom: 1rem;
}

/*/*/

.single__product--pricing {
    grid-column: col1-start;
    grid-row: row2-start ;
}
.single__product--pricing h2 {
    font-size: var(--fs-body-m);
    text-transform: uppercase;
    letter-spacing: 1pt;
    font-weight: 700;
    margin-bottom: 1rem;
}
.product__pricing--row {
    padding-top: 1rem;
    border-top: 1px solid var(--cl-gray);
    padding-bottom: 1rem;
    display: flex;
}
.product__pricing--column {
    flex: 1;
}
.product__pricing--column label {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1pt;
    font-size: var(--fs-body-s);
}
.product__pricing--column p {
    line-height: 1.5;
    margin-bottom: 0;
}
.product__pricing--footer {
    padding-top: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--cl-gray);
}
.product__pricing--footer p {
    letter-spacing: 1pt;
    text-transform: uppercase;
    font-weight: 600;
    max-width: 500px;
    line-height: 1.25;
}
.product__pricing--footer p a {
    color: var(--cl-primary);
}

/*/*/

.single__product--section .entry-summary .product_title {
    color: var(--cl-primary);
    font-size: var(--fs-42);
    line-height: 1;
    font-weight: 600;
    margin-bottom: 0.25rem;
}
.single__product--section .entry-summary .product_meta {
    font-size: var(--fs-body-xs);
    opacity: 0.5;
    margin-bottom: 1rem;
}
.single__product--section .entry-summary > .price {
    display: none;
}
.single__product--section .entry-summary .variations_form .woocommerce-variation-add-to-cart {
    display: flex;
    gap: 2rem;
}
.single__product--section .entry-summary .variations_form .quantity input {
    background-color: var(--cl-light);
    padding: 0.5rem;
    min-width: 3.5rem;
    font-size: var(--fs-20);
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: textfield;
}
.single__product--section .entry-summary .variations_form .single_add_to_cart_button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-l);
    font-weight: 600;
    text-align: center;
    color: var(--cl-white);
    padding: 0.5rem 2rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-primary);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
}
.single__product--section .entry-summary .variations_form .single_add_to_cart_button.disabled {
    background-color: var(--cl-primary);
}
.single__product--section .entry-summary .variations_form .single_add_to_cart_button:hover {
    background-color: var(--cl-white);
    color: var(--cl-primary);
}
.single__product--section .entry-summary .variations_form .single_add_to_cart_button.disabled:hover {
    background-color: var(--cl-primary);
}
.single__product--section .entry-summary .woocommerce-variation-price {
    font-size: var(--fs-64);
    color: var(--cl-text);
    line-height: 1.25;
    padding-bottom: 0.25rem;
}
.single__product--section .entry-summary .woocommerce-variation-price .price {
    font-size: unset;
    color: var(--cl-text);
}
.single__product--section .entry-summary .woocommerce-variation-price .price sup {
    font-size: 0.5em;
    vertical-align: super;
}
.single__product--section .entry-summary .single_variation_wrap {
    margin-bottom: 2rem;
}
.single__product--section .entry-summary .single_variation {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 0 1rem;
    margin-bottom: 2rem;
}
.single__product--section .entry-summary .woocommerce-variation-description {
    width: 100%;
}
.single__product--section .entry-summary .woocommerce-variation-availability {
    translate: 0 -0.25rem;
    color: var(--cl-gray);
}
.single__product--section .entry-summary .woocommerce-variation-availability .stock {
    color: var(--cl-gray);
}
.single__product--section .entry-summary .variations .label {
    display: none;
}

/*/*/

.single-product .woocommerce-notices-wrapper {
    max-width: calc( var(--w-cont-m) + 2 * var(--sp-h) );
    margin: 0 auto;
    padding: calc(var(--sp-v) * 0.625) var(--sp-h) 0 var(--sp-h);
}
.woocommerce-notices-wrapper .button {
    font-family: var(--ff-primary) !important;
    font-size: var(--fs-body-xs) !important;
    font-weight: 600 !important;
    text-align: center;
    color: var(--cl-primary) !important;
    padding: 0.5rem 1rem !important;
    border: 2px solid var(--cl-primary) !important;
    transition: all 200ms ease-in-out !important;
    background-color: var(--cl-white) !important;
    text-transform: uppercase !important;
    line-height: 1.3 !important;
    letter-spacing: 1pt;
    border-radius: var(--br-xl) !important;
    margin-left: auto !important;
}
.woocommerce-notices-wrapper .woocommerce-error, 
.woocommerce-notices-wrapper .woocommerce-info, 
.woocommerce-notices-wrapper .woocommerce-message {
    border-top: none;
    border-radius: 6rem;
    margin-bottom: 0;
    padding: 1em 1em 1em 3.5em;
    display: flex;
    justify-content: left;
    align-items: center;
    /*flex-direction: row-reverse;*/
    font-size: var(--fs-body-s);
    font-weight: 400;
}
.woocommerce-notices-wrapper .woocommerce-error::before, 
.woocommerce-notices-wrapper .woocommerce-info::before, 
.woocommerce-notices-wrapper .woocommerce-message::before {
    /*line-height: 2.5em;*/
	top: 1.33rem;
}
.woocommerce-notices-wrapper .woocommerce-message::before {
    color: var(--cl-primary);
}
.woocommerce-notices-wrapper .woocommerce-message::before {
    color: var(--cl-primary);
}
.woocommerce-notices-wrapper .woocommerce-message::before {
    color: var(--cl-primary);
}

/*/*/

.wcboost-variation-swatches__item {
    padding: 0.5rem 1rem;
}
.wcboost-variation-swatches__item.disabled {
    display: none;
}
.wcboost-variation-swatches__name {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
.wcboost-variation-swatches__name span:first-child {
    font-size: 12px;
    text-transform: uppercase;
    line-height: 1;
}
.wcboost-variation-swatches__name span:last-child {
    font-size: var(--fs-body-s);
    line-height: 1;
}

/*/*/

.woocommerce div.product form.cart .reset_variations {
    display: none !important;
}

/*/*/

.woocommerce-variation-add-to-cart {
    display: flex;
}
.woocommerce-variation-add-to-cart * {
    float: none;
}

/*/*/

.product__actions--section {
    padding: 0 var(--sp-h) var(--sp-v) var(--sp-h);
}

/*/*/

.page-template-page-commerce .page__content--section {
    padding-top: calc(var(--sp-v) / 2);
}
/*/*/
.page-template-page-commerce .page__content--section:has(.wp-block-woocommerce-cart-line-items-block) .wc-block-components-notices {
    margin-bottom: calc(var(--sp-v) / 2);
}
/*/*/
.page-template-page-commerce .page__content--section .wp-block-woocommerce-filled-cart-block {
    margin-bottom: 0;
}
.page-template-page-commerce .page__content--section .wp-block-woocommerce-filled-cart-block table {
    margin-bottom: 0;
}
/*/*/
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__image {
    padding-left: 0;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__image a {
    display: inline-block;
    margin-bottom: 0;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__image a img {
    padding: 1rem;
    background-color: var(--cl-light);
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 0.5rem;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-components-product-name {
    font-size: var(--fs-22);
    color: var(--cl-primary);
    font-weight: 600;
    width: 100%;
    max-width: unset;
    margin-bottom: 0;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__prices {
    font-size: var(--fs-body-s);
    margin-bottom: 0;
    display: flex;
    line-height: 1.5rem;
    align-items: center;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__prices:has( .is-discounted ) .wc-block-components-product-price__regular {
    text-decoration: line-through;
    font-weight: 500;
    color: var(--cl-text);
    opacity: 0.5;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__prices .wc-block-components-product-price__value {
    font-weight: 500;
    color: var(--cl-text);
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-components-sale-badge {
    margin-bottom: 0;
    font-size: 12px;
    line-height: 1.75;
    background-color: var(--cl-light);
    border-color: var(--cl-gray);
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-components-product-metadata {
    width: 100%;
    margin-bottom: 0;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-components-product-details {
    margin-top: 0.25rem;
    margin-bottom: 0.5rem;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-components-product-details li {
    padding-left: 0;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-components-product-details li:before {
    display: none;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-components-product-details__name {
    font-weight: 400;
    color: var(--cl-text);
    font-size: var(--fs-body-xs);
    opacity: 0.5;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-components-product-details__value {
    font-weight: 500;
    color: var(--cl-text);
    font-size: var(--fs-body-xs);
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__quantity {
    padding-top: 0.5rem;
    border-top: 1px solid var(--cl-light);
    width: 100%;
    display: flex;
    align-items: center;
    gap: 1rem;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-components-quantity-selector {
    margin-bottom: 0;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__remove-link {
    text-decoration: none !important;
    opacity: 0.5;
    transition: all 150ms ease-in-out;
}
.page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__remove-link:hover {
    opacity: 1;
}

/*/*/
.wp-block-woocommerce-cart-totals-block .wc-block-cart__submit {
    margin-bottom: 0;
    margin-top: 2rem;
}
.wp-block-woocommerce-cart-totals-block .wc-block-cart__submit .wc-block-components-button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-l);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: calc(1rem - 2px) 2.25rem 1rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    border-radius: var(--br-xl);
    width: 100%;
}
.wp-block-woocommerce-cart-totals-block .wc-block-cart__submit .wc-block-components-button:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}

/*/*/
.woocommerce-notices-wrapper {
    margin-bottom: calc(var(--sp-v) / 2);
}
.woocommerce-account .woocommerce-notices-wrapper .woocommerce-error::before,
.woocommerce-account .woocommerce-notices-wrapper .woocommerce-info::before,
.woocommerce-account .woocommerce-notices-wrapper .woocommerce-message::before {
    line-height: 1.5rem;
}

/*/*/


.woocommerce-form-login {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    max-width: 720px;
}
.woocommerce-form-login .woocommerce-form-row {
    margin-bottom: 1rem;
    display: flex;
    flex-direction: column;
}
.woocommerce-form-login .woocommerce-form-row label {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.1pt;
    line-height: 1.25;
    margin-bottom: 0.5rem;
}
.woocommerce-form-login .woocommerce-form-row input {
    font-size: var(--fs-body-m);
    font-weight: 500;
    letter-spacing: 0.1pt;
    background-color: var(--cl-light);
    padding: 1.125rem 1.75rem;
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row) {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row):before {
    display: none;
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row):after {
    display: none;
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row) > .woocommerce-button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-l);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: calc(1rem - 2px) 2.25rem 1rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    border-radius: var(--br-xl);
    margin-right: 0;
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row) > .woocommerce-button:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row) > .woocommerce-button:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-gray);
    outline-width: 2px;
    outline-offset: 1px;
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row) {
    margin-bottom: 1rem;
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row) > .woocommerce-form-login__rememberme {
    padding-left: 2rem;
    position: relative;
    line-height: 2rem;
    cursor: pointer;
    font-weight: 500;
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row) > .woocommerce-form-login__rememberme:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.4rem;
    height: 1.25rem;
    width: 1.25rem;
    border: 2px solid var(--cl-light);
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row) > .woocommerce-form-login__rememberme:after {
    content: "";
    position: absolute;
    left: 0.4rem;
    top: 0.4rem;
    height: 0.75rem;
    width: 1.25rem;
    border-left: 2px solid var(--cl-primary);
    border-bottom: 2px solid var(--cl-primary);
    rotate: -45deg;
    opacity: 0;
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row) > .woocommerce-form-login__rememberme:hover:before {
    background-color: var(--cl-light);
}
.woocommerce-form-login .form-row:not(.woocommerce-form-row) > .woocommerce-form-login__rememberme:has(input:checked):after {
    opacity: 1;
}
.woocommerce-form-login .woocommerce-LostPassword {
    text-align: center;
    order: 2;
    margin-bottom: 0.5rem;
    margin-top: -0.5rem;
}
.woocommerce-form-login .woocommerce-LostPassword a {
    transition: all 200ms ease-in-out;
    font-weight: 500;
}
.woocommerce-form-login .woocommerce-LostPassword a:hover {
    color: var(--cl-primary);
}
.woocommerce form .show-password-input, 
.woocommerce-page form .show-password-input {
    padding-top: 0.125rem;
}

.woocommerce-form-register {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    max-width: 720px;
}
.woocommerce-form-register .woocommerce-form-row {
    margin-bottom: 1rem;
    display: flex;
    flex-direction: column;
}
.woocommerce-form-register .woocommerce-form-row label {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.1pt;
    line-height: 1.25;
    margin-bottom: 0.5rem;
}
.woocommerce-form-register .woocommerce-form-row input {
    font-size: var(--fs-body-m);
    font-weight: 500;
    letter-spacing: 0.1pt;
    background-color: var(--cl-light);
    padding: 1.125rem 1.75rem;
}

.woocommerce-form-register .woocommerce-privacy-policy-text p {
    font-size: var(--fs-body-s);
}
.woocommerce-form-register .woocommerce-privacy-policy-text p:before {
    content: "* ";
}
.woocommerce-form-register .woocommerce-privacy-policy-text p a {
    text-decoration: underline;
    font-weight: 500;
}
.woocommerce-form-register .woocommerce-privacy-policy-text p a:hover {
    color: var(--cl-primary)
}

.woocommerce-form-register .form-row:not(.woocommerce-form-row) {
    margin-top: 1rem;
    display: flex;
}
.woocommerce-form-register .form-row:not(.woocommerce-form-row) > .button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-l);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: calc(1rem - 2px) 2.25rem 1rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    border-radius: var(--br-xl);
    margin-right: auto;
    margin-left: auto;
    min-width: 275px;
}
.woocommerce-form-register .form-row:not(.woocommerce-form-row) > .button:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.woocommerce-form-register .form-row:not(.woocommerce-form-row) > .button:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-gray);
    outline-width: 2px;
    outline-offset: 1px;
}

.lost_reset_password {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    max-width: 720px;
}
.lost_reset_password .woocommerce-form-row {
    margin-bottom: 2rem !important;
    display: flex;
    flex-direction: column;
    width: 100% !important;
    float: none !important;
}
.lost_reset_password .woocommerce-form-row label {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.1pt;
    line-height: 1.25;
    margin-bottom: 0.5rem;
}
.lost_reset_password .woocommerce-form-row input {
    font-size: var(--fs-body-m);
    font-weight: 500;
    letter-spacing: 0.1pt;
    background-color: var(--cl-light);
    padding: 1.125rem 1.75rem;
}
.lost_reset_password .woocommerce-form-row > .button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-l);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: calc(1rem - 2px) 2.25rem 1rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    border-radius: var(--br-xl);
    margin-right: auto;
    margin-left: auto;
    min-width: 275px;
}
.lost_reset_password .woocommerce-form-row > .button:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.lost_reset_password .woocommerce-form-row > .button:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-gray);
    outline-width: 2px;
    outline-offset: 1px;
}

.woocommerce-MyAccount-navigation {
    padding-top: calc(var(--sp-v) / 2);
    position: sticky;
    top: 100px;
}
.woocommerce-MyAccount-navigation li:not(:last-child) {
    margin-bottom: 1rem;
}
.woocommerce-MyAccount-navigation li a {
    font-size: var(--fs-body-m);
    letter-spacing: 1.25pt;
    text-transform: uppercase;
    font-weight: 600;
}
.woocommerce-MyAccount-navigation li a:hover {
    text-decoration: underline;
}
.woocommerce-MyAccount-navigation li.is-active a {
    color: var(--cl-primary);
}

.woocommerce-EditAccountForm .woocommerce-form-row {
    margin-bottom: 1rem !important;
    display: flex;
    flex-direction: column;
}
.woocommerce-EditAccountForm .woocommerce-form-row label {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.1pt;
    line-height: 1.25 !important;
    margin-bottom: 0.5rem;
}
.woocommerce-EditAccountForm .woocommerce-form-row input {
    font-size: var(--fs-body-m);
    font-weight: 500;
    letter-spacing: 0.1pt;
    background-color: var(--cl-light);
    padding: 1.125rem 1.75rem;
}
.woocommerce-EditAccountForm .woocommerce-form-row input + span:not(.show-password-input) {
    font-size: var(--fs-body-xs);
}
.woocommerce-EditAccountForm .woocommerce-form-row input + span:not(.show-password-input):before {
    content: "* ";
}
.woocommerce-EditAccountForm fieldset legend {
    width: 100%;
    margin-top: 2rem;
    margin-bottom: 1rem;
    font-size: var(--fs-body-m);
    letter-spacing: 1.25pt;
    text-transform: uppercase;
    font-weight: 600;
}

.woocommerce-EditAccountForm p:not(.woocommerce-form-row) {
    margin-top: 1rem;
    display: flex;
}
.woocommerce-EditAccountForm p:not(.woocommerce-form-row) > .button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-l);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: calc(1rem - 2px) 2.25rem 1rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    border-radius: var(--br-xl);
    margin-right: 0;
    margin-left: auto;
    min-width: 275px;
}
.woocommerce-EditAccountForm p:not(.woocommerce-form-row) > .button:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.woocommerce-EditAccountForm p:not(.woocommerce-form-row) > .button:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-gray);
    outline-width: 2px;
    outline-offset: 1px;
}


.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders {
    border: none;
    border-radius: 0;
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders thead {
    background-color: var(--cl-light);
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__header-order-actions {
    text-align: right;
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__header {
    padding: 1rem 0.5rem;
    font-weight: 700;
    line-height: 1.5em;
    font-size: var(--fs-body-xs);
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__cell {
    padding: 1rem 0.5rem;
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions {
    display: flex;
    flex-direction: row-reverse;
    gap: 1rem;
}

.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions > .button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-xs);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: 0.5rem 0.75rem 0.5rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    border-radius: var(--br-xl);
    min-width: 3.75rem;
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions > .button:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions > .button:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-gray);
    outline-width: 2px;
    outline-offset: 1px;
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions > .button.order-again {
    border-color: var(--cl-light);
    color: var(--cl-gray);
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions > .button.order-again:hover {
    background-color: var(--cl-light);
}

.woocommerce .woocommerce-MyAccount-content .dashboard-orders-label {
    width: 100%;
    margin-top: 0;
    font-size: var(--fs-body-m);
    letter-spacing: 1.25pt;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 1rem;
    margin-top: 3rem;
}
.woocommerce .woocommerce-MyAccount-content .my_account_orders {
    border: none;
    border-radius: 0;
}
.woocommerce .woocommerce-MyAccount-content .my_account_orders thead {
    background-color: var(--cl-light);
}
.woocommerce .woocommerce-MyAccount-content .my_account_orders .order-actions {
    text-align: right;
}
.woocommerce .woocommerce-MyAccount-content .my_account_orders th {
    padding: 1rem 0.5rem;
    font-weight: 700;
    line-height: 1.5em;
    font-size: var(--fs-body-xs);
}
.woocommerce .woocommerce-MyAccount-content .my_account_orders .order td {
    padding: 1rem 0.5rem;
}
.woocommerce .woocommerce-MyAccount-content .my_account_orders .order .order-actions {
    display: flex;
    flex-direction: row-reverse;
    gap: 1rem;
}

.woocommerce .woocommerce-MyAccount-content .my_account_orders .order .order-actions > .button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-xs);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: 0.5rem 0.75rem 0.5rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    border-radius: var(--br-xl);
    min-width: 3.75rem;
}
.woocommerce .woocommerce-MyAccount-content .my_account_orders .order .order-actions > .button:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.woocommerce .woocommerce-MyAccount-content .my_account_orders .order .order-actions > .button:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-gray);
    outline-width: 2px;
    outline-offset: 1px;
}
.woocommerce .woocommerce-MyAccount-content .my_account_orders .order .order-actions > .button.order-again {
    border-color: var(--cl-light);
    color: var(--cl-gray);
}
.woocommerce .woocommerce-MyAccount-content .my_account_orders .order .order-actions > .button.order-again:hover {
    background-color: var(--cl-light);
}


.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table--order-details {
    border: none;
    border-radius: 0;
    margin-bottom: 3rem;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table--order-details thead {
    background-color: var(--cl-light);
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table--order-details thead th {
    padding: 1rem 0.5rem;
    padding: 1rem 0.5rem;
    font-weight: 700;
    line-height: 1.5em;
    font-size: var(--fs-body-xs);
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table--order-details thead .product-total {
    text-align: right;
}
.woocommerce-MyAccount-content .woocommerce-order-details h2 {
    width: 100%;
    margin-top: 2rem;
    margin-bottom: 1rem;
    font-size: var(--fs-body-m);
    letter-spacing: 1.25pt;
    text-transform: uppercase;
    font-weight: 600;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__product-total {
    text-align: right;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item td {
    padding: 1rem;
    border-color: var(--cl-light);
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item td:first-child {
    padding-left: 0;
    width: 6rem;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item td:last-child {
    padding-right: 0.5rem;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item td img {
    background-color: var(--cl-light);
    padding: 0.5rem;
    width: 5rem;
}

.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item .woocommerce-table__product-name ul {
    width: 100%;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item .woocommerce-table__product-name .product-quantity {
    width: 2.5rem;
    text-align: left;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item .woocommerce-table__product-name a {
    color: var(--cl-primary);
    width: calc(100% - 2.5rem);
    padding-right: 1rem;
    font-weight: 600;
    font-size: var(--fs-body-m);
    display: inline-block;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item .woocommerce-table__product-total {
    width: 10rem;
    font-size: var(--fs-body-m);
    font-weight: 700;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item .woocommerce-table__product-name .wc-item-meta li {
    display: flex;
    align-items: center;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item .woocommerce-table__product-name .wc-item-meta p {
    font-weight: 500;
    color: var(--cl-text);
    font-size: var(--fs-body-xs);
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item .woocommerce-table__product-name .wc-item-meta strong {
    font-weight: 400;
    color: var(--cl-text);
    font-size: var(--fs-body-xs);
    opacity: 0.5;
}
.woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table--order-details tfoot td {
    background-color: var(--cl-light);
    text-align: right;
    padding-right: 0.5rem;
}

.woocommerce-MyAccount-content .woocommerce-order-details .order-again {
    margin-bottom: 3rem;
    display: flex;
    justify-content: center;
}
.woocommerce-MyAccount-content .woocommerce-order-details .order-again .button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-l);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: calc(1rem - 2px) 2.25rem 1rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    border-radius: var(--br-xl);
    margin-right: auto;
    margin-left: auto;
    min-width: 275px;
}
.woocommerce-MyAccount-content .woocommerce-order-details .order-again .button:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.woocommerce-MyAccount-content .woocommerce-order-details .order-again .button:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-gray);
    outline-width: 2px;
    outline-offset: 1px;
}

.woocommerce-customer-details .addresses {
    display: flex;
    flex-direction: column;
}
.woocommerce-customer-details .addresses .woocommerce-column {
    float: none;
    width: 100%;
    margin-bottom: 2rem;
}
.woocommerce-customer-details .addresses .woocommerce-column h2 {
    width: 100%;
    margin-top: 0;
    margin-bottom: 1rem;
    font-size: var(--fs-body-m);
    letter-spacing: 1.25pt;
    text-transform: uppercase;
    font-weight: 600;
}
.woocommerce-customer-details .addresses .woocommerce-column address {
    border-radius: 0;
    border: 1px solid var(--cl-light);
}
.woocommerce-customer-details .addresses .woocommerce-column address p {
    margin-bottom: 0;
}
.woocommerce-customer-details .addresses .woocommerce-column .woocommerce-customer-details--phone {
    margin-top: 0.5rem;
}

.woocommerce-Addresses {
    display: flex;
    flex-direction: column;
}
.woocommerce-Address {
    width: 100% !important;
    float: none !important;
    margin-bottom: 3rem;
}
.woocommerce-Address header {
    display: flex;
    margin-bottom: 1rem;
    align-items: center;
}
.woocommerce-Address header .edit {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-xs);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: 0.5rem 0.75rem 0.5rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    border-radius: var(--br-xl);
    min-width: 3.75rem;
    margin-right: 0.5rem;
	margin-left: auto;
}
.woocommerce-Address header .edit:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.woocommerce-Address header .edit:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-gray);
    outline-width: 2px;
    outline-offset: 1px;
}
.woocommerce-Addresses h3 {
    width: 100%;
    margin-top: 0;
    
    font-size: var(--fs-body-m);
    letter-spacing: 1.25pt;
    text-transform: uppercase;
    font-weight: 600;
}
.woocommerce-Address address {
    border-radius: 0;
    border: 1px solid var(--cl-light);
    padding: 1rem;
}

.woocommerce-MyAccount-content > form:has( > .woocommerce-address-fields) > h3 {
    width: 100%;
    margin-top: 0;
    margin-bottom: 1rem;
    font-size: var(--fs-body-m);
    letter-spacing: 1.25pt;
    text-transform: uppercase;
    font-weight: 600;
}
.woocommerce-MyAccount-content > form > .woocommerce-address-fields .form-row {
    margin-bottom: 1rem !important;
    display: flex;
    flex-direction: column;
}
.woocommerce-MyAccount-content > form > .woocommerce-address-fields .form-row label {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.1pt;
    line-height: 1.25 !important;
    margin-bottom: 0.5rem;
}
.woocommerce-MyAccount-content > form > .woocommerce-address-fields .form-row input {
    font-size: var(--fs-body-m);
    font-weight: 500;
    letter-spacing: 0.1pt;
    background-color: var(--cl-light);
    padding: 1.125rem 1.75rem;
}
.woocommerce-MyAccount-content > form > .woocommerce-address-fields .form-row .woocommerce-input-wrapper .select2-hidden-accessible {
    position: absolute;
}
.woocommerce-MyAccount-content > form > .woocommerce-address-fields .form-row .woocommerce-input-wrapper .select2-selection {
    background-color: var(--cl-light);
    border-radius: 0;
    border: none;
    padding: 1.125rem 1.75rem;
    height: auto;
}
.woocommerce-MyAccount-content > form > .woocommerce-address-fields .form-row .woocommerce-input-wrapper .select2-selection__rendered {
    line-height: normal;
    padding: 0
}
.woocommerce-MyAccount-content > form > .woocommerce-address-fields .form-row .woocommerce-input-wrapper .select2-selection__arrow {
    height: 26px;
    position: absolute;
    top: 15px;
    right: 15px;
    width: 20px;
}
body:has( .woocommerce-MyAccount-content > form > .woocommerce-address-fields .form-row .woocommerce-input-wrapper .select2-selection__rendered ) .select2-container--open .select2-dropdown {
    background-color: var(--cl-white);
    border: none;
    filter: drop-shadow(0 0 0.5rem rgba(99,99,99, 0.5));
    padding: 1rem 1.5rem;
}
body:has( .woocommerce-MyAccount-content > form > .woocommerce-address-fields .form-row .woocommerce-input-wrapper .select2-selection__rendered ) .select2-container--open .select2-search__field {
    margin-bottom: 0.5rem;
}

.woocommerce-MyAccount-content > form > .woocommerce-address-fields > p {
    display: flex;
    justify-content: center;
}
.woocommerce-MyAccount-content > form > .woocommerce-address-fields > p .button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-l);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: calc(1rem - 2px) 2.25rem 1rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    border-radius: var(--br-xl);
    margin-right: auto;
    margin-left: auto;
    min-width: 275px;
}
.woocommerce-MyAccount-content > form > .woocommerce-address-fields > p .button:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.woocommerce-MyAccount-content > form > .woocommerce-address-fields > p .button:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-gray);
    outline-width: 2px;
    outline-offset: 1px;
}

.woocommerce-MyAccount-content p a {
    color:var(--cl-primary);
}
.woocommerce-MyAccount-content p a:hover {
    text-decoration: underline;
}

/*/*/

.logged-in.admin-bar .menu__cart--minicart {
    top: 2rem;
}
.menu__cart--minicart {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: auto;
    z-index: 2;
    background-color: var(--cl-white);
    max-width: 360px;
    width: 100%;
    translate: 100% 0;
    transition: all 300ms ease-in-out;
}
.menu__cart--minicart.open {
    translate: 0;
    filter: drop-shadow(0 0 0.5rem rgba(99,99,99, 0.5));
}
.menu__cart--minicart .widget_shopping_cart_content {
    display: flex;
    align-items: center;
    flex-direction: column;
    padding: 0.5rem 1rem;
    height: 100%;
    width: 100%;
}
.menu__cart--minicart .widget_shopping_cart_content > h3 {
    font-size: var(--fs-26);
    margin-top: 0.5rem;
    line-height: 2rem;
    text-align: left;
    width: 100%;
    letter-spacing: 0.1pt;
    font-weight: 500;
    margin-bottom: 2rem;
}
.menu__cart--minicart .widget_shopping_cart_content button.menu__cart--dismiss {
    font-size: var(--fs-32) !important;
    font-weight: 400 !important;
    cursor: pointer;
    border-radius: 50%;
    height: 2rem;
    width: 2rem;
    border: 2px solid var(--cl-gray);
    background-color: var(--cl-white);
    color: var(--cl-gray);
    position: absolute;
    top: 1rem;
    right: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 2rem;
    transition: all 200ms ease-in-out;
}
.menu__cart--minicart .widget_shopping_cart_content button.menu__cart--dismiss::selection {
    background-color: transparent;
    color: var(--cl-gray);
}
.menu__cart--minicart .widget_shopping_cart_content button.menu__cart--dismiss:hover {
    border: 2px solid var(--cl-primary);
    color: var(--cl-primary);
}
.menu__cart--minicart .widget_shopping_cart_content button.menu__cart--dismiss:hover::selection {
    background-color: transparent;
    color: var(--cl-primary);
}
.menu__cart--minicart .widget_shopping_cart_content .woocommerce-mini-cart__empty-message {
    width: 100%;
    text-align: center;
}
.menu__cart--minicart .widget_shopping_cart_content .product_list_widget {
    display: flex;
    gap: 2rem;
    flex-direction: column;
    width: 100%;
    margin-bottom: auto !important;
    padding: 0.25rem !important;
    overflow: auto;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    position: relative;
    padding: 0 !important;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item:not(:last-child):after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1rem;
    height: 1px;
    background-color: var(--cl-light);
    display: block;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item:last-child:after {
    display: none;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item a:not(.remove) {
    display: flex;
    align-items: center;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .mini__cart--thumbnail {
    width: 5rem;
    aspect-ratio: 1/1;
    padding: 0.5rem;
    background-color: var(--cl-light);
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .mini__cart--thumbnail img {
    width: 100%;
    margin: 0;
    float: none;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .mini__cart--name {
    color:var(--cl-primary);
    font-weight: 500;
    font-size: var(--fs-body-s);
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .mini__cart--variation {
    font-weight: 500;
    color: var(--cl-text);
    font-size: var(--fs-body-xs);
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .mini__cart--variation span {
    font-weight: 400;
    color: var(--cl-text);
    font-size: var(--fs-body-xs);
    opacity: 0.5;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item:before {
    display: none !important;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .blockOverlay {
    top: -0.25rem !important;
    left: -0.25rem !important;
    width: calc(100% + 0.5rem) !important;
    height: calc(100% + 0.5rem) !important;
    background-color: var(--cl-gray) !important;
    opacity: 0.25 !important;
}

.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item a.remove {
    height: 1.25rem;
    width: 1.25rem;
    line-height: 1.5rem;
    color: var(--cl-gray) !important;
    font-weight: 400;
    font-size: 1.25rem;
    text-align: center;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item a.remove:hover {
    background-color: transparent;
    color: var(--cl-primary) !important;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .mini__cart--item-info {
    flex-grow: 1;
    padding-left: 0.5rem;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .mini__cart--qty {
    text-align: right;
    border-top: 1px solid var(--cl-light);
    margin-top: 0.33rem;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .quantity {
    font-size: var(--fs-body-xs);
    font-weight: 600;
    width: 100%;
    display: flex;
    justify-content: right;
    padding-top: 0.33rem;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .quantity .woocommerce-Price-amount {
    width: 33.33%;
}

.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .woocommerce-mini-cart__total {
    width: 100%;
}
.menu__cart--minicart .widget_shopping_cart_content .mini_cart_item .woocommerce-mini-cart__buttons {
    width: 100%;
}
.menu__cart--minicart .widget_shopping_cart_content .woocommerce-mini-cart__total {
    width: calc(100% + 2rem);
    margin-top: 2rem;
    margin-left: -1rem;
    margin-right: -1rem;
    padding: 1rem;
    background-color: var(--cl-light);
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.75rem;
}
.menu__cart--minicart .widget_shopping_cart_content .woocommerce-mini-cart__total strong {
    text-transform: uppercase;
    font-weight: 600;
    opacity: 0.75;
    font-size: var(--fs-body-s);
}
.menu__cart--minicart .widget_shopping_cart_content .woocommerce-Price-amount {
    font-weight: 700;
}
.menu__cart--minicart .widget_shopping_cart_content .woocommerce-mini-cart__buttons {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    width: 100%;
    margin-bottom: 2rem;
}
.menu__cart--minicart .widget_shopping_cart_content .woocommerce-mini-cart__buttons .button:not(.checkout) {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-m);
    font-weight: 600;
    text-align: center;
    color: var(--cl-gray);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    width: 100%;
    padding: 0;
    background-color: transparent;
    border-radius: 0;
}
.menu__cart--minicart .widget_shopping_cart_content .woocommerce-mini-cart__buttons .button:not(.checkout):hover {
    color: var(--cl-primary);
}
.menu__cart--minicart .widget_shopping_cart_content .woocommerce-mini-cart__buttons .checkout {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-l);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: calc(1rem - 2px) 2.25rem 1rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    border-radius: var(--br-xl);
    width: 100%;
}
.menu__cart--minicart .widget_shopping_cart_content .woocommerce-mini-cart__buttons .checkout:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}

/*/*/

.wc-block-components-checkout-step__heading .wc-block-components-title.wc-block-components-checkout-step__title { 
    width: 100%;
    margin-top: 0;
    font-size: var(--fs-body-m);
    letter-spacing: 1.25pt;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 1rem;
}
.wc-block-components-checkout-step__container .wc-block-components-text-input input {
    border: none !important;
    border-radius: 0 !important;
    background-color: var(--cl-light) !important;
    padding: 2rem 1.75rem 0.5rem 1.75rem !important;
    line-height: 1.75 !important;
    max-height: unset !important;
}
.wc-block-components-checkout-step__container .wc-block-components-text-input label {
    left: 1.75rem !important;
    transform: translateY(1.33em) !important;
}
.wc-block-components-checkout-step__container .wc-block-components-text-input input:focus,
.wc-block-components-checkout-step__container .wc-block-components-text-input input:focus-visible {
    box-shadow: none !important;
    color: var(--cl-gray) !important;
}
.wc-block-components-checkout-step__container .wc-block-components-text-input.is-active label {
    transform: translateY(.66em) scale(.75) !important;
}

.wc-block-components-address-form .wc-block-components-combobox > div .components-combobox-control__input {
    border: none !important;
    border-radius: 0 !important;
    background-color: var(--cl-light) !important;
    padding: 2rem 1.75rem 0.5rem 1.75rem !important;
    line-height: 1.75 !important;
}
.wc-block-components-address-form .wc-block-components-combobox > div .components-base-control__label {
    left: 1.75rem !important;
    transform: translateY(1.33em) !important;
}
.wc-block-components-address-form .wc-block-components-combobox.is-active > div .components-base-control__label {
    transform: translateY(.66em) scale(.75) !important;
}
.wc-block-components-address-form .wc-block-components-combobox > div .components-combobox-control__input:focus,
.wc-block-components-address-form .wc-block-components-combobox > div .components-combobox-control__input:focus-visible {
    box-shadow: none !important;
    color: var(--cl-gray) !important;
}
.wc-block-components-address-form .wc-block-components-combobox > div .components-form-token-field__suggestions-list {
    margin: 4em 0 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    background-color: var(--cl-white) !important;
    border: none !important;
    filter: drop-shadow(0 0 0.5rem rgba(99,99,99, 0.5));
}
.wc-block-components-address-form .wc-block-components-combobox > div .components-form-token-field__suggestions-list li {
    padding-left: 1.75rem !important;
    padding-right: 1.75rem !important;
}

.wc-block-components-checkout-step__container .wc-block-components-address-card {
    padding: 1rem 1.75rem;
    border: 1px solid var(--cl-light);
    border-radius: 0;
    background-color: var(--cl-light);
}

.wc-block-components-checkout-step__container .wc-block-components-checkbox label {
    padding-left: 2rem;
    position: relative;
    line-height: 2rem;
    cursor: pointer;
    font-weight: 500;
    align-items: center;
}
.wc-block-components-checkout-step__container .wc-block-components-checkbox label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.4rem;
    height: 1.25rem;
    width: 1.25rem;
    border: 2px solid var(--cl-light);
}
.wc-block-components-checkout-step__container .wc-block-components-checkbox label:after {
    content: "";
    position: absolute;
    left: 0.4rem;
    top: 0.4rem;
    height: 0.75rem;
    width: 1.25rem;
    border-left: 2px solid var(--cl-primary);
    border-bottom: 2px solid var(--cl-primary);
    rotate: -45deg;
    opacity: 0;
}
.wc-block-components-checkout-step__container .wc-block-components-checkbox .wc-block-components-checkbox__input {
    position: absolute !important;
    opacity: 0 !important;
    visibility: hidden !important;
}
.wc-block-components-checkout-step__container .wc-block-components-checkbox svg {
    display: none;
}
.wc-block-components-checkout-step__container .wc-block-components-checkbox span {
    line-height: 2;
    display: inline-block;
    padding-left: 0.5rem;
}
.wc-block-components-checkout-step__container .wc-block-components-checkbox label:hover:before {
    background-color: var(--cl-light);
}
.wc-block-components-checkout-step__container .wc-block-components-checkbox label:has(input:checked):after {
    opacity: 1;
}

.wc-block-components-checkout-step__container .wc-block-components-address-card .wc-block-components-address-card__edit {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-xs);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: 0.5rem 0.75rem 0.5rem;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    border-radius: var(--br-xl);
    min-width: 3.75rem;
}
.wc-block-components-checkout-step__container .wc-block-components-address-card .wc-block-components-address-card__edit:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.wc-block-components-checkout-step__container .wc-block-components-address-card .wc-block-components-address-card__edit:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-gray);
    outline-width: 2px;
    outline-offset: 1px;
}

.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-l);
    font-weight: 600;
    text-align: center;
    color: var(--cl-primary);
    padding: calc(1rem - 2px) 2.25rem 1rem !important;
    border: 2px solid var(--cl-primary);
    transition: all 200ms ease-in-out;
    background-color: var(--cl-white);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    border-radius: var(--br-xl);
    width: auto !important;
    min-width: 275px;
}
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:hover {
    color: var(--cl-white);
    background-color: var(--cl-primary);
}
.wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button {
    display: inline-block;
    font-family: var(--ff-primary);
    font-size: var(--fs-body-m);
    font-weight: 600;
    text-align: center;
    color: var(--cl-gray);
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 1pt;
    width: auto;
    padding: 0;
    padding-left: calc(24px + .25em);
    background-color: transparent;
    border-radius: 0;
}
.wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button:hover {
    color: var(--cl-primary);
}
.wc-block-components-checkout-step__content .wc-block-checkout__add-note  textarea {
    border-radius: 0;
    background-color: var(--cl-light);
    border-color: var(--cl-light);
    padding: 1.125rem 1.75rem;
    line-height: 1.75;
}
.wc-block-components-checkout-step__content .wc-block-checkout__add-note  textarea:focus {
    background-color: var(--cl-light);
    border-color: var(--cl-light);
    box-shadow: none;
    color: var(--cl-text);
}

.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted, 
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted {
    background-color: var(--cl-light) !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}
.wc-block-components-radio-control--highlight-checked::after {
    border: none !important;
    border-radius: 0px !important;
}
.wc-block-checkout__payment-method .wc-block-components-radio-control__option {
    padding: 1.125rem 1.75rem !important;
}
.wc-block-components-radio-control-accordion-content {
    padding: 1.125rem 1.75rem !important;
}
.wc-block-checkout__shipping-option .wc-block-components-radio-control__option {
    padding-right: 1.75rem !important;
    padding-left: 4.5rem !important;
    padding-top: 1.125rem !important;
    padding-bottom: 1.125rem !important;
}
.wc-block-components-checkout-step__content .wc-block-components-radio-control .wc-block-components-radio-control__input {
    left: 1.75rem !important;
    transform: translateY(-50%) !important;
    border: 2px solid var(--cl-gray) !important;
}
.wc-block-components-radio-control .wc-block-components-radio-control__input:checked::before {
    background-color: var(--cl-primary) !important;
}

.wc-block-components-radio-control .wc-block-components-radio-control__input {
    left: 0rem !important;
}

.wp-block-woocommerce-checkout-order-summary-cart-items-block .wc-block-components-order-summary-item .wc-block-components-product-name {
    color: var(--cl-primary);
    font-weight: 500;
    font-size: var(--fs-body-s);
}
.wp-block-woocommerce-checkout-order-summary-cart-items-block .wc-block-components-order-summary-item .wc-block-components-order-summary-item__individual-prices {
    padding-top: 0.25rem;
}
.wp-block-woocommerce-checkout-order-summary-cart-items-block .wc-block-components-order-summary-item .wc-block-components-product-price__regular {
    display: none;
}
.wp-block-woocommerce-checkout-order-summary-cart-items-block .wc-block-components-order-summary-item .wc-block-components-product-price__value {
    font-weight: 700 !important;
    color: var(--cl-text) !important;
    margin-left: 0 !important;
}
.wp-block-woocommerce-checkout-order-summary-cart-items-block .wc-block-components-order-summary-item .wc-block-components-product-metadata {
    margin-top: 0.25rem !important;
}
.wp-block-woocommerce-checkout-order-summary-cart-items-block .wc-block-components-order-summary-item .wc-block-components-product-metadata .wc-block-components-product-details {
    margin-top: 0.25rem !important;
}
.wp-block-woocommerce-checkout-order-summary-cart-items-block .wc-block-components-order-summary-item .wc-block-components-product-metadata .wc-block-components-product-details__name {
    font-weight: 400;
    color: var(--cl-text);
    font-size: var(--fs-body-xs);
    opacity: 0.5;
}
.wp-block-woocommerce-checkout-order-summary-cart-items-block .wc-block-components-order-summary-item .wc-block-components-product-metadata .wc-block-components-product-details__value {
    font-weight: 500;
    color: var(--cl-text);
    font-size: var(--fs-body-xs);
}
.wc-block-components-sidebar-layout .wc-block-checkout__sidebar {
    top: 167px !important;
}

.wp-block-woocommerce-checkout-terms-block a {
    color: var(--cl-primary);
}
.wp-block-woocommerce-checkout-terms-block a:hover {
    text-decoration: underline;
}


.woocommerce-order .woocommerce-thankyou-order-received {
    text-align: center;
    font-weight: 700;
}
.woocommerce-order .woocommerce-thankyou-order-details {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.woocommerce-order .woocommerce-thankyou-order-details li:last-child {
    margin-right: 0;
    padding-right: 0;
}
.woocommerce-order > p:not(.woocommerce-notice) {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.woocommerce-order .woocommerce-order-details {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}
.woocommerce-order .woocommerce-order-details h2 {
    width: 100%;
    margin-top: 0;
    margin-bottom: 1rem;
    font-size: var(--fs-body-m);
    letter-spacing: 1.25pt;
    text-transform: uppercase;
    font-weight: 600;
}
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details {
    border-radius: 0;
    border-color: var(--cl-light);
}
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details td,
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details th {
    border-color: var(--cl-light);
}
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details .woocommerce-table__product-thumbnail {
    width: 120px;
    text-align: center;
}
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details img {
    max-width: 96px;
}
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details .woocommerce-table__product-name a {
    color: var(--cl-primary);
    font-weight: 500;
    font-size: var(--fs-body-s);
}
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details .woocommerce-table__product-name .wc-item-meta li {
    display: flex;
    align-items: center;
}
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details .woocommerce-table__product-name .wc-item-meta .wc-item-meta-label {
    font-weight: 400;
    color: var(--cl-text);
    font-size: var(--fs-body-xs);
    opacity: 0.5;
}
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details .woocommerce-table__product-name .wc-item-meta p {
    font-weight: 500;
    color: var(--cl-text);
    font-size: var(--fs-body-xs);
}
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details .product-total {
    text-align: right;
}
.woocommerce-order .woocommerce-order-details .woocommerce-table--order-details tfoot td {
    text-align: right;
}
.woocommerce-order .woocommerce-customer-details {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}
.woocommerce-order .woocommerce-customer-details address {
    padding: 1.125rem 1.75rem;
}


/* ============================================ */
/* ================= 404 Page ================= */
/* ============================================ */

.page__404--title {
    position: relative;
    isolation: isolate;
    color: var(--cl-white);
}
.page__404--banner {
    position: absolute;
    inset: 0;
    z-index: -1;
}
.page__404--banner::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    opacity: 0.79;
    mix-blend-mode: multiply;
    background: transparent linear-gradient(81deg, #373D3F 0%, #797D7E 100%) 0% 0% no-repeat padding-box;
  }
.page__404--banner img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}
.page__404--content {
    text-align: center;
}
.page__404--content p {
    font-size: var(--fs-30);
}

/* ============================================ */
/* =============== Header Styles ============== */
/* ============================================ */

.logged-in.admin-bar .main__header {
    top: 2rem;
}
.main__header {
    padding: 0 var(--sp-h);
    position: sticky;
    top: 0;
    z-index: 2;
    background-color: var(--cl-white);
}
.main__header.scrolled {
    filter: drop-shadow(0 0 0.5rem rgba(99,99,99, 0.5));
}
.main__header .container--large {
    display: flex;
    gap: 2rem;
    justify-content: space-between;
}
.main__header--logo {
    padding: 2rem 0;
}
.main__header--navigation {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-bottom: 1.5rem;
    gap: 0.5rem;
}
.header__navigation--wrapper .menu {
    display: flex;
}
.header__navigation--wrapper:first-child {
    display: flex;
    gap: 2rem;
    justify-content: flex-end;
}
.header__navigation--wrapper:first-child .menu > li > a {
    font-size: var(--fs-body-s);
    letter-spacing: 0.75pt;
    text-transform: uppercase;
    font-weight: 600;
}
.header__navigation--wrapper:first-child .menu > li > a:hover {
    color:var(--cl-primary);
}
.header__navigation--wrapper:first-child button {
    font-size: var(--fs-body-s);
    letter-spacing: 0.75pt;
    text-transform: uppercase;
    font-weight: 600;
    cursor: pointer;
}
.header__navigation--wrapper:first-child button:hover {
    color: var(--cl-primary);
}
.header__navigation--wrapper:first-child button:hover .menu__cart--count {
    color: var(--cl-gray);
}
.header__navigation--wrapper:last-child {
    display: flex;
}
.header__navigation--wrapper:last-child .menu {
    gap: 4rem;
    padding-bottom: 2px;
}
.header__navigation--wrapper:last-child .menu > li > a {
    font-size: var(--fs-body-m);
    letter-spacing: 1.25pt;
    text-transform: uppercase;
    font-weight: 600;
}
.header__navigation--wrapper:last-child .menu > li > a:hover {
    color: var(--cl-primary);
}
.main__header--menu {
    display: none;
}

.menu-item-has-children  {
    position: relative;
}
.menu-level-0 > .sub-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    translate: -50% 0;
    background-color: #070707;
    background-blend-mode: multiply;
    z-index: 1;
    transition: all 150ms ease-in-out;
    transform: translate(0, 3rem);
    opacity: 0;
    visibility: hidden;
}
.menu-level-0:hover > .sub-menu {
    transform: translate(0, 0);
    opacity: 1;
    visibility: visible;
}
.menu-level-0 > .sub-menu > li > a {
    font-size: var(--fs-body-s);
    letter-spacing: 0.75pt;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--cl-white);
    display: block;
    text-align: center;
    padding-bottom: 0.375rem;
    padding-top: 0.3rem;
    padding-left: 1rem;
    padding-right: 1rem;
    white-space: nowrap;
}
.menu-level-0 > .sub-menu > li > a:hover {
    background-color: var(--cl-primary);
}

/* ============================================ */
/* =============== Footer Styles ============== */
/* ============================================ */

.main__footer {
    background-color: var(--cl-gray);
    padding: 7.5rem var(--sp-h) 4.5rem var(--sp-h);
    color: var(--cl-white);
}
.main__footer .container--large {
    display: flex;
    gap: 3rem;
}
.main__footer--contact {
    width: calc((100% - 2 * 3rem) / 3);
    padding-bottom: 2.5rem;
}
.main__footer--contact .custom-logo-link {
    padding: 0.25rem;
    margin-top: 0.25rem;
    margin-left: -0.25rem;
    border-radius: var(--br-xs);
}
.main__footer--contact .custom-logo-link:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-white);
    outline-width: 2px;
    outline-offset: 1px;
}
.main__footer--contact .custom-logo-link {
    display: inline-block;
    margin-bottom: 2.5rem;
}
.main__footer--contact > p {
    margin-bottom: 0;
    font-weight: 700;
    letter-spacing: 0.5pt;
    font-size:var(--fs-22);
}
.footer__contact--address {
    max-width: 230px;
}
.footer__contact--address a {
    display: inline-block;
    line-height: 1.5;
    font-size: var(--fs-22);
    transition: all 300ms ease-in-out;
    border-radius:var(--br-xs);
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    margin-left: -0.25rem;
}
.footer__contact--address a:hover {
    color: var(--cl-primary);
}
.footer__contact--address a:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-white);
    outline-width: 2px;
    outline-offset: 1px;
}
.footer__contact--phone a {
    display: inline-block;
    line-height: 1.5;
    font-size: var(--fs-22);
    transition: all 300ms ease-in-out;
    border-radius:var(--br-xs);
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    margin-left: -0.25rem;
}
.footer__contact--phone a:hover {
    color: var(--cl-primary);
}
.footer__contact--phone a:focus-visible {
    outline-style: solid;
    outline-color: var(--cl-white);
    outline-width: 2px;
    outline-offset: 1px;
}
.main__footer--copyright {
    width: calc((100% - 2 * 3rem) / 3);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: end;
}
.footer__copy--eyebrow {
    margin-bottom: 1rem;
    font-weight: 700;
    font-size: var(--fs-body-l);
    text-align: center;
}
.main__footer--pride {
    width: calc((100% - 2 * 3rem) / 3);
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
}
.footer__copy--logo {
    margin-bottom: 1.25rem;
}
.footer__copy--copyright {
    font-size: var(--fs-body-l);
}

/*/*/

.login__register--action {
    padding-top: calc(var(--sp-v) * 0.75);
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ============================================ */
/* =============== Media Queries ============== */
/* ============================================ */

@media only screen and (max-width: 1919px) {
    .features__gallery--pin label {
        font-size: var(--fs-body-m);
        width: max(13.5rem, 9vw);
    }
}
@media only screen and (max-width: 1599px) {
    .features__gallery--pin label {
        width: max(12rem, 9vw);
    }
}
@media only screen and (max-width: 1439px) {
    .header__navigation--wrapper:last-child .menu {
        gap: 3rem;
    }
    .products__loop--section .products.columns-3 .product .woocommerce-product-details__short-description p {
        font-size: var(--fs-body-m);
        font-weight: 500;
        margin-bottom: 0;
        line-height: 1.5;
    }
    .products__loop--section .products.columns-3 {
        gap: 3rem;
    }
    .products__loop--section .products.columns-3 .product {
        width: calc( ( 100% - 3rem * 2 ) / 3 ) !important;
    }
    .products__loop--section .products.columns-3 .product a h2 {
        font-size: var(--fs-26);
    }
    .single__product--section .container {
        grid-template-columns: [col1-start] 480px [col2-start] 1fr [col2-end];
        gap: 4.5rem 3.5rem;
    }
    .woocommerce div.product div.summary {
        margin-bottom: 0;
    }
    .features__gallery--pin label {
        width: max(11rem, 9vw);
    }
}
@media only screen and (max-width: 1199px) {
    .header__navigation--wrapper:last-child .menu {
        gap: 2.5rem;
    }
    .header__navigation--wrapper:first-child {
        gap: 1.5rem;
    }
    .main__header--logo img {
        max-width: 275px;
    }
    .features__gallery--pin span {
        height: max(2rem, 2vw);
        width: max(2rem, 2vw);
    }
    .features__section--gallery {
        margin-bottom: 3rem;
    }
    .single__product--section .container {
        grid-template-columns: [col1-start] 420px [col2-start] 1fr [col2-end];
        gap: 4.5rem 3.5rem;
    }
    .banner__section {
        min-height: 560px;
    }
    .lists__section--content ul {
        grid-template-columns: repeat(3, auto);
    }
    .gallery__section--content ul {
        grid-template-columns: repeat(2, 1fr);
    }
    .features__gallery--pin label {
        width: max(8rem, 9vw);
    }
}
@media only screen and (max-width: 1023px) {
    .main__header--menu {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .main__header--navigation {
        display: none;
    }
    .main__header--navigation.header__navigation--active {
        display: flex;
        position: fixed;
        top: 100px;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: var(--cl-white);
        z-index: 1;
        flex-direction: column;
        height: auto;
        min-height: calc(100vh - 100px);
        max-width: 100vw;
    }
    .scrolled .main__header--navigation.header__navigation--active {
        top: 100px;
    }
    .logged-in.admin-bar .main__header--navigation.header__navigation--active {
        top: 146px;
    }
    .logged-in.admin-bar .scrolled .main__header--navigation.header__navigation--active {
        top: 100px;
    }

    .header__navigation--wrapper:first-child {
        order: 2;
        margin-top: 0;
        flex-direction: column;
        margin-bottom: auto;
    }
    .header__navigation--wrapper:last-child {
        order: 1;
    }
    .main__navigation {
        width: 100%;
    }
    .main__navigation .menu {
        flex-direction: column;
        padding-top: 2.5rem;
    }
    .main__navigation .menu li {
        text-align: center;
    }
    .main__navigation .menu > li > a {
        font-size: var(--fs-26) !important;
    }
    .header__navigation--wrapper:first-child button {
        font-size: var(--fs-26);
        text-align: center;
    }
    .features__section--gallery {
        display: block;
    }
    .features__gallery--board {
        width: 100%;
        aspect-ratio: 1/1;
        padding: 0;
        margin-bottom: 0;
    }
    .features__gallery--graphic {
        margin: 0;
    }
    .features__gallery--pins {
        transform: translate(0vw, 0);
    }
    .features__section--content {
        margin: 0;
    }
    .features__gallery--list {
        width: 100%;
    }
    .features__gallery--list li {
        font-size: var(--fs-26);
        line-height: 1.5;
    }
    .features__section--gallery {
        margin-bottom: 0;
    }
    .features__gallery--pin[data-pos="top"]:hover div, 
    .features__gallery--pin[data-pos="top"].hovered div {
        bottom: max(7vw, 3.5rem);
    }
    .features__gallery--pin[data-pos="right"]:hover div,
    .features__gallery--pin[data-pos="right"].hovered div {
        left: max(7vw, 3.5rem);
    }
    .features__gallery--pin:hover div,
    .features__gallery--pin.hovered div {
        height: max(16rem, 30.5vw);
        width: max(16rem, 30.5vw);
    }
    .features__gallery--pin:hover label,
    .features__gallery--pin.hovered label {
        bottom: max(4.5vw, 3rem);
    }
    .features__gallery--pin label {
        width: max(12rem, 9vw);
    }
    .features__gallery--list li:last-child {
        margin-bottom: 0;
    }
    .main__footer .container--large {
        flex-wrap: wrap;
        gap: 0;
    }
    .main__footer--contact {
        width: 50%;
        order: 1;
    }
    .main__footer--pride {
        width: 50%;
        order: 2;
        align-items: center;
    }
    .main__footer--copyright {
        width: 100%;
        order: 3;
    }
    .products__loop--section .products.columns-3 .product {
        width: calc( ( 100% - 3rem ) / 2 ) !important;
    }
    .single__product--section .container {
        display: block;
    }
    .single__product--gallery {
        padding-bottom: 1px;
        margin-bottom: 2.5rem;
    }
    .single__product--specifications {
        margin-bottom: 2.5rem;
    }
    .single-product .woocommerce-notices-wrapper {
        padding: calc(var(--sp-v) * 0.375) var(--sp-h) 0 var(--sp-h);
    }
    .single__product--section {
        padding: calc(var(--sp-v) * 0.375) var(--sp-h) var(--sp-v) var(--sp-h);
    }
    .lists__section--content ul {
        grid-template-columns: repeat(2, auto);
    }
    .banner__section {
        min-height: 360px;
    }
    .banner__section--content h1 {
        line-height: 1;
    }

    .woocommerce-order .woocommerce-thankyou-order-details {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        flex-direction: column;
    }
    .woocommerce ul.order_details li {
        padding-bottom: 1rem;
        margin-bottom: 1rem;
        border-bottom: 1px dashed var(--cl-light);
        padding-right: 0;
        margin-right: 0;
        border-right: none;
    }
    .woocommerce-order .woocommerce-order-details .woocommerce-table--order-details img {
        max-width: 64px;
    }

    /*/*/

    .menu-level-0 > .sub-menu {
        position: static;
        translate: none;
        transform: none;
        opacity: 1;
        visibility: visible;
        background-color: var(--cl-light);
        margin-top: 1.5rem;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease-out;
    }
    .menu-level-0 > .sub-menu.expanded {
        max-height: 300px;
    }
    .menu-level-0 > .sub-menu > li > a {
        font-size: var(--fs-body-l);
        color: var(--cl-text);
        padding-bottom: 0.675rem;
        padding-top: 0.6rem;
    }
    .menu-level-0 > .sub-menu > li > a:hover {
        background-color: var(--cl-primary);
        color: var(--cl-white);
    }
}
@media only screen and (max-width: 782px) {
    .logged-in.admin-bar .menu__cart--minicart {
        top: 46px;
    }
    .logged-in.admin-bar .main__header {
        top: 46px;
    }
}
@media only screen and (max-width: 767px) {
    .main__header--logo img {
        max-width: 200px;
    }

    .main__header--navigation.header__navigation--active {
        top: 90px;
    }
    .scrolled .main__header--navigation.header__navigation--active {
        top: 90px;
    }
    .logged-in.admin-bar .main__header--navigation.header__navigation--active {
        top: 137px;
    }
    .logged-in.admin-bar .scrolled .main__header--navigation.header__navigation--active {
        top: 90px;
    }

    .products__section--actions {
        flex-direction: column;
    }
    .features__gallery--board {
        margin-top: 2rem;
        margin-bottom: 2rem;
        margin-left: calc(-1 * var(--sp-h));
        margin-right: calc(-1 * var(--sp-h));
        width: auto;
    }

    .main__footer--contact {
        width: 100%;
        text-align: center;
    }
    .main__footer--pride {
        width: 100%;
        justify-content: center;
        margin-bottom: 3rem;
    }
    .footer__contact--address {
        margin: 0 auto;
    }
    .features__gallery--pin span::after {
        display: none;
    }
    .features__gallery--pin span {
        height: max(1.5rem, 2vw);
        width: max(1.5rem, 2vw);
    }
    .lists__section--content ul {
        grid-template-columns: repeat(1, auto);
    }
    .lists__section--content ul li:not(:has(img))::before {
        top: 0.8rem;
    }
    .gallery__section--content ul {
        grid-template-columns: repeat(1, 1fr);
    }
    .woocommerce-MyAccount-navigation {
        position: static;
    }
    .woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions {
        flex-direction: row;
        align-items: center;
    }
    .woocommerce .woocommerce-MyAccount-content .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions > .button.view {
        margin-left: auto;
    }
    .woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item .woocommerce-table__product-name a {
        width: 100%;
    }
    .woocommerce-MyAccount-content .woocommerce-order-details .woocommerce-table__line-item .woocommerce-table__product-name .product-quantity {
        width: 100%;
        display: block;
    }
    .woocommerce-EditAccountForm p:not(.woocommerce-form-row) > .button {
        margin-left: auto;
        margin-right: auto;
    }
    .products__loop--section .products.columns-3 .product {
        width: 100% !important;
    }
    .products__actions--content {
        flex-direction: column;
    }
    .wcboost-variation-swatches--button .wcboost-variation-swatches__item {
        width: calc(50% - 1em) !important;
    }
    .page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__remove-link {
        text-align: center !important;
        line-height: 1 !important;
        white-space: normal !important;
    }
    .page-template-page-commerce .page__content--section .wc-block-cart-items .wc-block-cart-item__quantity {
        padding-top: 0.5rem !important;
    }
    .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
        width: 100% !important;
    }

    .features__section {
        overflow: hidden;
    }
    .features__gallery--pin > div {
        width: min(75vw, calc(375px * 0.75));
        height: min(75vw, calc(375px * 0.75));
    }
    .features__gallery--pin:hover div, 
    .features__gallery--pin.hovered div {
        width: min(75vw, calc(375px * 0.75));
        height: min(75vw, calc(375px * 0.75));
    }

    .features__gallery--pins .features__gallery--pin:nth-child(1) > div {
        left: calc((100vw * ( var(--pin-1-left) / 100 ) * -1) + 50vw);
        translate: -50% -100%;
        top: calc(100vw * ( var(--pin-1-top) / 100 ) * -0.85);
    }
    .features__gallery--pins .features__gallery--pin:nth-child(2) > div {
        left: calc((100vw * ( var(--pin-2-left) / 100 ) * -1) + 50vw);
        translate: -50% -100%;
        top: calc(100vw * ( var(--pin-2-top) / 100 ) * -0.85);
    }
    .features__gallery--pins .features__gallery--pin:nth-child(3) > div {
        left: calc((100vw * ( var(--pin-3-left) / 100 ) * -1) + 50vw);
        translate: -50% -100%;
        top: calc(100vw * ( var(--pin-3-top) / 100 ) * -0.85);
    }
    .features__gallery--pins .features__gallery--pin:nth-child(4) > div {
        left: calc((100vw * ( var(--pin-4-left) / 100 ) * -1) + 50vw);
        translate: -50% -100%;
        top: calc(100vw * ( var(--pin-4-top) / 100 ) * -0.85);
    }
    .features__gallery--pins .features__gallery--pin:nth-child(5) > div {
        left: calc((100vw * ( var(--pin-5-left) / 100 ) * -1) + 50vw);
        translate: -50% -100%;
        top: calc(100vw * ( var(--pin-5-top) / 100 ) * -0.85);
    }
    .features__gallery--pins .features__gallery--pin:nth-child(6) > div {
        left: calc((100vw * ( var(--pin-6-left) / 100 ) * -1) + 50vw);
        translate: -50% -100%;
        top: calc(100vw * ( var(--pin-6-top) / 100 ) * -0.85);
    }
    .features__gallery--pins .features__gallery--pin:nth-child(7) > div {
        left: calc((100vw * ( var(--pin-7-left) / 100 ) * -1) + 50vw);
        translate: -50% -100%;
        top: calc(100vw * ( var(--pin-7-top) / 100 ) * -0.85);
    }
    .features__gallery--pins .features__gallery--pin:nth-child(8) > div {
        left: calc((100vw * ( var(--pin-8-left) / 100 ) * -1) + 50vw);
        translate: -50% -100%;
        top: calc(100vw * ( var(--pin-8-top) / 100 ) * -0.85);
    }
}

@media only screen and (max-width: 599px) {
    .logged-in.admin-bar .menu__cart--minicart {
        top: 46px;
    }
    body:has(.scrolled) .logged-in.admin-bar .menu__cart--minicart {
        top: 0;
    }
    .logged-in.admin-bar .main__header {
        top: 0;
    }
}

/* ============================================ */
/* =============== Extra Styles =============== */
/* ============================================ */

.grecaptcha-badge {
    opacity: 0 !important;
    visibility: hidden !important;
}