/*
    Theme Name: 3Temp
    Author: Egloo
    Author URI: https://egloo.it
    Version: 2.0.0
    Text Domain: eg-three-temp
    Description: A custom WordPress theme for 3Temp, designed by Egloo.
    License: GNU General Public License v2 or later
    License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

dialog {
    margin: auto;
}

a,
input,
textarea,
select,
button,
h1,
h2,
h3,
h4,
h5,
h6 {
    font: inherit;
    color: inherit;
}

a {
    text-decoration: none;
}

img,
video,
iframe {
    display: block;
    inline-size: 100%;
    block-size: auto;
}

button,
label,
input {
    cursor: pointer;
}

input[type="reset"],
input[type="submit"],
button {
    border: none;
    background-color: transparent;
}

span:has(> svg:only-child),
svg {
    line-height: 0;
}

ul {
    list-style-type: none;
}

html {
    scroll-behavior: smooth;
    scroll-padding: 6.25rem;
    -webkit-tap-highlight-color: transparent;
}

body {
    font-family: var(--ff-primary);
}

body:has(dialog[open]) {
    overflow: hidden;
}

@view-transition {
    navigation: auto;
}

/* ======================================== */
/* UTILS */
/* ======================================== */

nav.breadcrumbs ul {
    --_gap: 1.25rem;
    display: block;
}

nav.breadcrumbs li {
    display: inline-block;
    position: relative;
}

nav.breadcrumbs li:not(:last-child) {
    margin-inline-end: var(--_gap);
}

nav.breadcrumbs li svg {
    position: absolute;
    inset-block-start: 50%;
    inset-inline-end: calc((var(--_gap) * -1) / 2);
    translate: 50% -50%;
}

nav.breadcrumbs [aria-current] {
    color: rgb(from currentColor r g b / 0.3);
}

.rich-text > *:not(:last-child) {
    margin-block-end: 1lh;
}

.rich-text strong {
    font-weight: 700;
}

.rich-text ul {
    list-style-type: disc;
}

.rich-text ol {
    list-style-type: decimal;
}

.rich-text ul,
.rich-text ol {
    padding-inline-start: 1rem;
}

.rich-text a {
    text-decoration: underline;
}

.sr-only {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.hidden {
    display: none !important;
}

.img-wrapper.img-wrapper-ratio > picture,
.img-wrapper.img-wrapper-ratio {
    overflow: hidden;
    position: relative;
}

.img-wrapper.img-wrapper-ratio > picture {
    block-size: 100%;
    display: block;
}

.img-wrapper.img-wrapper-ratio > video,
.img-wrapper.img-wrapper-ratio > picture > video,
.img-wrapper.img-wrapper-ratio > picture > img,
.img-wrapper.img-wrapper-ratio > img {
    inline-size: 100%;
    block-size: 100%;
    position: absolute;
    object-fit: cover;
    inset: 0;
}

.layers {
    display: grid;
}

.layers > .layer {
    grid-column: -1/1;
    grid-row: -1/1;
}

.layers > .layer.layer-bg {
    position: relative;
}

.layers > .layer.layer-bg > .img-wrapper.img-wrapper-ratio:only-child {
    block-size: 100%;
}

.layers > .layer.layer-bg::before,
.layers > .layer.layer-bg::after {
    content: "";
    pointer-events: none;
    inset-block-start: 0;
    inset-inline-start: 0;
    inline-size: 100%;
    block-size: 100%;
    position: absolute;
}

.layers > .layer.layer-fg {
    position: relative;
    z-index: 1;
}

/* ======================================== */
/* LANG SWITCHER */
/* ======================================== */

#lang-switcher {
    position: relative;
    border: none;
    background-color: transparent;
    margin-inline-start: 1rem;
    height: fit-content;
    margin-block: auto;
}

#lang-switcher button {
    font-size: 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

#lang-switcher button svg {
    transition: rotate 0.2s ease;
}

#lang-switcher:has(.options:not([inert])) button svg {
    rotate: -0.5turn;
}

#lang-switcher .options {
    --_padding: 1.25rem;
    --_gap: 0.625rem;
    border-radius: var(--border-default);
    z-index: 88888;
    min-width: 8.125rem;
    position: absolute;
    right: 0;
    top: calc(100% + 1rem);
    background-color: var(--c-white);
    display: grid;
    grid-template-rows: 1fr;
    box-shadow: 0 0 15px rgb(0 0 0 / 0.16);
    transform-origin: top right;
    opacity: 1;
    scale: 1;
    transition:
        grid-template-rows 0.2s ease,
        opacity 0.2s ease,
        scale 0.2s ease;
}

#lang-switcher .options[inert] {
    grid-template-rows: 0fr;
    scale: 0.95;
    opacity: 0;
}

#lang-switcher nav.options ul li a {
    display: block;
    padding-block: calc(var(--_gap) / 2);
    padding-inline: var(--_padding);
}

#lang-switcher nav.options ul li a[aria-current="true"] {
    text-decoration: underline;
}

#lang-switcher nav.options ul li a[aria-current="false"]:where(:hover, :focus-visible) {
    text-decoration: underline;
    text-decoration-color: rgb(0 0 0 / 0.2);
    text-decoration-thickness: 2px;
}

#lang-switcher nav.options ul li a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: -2px;
}

#lang-switcher nav.options ul li:first-child a {
    padding-block-start: var(--_padding);
}

#lang-switcher nav.options ul li:last-child a {
    padding-block-end: var(--_padding);
}

:root {
    --ff-primary: "GreedCondensedSemibold", sans-serif;
    --border-default: 1rem;

    --text-accent: currentColor;

    --container-columns: 12;
    --container-gap: 1.25rem;
    --container-column-width: 6.125rem;
    --container-x-padding: 2rem;

    --c-orange-primary: #bb6645;
    --c-coffee: #785a4f;
    --c-light-mocha: #dbd0c0;
    --c-white: #ffffff;
    --c-charcoal: #232323;
    --c-warm-white: #f7f5ee;
    --c-peppermint: #7dc999;
    --c-navy: #313e51;
    --c-butter-yellow: #fdf584;
    --c-lilac: #c28ebf;

    --fg-color: var(--c-charcoal);
    --bg-color: var(--c-warm-white);

    --header-height: 3.5rem;
    --header-width: min(100% - (var(--container-x-padding) * 2), 59.125rem);

    --eg-form-gap-row: 1.875rem;
    --eg-form-gap-col: var(--container-gap);
    --eg-form-field-min-width: 14.375rem;
    --eg-form-checkbox-size: 0.8125rem;
    --eg-form-checkbox-bg: #ebebeb;
    --eg-form-checkbox-checked-bg: var(--accent);
    --eg-form-input-bg: #eff9f9;
    --eg-form-input-border: transparent;
    --eg-form-input-font-size: 1rem;
    --eg-form-input-weight: 400;
    --eg-form-input-padding-block: 0.9375rem 0.875rem;
    --eg-form-input-padding-inline: 1.25rem;
    --eg-form-label-weight: 500;
    --eg-form-border-radius-input: 0.625rem;
    --eg-form-border-radius-checkbox: 0.125rem;
    --eg-form-border-radius-radio: 50%;
    --eg-form-label-field-gap: 0.625rem;
    --eg-form-icon-check: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMC44NzUiIGhlaWdodD0iNy4xOTciIHZpZXdCb3g9IjAgMCAxMC44NzUgNy4xOTciPgogIDxwYXRoIGlkPSJUcmFjY2lhdG9fMjA4ODUiIGRhdGEtbmFtZT0iVHJhY2NpYXRvIDIwODg1IiBkPSJNLTE1NjA2LjA3Niw2ODc4LjMwN2wzLjI2MywzLjI2Myw0Ljc4NC00Ljc4NCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTU2MDcuNDkgLTY4NzUuMzczKSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZmZmIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4K");
    --eg-form-icon-file: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMy4zNjIiIGhlaWdodD0iMTkuNzQ4IiB2aWV3Qm94PSIwIDAgMjMuMzYyIDE5Ljc0OCI+CiAgPGcgaWQ9IlJhZ2dydXBwYV8xNTc4IiBkYXRhLW5hbWU9IlJhZ2dydXBwYSAxNTc4IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNzM4LjA4NiAtNjU0Mi41MDEpIj4KICAgIDxwYXRoIGlkPSJUcmFjY2lhdG9fMjA5MDkiIGRhdGEtbmFtZT0iVHJhY2NpYXRvIDIwOTA5IiBkPSJNMzQuMzM2LDU3LjQ1N2EuNjE2LjYxNiwwLDAsMC0uNjIyLjYyMnYyLjk2NUEyLjMyLDIuMzIsMCwwLDEsMzEuNCw2My4zNjJIMTYuMTQ4YTIuMzEyLDIuMzEyLDAsMCwxLTIuMzE3LTIuMzE3VjU4LjA3OWEuNjIyLjYyMiwwLDAsMC0xLjI0NSwwdjIuOTY1YTMuNTYzLDMuNTYzLDAsMCwwLDMuNTYzLDMuNTYzSDMxLjM4NWEzLjU2MywzLjU2MywwLDAsMCwzLjU2My0zLjU2M1Y1OC4wNzlhLjYuNiwwLDAsMC0uNjEyLS42MjJaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3MjYgNjQ5Ny4xNDEpIiBmaWxsPSIjYmI4ZWY4IiBzdHJva2U9IiNiYjhlZjgiIHN0cm9rZS13aWR0aD0iMSIvPgogICAgPHBhdGggaWQ9IlRyYWNjaWF0b18yMDkxMCIgZGF0YS1uYW1lPSJUcmFjY2lhdG8gMjA5MTAiIGQ9Ik0zOS43NTcsMzIuMTZhLjYxNi42MTYsMCwwLDAsLjYyMi0uNjIyVjIwLjg2MWwyLjY2NiwyLjgyN2EuNjQ1LjY0NSwwLDAsMCwuNDQ4LjIuNTY4LjU2OCwwLDAsMCwuNDI0LS4xNzQuNjI4LjYyOCwwLDAsMCwuMDI1LS44ODRsLTMuNzM3LTMuOTc0YS42NDguNjQ4LDAsMCwwLS45MSwwTDM1LjU1OCwyMi44M2EuNjI1LjYyNSwwLDEsMCwuOTA5Ljg2bDIuNjY2LTIuODI3VjMxLjUzOGEuNjE4LjYxOCwwLDAsMCwuNjI0LjYyMloiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDcxMC4wMTYgNjUyNC4zMzIpIiBmaWxsPSIjYmI4ZWY4IiBzdHJva2U9IiNiYjhlZjgiIHN0cm9rZS13aWR0aD0iMSIvPgogIDwvZz4KPC9zdmc+Cg==");
}

@media (max-width: 768px) {
    :root {
        --container-x-padding: 1.25rem;
    }
}

.container {
    inline-size: 100%;
    max-inline-size: calc((var(--container-x-padding) * 2) + ((var(--container-columns) - 1) * var(--container-gap)) + (var(--container-columns) * var(--container-column-width)));
    margin-inline: auto;
    padding-inline: var(--container-x-padding);
}
.container.container-10 {
    --container-columns: 10;
}
.container.container-8 {
    --container-columns: 8;
}
.container.container-6 {
    --container-columns: 6;
}
.container.container-5 {
    --container-columns: 5;
}
.container.container-4 {
    --container-columns: 4;
}

input[type="submit"],
.btn.btn-outline,
.btn.btn-secondary,
.btn.btn-primary {
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    border-radius: 6px;
    background-color: var(--c-orange-primary);
    color: var(--c-white);
    font-size: 0.75rem;
    line-height: 1.25;
    outline-width: 0px;
    text-transform: uppercase;
    padding-block: 0.875rem;
    padding-inline: 0.9375rem;
    font-family: "Bretagne";
    font-size: 0.875rem;
    line-height: 1.5714285714;
    transition:
        border-color 0.2s ease,
        outline-width 0.2s ease,
        color 0.2s ease,
        background-color 0.2s ease;
}

:focus-visible {
    outline-offset: 4px;
    outline: 0px solid currentColor;
    animation:
        focus-ring-in 0.2s forwards,
        focus-ring-out 0.2s 0.2s forwards;
}

@keyframes focus-ring-in {
    to {
        outline-width: 8px;
    }
}

@keyframes focus-ring-out {
    to {
        outline-width: 4px;
    }
}

:is(input[type="submit"], .btn.btn-outline, .btn.btn-secondary, .btn.btn-primary):focus-visible {
    outline-color: rgb(128 128 128 / 1);
}

/* ======================================== */
/* WPCF7 */
/* ======================================== */

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration,
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    display: none;
}

input[type="checkbox"],
input[type="radio"] {
    appearance: none;
    inline-size: var(--eg-form-checkbox-size);
    block-size: var(--eg-form-checkbox-size);
    background-color: var(--eg-form-checkbox-bg);
    flex-shrink: 0;
    cursor: pointer;
}

input[type="checkbox"] {
    border-radius: var(--eg-form-border-radius-checkbox);
}

input[type="radio"] {
    border-radius: var(--eg-form-border-radius-radio);
}

input[type="checkbox"]:checked,
input[type="radio"]:checked {
    background-color: var(--eg-form-checkbox-checked-bg);
    background-image: var(--eg-form-icon-check);
    background-repeat: no-repeat;
    background-position: center;
}

input[type="checkbox"]:focus-visible,
input[type="radio"]:focus-visible {
    outline: 2px solid var(--on-surface);
    outline-offset: 2px;
}

input:is([type="text"], [type="number"], [type="email"], [type="tel"]),
.wpcf7-styled textarea {
    inline-size: 100%;
    padding-block: var(--eg-form-input-padding-block);
    padding-inline: var(--eg-form-input-padding-inline);
    border: 1px solid var(--eg-form-input-border);
    background-color: var(--c-white);
    border-radius: var(--eg-form-border-radius-input);
    font-size: var(--eg-form-input-font-size);
    font-weight: var(--eg-form-input-weight);
    outline: none;
}

input:is([type="text"]),
.wpcf7-styled textarea {
    color: rgba(35, 35, 35, 0.3);
}

input::placeholder,
textarea::placeholder,
.wpcf7-styled label:has(input[type="file"]) > span:first-child {
    color: rgb(from var(--on-surface) r g b / 0.4);
}

.wpcf7-styled textarea {
    min-block-size: 6.875rem;
    field-sizing: content;
    resize: vertical;
}

input:is([type="text"], [type="number"], [type="email"], [type="tel"]):focus-visible,
.wpcf7-styled textarea:focus-visible {
    border-color: var(--accent);
    outline: 1px solid var(--accent);
    outline-offset: 0;
}

.wpcf7-styled label {
    font-size: 0.875rem;
    line-height: 1.571;
    letter-spacing: -0.01em;
    font-weight: var(--eg-form-label-weight);
    display: flex;
    flex-direction: column;
    gap: var(--eg-form-label-field-gap);
}

.wpcf7-styled .align-center {
    text-align: center;
}

.wpcf7-styled label:has(input[type="file"]) {
    overflow: hidden;
    display: grid;
    background-image: var(--eg-form-icon-file);
    background-repeat: no-repeat;
    background-position: calc(100% - 1rem) center;
    background-color: rgb(from currentColor r g b / 0.1);
    border: 1px solid transparent;
    border-radius: var(--eg-form-border-radius-input);
    padding-block: var(--eg-form-input-padding-block);
    padding-inline: var(--eg-form-input-padding-inline);
    cursor: pointer;
}

.wpcf7-styled label:has(input[type="file"]) > span:first-child {
    overflow: hidden;
    max-inline-size: calc(100% - 3rem);
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block;
}

.wpcf7-styled label:has(input[type="file"]) input[type="file"] {
    opacity: 0;
    width: 0.1px;
    height: 0.1px;
    position: absolute;
    z-index: -1;
}

.wpcf7-styled :is([data-class="wpcf7cf_group"], form) > p {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(var(--eg-form-field-min-width), 100%), 1fr));
    row-gap: var(--eg-form-gap-row);
    column-gap: var(--eg-form-gap-col);
}

.wpcf7-styled :is([data-class="wpcf7cf_group"], form) > p .wide {
    grid-column: 1 / -1;
}

.wpcf7-styled :is([data-class="wpcf7cf_group"], form) .wpcf7-submit {
    inline-size: 100%;
    margin-inline: auto;
    border-radius: var(--eg-form-border-radius-input);
}

.wpcf7-styled :is([data-class="wpcf7cf_group"], form) > p br,
.wpcf7-styled :is([data-class="wpcf7cf_group"], form) .wpcf7-spinner {
    display: none;
}

.wpcf7-styled :is([data-class="wpcf7cf_group"], form) .wpcf7-not-valid-tip {
    font-size: 0.75rem;
    margin-top: 0.25rem;
}

.wpcf7-styled .wpcf7-acceptance label {
    flex-direction: row;
    align-items: flex-start;
    gap: 0.75rem;
}

.wpcf7-styled .wpcf7-acceptance label span {
    text-box: trim-both cap alphabetic;
}

.wpcf7-styled .wpcf7-response-output {
    padding: 1rem;
    text-wrap: balance;
    font-size: 0.875rem;
    inline-size: 100%;
    border: 1px solid transparent;
    margin-block-start: 3rem;
    border-radius: var(--eg-form-border-radius-input);
}

.wpcf7-styled form.sent .wpcf7-response-output {
    background-color: #5ad66521;
    border-color: #5ad6659e;
}

.wpcf7-styled form.invalid .wpcf7-response-output {
    border-color: #ffb900cc;
}

/* ======================================== */
/* FONT*/
/* ======================================== */

@font-face {
    font-family: "GreedCondensedSemibold";
    src: url("assets/fonts/webFonts/GREED_CONDENSED/SEMIBOLD/GreedCondensed-SemiBold.woff2") format("woff2");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "GreedCondensedBold";
    src: url("assets/fonts/webFonts/GREED_CONDENSED/BOLD/GreedCondensed-Bold.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Circular";
    src: url("assets/fonts/webFonts/circular/CircularXX-Book.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Bretagne";
    src:
        url("assets/fonts/webFonts/bretagne_cucina_neretta_dw/bretagne_cucina-neretta_web.woff2") format("woff2"),
        url("assets/fonts/webFonts/bretagne_cucina_neretta_dw/bretagne_cucina-neretta_web.woff") format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

.text-blur-bg {
    font-family: "GreedCondensedSemibold";
    font-size: 10.625rem;
    line-height: 0.94117647;
    letter-spacing: -0.02em;
}

.text-blur-title {
    font-family: "GreedCondensedSemibold";
    font-size: 22.5rem;
    line-height: 0.972222222;
    letter-spacing: -0.02em;
}

.text-big-title {
    font-family: "GreedCondensedSemibold";
    font-size: 8.125rem;
    line-height: 0.923076923;
    letter-spacing: -0.02em;
}

.text-h1-desk {
    font-family: "GreedCondensedSemibold";
    font-size: 5.625rem;
    line-height: 0.911111111;
    letter-spacing: -0.02em;
}

.text-h2-desk {
    font-family: "GreedCondensedSemibold";
    font-size: 3.125rem;
    line-height: 1;
    letter-spacing: -0.02em;
}

.text-h3-desk {
    font-family: "GreedCondensedSemibold";
    font-size: 2.5rem;
    line-height: 1;
    letter-spacing: -0.01em;
}

.text-h4-desk {
    font-family: "GreedCondensedSemibold";
    font-size: 1.875rem;
    line-height: 1.13333333333;
    letter-spacing: -0.01em;
}

.text-h5-desk {
    font-family: "GreedCondensedSemibold";
    font-size: 1.5625rem;
    line-height: 1.12;
    letter-spacing: -0.01em;
}

.text-h6-desk {
    font-family: "GreedCondensedSemibold";
    font-size: 1.375rem;
    line-height: 1.0909090909;
    letter-spacing: -0.01em;
}

.text-body-large {
    font-family: "Circular";
    font-size: 1.125rem;
    line-height: 1.4444444444;
    letter-spacing: -0.02em;
}

.text-body {
    font-family: "Circular";
    font-size: 1rem;
    line-height: 1.5;
    letter-spacing: -0.02em;
}

.text-body-small {
    font-family: "Circular";
    font-size: 0.875rem;
    line-height: 1.5714285714;
    letter-spacing: -0.02em;
}

.text-detail-cta {
    font-family: "Bretagne";
    font-size: 0.875rem;
    line-height: 1.5714285714;
}

.text-label {
    font-family: "Bretagne";
    font-size: 1.125rem;
    line-height: 1.22222222;
}

body {
    color: var(--c-charcoal);
}

@media (max-width: 768px) {
    .text-h1-desk {
        font-size: 3.125rem;
        line-height: 1;
    }

    .text-h2-desk {
        font-size: 2.5rem;
        line-height: 1;
    }

    .text-h3-desk {
        font-size: 1.875rem;
        line-height: 1.133333333;
    }

    .text-h4-desk {
        font-size: 1.5625rem;
        line-height: 1.12;
    }

    .text-h5-desk {
        font-size: 1.375rem;
        line-height: 1.090909091;
    }

    .text-h6-desk {
        font-size: 1.125rem;
        line-height: 1.111111111;
    }
}

/*
* ==============================================
BREADCRUMB
* ==============================================
*/

#breadcrumbs {
    --breadcrumb-gap: 2rem;
    display: flex;
    gap: var(--breadcrumb-gap);
}

#breadcrumbs li:last-child {
    color: rgba(from var(--fg-color) r g b / 0.4);
}

#breadcrumbs li:not(:last-child) {
    position: relative;
}

#breadcrumbs li:not(:last-child)::after {
    content: "";
    opacity: 1;
    height: 8px;
    width: 5px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3LjQyIiBoZWlnaHQ9IjEzLjQyNyIgdmlld0JveD0iMCAwIDcuNDIgMTMuNDI3Ij4KICA8cGF0aCBpZD0iUGF0aF8xMzE4IiBkYXRhLW5hbWU9IlBhdGggMTMxOCIgZD0iTS0xMjI2NiwxMjg2NC4yNjhsNi4zNTktNi4zNTktNi4zNTktNi4zNiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIyNjYuMzU0IC0xMjg1MS4xOTQpIiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMSIvPgo8L3N2Zz4K");
    position: absolute;
    right: calc((-1 * var(--breadcrumb-gap) / 2));
    transform: translateX(50%) translateY(-40%);
    top: 50%;
}

@media only screen and (min-width: 768px) {
    #breadcrumbs {
        display: none;
    }
}

/* ====================================
 * HEADER
 * ====================================*/

header.egloo {
    position: fixed;
    top: 0.625rem;
    z-index: 1000;
    inline-size: 100%;
}

header {
    position: relative;
}

header {
    --dropdown-transition-duration: 0.2s;
    --_header-bg: var(--c-orange-primary);
    --_header-fg: var(--c-charcoal);
    position: sticky;
    top: 1.25rem;
    transition:
        top var(--dropdown-transition-duration) ease,
        translate 0.4s ease,
        background-color var(--dropdown-transition-duration) ease,
        color var(--dropdown-transition-duration) ease;
    z-index: 1000;
}

header.is-hidden {
    translate: 0 -150%;
}

header .header-bar-mobile {
    display: none;
}

body header[data-variation="transparent"] ~ main {
    margin-top: calc(-1 * var(--header-height));
}

header .header-bar {
    border-radius: 0.8125rem;
    background-color: var(--c-orange-primary);
    max-width: var(--header-width);
    margin-inline: auto;
    transition: border-radius var(--dropdown-transition-duration) ease;
}

header .header-bar > .container > .zones {
    block-size: var(--header-height);
    display: grid;
    grid-template-areas: "logo menu other";
    align-items: center;
    gap: var(--container-gap);
}

header .header-bar > .container > .zones > .zone.zone-logo {
    grid-area: logo;
}

header .header-bar > .container > .zones > .zone.zone-inline-start {
    grid-area: menu;
}

header .header-bar > .container > .zones > .zone.zone-inline-end {
    grid-area: other;
}

header .header-bar > .container > .zones .zone.zone-logo .img-wrapper {
    display: block;
    line-height: 0;
}

header .header-bar > .container > .zones .zone.zone-logo .img-wrapper svg {
    max-width: 100%;
}

header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level .sub-menu-wrapper-title {
    block-size: var(--header-height);
    display: grid;
    align-items: center;
    transition: color 0.2s ease;
}

@media (min-width: 1024px) {
    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level:where(:hover, :focus-within) .sub-menu-wrapper-title,
    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level .sub-menu-wrapper-title:where(:hover, :focus-visible) {
        color: var(--c-warm-white);
    }
}

header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level {
    --_gap-x: 1.875rem;
    display: flex;
    align-items: center;
}

header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .sub-menu-wrapper-title {
    padding-inline: calc(var(--_gap-x) / 2);
}

header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level:first-child .sub-menu-wrapper-title {
    padding-inline-start: 0;
}

header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level:last-child .sub-menu-wrapper-title {
    padding-inline-end: 0;
}

header .header-bar > .container > .zones .zone.zone-inline-end {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

header .header-bar > .container > .zones .zone.zone-inline-end .icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.875rem;
    height: 2.875rem;
    background-color: var(--c-light-mocha);
    color: var(--c-charcoal);
    border-radius: 8px;
}

header .header-bar > .container > .zones .zone.zone-inline-end .icon-wrapper span {
    display: none !important;
}

header .header-bar .zone-language-switcher {
    padding-block: 1.5rem;
    display: flex;
    gap: 2rem;
    align-items: center;
    border-top: 1px solid #0000001a;
    margin-left: calc(-1 * var(--container-x-padding));
    padding-left: var(--container-x-padding);
    overflow: auto;
    width: calc(100% + var(--container-x-padding) + var(--container-x-padding));
    padding-right: var(--container-x-padding);
    scrollbar-width: none;
}

header .header-bar .zone-language-switcher::-webkit-scrollbar {
    display: none;
}

header .header-bar .zone-language-switcher .lang {
    font-size: 0.875rem;
    line-height: 1.214286;
    font-weight: 500;
    color: rgba(from var(--fg-color) r g b / 0.4);
}

header .header-bar .zone-language-switcher .lang.lang-active {
    text-decoration: underline;
    color: var(--fg-color);
}

@media (min-width: 1024px) {
    .only-mobile {
        display: none !important;
    }
}

@media (max-width: 1023px) {
    .only-desktop {
        display: none !important;
    }
}

@media only screen and (max-width: 1023px) {
    html:has(body.mobile-menu-open) {
        overflow: hidden;
        touch-action: none;
    }

    header.egloo {
        position: fixed;
        top: 10px;
        margin-top: 0;
        background-color: transparent;
    }

    header {
        top: 10px;
        background-color: var(--_header-bg);
    }

    header .header-bar-mobile {
        display: block;
        max-width: calc(100% - 30px);
        margin-inline: auto;
        border-radius: 0.8125rem;
        background-color: var(--c-orange-primary);
        position: relative;
        z-index: 1;
    }

    header .header-bar-mobile .container {
        padding-inline: 0;
    }

    header .header-bar-mobile .zones {
        block-size: var(--header-height);
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-inline: 0.625rem 0.3125rem;
    }

    header .header-bar-mobile .zones .zone.zone-logo .img-wrapper {
        inline-size: 10rem;
        display: block;
        line-height: 0;
    }

    header .header-bar-mobile .zones .zone.zone-right #menu-opener {
        display: grid;
        place-items: center;
        width: 2.875rem;
        height: 2.875rem;
        background-color: var(--c-light-mocha);
        color: var(--c-charcoal);
        border-radius: 8px;
        line-height: 0;
        transition: scale 0.05s ease;
    }

    header .header-bar-mobile .zones .zone.zone-right #menu-opener:active {
        scale: 0.95;
    }

    header .header-bar-mobile .zones .zone.zone-right #menu-opener span {
        grid-column: -1/1;
        grid-row: -1/1;
        line-height: 0;
    }

    body:not(.mobile-menu-open) header .header-bar-mobile .zones .zone.zone-right #menu-opener span.close,
    body.mobile-menu-open header .header-bar-mobile .zones .zone.zone-right #menu-opener span.hamburger {
        display: none;
    }

    header .header-bar {
        --_gap-y: 2.5rem;
        position: fixed;
        background-color: var(--bg-color);
        inset-inline-start: 0;
        inset-block-start: 0;
        color: var(--fg-color);
        block-size: 100%;
        inline-size: 100%;
        max-width: none;
        margin-inline: 0;
        transform: translateX(100%);
        transition: transform 0.3s ease;
        border-radius: 0;
    }

    body.mobile-menu-open header .header-bar {
        transform: translateX(0);
    }

    header .header-bar > .container {
        display: grid;
        grid-template-rows: auto 1fr auto;
        block-size: 100%;
        position: relative;
        overflow-y: auto;
        overflow-x: hidden;
        scrollbar-width: none;
    }

    header .header-bar > .container > .zones {
        display: flex;
        flex-direction: column;
        height: auto;
        align-items: stretch;
        gap: 0;
        grid-template-areas: none;
        block-size: auto;
    }

    header .header-bar > .container > .zones .zone.zone-logo {
        display: none;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level {
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level .sub-menu-wrapper-title {
        padding: 0;
        height: auto;
        block-size: auto;
        padding-block: calc(var(--_gap-y) / 2);
        font-size: 2.5rem;
        line-height: 1;
        letter-spacing: -0.28px;
        font-weight: 500;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level label.sub-menu-wrapper-title {
        position: relative;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level label.sub-menu-wrapper-title a {
        width: fit-content;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level label.sub-menu-wrapper-title::after {
        content: "";
        position: absolute;
        inline-size: 0.6875rem;
        block-size: 1.1875rem;
        background-image: url("data:image/svg+xml,%3Csvg width='11' height='19' viewBox='0 0 11 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.5 1.5L9.5 9.50013L1.5 17.5' stroke='%23BB6645' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
        inset-inline-end: 0;
        background-size: contain;
        background-position: center center;
        background-repeat: no-repeat;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .sub-menu-wrapper .sub-menu-wrapper-body {
        position: static;
        display: none !important;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .sub-menu-wrapper .sub-menu-wrapper-body .menu-go-back {
        display: flex;
        align-items: center;
        gap: 1.875rem;
        background-color: var(--bg-color);
        padding-block-start: 6.125rem;
        padding-block-end: 2.5rem;
        position: sticky;
        inset-block-start: 0;
        z-index: 3;
        font-size: 2rem;
        line-height: 1;
        letter-spacing: -0.02em;
        font-weight: 600;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .sub-menu-wrapper .sub-menu-wrapper-body .menu-go-back .icon {
        color: var(--c-orange-primary);
        block-size: 1rem;
        inline-size: 0.5rem;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .sub-menu-wrapper .sub-menu-wrapper-body .menu-go-back .icon svg {
        inline-size: 100%;
        block-size: 100%;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .sub-menu-wrapper .sub-menu-wrapper-body .menu-title-mobile {
        padding-block-start: 1rem;
        padding-block-end: 3.25rem;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .sub-menu-wrapper .sub-menu-wrapper-body {
        display: block !important;
        block-size: 100%;
        inline-size: 100%;
        position: absolute;
        inset-block-start: 0;
        inset-inline-start: 0;
        transform: translateX(100%);
        overflow: auto !important;
        background-color: var(--bg-color);
        transition:
            transform 0.3s ease,
            opacity 0.3s ease !important;
        scrollbar-width: none;
        padding-inline: var(--container-x-padding);
        padding-block-end: 6.125rem;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item:has(.sub-menu-wrapper-title input:checked) .sub-menu-wrapper .sub-menu-wrapper-body {
        transform: translateX(0%);
        opacity: 1;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .sub-menu-wrapper .sub-menu-wrapper-body[data-menu-type="products"] .menu-wrapper {
        padding-block-start: 0;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .sub-menu-wrapper .sub-menu-wrapper-body[data-menu-type="products"] .menu-wrapper .container {
        padding: 0;
        row-gap: 2.5rem;
        column-gap: 1.25rem;
        isolation: isolate;
        --grid-item-width: 7rem;
    }

    header .header-bar .search-box {
        margin-block-end: 1.25rem;
        margin-block-start: 6.625rem;
    }

    header .header-bar .search-box form .search-wrapper {
        background-color: white;
        border-radius: 0.5rem;
        display: flex;
        align-items: center;
        padding-inline-end: 1.25rem;
    }

    header .header-bar .search-box form .search-wrapper button {
        line-height: 0;
    }

    header .header-bar .search-box form .search-wrapper input {
        height: 3.75rem;
        padding-inline-start: 1.25rem;
        padding-inline-end: 3.625rem;
        border: transparent;
        background-color: transparent;
        width: 100%;
        font-family: "Circular", sans-serif;
        color: inherit;
    }

    header .header-bar .search-box form .search-wrapper input::placeholder {
        opacity: 0.3;
    }

    header .header-bar .search-box form .search-wrapper svg {
        color: rgba(from var(--fg-color) r g b / 0.4);
    }

    header .header-bar .zone-language-switcher {
        padding-block: 1.875rem;
        display: flex;
        gap: 1.875rem;
        align-items: center;
        border-top: 1px solid transparent;
        margin-left: calc(-1 * var(--container-x-padding));
        padding-left: var(--container-x-padding);
        overflow: auto;
        width: calc(100% + var(--container-x-padding) + var(--container-x-padding));
        padding-right: var(--container-x-padding);
        scrollbar-width: none;
        background-color: white;
    }

    header .header-bar .zone-language-switcher::-webkit-scrollbar {
        display: none;
    }

    header .header-bar .zone-language-switcher .lang {
        font-size: 1rem;
        line-height: 1.5;
        font-weight: 600;
        color: rgba(from var(--fg-color) r g b / 0.4);
        text-transform: uppercase;
    }

    header .header-bar .zone-language-switcher .lang.lang-active {
        text-decoration: underline;
        color: var(--fg-color);
        text-underline-offset: 2px;
    }

    header .header-bar > .container > .zones .zone.zone-inline-end {
        flex-direction: column;
        justify-self: stretch;
        gap: 0;
    }

    header .header-bar > .container > .zones .zone.zone-inline-end .icon-wrapper {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 1rem;
        padding-block: 1.09375rem;
        width: auto;
        height: auto;
        background-color: transparent;
        border-radius: 0;
    }

    header .header-bar > .container > .zones .zone.zone-inline-end .icon-wrapper span {
        display: inline !important;
    }

    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level:has(.sub-menu-wrapper-title input:checked) .sub-menu-wrapper .sub-menu-wrapper-body[data-menu-type],
    header .header-bar > .container > .zones .zone:where(.zone-inline-start, .zone-inline-end) .menu-wrapper .menu-list.menu-list-first-level .menu-list-item-first-level .sub-menu-wrapper .sub-menu-wrapper-body[data-menu-type] {
        box-shadow: none !important;
    }
}

@media (min-width: 1024px) {
    header .header-bar > .container > .zones {
        grid-template-columns: auto 1fr auto;
    }

    header .header-bar > .container > .zones > .zone.zone-inline-start {
        justify-self: start;
        padding-inline-start: 5rem;
    }

    header .header-bar > .container {
        padding-inline: 0.625rem 0.3125rem;
        position: relative;
    }

    .sub-menu-wrapper-body {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        z-index: 100;
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows 0.2s ease;
        overflow: hidden;
    }

    .menu-list-item-first-level .sub-menu-wrapper-accordion-content {
        min-block-size: 0;
    }

    .menu-list-item-first-level:where(:hover, :has(:focus-visible)) .sub-menu-wrapper-body {
        grid-template-rows: 1fr;
    }
}

.sub-menu-wrapper-body[data-menu-type="products"] .menu-wrapper {
    background-color: var(--c-warm-white);
    border-radius: 0 0 0.5rem 0.5rem;
}

.sub-menu-wrapper-body[data-menu-type="products"] .menu-wrapper .container {
    padding-inline: 1.25rem;
    padding-block: 3.125rem;
    display: grid;
    --grid-item-width: 12.5rem;
    grid-template-columns: repeat(auto-fit, minmax(var(--grid-item-width), 1fr));
    grid-template-columns: repeat(auto-fit, minmax(min(var(--grid-item-width), 100%), 1fr));
    gap: 0.875rem;
}

.card.card-product {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.card.card-product .img-wrapper {
    position: relative;
    width: 100%;
    border-radius: 0.75rem;
    overflow: hidden;
    display: block;
    aspect-ratio: 4 / 5;
    background-color: var(--c-light-mocha);
}

.card.card-product .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.card.card-product .img-wrapper .layer-bg-default,
.card.card-product .img-wrapper .layer-bg-hover,
.card.card-product .img-wrapper .layer-machine {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
}

.card.card-product .img-wrapper .layer-bg-default {
    object-fit: cover;
    z-index: 1;
}

.card.card-product .img-wrapper .layer-bg-hover {
    background-color: var(--hover-color, transparent);
    z-index: 2;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.card.card-product .img-wrapper .layer-machine {
    object-fit: contain;
    z-index: 3;
    width: 65%;
    height: 65%;
    top: 17.5%;
    left: 17.5%;
}

.card.card-product:is(:hover, :has(:focus-visible)) .layer-bg-hover {
    opacity: 1;
}

.card.card-product .card-title {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.card.card-product .card-title .product-name {
    color: var(--c-charcoal);
    text-transform: uppercase;
}

.card.card-product .card-title .product-name::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
}

.card.card-product .card-title .product-link {
    color: var(--c-orange-primary);
    text-transform: uppercase;
    text-decoration: underline;
    text-underline-offset: 0.0625rem;
}

@media (max-width: 768px) {
    .card.card-product .card-title .product-name {
        font-size: 1.5625rem;
        line-height: 1.12;
    }

    .card.card-product,
    .card.card-product .card-title {
        gap: 0.5625rem;
    }
}

/* ====================================
 * FOOTER
 * ====================================*/

footer {
    background-color: var(--c-light-mocha);
}

footer .middle {
    min-block-size: 100vh;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: var(--container-gap);
    padding-top: 3.125rem;
    grid-template-rows: 1fr auto auto;
}

footer .middle .section {
    display: contents;
}

footer .middle .menus .menu .title--spacer {
    visibility: hidden;
    margin: 0;
}

footer .middle .section--top .menus {
    grid-column: 1 / span 6;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--container-gap);
    align-items: start;
}

footer .middle .section--middle .menus {
    grid-column: 7 / span 3;
    align-items: start;
}

footer .middle .menus .menu {
    display: flex;
    flex-direction: column;
    gap: 1.4888rem;
}

footer .middle .menus .menu .links ul {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

footer .middle .infos-wrapper {
    grid-column: 10 / span 3;
    display: flex;
}

footer .middle .infos-wrapper .social-group {
    display: flex;
    flex-direction: column;
    gap: 1.875rem;
}

footer .middle .infos-wrapper .social-group nav ul {
    display: flex;
    align-items: center;
    gap: 1rem;
}

footer .middle .infos-wrapper .social-group nav ul img {
    max-width: 1.9375rem;
    min-height: 1.9375rem;
}

footer .bottom {
    grid-column: 1 / -1;
    margin-top: 10.625rem;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    /*margin-bottom: 1.25rem;*/
}

footer .bottom .copyright {
    justify-self: start;
}

footer .bottom .iva {
    justify-self: end;
}

footer .bottom nav ul {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

footer .bottom-logo {
    grid-column: 1 / -1;
    margin-bottom: 1.25rem;
}

footer .copyright-mobile {
    display: none;
}

footer .email {
    text-decoration: underline;
}

@media (max-width: 768px) {
    footer .middle {
        min-block-size: unset;
        padding-block: 2.5rem;
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    footer .middle .section {
        display: block;
    }

    /* Section top: first 2 menus side by side */
    footer .middle .section--top {
        padding-bottom: 2.5rem;
        border-bottom: 1px solid var(--c-white);
    }

    footer .middle .section--top .menus {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: var(--container-gap);
    }

    /* Section middle: last menu + infos side by side */
    footer .middle .section--middle {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: var(--container-gap);
        padding-block: 2.5rem;
        border-bottom: 1px solid var(--c-white);
    }

    footer .middle .section--middle .menus,
    footer .middle .section--middle .infos-wrapper {
        grid-column: auto;
    }

    footer .middle .menus .menu .links ul {
        font-size: 1rem;
    }

    /* Hide copyright and P.IVA from desktop .bottom on mobile */
    footer .bottom .copyright,
    footer .bottom .iva {
        display: none;
    }

    footer .bottom {
        display: flex;
        margin-top: 2.5rem;
    }

    footer .bottom nav {
        flex-grow: 1;
        margin-block-end: 1.25rem;
    }

    footer .bottom nav ul {
        width: 100%;
        justify-content: space-between;
    }

    footer .bottom-logo {
        margin-block-start: 0;
        margin-bottom: 0;
    }

    /* Mobile-only copyright below logo */
    footer .copyright-mobile {
        display: block;
        text-align: center;
        padding-bottom: 0;
        padding-top: 1.25rem;
    }
}

/* ======================================== */
/* HERO VIDEO */
/* ======================================== */

section.hero-video .img-wrapper {
    min-block-size: 100svh;
}

/* ====================================
 * BLOCK SPLIT
 * ====================================
 */

section.block-split {
    color: var(--c-coffee);
    background-color: var(--c-light-mocha);
    --text-accent: var(--c-orange-primary);
}

section.block-split .layers {
    min-block-size: 40.625rem;
    position: relative;
}

section.block-split .layer {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

section.block-split .layers .layer-bg .zones .zone-img .img-wrapper,
section.block-split .layers .layer-bg .zones .zone-img,
section.block-split .layers .layer-bg .zones,
section.block-split .layers .layer-bg .wrap {
    block-size: 100%;
}

section.block-split .layers .layer-bg .zones {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--container-gap);
}

section.block-split[data-flipped="true"] .layers .layer-bg .container .zones .zone-img {
    order: 2;
}

section.block-split[data-flipped="true"] .layers .layer-fg .container .zones .zone-text {
    order: -1;
}

section.block-split[data-overflow="true"] .layers .layer-bg .container {
    padding-inline: 0;
    max-inline-size: none;
}

section.block-split .layers .layer-bg .container .zones,
section.block-split .layers .layer-bg .container {
    height: 100%;
}

section.block-split .layers .layer-fg .zones {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /*gap: var(--container-gap);*/
    gap: 4.5rem;
    align-items: center;
}

section.block-split .layers .layer-bg .container .zones .zone-img .img-wrapper {
    height: 100%;
    width: 100%;
}

section.block-split .layers .layer-bg .container .zones .zone-img .img-wrapper img {
    width: 100%;
    height: 100%;
    position: relative;
}

section.block-split .img-overlay {
    color: white;
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

section.block-split .img-overlay svg {
    max-width: 6.8625rem;
    max-height: 6.6525rem;
}

section.block-split .layers .layer-fg .container .zones .zone-text {
    text-align: center;
    padding-block-start: 5.75rem;
    padding-block-end: 5.75rem;
    max-inline-size: 38.625rem;
    margin-inline: auto;
}

section.block-split .layers .layer-fg .zones .zone-text .title {
    margin-bottom: 6.625rem;
}

section.block-split[data-align-start="true"] .layers .layer-fg .zones {
    align-items: start;
}

section.block-split[data-bigger-img="false"] .layers .layer-fg .zones .zone-text {
    margin-inline: auto;
}

section.block-split:where(#trust) .layers {
    margin-top: 0;
    min-height: 48.125rem;
}

@media (max-width: 912px) {
    section.block-split .layers .layer-bg .zones {
        display: block;
    }

    section.block-split .layers .layer-bg .zones .zone-img .img-wrapper {
        aspect-ratio: 393/420;
    }

    section.block-split .layers,
    section.block-split .layers .layer-fg .zones {
        display: flex;
        flex-direction: column-reverse;
        gap: 0;
        min-height: unset;
    }

    section.block-split .layers .layer-fg .container .zones .zone-text {
        padding-block: 5rme;
    }

    section.block-split .layers .layer-fg .zones .zone-text .title {
        margin-block-end: 2lh;
    }

    section.block-split .layers .layer-fg .zones .zone-text :is(.title, .description) {
        font-size: 1.875rem;
        line-height: 1.133333333;
    }

    section.block-split .layers .layer-fg .zones .zone-text :is(.title, .description) br {
        display: none;
    }

    section.block-split .img-overlay svg {
        max-inline-size: 3.5rem;
        max-block-size: 3.5rem;
    }
}

/* ====================================
 * PRODUCTS-FRONT
 * ====================================
 */

section.products-front {
    padding-block: 7.5rem;
    background-color: var(--c-warm-white);
}

section.products-front .container {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}

section.products-front .top .title {
    text-align: center;
}

section.products-front .products-grid .wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(18.75rem, 100%), 1fr));
    gap: 1.25rem;
    width: 100%;
}

@media (max-width: 768px) {
    section.products-front {
        padding-block: 5rem;
    }

    section.products-front .products-grid .wrapper {
        gap: 2.5rem 1.25rem;
        grid-template-columns: repeat(auto-fit, minmax(min(8.25rem, 100%), 1fr));
    }
}

/* ====================================
 * BANNER SIMPLE
 * ====================================
 */

section.banner.banner-simple .layers {
    position: relative;
    min-block-size: 25.0625rem;
    overflow: hidden;
}

section.banner.banner-simple .layers .layer.layer-fg {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    padding-block: 2rem;
}

section.banner.banner-simple .layers .layer.layer-fg .text-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

@media (max-width: 768px) {
    section.banner.banner-simple .layers {
        min-block-size: 18.75rem;
    }
}

/* ====================================
 * PRODUCT-HERO
 * ====================================
 */

.product-hero {
    position: relative;
    overflow: hidden;
    min-height: 770px;
}

.product-hero .container {
    position: relative;
    height: 100%;
}

.product-hero .hero-layers {
    position: relative;
    min-height: 620px;
    display: flex;
    align-items: stretch;
    justify-content: center;
}

.product-hero .layer-text {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    z-index: 1;
}

.product-hero .layer-text svg {
    position: absolute;
    block-size: 550px;
    max-width: 100%;
    top: -30px;
    opacity: 0;
    transition: opacity 0.6s ease;
}

.product-hero .layer-text svg.is-ready {
    opacity: 1;
}

.product-hero .layer-img {
    z-index: 2;
}

.product-hero .hero-image {
    margin-top: 250px;
    margin-bottom: 50px;
    max-width: 256px;
}

@media (max-width: 768px) {
    .product-hero .hero-image {
        margin-top: 0;
        margin-bottom: 0;
    }

    .product-hero .hero-layers {
        flex-direction: column;
        padding-block: 7.875rem 3.75rem;
        min-block-size: unset;
    }

    .product-hero .layer-img {
        max-inline-size: 13.8125rem;
        block-size: fit-content;
        margin-block-start: 1.875rem;
        margin-inline: auto;
    }

    .product-hero .layer-text {
        position: static;
        font-size: 1rem;
    }

    .product-hero {
        min-height: unset;
    }
}

/* ====================================
 * PRODUCT SECTION TEXT
 * ====================================
 */

.product-section-text {
    display: flex;
    align-items: center;
    min-height: 29rem;
    padding-block: 2rem;
}

.product-section-text .text-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

@media (max-width: 768px) {
    .product-section-text {
        min-block-size: unset;
        padding-block: 5rem;
    }
}

/* ====================================
 * PRODUCT SPLITS
 * ====================================
 */

.product-splits {
    background-color: var(--split-bg);
}

.product-splits .layers {
    position: relative;
    min-height: 48.125rem;
}

.product-splits .layers .layer-fg .zones,
.product-splits .layers .layer-bg .zones {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    height: 100%;
}

.product-splits .layers .layer-fg .container {
    height: 100%;
}

.product-splits .layers .layer-fg .zones {
    align-items: center;
    gap: var(--container-gap);
}

.product-splits .layers .layer-bg .container .zones,
.product-splits .layers .layer-bg .container {
    height: 100%;
}

.product-splits .layers .layer-bg .zones .zone-img .img-wrapper {
    height: 100%;
    width: 100%;
}

.product-splits .split-icon {
    color: var(--split-svg);
}

.product-splits .split-icon svg {
    height: auto;
}

.product-splits .link .btn {
    background-color: var(--split-btn-bg);
    color: var(--split-bg, var(--c-white));
}

.product-splits .zone-text .title {
    text-transform: uppercase;
    color: var(--split-title);
}

/* desccription */

.product-splits[data-with-description="false"] .layers .layer-fg .zones .zone-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    block-size: 100%;
    justify-content: space-between;
    padding-block: 3.125rem;
}

.product-splits[data-with-description="false"] .layers .layer-fg .zones .zone-text .title {
    text-wrap: balance;
    text-align: inherit;
    color: var(--split-title);
}

.product-splits[data-with-description="false"] .layers .layer-fg .zones .zone-text .description {
    color: var(--split-desc);
}

.product-splits[data-with-description="true"] .layers .layer-fg .zones .zone-text {
    align-items: flex-start;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.product-splits[data-with-description="true"] .layers .layer-fg .zones .zone-text {
    align-items: flex-start;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.product-splits[data-with-description="true"] .link,
.product-splits[data-with-description="true"] .description {
    margin-top: auto;
    color: var(--split-desc);
}

.product-splits[data-with-description="true"] .description + .link {
    margin-top: 3.125rem;
}

.product-splits[data-with-description="true"] .layers .zone-text {
    padding-block: 3.125rem;
    max-inline-size: 38.625rem;
}

/* flipped */

.product-splits[data-flipped="true"] .layers .layer-bg .zones .zone-img,
.product-splits[data-flipped="false"] .layers .zone-text {
    grid-column: 2;
}

.product-splits[data-flipped="true"] .layers .layer-bg .zones .zone-img {
    order: 2;
    /* padding: 3.125rem; */
    /* box-sizing: border-box; */
}

.product-splits[data-flipped="true"] .layers .layer-fg .zones .zone-text {
    order: -1;
}

.product-splits[data-flipped="true"] .layers .layer-bg .wrap {
    padding-inline: 0;
}

.product-splits[data-flipped="true"] .layers .layer-bg .zones .zone-img .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* contained */
.product-splits[data-contained="true"] .layers .layer-bg .zones .zone-img {
    padding: 3.125rem;
    box-sizing: border-box;
}

.product-splits[data-contained="true"] .layers .layer-bg .zones .zone-img .img-wrapper {
    border-radius: 12px;
}

@media (max-width: 768px) {
    .product-splits .layers .layer-fg .zones,
    .product-splits .layers .layer-bg .zones {
        min-block-size: unset;
        display: block;
    }

    .product-splits .layers {
        display: flex;
        flex-direction: column;
    }

    .product-splits[data-flipped="true"]:not([data-contained="true"][data-with-description="true"]) .layers {
        flex-direction: column-reverse;
    }

    .product-splits .split-icon {
        max-inline-size: 4.375rem;
    }

    .product-splits .split-icon svg {
        inline-size: 100%;
    }

    .product-splits[data-with-description="false"] .layers .layer-fg .zones .zone-text {
        padding-block: 5rem;
        gap: 3.75rem;
    }

    .product-splits .layers .layer-bg .zones .zone-img .img-wrapper {
        aspect-ratio: 393/420;
    }

    .product-splits[data-with-description="true"] .description + .link {
        margin-block-start: 2.5rem;
    }

    .product-splits[data-with-description="true"] .zone-text .title {
        margin-block-end: 5rem;
    }

    .product-splits[data-with-description="true"] .layers .zone-text {
        padding-block: 5rem;
    }

    .product-splits .description.text-body-large {
        font-size: 1rem;
        line-height: 1.5;
    }

    .product-splits[data-contained="true"] .layers .layer-bg .zones .zone-img {
        padding: 0;
    }

    .product-splits[data-with-description="true"][data-contained="true"] .layers {
        padding-inline: var(--container-x-padding);
        padding-block: 5rem;
        gap: 2.5rem;
    }

    .product-splits[data-with-description="true"][data-contained="true"] .description + .link,
    .product-splits[data-with-description="true"][data-contained="true"] .zone-text .title {
        margin: 0;
    }

    .product-splits[data-with-description="true"][data-contained="true"] .layers .layer-fg,
    .product-splits[data-with-description="true"][data-contained="true"] .layers .layer-fg .container,
    .product-splits[data-with-description="true"][data-contained="true"] .layers .layer-fg .zones,
    .product-splits[data-with-description="true"][data-contained="true"] .layers .layer-fg .zones .zone-text {
        display: contents;
    }

    .product-splits[data-with-description="true"][data-contained="true"] .zone-text .title {
        order: -1;
    }
}

/* ====================================
 * CAROUSEL IMMAGINI
 * ====================================
 */

.carousel-img-block .carousel-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
}

.carousel-img-block .carousel-item .img-wrapper {
    aspect-ratio: 479/385;
}

@media (max-width: 768px) {
    .carousel-img-block .carousel-grid {
        display: block;
    }

    .carousel-img-block .carousel-grid:has(.carousel-item:nth-child(6)) {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-auto-flow: row dense;
    }

    .carousel-img-block .carousel-grid:has(.carousel-item:nth-child(6)) .carousel-item:nth-child(5),
    .carousel-img-block .carousel-grid:has(.carousel-item:nth-child(6)) .carousel-item:nth-child(2) {
        grid-column: -1/1;
    }
}

/* ====================================
 * PRODUCT FG-MACHINE
 * ====================================
 */

.product-fg-machine {
    position: relative;
    overflow: hidden;
}

.product-fg-machine .layers {
    position: relative;
    min-block-size: 48.125rem;
}

.product-fg-machine .layer {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.product-fg-machine .layer-bg {
    z-index: 1;
}

.product-fg-machine .layer-bg .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.product-fg-machine .layer-fg {
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.product-fg-machine .layer-fg .img-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-fg-machine .layer-fg .img-wrapper img {
    width: 100%;
    max-width: 65.75rem;
    height: auto;
    object-fit: contain;
}

@media (max-width: 768px) {
    .product-fg-machine .layer-fg {
        padding-block: 5rem;
        padding-inline: 1.625rem;
    }
}

/* ====================================
 * TECH SPECS BLOCK
 * ====================================
 */

.product-tech-specs {
    padding-block: 7.5rem;
    background-color: var(--c-warm-white);
}

.product-tech-specs .specs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 25rem), 1fr));
    gap: 1.2369rem;
}

.product-tech-specs .spec-card {
    border-radius: 0.75rem;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 37.5rem;
    justify-content: space-between;
}

.product-tech-specs .card-text {
    padding: 30px;
}

.product-tech-specs .spec-title {
    text-transform: uppercase;
    text-align: center;
    color: var(--title-color);
}

.product-tech-specs .spec-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
}

.product-tech-specs .spec-list li {
    display: flex;
    justify-content: space-between;
    padding-block: 1.3125rem;
    border-bottom: 1px solid var(--c-warm-white);
}

.product-tech-specs .spec-list li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.product-tech-specs .spec-text {
    color: var(--text-color);
}

.product-tech-specs .spec-value {
    color: var(--value-color);
}

.product-tech-specs .spec-list li {
    display: flex;
    text-transform: uppercase;
}

.product-tech-specs .card-image {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.product-tech-specs .card-image .img-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    max-height: 469px;
}

.product-tech-specs .card-image img {
    width: 100%;
    height: 100%;
    max-height: 469px;
    max-width: 300px;
    object-fit: contain;
}

@media (max-width: 768px) {
    .product-tech-specs {
        padding-block: 5rem;
    }

    .product-tech-specs .spec-card {
        min-height: 25.75rem;
    }

    .product-tech-specs .card-text {
        padding: 1.75rem;
    }

    .product-tech-specs .card-image .img-wrapper {
        max-block-size: 20.0625rem;
    }
}

/* ====================================
 * PRODUCT -BROCHURE
 * ====================================
 */

.product-brochure {
    position: relative;
    background-color: var(--c-light-mocha);
}

.product-brochure .container {
    padding-block: 120px;

    text-align: center;
}

.product-brochure .text {
    filter: blur(min(0.5vw, 8px));
    text-align: center;
    font-size: min(10vw, 170px);
    -webkit-text-stroke: 0.02em;
}

@media (max-width: 768px) {
    .product-brochure .container {
        padding-block: 5rem;
    }

    .product-brochure .text {
        font-size: min(12vw, 170px);
    }
}

/* ====================================
 * BREWING CULTURE PAGE
 * ====================================
 */

/* ====================================
 * CULTURE HERO BLOCK
 * ====================================
 */

.culture-hero {
    position: relative;
    background-color: var(--c-navy);
    display: flex;
    align-items: center;
    padding-top: 11.625rem;
    padding-bottom: 7.5rem;
    overflow: hidden;
}

.culture-hero .container {
    position: relative;
    height: 100%;
    width: 100%;
}

.culture-hero .text {
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    z-index: 1;
    margin-bottom: 150px;
}

.culture-hero .text span {
    margin-top: 100px;
    filter: blur(10px);
}

.culture-hero .wrap {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
}

.culture-hero .text-wrap {
    display: flex;
    flex-direction: column;
    gap: 8rem;
}

.culture-hero .title {
    color: var(--c-warm-white);
    text-transform: uppercase;
}

.culture-hero .desc {
    color: var(--c-peppermint);
}

.culture-hero .img-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

.culture-hero .img-wrap img {
    display: block;
    max-width: 100%;
    block-size: 0;
    min-block-size: 100%;
    object-fit: contain;
}

@media (max-width: 768px) {
    .culture-hero {
        padding-block: 8rem 5rem;
    }

    .culture-hero .wrap {
        display: flex;
        flex-direction: column;
    }

    .culture-hero .text-wrap {
        gap: 2.5rem;
    }

    .culture-hero .desc {
        font-size: 1rem;
        line-height: 1.5;
    }

    .culture-hero .img-wrap {
        margin-block-start: 2.5rem;
    }

    .culture-hero .img-wrap img {
        block-size: auto;
        max-block-size: 29.375rem;
    }
}

/* ====================================
 * CULTURE -TIMELINE
 * ====================================
 */

.culture-timeline {
    --_icon-size: 49px;
    --_element-width: clamp(13.5rem, 20vw, 25rem);
    --_element-gap: clamp(2rem, 5vw, 5rem);
    --_circle-radius: min(110vw, 72.5rem);
    background-color: var(--c-butter-yellow);
    padding-block: 7.5rem 18.5rem;
    overflow: hidden;
    cursor: grab;
    -webkit-user-select: none;
    user-select: none;
}

.culture-timeline:active {
    cursor: grabbing;
}

.culture-timeline .container {
    position: relative;
}

.culture-timeline .text {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    z-index: 1;
    margin-block-end: 15.875rem;
}

.culture-timeline .text svg {
    block-size: 300px;
    max-width: 100%;
}

.culture-timeline .timeline {
    inline-size: var(--_element-width);
    margin-inline: auto;
    overflow: visible;
    transform-origin: center calc(var(--_circle-radius) + var(--_icon-size) / 2);
}

.culture-timeline .timeline .timeline-wrapper {
    position: relative;
}

.culture-timeline .timeline-track {
    pointer-events: none;
    inline-size: calc(var(--_circle-radius) * 2);
    block-size: calc(var(--_circle-radius) * 2);
    position: absolute;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    translate: -50% 0;
    rotate: calc(var(--_carousel-rotation, 0) * 1deg);
}

.culture-timeline .timeline-element {
    color: var(--c-coffee);
    transition: color 0.15s ease;
    text-align: center;
    inline-size: var(--_element-width);
    -webkit-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
    position: absolute;
    inset-inline-start: 0;
    inset-block-start: calc(var(--_icon-size) / -2);
    display: flex;
    flex-direction: column;
    align-items: center;
    transform-origin: center calc(var(--_circle-radius) + var(--_icon-size) / 2);
    rotate: calc(var(--index) * var(--_angle-per-element) + var(--_carousel-rotation, 0) * 1deg);
}

.culture-timeline .timeline-element.is-active {
    color: black;
}

.culture-timeline .timeline-element * {
    -webkit-user-drag: none;
    pointer-events: none;
}

.culture-timeline .timeline-element-title {
    inline-size: 100%;
    font-size: 4.5rem;
    line-height: 1;
    font-family: "GreedCondensedSemibold";
    letter-spacing: -0.02em;
    font-weight: 600;
    position: absolute;
    inset-block-end: 6.875rem;
    inset-inline-start: 50%;
    translate: -50%;
}

.culture-timeline .timeline-element-description {
    inline-size: 100%;
    inset-inline-start: 50%;
    translate: -50%;
    text-align: center;
    position: absolute;
    inset-block-start: 9.375rem;
    opacity: 0;
    transition: opacity 0.15s ease;
}

.culture-timeline .timeline-element.is-active .timeline-element-description {
    opacity: 1;
}

.culture-timeline .timeline-element.is-active .timeline-element-description::after {
    content: "";
    position: absolute;
    height: 1.875rem;
    border-inline-end: 1px dashed var(--c-coffee);
    scale: 1 2;
    inset-block-end: calc(100% + 2.2rem);
}

@media (max-width: 768px) {
    .culture-timeline {
        padding-block: 5rem 15.8125rem;
    }

    .culture-timeline .timeline-element-title {
        font-size: 3.125rem;
        line-height: 1;
        inset-block-end: calc(2.5rem + 3.125rem);
    }

    .culture-timeline .text {
        margin-block-end: 13.625rem;
    }

    .culture-timeline .text svg {
        block-size: auto;
        margin-block: -40px;
    }

    .culture-timeline .timeline-element-description {
        inset-block-start: 5rem;
    }

    .culture-timeline .timeline-element.is-active .timeline-element-description::after {
        content: initial;
    }
}

/* ====================================
 * CULTURE -SPLIT
 * ====================================
 */

.culture-split {
    color: var(--c-warm-white);
    background-color: var(--c-coffee);
    --text-accent: var(--c-lilac);
    padding: 7.5rem 0;
}

body.page-template-brewing-culture .culture-split {
    padding-block-start: 0;
}

.culture-split .container {
    position: relative;
    width: 100%;
}

.culture-split .wrap {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    gap: 4.4375rem;
}

.culture-split .text-wrap {
    display: flex;
    flex-direction: column;
}

.culture-split .img-wrap {
    height: 100%;
    border-radius: 0.75rem;
    overflow: hidden;
}

.culture-split .img-wrap img {
    display: block;
    max-width: 100%;
    object-fit: contain;
}

@media (max-width: 768px) {
    .culture-split {
        padding-block: 5rem;
    }

    .culture-split .wrap {
        display: flex;
        flex-direction: column;
        gap: 2.5rem;
    }
}

/* ====================================
 * CULTURE -LABEL-LIST
 * ====================================
 */

.culture-label-list {
    position: relative;
    background-color: var(--c-navy);
    min-height: 688px;
    display: flex;
    align-items: center;
    padding: 120px 0;
    overflow: hidden;
}

.culture-label-list .container {
    position: relative;
    height: 100%;
    width: 100%;
}

.culture-label-list .wrap {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
}

.culture-label-list .title-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.culture-label-list .title {
    color: var(--c-warm-white);
    text-transform: uppercase;
}

.culture-label-list .texts-list {
    display: flex;
    flex-direction: column;
    gap: 38px;
    color: var(--c-warm-white);
}

.culture-label-list .label-list-wrap {
    display: grid;
}

.culture-label-list .label-list-wrap > * {
    grid-area: 1/1;
}

.culture-label-list .label-list-wrap ul[inert] {
    color: var(--c-peppermint);
    clip-path: inset(0 0 100% 0);
}

@media (max-width: 768px) {
    .culture-label-list {
        padding-block: 5rem;
    }

    .culture-label-list .wrap {
        display: flex;
        flex-direction: column;
        gap: 2.5rem;
    }

    .culture-label-list .texts-list {
        gap: 2rem;
    }
}

/* ====================================
 * WHY US PAGE
 * ====================================
 */

/* ====================================
 * WHY US HERO
 * ====================================
 */

.us-hero {
    position: relative;
    background-color: var(--c-light-mocha);
    min-height: 1398px;
    display: flex;
    align-items: center;
    padding-top: 166px;
    padding-bottom: 120px;
    overflow: hidden;
}

.us-hero .container {
    position: relative;
    height: 100%;
    width: 100%;
}

.us-hero .text {
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    z-index: 1;
    margin-bottom: 120px;
}

.us-hero .text span {
    margin-top: 100px;
    filter: blur(10px);
}

.us-hero .wrap {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
}

.us-hero .text-wrap {
    display: flex;
    flex-direction: column;
}

.us-hero .title {
    color: var(--c-coffee);
    text-transform: uppercase;
}

.us-hero .info-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.us-hero .info-list li {
    padding: 3rem;
    border-radius: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    color: var(--c-warm-white);
}

.us-hero .info-list li:nth-child(odd) {
    background-color: var(--c-orange-primary);
}

.us-hero .info-list li:nth-child(even) {
    background-color: var(--c-coffee);
}

.us-hero .info-list li .title-list {
    display: block;
    text-transform: uppercase;
}

.us-hero .info-list li .desc {
    width: 471px;
}

/* ====================================
 * WHY US SPLIT
 * ====================================
 */

.us-split {
    position: relative;
    background-color: var(--c-navy);
    min-height: 914px;
    display: flex;
    align-items: center;
    padding: 120px 0;
    overflow: hidden;
}

.us-split .wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    gap: 4.5625rem;
}

.us-split .text-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.us-split .title {
    color: var(--c-lilac);
    text-transform: uppercase;
    margin-bottom: 3.125rem;
}

.us-split .info-list {
    display: flex;
    flex-direction: column;
    gap: 3.125rem;
}

.us-split .info-list li {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.25rem;
}

.us-split .title-list {
    background-color: var(--c-lilac);
    color: var(--c-navy);
    padding: 5px 15px;
    border-radius: 0.375rem;
    text-transform: uppercase;
}

.us-split .desc {
    color: var(--c-warm-white);
}

.us-split .img-wrap {
    width: 100%;
    height: 100%;
    border-radius: 0.75rem;
    overflow: hidden;
}

.us-split .img-wrap img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 768px) {
    .us-split {
        padding-block: 5rem;
    }

    .us-split .title {
        font-size: 3.125rem;
        margin-bottom: 2.5rem;
    }

    .us-split .wrap {
        display: flex;
        flex-direction: column;
        gap: 2.5rem;
    }

    .us-split .info-list {
        gap: 2.5rem;
    }

    .us-split .title-list {
        font-size: 1.375rem;
    }

    .us-split .desc {
        font-size: 1rem;
    }
}

/* ====================================
 * WHY US INFO SECTION
 * ====================================
 */

.us-sectioninfo {
    position: relative;
    background-color: var(--c-butter-yellow);
    display: flex;
    align-items: center;
    padding: 120px 0;
    overflow: hidden;
}

.us-sectioninfo .container {
    position: relative;
    height: 100%;
    width: 100%;
}

.us-sectioninfo .text {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-bottom: 120px;
    text-align: center;
}

.us-sectioninfo .text span {
    filter: url("#noisy-blur");
}

.us-sectioninfo .info-list {
    display: flex;
    flex-direction: column;
}

.us-sectioninfo .info-list li {
    display: flex;
    align-items: flex-start;

    padding-bottom: 50px;
    margin-bottom: 50px;

    background-image: linear-gradient(to right, var(--c-coffee) 50%, transparent 50%);
    background-position: bottom left;
    background-size: 40px 1px;
    background-repeat: repeat-x;
}

.us-sectioninfo .info-list li:last-child {
    background-image: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.us-sectioninfo .info-list li .text-wrap {
    width: 335px;
    flex-shrink: 0;
    margin-right: 139px;
}

.us-sectioninfo .info-list li .desc-wrap {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}

.us-sectioninfo .info-list li .desc-wrap:nth-child(2) {
    margin-right: 80px;
}

.us-sectioninfo .text-list {
    text-transform: uppercase;
    color: var(--c-charcoal);
}

.us-sectioninfo .bg-label {
    color: var(--c-warm-white);
    padding: 5px 15px;
    border-radius: 5px;
}

.us-sectioninfo .title-challenge {
    background-color: var(--c-coffee);
}

.us-sectioninfo .title-answer {
    background-color: var(--c-orange-primary);
}

.us-sectioninfo .desc {
    color: var(--c-charcoal);
}

@media (max-width: 768px) {
    .us-sectioninfo {
        padding-block: 8rem 5rem;
    }

    .us-sectioninfo .text {
        font-size: 6.25rem;
        line-height: 0.9;
        -webkit-text-stroke: 0.05em;
        margin-block-end: 5rem;
    }

    .us-sectioninfo .text span {
        filter: blur(0.3rem);
    }

    .us-sectioninfo .info-list li {
        padding-block-end: 2.5rem;
        margin-block-end: 2.5rem;
        flex-direction: column;
        gap: 2.5rem;
    }

    .us-sectioninfo .info-list li .desc {
        font-size: 1rem;
    }
}

/* ====================================
 * WHY US COUNTER SECTION
 * ====================================
 */

.us-sectioncount {
    position: relative;
    background-color: var(--c-peppermint);
    color: var(--c-charcoal);
    padding: 120px 0;
}

.us-sectioncount .container {
    display: flex;
    flex-direction: column;
}

.us-sectioncount .top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 80px;
}

.us-sectioncount .title {
    text-transform: uppercase;
    max-width: 927px;
}

.us-sectioncount .logo img {
    max-height: 49.3px;
    width: auto;
    object-fit: contain;
}

.us-sectioncount .info-list {
    display: flex;
    flex-direction: column;
    gap: 80px;
    margin-bottom: 3.125rem;
}

.us-sectioncount .info-list li {
    display: grid;
    grid-template-columns: 3fr 7fr;
    gap: 8.6875rem;
    align-items: start;
}

.us-sectioncount .texts-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.875rem;
}

.us-sectioncount .title-left {
    background-color: var(--c-warm-white);
    color: var(--c-charcoal);
    padding: 0.3125rem 0.9375rem;
    border-radius: 0.375rem;
}

.us-sectioncount .desc {
    color: var(--c-charcoal);
    width: 21rem;
}

.us-sectioncount .graph-wrap {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.us-sectioncount .title-right {
    text-transform: uppercase;
    display: block;
}

.us-sectioncount .dots-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 6.34px;
}

.us-sectioncount .dot {
    display: block;
    width: 27.5px;
    height: 27.5px;
    border-radius: 50%;
}

.us-sectioncount .note {
    display: flex;
    justify-content: flex-end;
}

@media (max-width: 768px) {
    .us-sectioncount {
        padding-block: 5rem;
    }

    .us-sectioncount .top {
        display: flex;
        flex-direction: column-reverse;
        gap: 1.25rem;
    }

    .us-sectioncount .info-list li {
        display: flex;
        flex-direction: column;
        gap: 1.25rem;
    }

    .us-sectioncount .texts-wrap {
        gap: 1.25rem;
    }

    .us-sectioncount .info-list {
        margin-block-end: 5rem;
    }

    .us-sectioncount .note {
        justify-content: center;
        text-align: center;
    }
}

/* ====================================
 * WHY US PATENTS SECTION
 * ====================================
 */

.us-patents {
    background-color: var(--c-warm-white);
    padding: 120px 0;
}

.us-patents .container {
    display: flex;
    flex-direction: column;
}

.us-patents .top-wrap {
    display: grid;
    grid-template-columns: 3fr 7fr;
    gap: 5rem;
    align-items: center;
}

.us-patents .title-left {
    text-transform: uppercase;
    margin: 0;
}

.us-patents .desc {
    max-width: 688px;
}

.us-patents .logos-wrap {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
    gap: 1.25rem;
    padding: 5rem 0;
}

.us-patents .logo-card {
    background-color: var(--c-white);
    border-radius: 0.75rem;
    padding: 2.0625rem;
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 4 / 3;
}

.us-patents .logo-card img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.us-patents .bottom-wrap {
    display: flex;
    justify-content: flex-end;
}

.us-patents .title-right {
    text-transform: uppercase;
    margin: 0;
}

@media (max-width: 768px) {
    .us-patents {
        padding-block: 5rem;
    }
    .us-patents .top-wrap {
        display: flex;
        flex-direction: column;
        gap: 2.5rem;
        text-align: start;
        align-items: stretch;
    }

    .us-patents .logos-wrap {
        padding-block: 2.5rem;
        display: flex;
        overflow: auto;
        scrollbar-width: none;
        position: relative;
        padding-inline: var(--container-x-padding);
        inline-size: calc(100% + (2 * var(--container-x-padding)));
        inset-inline-start: calc(-1 * var(--container-x-padding));
    }

    .us-patents li {
        flex-shrink: 0;
    }

    .us-patents .logo-card {
        padding: 1rem;
        aspect-ratio: 167/117;
        block-size: 117px;
    }
}

/* ====================================
 * MARQUEE BLOCK
 * ====================================
 */

.marquee-block {
    background-color: var(--c-coffee);
    color: var(--c-light-mocha);
    overflow: hidden;
    display: flex;
    align-items: center;
    block-size: 6.25rem;
}

.marquee-block .marquee-wrap {
    display: flex;
    width: max-content;
    animation: scroll-titles 120s linear infinite;
}

.marquee-block .marquee-content {
    display: flex;
    align-items: center;
    gap: 3.0537rem;
    padding-right: 3.0537rem;
}

@keyframes scroll-titles {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-100%);
    }
}

.marquee-block .marquee-text {
    text-transform: uppercase;
    white-space: nowrap;
    line-height: 0;
}

.marquee-block .marquee-icon {
    display: flex;
    justify-content: center;
    align-items: center;
}

.marquee-block .marquee-icon img {
    height: 40px;
    width: auto;
    object-fit: contain;
}

@media (max-width: 768px) {
    .marquee-block {
        block-size: 5rem;
    }
}

/* ====================================
 * ANIMATION TEXTS AND IMAGES BLOCK
 * ====================================
 */

.animation-texts-block {
    background-color: var(--c-coffee);
    padding: 7.5rem 0;
    overflow: hidden;
}

.animation-texts-block .inline-content-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.animation-texts-block .inline-row {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0 1.875rem;
    flex-wrap: wrap;
}

.animation-texts-block .inline-text {
    text-transform: uppercase;
    white-space: nowrap;
}

.animation-texts-block .inline-img-wrap {
    height: 5.835rem;
    border-radius: 0.75rem;
    overflow: hidden;
    display: flex;
}

.animation-texts-block .inline-img-wrap img {
    height: 100%;
    width: auto;
    min-width: 16.2087rem;
    object-fit: cover;
}

@media (max-width: 768px) {
    .animation-texts-block {
        padding-block: 5rem;
    }

    .animation-texts-block,
    .animation-texts-block .text-big-title {
        font-size: 4rem;
        line-height: 1;
    }

    .animation-texts-block .inline-img-wrap {
        height: 0.95lh;
        max-inline-size: 10.4375rem;
    }

    .animation-texts-block .inline-content-wrap,
    .animation-texts-block .inline-row {
        column-gap: 0.625rem;
        row-gap: 0.5rem;
    }
}

/* ====================================
 * PRODUCTS SLIDER
 * ====================================
 */

section.cards-slider {
    overflow: hidden;
}

section.cards-slider > div.container {
    margin-block: 7.5rem;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas:
        "section-title section-title"
        "title slider-info"
        "swiper swiper";
}

section.cards-slider .section-title {
    text-transform: uppercase;
    margin-block-end: 1.875rem;
    grid-area: section-title;
}

section.cards-slider .title-wrapper {
    grid-area: title;
}

section.cards-slider .slider-info {
    grid-area: slider-info;
    align-self: end;
}

section.cards-slider .slider-info :where(a, .separator, button) {
    color: var(--c-orange-primary);
}

section.cards-slider .slider-info a:where(:hover, :focus-visible) {
    --text-accent: var(--c-orange-primary);
    text-decoration: underline;
}

section.cards-slider .slider-info button:hover {
    backdrop-filter: blur(5px);
}

section.cards-slider .slider-info .separator {
    margin-inline: 1ch;
}

section.cards-slider .slider-info button.swiper-btn-prev {
    scale: -1 1;
}

section.cards-slider .slider-info button.swiper-button-disabled {
    display: none;
}

section.cards-slider .slider-info .swiper-range {
    font-weight: 300;
    margin-inline: 0.7ch;
}

section.cards-slider .swiper {
    grid-area: swiper;
    width: 100%;
    min-width: 0;
    overflow: visible;
    margin-block-start: 3.125rem;
}

section.cards-slider .swiper .swiper-wrapper .swiper-slide {
    max-inline-size: 12.375rem;
}

section.cards-slider[data-card-type="news"] .swiper .swiper-wrapper .swiper-slide {
    width: 20.9375rem;
    max-inline-size: none;
}

section.cards-slider[data-card-type="location"] .swiper .swiper-wrapper .swiper-slide {
    max-inline-size: 19.1875rem;
}

section.cards-slider#news-homepage {
    background-color: var(--c-warm-white);
}

.archive-location-sliders {
    padding-block: 3.75rem 7.5rem;
    gap: 5rem;
    background-color: var(--c-warm-white);
    display: none;
    flex-direction: column;
    gap: 5.625rem;
}

.archive-location-sliders:has(.cards-slider:not(.hidden)) {
    display: flex;
}

section.cards-slider:is(.archive-location-branch, .archive-location-headquarters) > div.container {
    margin-block: 0;
}

section.cards-slider.archive-location-branch .slider-info a,
section.cards-slider.archive-location-branch .slider-info .separator,
section.cards-slider.archive-location-headquarters .slider-info a,
section.cards-slider.archive-location-headquarters .slider-info .separator,
section.cards-slider.archive-location-headquarters .slider-info {
    display: none;
}

section.cards-slider.archive-location-branch .section-title,
section.cards-slider.archive-location-branch .title-wrapper h2,
section.cards-slider.archive-location-headquarters .section-title,
section.cards-slider.archive-location-headquarters .title-wrapper h2 {
    color: var(--c-orange-primary);
}

@media only screen and (max-width: 768px) {
    .archive-location-sliders {
        gap: 3.75rem;
    }

    section.cards-slider .section-title {
        margin-block-end: 1.25rem;
    }

    section.cards-slider > div.container {
        margin-block: 5rem;
    }

    section.cards-slider .slider-info p {
        display: flex;
        justify-content: space-between;
    }

    section.cards-slider .slider-info p:not(:has(a:first-child)) {
        justify-content: end;
        inline-size: fit-content;
        margin-inline-start: auto;
    }

    section.cards-slider .slider-info p > :first-child {
        margin-inline-end: auto;
    }

    section.cards-slider .slider-info p > .separator {
        display: none;
    }

    section.cards-slider .slider-info .swiper-range {
        margin-inline: 1ch;
    }

    section.cards-slider .slider-info .swiper-range .slide-range-end,
    section.cards-slider .slider-info .swiper-range .slide-range-dash {
        display: none;
    }

    section.cards-slider .swiper {
        margin-block-start: 0;
    }

    section.cards-slider[data-card-type="news"] .swiper .swiper-wrapper .swiper-slide {
        width: calc(50% - var(--container-x-padding) + (var(--container-gap) / 2));
    }

    section.cards-slider > div.container {
        grid-template-columns: 1fr;
        grid-template-areas:
            "section-title"
            "title"
            "swiper"
            "slider-info";
        margin-block-start: 3.25rem;
        margin-block-end: 3.25rem;
        gap: 2.5rem;
    }

    section.cards-slider > div.container .title-wrapper .title {
        text-align: center;
    }
}

/* ====================================
 * CARD NEWS
 * ====================================
 */

article.card.card-news {
    background-color: transparent;
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    position: relative;
    border-radius: 0;
}

article.card.card-news .thumbnail {
    display: grid;
    border-radius: var(--border-default);
    overflow: hidden;
    aspect-ratio: 4 / 5;
    position: relative;
    z-index: 2;
}

article.card.card-news .thumbnail > * {
    grid-area: 1/1;
}

article.card.card-news .thumbnail .img-wrapper {
    height: 100%;
    width: 100%;
}

article.card.card-news .thumbnail .cta-wrapper {
    display: grid;
    place-items: center;
    background-color: rgba(35, 35, 35, 0.01);
    backdrop-filter: blur(5px);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 2;
}

article.card.card-news .thumbnail .cta-wrapper .btn {
    transform: translateY(50%);
    transition: transform 0.2s ease;
}

article.card.card-news .thumbnail .cta-wrapper .btn {
    background-color: var(--c-orange-primary);
    color: var(--c-white);
    border-radius: 0.375rem;
    text-transform: uppercase;
}

article.card.card-news:where(:has(:focus-visible), :hover) .thumbnail .cta-wrapper {
    opacity: 1;
}

article.card.card-news:where(:has(:focus-visible), :hover) .thumbnail .cta-wrapper .btn {
    transform: translateY(0%);
}

article.card.card-news .thumbnail .cta-wrapper .btn:hover,
article.card.card-news .thumbnail .cta-wrapper .btn:focus-visible {
    background-color: var(--c-coffee);
}

article.card.card-news .text-wrapper {
    padding: 0;
    display: grid;
    gap: 0.625rem;
    max-width: 17.8333rem;
}

article.card.card-news .text-wrapper .info {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

/*article.card.card-news .text-wrapper .info .category {
    border-radius: 999px;
    border: 0.7px solid #00000048;
    font-size: 0.8125rem;
    line-height: 1;
    font-weight: 500;
    padding: 0.25rem 0.8125rem;
}*/

article.card.card-news .text-wrapper .info .date {
    opacity: 0.5;
}

article.card.card-news .text-wrapper .title a {
    outline: none;
}

article.card.card-news .text-wrapper .title a::after {
    content: "";
    position: absolute;
    inset: 0;
    outline: 0px solid currentColor;
    outline-offset: 5px;
    transition: outline-width 0.2s ease;
    border-radius: calc(var(--border-default) + 5px);
    z-index: 2;
}

article.card.card-news:has(:focus-visible) .text-wrapper .title a::after {
    outline-width: 5px;
}

@media (hover: none) {
    article.card.card-news .thumbnail .cta-wrapper {
        display: none;
    }
}

@media (max-width: 768px) {
    article.card.card-news .text-wrapper {
        padding: 0;
    }

    article.card.card-news .text-body-large {
        font-size: 0.875rem;
        line-height: 1.571428571;
    }
}

/* ============================ */
/* SINGLE STORY */
/* ============================ */

section.single-story {
    background-color: var(--c-warm-white);
}

section.single-story .hero {
    padding-block-start: 9.125rem;
    padding-block-end: 5rem;
    text-align: center;
    background-color: var(--c-light-mocha);
}

section.single-story .hero #breadcrumbs {
    display: flex;
    justify-content: center;
    margin-block-end: 1.9375rem;
    margin-inline: auto;
}

section.single-story .hero #breadcrumbs a.active {
    color: var(--c-orange-primary);
}

section.single-story .hero .subtitle {
    margin-block-start: 2.6875rem;
}

section.single-story .hero .date {
    opacity: 0.5;
    margin-top: 1.875rem;
}

section.single-story .hero .title {
    text-transform: uppercase;
}

section.single-story .thumbnail-wrapper {
    background-image: linear-gradient(var(--c-light-mocha), 50%, transparent 50%);
}

section.single-story .thumbnail-wrapper .img-wrapper {
    margin-inline: auto;
    max-width: none;
    border-radius: 0.75rem;
    overflow: hidden;
    aspect-ratio: 1/1;
}

section.single-story .thumbnail-wrapper .img-wrapper img {
    block-size: 100%;
    object-fit: cover;
}

section.single-story .content {
    padding-block: 4.625rem 6.25rem;
    display: grid;
    gap: 4.625rem;
}

/*section.single-story .content a {
    --text-accent: var(--c-orange-primary);
}*/

section.single-story .content .block-text .container {
    display: flex;
    flex-direction: column;
    gap: 1.875rem;
}

section.single-story .content .block-text .container .title {
    text-transform: uppercase;
    color: var(--c-orange-primary);
}

section.single-story .content .block-text2 .container {
    color: var(--c-orange-primary);
    text-transform: uppercase;
}

section.single-story .content .block-images .container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
    margin-inline: auto;
}

section.single-story .content .block-images .container:has(.img-wrapper:only-child) {
    grid-template-columns: 1fr;
}

section.single-story .content .block-images .container .img-wrapper {
    border-radius: 0.75rem;
    overflow: hidden;
    background-color: transparent;
    width: 100%;
}

section.single-story .content .block-images .container .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/*section.single-story .content .block-images .container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.3125rem;
    justify-content: center;
}

section.single-story .content .block-images .container .img-wrapper {
    border-radius: var(--border-default);
    overflow: hidden;
    block-size: auto;
}

section.single-story .content .block-images .container .img-wrapper:only-child {
    max-width: 37.5rem;
}

section.single-story .content .block-images .container .img-wrapper img {
    block-size: 100%;
    object-fit: cover;
}

section.single-story .content .block-video .img-wrapper {
    height: auto;
    aspect-ratio: 16/9;
    border-radius: var(--border-default);
}*/

section.single-story .content .block-video .img-wrapper iframe {
    block-size: 100%;
}

section.single-story .content .block-video p {
    margin-block-end: 0.5lh;
    font-weight: 500;
}

/*section.single-story .article-footer .share-buttons-wrapper {
    border-block-start: 1px solid currentColor;
    padding-block: 4.5625rem 5rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    text-align: center;
    justify-content: center;
    align-items: center;
    font-weight: 500;
    font-size: 1.125rem;
    line-height: 1;
}*/

section.single-story .article-footer {
    background-color: var(--c-light-mocha);
}

section.single-story .article-footer .share-buttons-wrapper {
    padding-block: 5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.875rem;
    text-align: center;
}

section.single-story .article-footer .share-buttons-wrapper h2 {
    text-transform: uppercase;
    color: var(--c-charcoal);
    width: 100%;
    position: relative;
}

section.single-story .article-footer .share-buttons ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 1rem;
}

section.single-story .article-footer .share-buttons ul li > * {
    background-color: var(--c-charcoal);
    color: var(--c-light-mocha);
    transition:
        transform 0.2s ease,
        background-color 0.2s ease;
}

/*section.single-story .article-footer .share-buttons ul li > *:hover {
    transform: translateY(-3px);
    background-color: var(--c-orange-primary, #bb6645);
}*/

section.single-story .article-footer .share-buttons .btn {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding-block: 0.28125rem;
    padding-inline: 0.625rem;
    border-radius: 0.375rem;
    text-transform: uppercase;
}

section.single-story .article-footer .share-buttons .btn [data-copied-text] {
    display: none;
}

section.single-story .article-footer .share-buttons .btn.copied [data-not-copied-text] {
    display: none;
}
section.single-story .article-footer .share-buttons .btn.copied [data-copied-text] {
    display: inline;
}

section.single-story .article-footer .share-buttons .btn svg {
    width: 0.8125rem;
    height: auto;
    color: var(--c-light-mocha);
}

section.single-story .article-footer .share-buttons a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 1.9375rem;
    height: 1.9375rem;
    border-radius: 50%;
}

section.single-story .article-footer .share-buttons a svg {
    width: 0.9375rem;
    height: auto;
    fill: currentColor;
}

@media only screen and (max-width: 768px) {
    section.single-story .article-footer .share-buttons-wrapper {
        padding-block: 1.875rem;
        gap: 1.875rem;
    }

    section.single-story .article-footer .share-buttons ul {
        row-gap: 1.875rem;
    }

    section.single-story .article-footer .share-buttons ul li:first-child {
        width: 100%;
    }

    section.single-story .article-footer .share-buttons ul li:first-child button {
        width: 100%;
        justify-content: center;
        padding-block: 0.5625rem;
    }

    section.single-story .article-footer .share-buttons-wrapper h2 {
        font-size: 1.375rem;
    }

    section.single-story .hero {
        padding-block: calc(var(--header-height) + 3.25rem) 3.125rem;
    }

    section.single-story .hero #breadcrumbs {
        display: none;
    }

    section.single-story .hero .subtitle {
        margin-block-start: 1.25rem;
    }

    section.single-story .content {
        padding-block: 3.75rem;
        padding-bottom: 3.75rem;
        gap: 3.75rem;
    }

    section.single-story .hero .date {
        margin-top: 1.25rem;
    }

    section.single-story .content .block-images .container {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: var(--container-gap);
    }

    section.single-story .content .block-images .container > *:nth-child(odd):last-child,
    section.single-story .content .block-images .container > *:only-child {
        grid-column: -1/1;
    }

    section.single-story .content .block-images .container .img-wrapper:only-child,
    section.single-story .content .block-images .container .img-wrapper {
        block-size: auto;
    }
}

/* ============================ */
/* ARCHIVE STORIES */
/* ============================ */

body.post-type-archive-news {
    background-color: var(--c-warm-white);
}

section.archive-stories .zones {
    padding-block-start: 10rem;
    padding-block-end: 6.5rem;
}

section.archive-stories .zones .zone.zone-titles {
    text-align: center;
}

section.archive-stories .zones .zone.zone-titles .subtitle {
    margin-block-end: 1.875rem;
}

section.archive-stories .zones .zone.zone-titles .categories-wrapper {
    margin-block-start: 3.75rem;
}

section.archive-stories .zones .zone.zone-stories .stories-wrapper {
    margin-top: 4.625rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 18.75rem), 1fr));
    gap: var(--container-gap);
    row-gap: 5.25rem;
}

section.archive-stories .zones .zone.zone-pagination {
    margin-top: 6.8125rem;
}

section.archive-stories .zones .zone.zone-pagination:has(#eg-pagination[inert]) {
    display: none;
}

@media (max-width: 768px) {
    section.archive-stories .zones {
        padding-block-start: 8rem;
        padding-block-end: 3.25rem;
    }

    section.archive-stories .zones .zone.zone-stories .stories-wrapper {
        margin-top: 5rem;
        gap: 3.75rem 1.25rem;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 9.75rem), 1fr));
    }

    section.archive-stories .zones .zone.zone-pagination {
        margin-top: 3.25rem;
    }
}

#eg-pagination {
    display: flex;
    gap: 1.6875rem;
    justify-content: center;
    align-items: center;
    font-family: "Circular";
    font-size: 1.125rem;
    line-height: 1.4444444444;
    letter-spacing: -0.02em;
}

#eg-pagination[aria-hidden="true"] {
    display: none;
}

#eg-pagination .page-btn {
    inline-size: 3.125rem;
    block-size: 3.125rem;
    display: grid;
    place-items: center;
    background-color: var(--c-light-mocha);
    border-radius: 0.375rem;
}

#eg-pagination .page-btn:disabled,
#eg-pagination .page-separator,
#eg-pagination .page:not(.page-current) {
    color: black;
}

#eg-pagination .page.page-current {
    color: var(--c-orange-primary);
}

#eg-pagination .page-btn.page-btn-prev {
    rotate: 180deg;
}

#eg-pagination :disabled {
    pointer-events: none;
}

table.product-sheet-table {
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
    --_x-spacing: 1rem;
}

/* ====================================
 * ARCHIVE LOCATION HERO
 * ====================================
 */

section.archive-location-hero {
    padding-block: 3.125rem;
    padding-block-start: 11.625rem;
    background-color: var(--c-warm-white);
}

section.archive-location-hero .text .text-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.875rem;
    text-align: center;
}

section.archive-location-hero .text .text-wrapper .title {
    padding-inline: var(--container-x-padding);
}

section.archive-location-hero .text .text-wrapper .categories-wrapper {
    inline-size: 100%;
}

@media only screen and (max-width: 768px) {
    section.archive-location-hero {
        padding-top: 8rem;
        padding-bottom: 2.5rem;
    }
    section.archive-location-hero .text .text-wrapper {
        gap: 2.5rem;
    }
}

/* ====================================
 * CATEGORIES WRAPPER
 * ====================================
 */

form.categories-filter-wrapper {
    inline-size: 100%;
    padding-inline: var(--container-x-padding);
    display: flex;
    gap: 1.25rem;
    align-items: center;
    white-space: nowrap;
    justify-content: center;
    overflow: auto;
}

form.categories-filter-wrapper::-webkit-scrollbar {
    display: none;
}

form.categories-filter-wrapper label.category-filter {
    padding: 0.4375rem 1rem 0.5rem;
    color: var(--c-orange-primary);
    border-radius: 0.375rem;
    background-color: var(--c-white);
    font-family: "Circular", sans-serif;
}

form.categories-filter-wrapper label.category-filter:where(:hover, :has(input:checked)) {
    color: var(--c-white);
    background-color: var(--c-orange-primary);
}

form.categories-filter-wrapper label.category-filter:has(input:focus-visible) {
    outline: 4px solid var(--fg-color);
    outline-offset: 4px;
}

@media only screen and (max-width: 768px) {
    form.categories-filter-wrapper {
        justify-content: safe center;
    }
}

body.post-type-archive-news form.categories-filter-wrapper label.category-filter {
    color: var(--fg-color);
    background-color: var(--bg-color);
}

body.post-type-archive-news form.categories-filter-wrapper label.category-filter:where(:hover, :has(input:checked)) {
    color: var(--c-white);
    background-color: var(--c-accent);
}

body.post-type-archive-news form.categories-filter-wrapper label.category-filter:has(input:focus-visible) {
    border-color: transparent;
}

/* ====================================
 * ARCHIVE LOCATION MAP
 * ====================================
 */

section.archive-location-map .eg-google-map {
    block-size: 45.875rem;
}

section.archive-location-map .eg-google-map .gm-style-iw.gm-style-iw-c {
    max-inline-size: none;
    block-size: none;
    inline-size: 16.125rem !important;
    padding: 0;
    border-radius: var(--border-default);
}

section.archive-location-map .eg-google-map .gm-style .gm-style-iw-c {
    box-shadow: 3px 3px 20px #00000029 !important;
}

section.archive-location-map .eg-google-map .gm-style-iw-d {
    padding: 0;
    overflow: hidden !important;
    max-block-size: none !important;
}

section.archive-location-map .eg-google-map .gm-style-iw-chr {
    background: transparent;
    margin-bottom: -48px;
    position: relative;
    z-index: 1;
    color: white;
}

section.archive-location-map .eg-google-map .gm-style-iw-chr span {
    filter: invert(1);
}

section.archive-location-map .eg-google-map .card .text {
    padding-bottom: 1.5rem;
    padding-inline: 1.875rem;
}

section.archive-location-map .eg-google-map .gm-style .gm-style-iw-tc::after {
    content: initial !important;
}

@media only screen and (max-width: 768px) {
    section.archive-location-map .eg-google-map {
        block-size: 20.3125rem;
    }

    .product-hero .layer-text svg {
        position: static;
        block-size: 250px;
        margin-block: -45px;
    }
}

/* ====================================
 * ARCHIVE LOCATION LOCATIONS
 * ====================================
 */

section.archive-location-locations {
    padding-block-start: 5rem;
    padding-block-end: 7.5rem;
    background-color: var(--c-warm-white);
}

section.archive-location-locations .title-wrapper {
    margin-block-end: 1.875rem;
}

section.archive-location-locations .title-wrapper .title h2 {
    color: var(--c-orange-primary);
    text-transform: uppercase;
}

section.archive-location-locations .wrapper {
    display: grid;
    --grid-item-width: 17.5rem;
    grid-template-columns: repeat(auto-fill, minmax(var(--grid-item-width), 1fr));
    grid-template-columns: repeat(auto-fill, minmax(min(var(--grid-item-width), 100%), 1fr));
    gap: 1.25rem;
    row-gap: 3.125rem;
}

@media only screen and (max-width: 768px) {
    section.archive-location-locations {
        padding-block-start: 3.25rem;
        padding-block-end: 3.25rem;
    }

    section.archive-location-locations .wrapper {
        row-gap: 3rem;
    }
}

/* ====================================
 * CARD LOCATION
 * ====================================
 */

.card.card-location {
    font-family: var(--ff-primary);
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    container: card-location / inline-size;
}

.card.card-location .thumbnail {
    aspect-ratio: 307/197;
    overflow: hidden;
    border-radius: var(--border-default);
    background-color: var(--c-light-gray);
}

.card.card-location .thumbnail .img-wrapper {
    inline-size: 100%;
    block-size: 100%;
    view-transition-class: card-location-img;
}

::view-transition-new(.card-location-img),
::view-transition-old(.card-location-img) {
    width: 100%;
    height: 100%;
}

.card.card-location .text .category {
    font-size: 0.875rem;
    line-height: 1.571429;
    color: var(--c-orange-primary);
    margin-block-end: 0.625rem;
}

.card.card-location .title {
    text-transform: uppercase;
}

.card.card-location .text .address {
    margin-top: 0.625rem;
    color: var(--fg-color);
    opacity: 0.5;
    grid-column: -1/1;
}

.card.card-location .text .contacts {
    margin-top: 0.625rem;
    color: var(--c-orange-primary);
    text-transform: uppercase;
    text-decoration: underline;
    grid-column: -1/1;
}

.card.card-location .text .cta a {
    display: block;
    margin-block-start: 1.25rem;
    font-size: 1rem;
    line-height: 1.125;
    color: var(--c-accent);
}

.card.card-location .text .cta a:where(:focus-visible, :hover) {
    text-decoration: underline;
    outline: none;
}

.card.card-location .text .cta a::after {
    content: "";
    position: absolute;
    inset: 0;
}

.card.card-location .text .cta a:focus-visible:after {
    outline: 2px solid var(--fg-color);
    outline-offset: 2px;
}

@container card-location (min-width: 26.0rem) {
    .card.card-location .text {
        display: grid;
        grid-template-columns: 1fr auto;
    }

    .card.card-location .text .category {
        grid-column: 2;
        grid-row: 1;
    }

    .card.card-location .text .title {
        grid-row: 1;
    }

    .card.card-location .text .description,
    .card.card-location .text .title {
        grid-column: 1;
    }

    .card.card-location .text .cta a {
        position: absolute;
        color: transparent;
        inset: 0;
        margin: 0;
    }

    .card.card-location .text .cta a::after {
        content: initial;
    }
}

@media (max-width: 768px) {
    .card.card-location {
        gap: 0.625rem;
    }
}

/* ====================================
 * SINGLE LOCATION HERO
 * ====================================
 */

section.single-location-hero {
    background-color: var(--c-light-gray);
}

section.single-location-hero .title {
    padding-block: 5rem;
    text-align: center;
}

section.single-location-hero .thumbnail-wrapper {
    background-image: linear-gradient(transparent 50%, var(--bg-color) 50%);
}

section.single-location-hero .thumbnail-wrapper .img-wrapper {
    border-radius: var(--border-default);
    view-transition-class: card-location-img;
    aspect-ratio: 852/426;
    block-size: auto;
}

section.single-location-content .informations-container {
    padding-block-start: 3.125rem;
    padding-block-end: 3.875rem;
}

section.single-location-content .informations-container .wrapper {
    display: flex;
    justify-content: space-between;
    column-gap: var(--container-gap);
    row-gap: 3.125rem;
    flex-wrap: wrap;
}

section.single-location-content .informations-container .wrapper .information {
    max-inline-size: 12.8125rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

section.single-location-content .informations-container .wrapper .information .description {
    font-weight: 300;
}

section.single-location-content .informations-container .wrapper .information .cta a {
    color: rgba(from var(--fg-color) r g b / 0.4);
}

section.single-location-content .informations-container .wrapper .information .cta a:where(:focus-visible, :hover) {
    color: var(--fg-color);
    text-decoration: underline;
}

section.single-location-content .text-container {
    font-weight: 300;
}

section.single-location-content .gallery-container {
    --_gallery-height: 23.25rem;
    overflow: hidden;
    padding-block: 7.75rem;
}

section.single-location-content .gallery-container .wrapper {
    display: flex;
    flex-direction: column;
    gap: 2.875rem;
}

section.single-location-content .gallery-container .wrapper .text {
    text-align: center;
}

section.single-location-content .gallery-container .wrapper .gallery .swiper {
    overflow: visible;
}

section.single-location-content .gallery-container .wrapper .gallery .swiper .swiper-wrapper .swiper-slide {
    /*inline-size: fit-content !important;*/
    /*inline-size: 0 !important;*/
    max-inline-size: fit-content;
    block-size: var(--_gallery-height);
}

section.single-location-content .gallery-container .wrapper .gallery .swiper .swiper-wrapper .swiper-slide .img-wrapper {
    border-radius: var(--border-default);
    block-size: var(--_gallery-height);
    max-inline-size: 100%;
    overflow: hidden;
    display: grid;
    place-items: center;
}

section.single-location-content .gallery-container .wrapper .gallery .swiper .swiper-wrapper .swiper-slide .img-wrapper :where(img, video) {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
}

section.single-location-content .gallery-container .wrapper .gallery .swiper .swiper-pagination {
    position: static;
    margin-block-start: 2.1875rem;
}

body.single-location #stories-slider > .container {
    margin-block-start: 7.375rem;
    margin-block-end: 10.25rem;
}

body.single-location #locations-slider > .container {
    margin-block-start: 6.6875rem;
    margin-block-end: 7.75rem;
}

@media (min-width: 767px) {
    .single-location-hero {
        padding-top: 5rem;
    }
}

@media only screen and (max-width: 768px) {
    body.single-location #stories-slider > .container {
        margin-block-start: 5.625rem;
        margin-block-end: 5.625rem;
    }

    body.single-location #locations-slider > .container {
        margin-block-start: 5.625rem;
        margin-block-end: 6.875rem;
    }

    section.single-location-content .gallery-container {
        --_gallery-height: 12.8125rem;
    }

    section.single-location-hero #breadcrumbs {
        padding-block-start: 2.75rem;
        justify-content: center;
    }

    section.single-location-hero .title {
        padding-block: 3.75rem;
        padding-block-start: 2.75rem;
    }

    section.single-location-hero .thumbnail-wrapper .container {
        padding-inline: 0;
    }

    section.single-location-content .informations-container {
        padding-block: 3.125rem;
    }

    section.single-location-content .gallery-container {
        padding-block-start: 3.875rem;
    }

    section.single-location-content .gallery-container .wrapper {
        gap: 3.125rem;
    }

    section.single-location-content .gallery-container .wrapper .text {
        text-align: left;
    }

    section.single-location-content .gallery-container .wrapper .gallery .swiper .swiper-pagination {
        display: flex;
    }
}

/* ============================ */
/* SEARCH HERO */
/* ============================ */

section.hero.hero-search {
    padding-block-start: 9.3125rem;
    padding-bottom: 5rem;
    background-color: var(--c-warm-white);
}

section.hero.hero-search .container {
    display: grid;
    gap: 1.875rem;
    text-align: center;
}

section.hero.hero-search .pretitle {
    font-family: "Bretagne", serif;
    color: var(--c-orange-primary);
    font-size: 0.875rem;
    line-height: 1.571429;
    letter-spacing: 0.04em;
    text-align: center;
    text-transform: uppercase;
}

section.hero.hero-search h1 {
    text-transform: uppercase;
    color: var(--c-charcoal);
}

section.hero.hero-search #search-form {
    margin-block-start: 1.25rem;
    position: relative;
}

section.hero.hero-search #search-form input {
    appearance: textfield;
    padding: 1.0625rem 1.5rem 1.25rem;
    border: transparent;
    width: 100%;
    padding-inline-end: 3.75rem;
    color: black;
}

section.hero.hero-search #search-form input::placeholder {
    opacity: 0.5;
}

section.hero.hero-search #search-form .search-btn {
    position: absolute;
    inset-inline-end: 0.4375rem;
    inset-block-start: 0.4375rem;
    inline-size: 2.875rem;
    block-size: 2.875rem;
    border-radius: 0.5rem;
    background-color: var(--c-light-mocha);
    display: grid;
    place-items: center;
}

section.hero.hero-search #search-form .search-spinner {
    display: none;
    animation: search-spin 0.6s linear infinite;
}

section.hero.hero-search #search-form.is-loading .search-icon {
    display: none;
}

section.hero.hero-search #search-form.is-loading .search-spinner {
    display: block;
}

@keyframes search-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 768px) {
    section.hero.hero-search {
        padding-block-start: 8rem;
        padding-bottom: 3.25rem;
    }
    section.hero.hero-search .container {
        gap: 1.25rem;
    }
}

section.search-results {
    padding-block-start: 0;
    padding-block-end: 7.4375rem;
    background-color: var(--c-warm-white);
    min-block-size: 50vh;
}

section.search-results .zones .zone-titles {
    margin-block-end: 4.125rem;
}

section.search-results .zones .zone-titles .container {
    text-align: center;
    display: grid;
    gap: 3.125rem;
}

section.search-results .result.skeleton .thumbnail {
    background-color: rgb(from currentColor r g b / 0.1);
    border-radius: 0.5rem;
}

section.search-results .zones .zone-titles .container .title {
    text-transform: uppercase;
}

section.search-results .zones .zone-titles .container .title .current-query-wrapper {
    color: var(--c-orange-primary);
}

section.search-results .zones .zone-titles .container .categories {
    display: flex;
    align-items: center;
    gap: 0.9375rem;
    justify-content: center;
}

section.search-results .zones .zone-titles .container .categories .category {
    padding: 0.4375rem 1rem 0.5rem;
    color: var(--c-white);
    background-color: var(--c-orange-primary);
    border-radius: 0.375rem;
    transition:
        color 0.2s ease,
        background-color 0.2s ease;
    cursor: pointer;
}

section.search-results .zones .zone-titles .container .categories .category:has(:focus-visible) {
    outline: 2px solid var(--c-charcoal);
    outline-offset: 2px;
}

section.search-results .zones .zone-titles .container .categories .category:not(.active, :has(:focus-visible), :hover, :has(:checked)) {
    background-color: var(--c-white);
    color: var(--c-orange-primary);
}

section.search-results .zones .zone-results .no-results {
    text-align: center;
    font-family: "Circular", sans-serif;
    font-size: 1rem;
    line-height: 1.5;
}

section.search-results .zones .zone-results .result {
    display: grid;
    grid-template-columns: 3fr 5fr;
    gap: 3.75rem;
    padding-block: 1.875rem;
    position: relative;
    border-top: 1px solid rgba(from var(--c-charcoal) r g b / 0.1);
    color: var(--c-charcoal);
}

section.search-results .zones .zone-results .result:last-child {
    border-bottom: 1px solid rgba(from var(--c-charcoal) r g b / 0.1);
}

section.search-results .zones .zone-results .result .thumbnail {
    aspect-ratio: 198/126;
    flex-shrink: 0;
}

section.search-results .zones .zone-results .result .thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--border-default);
}

section.search-results .zones .zone-results .result .text {
    display: flex;
    align-items: start;
    flex-direction: column;
    gap: 0.625rem;
}

section.search-results .zones .zone-results .result .text .title h3 {
    font-family: var(--ff-primary);
    font-size: 1.5rem;
    text-transform: uppercase;
    margin: 0;
}

section.search-results .zones .zone-results .result .text .description {
    font-family: "Circular", sans-serif;
    font-size: 0.875rem;
    line-height: 1.571429;
    font-weight: 300;
    margin: 0;
    opacity: 0.5;
}

section.search-results .zones .zone-results .result .text .title a::after {
    content: "";
    position: absolute;
    inset: 0;
}

section.search-results .zones .zone-results .result .text .cta {
    text-transform: uppercase;
    color: var(--c-orange-primary);
    text-decoration: underline;
    margin-block-start: auto;
}

@keyframes skeleton {
    from {
        transform: translateX(-1000px) rotate(45deg) scaleY(5);
    }
    to {
        transform: translateX(1000px) rotate(45deg) scaleY(5);
    }
}

@media only screen and (max-width: 768px) {
    section.search-results .zones .zone-results .result {
        padding-block: 2.5rem;
        gap: 1.25rem;
        grid-template-columns: 1fr;
    }

    section.search-results .zones .zone-results .result .text {
        gap: 0.8rem;
    }

    section.search-results {
        padding-block-start: 0;
        padding-block-end: 3.25rem;
    }
    section.search-results .zones .zone-titles .container {
        gap: 2.5rem;
    }

    section.search-results .zones .zone-titles {
        margin-bottom: 5rem;
    }

    section.search-results .zones .zone-results .result .text .title h3 {
        font-size: 1.375rem;
    }
}

/* ======================================== */
/* US I NFO BREWING */
/* ======================================== */

section.us-info-brewing {
    background-color: var(--c-light-mocha);
}

section.us-info-brewing .container {
    padding-block: 7.5rem;
    display: flex;
    flex-direction: column;
    gap: 7.5rem;
}

section.us-info-brewing h2 {
    text-align: center;
    font-size: 11.0625rem;
    line-height: 1.016949;
    filter: url("#noisy-blur");
    text-transform: uppercase;
}

section.us-info-brewing .items {
    display: grid;
    --grid-item-width: 25rem;
    grid-template-columns: repeat(auto-fit, minmax(var(--grid-item-width), 1fr));
    grid-template-columns: repeat(auto-fit, minmax(min(var(--grid-item-width), 100%), 1fr));
    gap: 1.25rem;
}

section.us-info-brewing .item:nth-child(3n + 1) {
    --on-surface: var(--c-coffee);
    --surface: var(--c-white);
    --accent: var(--c-orange-primary);
    --text-accent: var(--c-orange-primary);
}

section.us-info-brewing .item:nth-child(3n + 2) {
    --on-surface: var(--c-white);
    --surface: var(--c-orange-primary);
    --accent: var(--c-coffee);
    --text-accent: var(--c-light-mocha);
    --btn-text: var(--c-light-mocha);
}

section.us-info-brewing .item:nth-child(3n + 3) {
    --on-surface: var(--c-light-mocha);
    --surface: var(--c-coffee);
    --accent: var(--c-light-mocha);
    --text-accent: var(--c-orange-primary);
}

section.us-info-brewing .item .layers {
    min-block-size: 31.25rem;
    border-radius: 0.75rem;
    overflow: hidden;
}

section.us-info-brewing .item .layer-fg {
    padding: 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: transparent;
    color: var(--on-surface);
    transition: background-color 0.15s ease;
}

section.us-info-brewing .item.is-open .layer-fg {
    background-color: var(--surface);
}

section.us-info-brewing .item .big-text {
    color: var(--accent);
    position: absolute;
    font-size: 23.75rem;
    font-weight: 900;
    filter: url("#noisy-blur");
    -webkit-text-stroke: 0.1em;
    inset-block-start: 0.28em;
    inset-inline-end: 0;
    rotate: -30deg;
    line-height: 0;
}

section.us-info-brewing .item .btn {
    position: absolute;
    inset-inline-start: 50%;
    inset-block-end: 2.5rem;
    translate: -50%;
    background-color: var(--accent);
    color: var(--btn-text, var(--surface));
    transition: opacity 0.15s ease;
}

section.us-info-brewing .item.is-open .btn {
    opacity: 0;
    pointer-events: none;
}

section.us-info-brewing .item .item-icon {
    color: var(--accent);
}

section.us-info-brewing .item .item-icon,
section.us-info-brewing .item .description {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.15s ease;
}

section.us-info-brewing .item.is-open .item-icon,
section.us-info-brewing .item.is-open .description {
    opacity: 1;
    pointer-events: auto;
}

@media (max-width: 768px) {
    section.us-info-brewing .container {
        padding-block: 5rem;
        gap: 5rem;
    }

    section.us-info-brewing h2 {
        font-size: 6.25rem;
        filter: blur(0.05em);
        line-height: 0.8;
        -webkit-text-stroke: 0.03em;
    }

    section.us-info-brewing .item .layer-fg {
        padding: 1.875rem;
    }

    section.us-info-brewing .item .layers {
        min-block-size: 24.375rem;
    }

    section.us-info-brewing .item .item-icon {
        inline-size: 3.75rem;
        block-size: auto;
    }

    section.us-info-brewing .item .big-text {
        inset-block-start: 0.1em;
        inset-inline-end: -0.1em;
        -webkit-text-stroke: 0tem;
    }
}
