/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *		IE on Windows Phone and in iOS.
 */

/* Document
	 ========================================================================== */

   html {
    font-family: sans-serif;
    /* 1 */
    line-height: 1.15;
    /* 2 */
    -ms-text-size-adjust: 100%;
    /* 3 */
    -webkit-text-size-adjust: 100%;
    /* 3 */
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    scroll-behavior: smooth;
  }
  
  /* Sections
     ========================================================================== */
  
  /**
   * Remove the margin in all browsers (opinionated).
   */
  
  body {
    margin: 0;
  }
  
  /**
   * Add the correct display in IE 9-.
   */
  
  article,
  aside,
  footer,
  header,
  nav,
  section {
    display: block;
  }
  
  /* Grouping content
     ========================================================================== */
  
  /**
   * Add the correct display in IE 9-.
   * 1. Add the correct display in IE.
   */
  
  figcaption,
  figure,
  main {
    /* 1 */
    display: block;
  }
  
  /**
   * Add the correct margin in IE 8.
   */
  
  figure {
    margin: 1em 40px;
  }
  
  /**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
  
  hr {
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
    overflow: visible;
    /* 2 */
  }
  
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
  
  pre {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
  }
  
  /* Text-level semantics
     ========================================================================== */
  
  /**
   * 1. Remove the gray background on active links in IE 10.
   * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
   */
  
  a {
    background-color: transparent;
    /* 1 */
    -webkit-text-decoration-skip: objects;
    /* 2 */
  }
  
  /**
   * Remove the outline on focused links when they are also active or hovered
   * in all browsers (opinionated).
   */
  
  a:active,
  a:hover {
    outline-width: 0;
  }
  
  /**
   * 1. Remove the bottom border in Firefox 39-.
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
  
  abbr[title] {
    border-bottom: none;
    /* 1 */
    text-decoration: underline;
    /* 2 */
  }
  
  /**
   * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
   */
  
  b,
  strong {
    font-weight: inherit;
  }
  
  /**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
  
  b,
  strong {
    font-weight: bolder;
  }
  
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
  
  code,
  kbd,
  samp {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
  }
  
  /**
   * Add the correct font style in Android 4.3-.
   */
  
  dfn {
    font-style: italic;
  }
  
  /**
   * Add the correct background and color in IE 9-.
   */
  
  mark {
    background-color: #ff0;
    color: #000;
  }
  
  /**
   * Add the correct font size in all browsers.
   */
  
  small {
    font-size: 80%;
  }
  
  /**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
  
  sub,
  sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  
  sub {
    bottom: -0.25em;
  }
  
  sup {
    top: -0.5em;
  }
  
  /* Embedded content
     ========================================================================== */
  
  /**
   * Add the correct display in IE 9-.
   */
  
  audio,
  video {
    display: inline-block;
  }
  
  /**
   * Add the correct display in iOS 4-7.
   */
  
  audio:not([controls]) {
    display: none;
    height: 0;
  }
  
  /**
   * Remove the border on images inside links in IE 10-.
   */
  
  img {
    border-style: none;
  }
  
  /**
   * Hide the overflow in IE.
   */
  
  svg:not(:root) {
    overflow: hidden;
  }
  
  /* Forms
     ========================================================================== */
  
  /**
   * 1. Change the font styles in all browsers (opinionated).
   * 2. Remove the margin in Firefox and Safari.
   */
  
  button,
  input,
  optgroup,
  select,
  textarea {
    font-family: sans-serif;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */
    margin: 0;
    /* 2 */
  }
  
  /**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
  
  button,
  input {
    /* 1 */
    overflow: visible;
  }
  
  /**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
  
  button,
  select {
    /* 1 */
    text-transform: none;
  }
  
  /**
   * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
   *		controls in Android 4.
   * 2. Correct the inability to style clickable types in iOS and Safari.
   */
  
  button,
  html [type=button],
  [type=reset],
  [type=submit] {
    -webkit-appearance: button;
    /* 2 */
  }
  
  /**
   * Remove the inner border and padding in Firefox.
   */
  
  button::-moz-focus-inner,
  [type=button]::-moz-focus-inner,
  [type=reset]::-moz-focus-inner,
  [type=submit]::-moz-focus-inner {
    border-style: none;
    padding: 0;
  }
  
  /**
   * Restore the focus styles unset by the previous rule.
   */
  
  button:-moz-focusring,
  [type=button]:-moz-focusring,
  [type=reset]:-moz-focusring,
  [type=submit]:-moz-focusring {
    outline: 1px dotted ButtonText;
  }
  
  /**
   * Change the border, margin, and padding in all browsers (opinionated).
   */
  
  fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
  }
  
  /**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *		`fieldset` elements in all browsers.
   */
  
  legend {
    box-sizing: border-box;
    /* 1 */
    color: inherit;
    /* 2 */
    display: table;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    white-space: normal;
    /* 1 */
  }
  
  /**
   * 1. Add the correct display in IE 9-.
   * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
  
  progress {
    display: inline-block;
    /* 1 */
    vertical-align: baseline;
    /* 2 */
  }
  
  /**
   * Remove the default vertical scrollbar in IE.
   */
  
  textarea {
    overflow: auto;
  }
  
  /**
   * 1. Add the correct box sizing in IE 10-.
   * 2. Remove the padding in IE 10-.
   */
  
  [type=checkbox],
  [type=radio] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
  }
  
  /**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
  
  [type=number]::-webkit-inner-spin-button,
  [type=number]::-webkit-outer-spin-button {
    height: auto;
  }
  
  /**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
  
  [type=search] {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
  }
  
  /**
   * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
   */
  
  [type=search]::-webkit-search-cancel-button,
  [type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  
  /**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
  
  ::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
  }
  
  /* Interactive
     ========================================================================== */
  
  /*
   * Add the correct display in IE 9-.
   * 1. Add the correct display in Edge, IE, and Firefox.
   */
  
  details,
  menu {
    display: block;
  }
  
  /*
   * Add the correct display in all browsers.
   */
  
  summary {
    display: list-item;
  }
  
  /* Scripting
     ========================================================================== */
  
  /**
   * Add the correct display in IE 9-.
   */
  
  canvas {
    display: inline-block;
  }
  
  /**
   * Add the correct display in IE.
   */
  
  template {
    display: none;
  }
  
  /* Hidden
     ========================================================================== */
  
  /**
   * Add the correct display in IE 10-.
   */
  
  [hidden] {
    display: none;
  }
  
  /**
   * Swiper 11.2.4
   * Most modern mobile touch slider and framework with hardware accelerated transitions
   * https://swiperjs.com
   *
   * Copyright 2014-2025 Vladimir Kharlampidi
   *
   * Released under the MIT License
   *
   * Released on: February 14, 2025
   */
  
  /* FONT_START */
  
  @font-face {
    font-family: "swiper-icons";
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
    font-weight: 400;
    font-style: normal;
  }
  
  /* FONT_END */
  
  :root {
    --swiper-theme-color: #007aff;
    /*
    --swiper-preloader-color: var(--swiper-theme-color);
    --swiper-wrapper-transition-timing-function: initial;
    */
  }
  
  :host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1;
  }
  
  .swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    /* Fix of Webkit flickering */
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
  }
  
  .swiper-vertical > .swiper-wrapper {
    flex-direction: column;
  }
  
  .swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box;
  }
  
  .swiper-android .swiper-slide,
  .swiper-ios .swiper-slide,
  .swiper-wrapper {
    transform: translate3d(0px, 0, 0);
  }
  
  .swiper-horizontal {
    touch-action: pan-y;
  }
  
  .swiper-vertical {
    touch-action: pan-x;
  }
  
  .swiper-slide {
    display: flex;
    justify-content: center;
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block;
  }
  
  .swiper-slide-invisible-blank {
    visibility: hidden;
  }
  
  /* Auto Height */
  
  .swiper-autoheight,
  .swiper-autoheight .swiper-slide {
    height: auto;
  }
  
  .swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height;
  }
  
  .swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    backface-visibility: hidden;
  }
  
  /* 3D Effects */
  
  .swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px;
  }
  
  .swiper-3d .swiper-wrapper {
    transform-style: preserve-3d;
  }
  
  .swiper-3d {
    perspective: 1200px;
  }
  
  .swiper-3d .swiper-slide,
  .swiper-3d .swiper-cube-shadow {
    transform-style: preserve-3d;
  }
  
  /* CSS Mode */
  
  .swiper-css-mode > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    /* For Firefox */
    -ms-overflow-style: none;
    /* For Internet Explorer and Edge */
  }
  
  .swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none;
  }
  
  .swiper-css-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  
  .swiper-css-mode.swiper-horizontal > .swiper-wrapper {
    scroll-snap-type: x mandatory;
  }
  
  .swiper-css-mode.swiper-vertical > .swiper-wrapper {
    scroll-snap-type: y mandatory;
  }
  
  .swiper-css-mode.swiper-free-mode > .swiper-wrapper {
    scroll-snap-type: none;
  }
  
  .swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: none;
  }
  
  .swiper-css-mode.swiper-centered > .swiper-wrapper::before {
    content: "";
    flex-shrink: 0;
    order: 9999;
  }
  
  .swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always;
  }
  
  .swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before);
  }
  
  .swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after);
  }
  
  .swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before);
  }
  
  .swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after);
  }
  
  /* Slide styles start */
  
  /* 3D Shadows */
  
  .swiper-3d .swiper-slide-shadow,
  .swiper-3d .swiper-slide-shadow-left,
  .swiper-3d .swiper-slide-shadow-right,
  .swiper-3d .swiper-slide-shadow-top,
  .swiper-3d .swiper-slide-shadow-bottom,
  .swiper-3d .swiper-slide-shadow,
  .swiper-3d .swiper-slide-shadow-left,
  .swiper-3d .swiper-slide-shadow-right,
  .swiper-3d .swiper-slide-shadow-top,
  .swiper-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }
  
  .swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  
  .swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  
  .swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  
  .swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  
  .swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent;
  }
  
  .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
  .swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
  }
  
  .swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff;
  }
  
  .swiper-lazy-preloader-black {
    --swiper-preloader-color: #000;
  }
  
  @keyframes swiper-preloader-spin {
    0% {
      transform: rotate(0deg);
    }
  
    100% {
      transform: rotate(360deg);
    }
  }
  
  /* Slide styles end */
  
  .swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0);
  }
  
  .swiper-virtual.swiper-css-mode .swiper-wrapper::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
  }
  
  .swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size);
  }
  
  .swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size);
  }
  
  :root {
    --swiper-navigation-size: 44px;
    /*
    --swiper-navigation-top-offset: 50%;
    --swiper-navigation-sides-offset: 10px;
    --swiper-navigation-color: var(--swiper-theme-color);
    */
  }
  
  .swiper-button-prev,
  .swiper-button-next {
    position: relative;
    display: flex;
    top: var(--swiper-navigation-top-offset, 50%);
    width: calc(var(--swiper-navigation-size) / 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - var(--swiper-navigation-size) / 2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
  }
  
  .swiper-button-next {
    transition-delay: 0.075s;
  }
  
  .swiper-button-prev.swiper-button-disabled,
  .swiper-button-next.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
  }
  
  .swiper-button-prev.swiper-button-hidden,
  .swiper-button-next.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
  }
  
  .swiper-navigation-disabled .swiper-button-prev,
  .swiper-navigation-disabled .swiper-button-next {
    display: none !important;
  }
  
  .swiper-button-prev svg,
  .swiper-button-next svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform-origin: center;
  }
  
  .swiper-rtl .swiper-button-prev svg,
  .swiper-rtl .swiper-button-next svg {
    transform: rotate(180deg);
  }
  
  .swiper-button-prev,
  .swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 10px);
    right: auto;
  }
  
  .swiper-button-next,
  .swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto;
  }
  
  .swiper-button-lock {
    display: none;
  }
  
  /* Navigation font start */
  
  .swiper-button-prev:after,
  .swiper-button-next:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1;
    display: none;
  }
  
  .swiper-button-prev:after,
  .swiper-rtl .swiper-button-next:after {
    content: "prev";
  }
  
  .swiper-button-next,
  .swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto;
  }
  
  .swiper-button-next:after,
  .swiper-rtl .swiper-button-prev:after {
    content: "next";
  }
  
  /* Navigation font end */
  
  :root {
    /*
    --swiper-pagination-color: var(--swiper-theme-color);
    --swiper-pagination-left: auto;
    --swiper-pagination-right: 8px;
    --swiper-pagination-bottom: 8px;
    --swiper-pagination-top: auto;
    --swiper-pagination-fraction-color: inherit;
    --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
    --swiper-pagination-progressbar-size: 4px;
    --swiper-pagination-bullet-size: 8px;
    --swiper-pagination-bullet-width: 8px;
    --swiper-pagination-bullet-height: 8px;
    --swiper-pagination-bullet-border-radius: 50%;
    --swiper-pagination-bullet-inactive-color: #000;
    --swiper-pagination-bullet-inactive-opacity: 0.2;
    --swiper-pagination-bullet-opacity: 1;
    --swiper-pagination-bullet-horizontal-gap: 4px;
    --swiper-pagination-bullet-vertical-gap: 6px;
    */
  }
  
  .swiper-pagination {
    text-align: right;
    transition: 300ms opacity;
    transform: translate3d(0, 0, 0);
    z-index: 2;
    width: auto;
    color: var(--light-white) !important;
  }
  
  .swiper-pagination.e-reveal {
    transition: all 0.95s var(--transition-main);
  }
  
  .swiper-pagination svg {
    fill: var(--active-color, var(--blue));
  }
  
  .swiper-pagination-current {
    color: var(--grey);
  }
  
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0;
  }
  
  .swiper-pagination-disabled > .swiper-pagination,
  .swiper-pagination.swiper-pagination-disabled {
    display: none !important;
  }
  
  /* Common Styles */
  
  .swiper-pagination-custom,
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: var(--swiper-pagination-bottom, 8px);
    top: var(--swiper-pagination-top, auto);
    left: 0;
    width: 100%;
    display: flex;
    justify-content: center;
  }
  
  /* Bullets */
  
  .swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0;
  }
  
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
  }
  
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1);
  }
  
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1);
  }
  
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
  }
  
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
  }
  
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
  }
  
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
  }
  
  .swiper-pagination-bullet {
    width: 70px;
    height: 7px;
    display: inline-block;
    background-color: var(--light-blue);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
  }
  
  .swiper-pagination-bullet path {
    width: 100%;
    height: 100%;
    transform: translateY(-3px);
  }
  
  button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    appearance: none;
  }
  
  .swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
  }
  
  .swiper-pagination-bullet:only-child {
    display: none !important;
  }
  
  .swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
  }
  
  .swiper-vertical > .swiper-pagination-bullets,
  .swiper-pagination-vertical.swiper-pagination-bullets {
    right: var(--swiper-pagination-right, 8px);
    left: var(--swiper-pagination-left, auto);
    top: 50%;
    transform: translate3d(0px, -50%, 0);
  }
  
  .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block;
  }
  
  .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
  .swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
  }
  
  .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
  .swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: 200ms transform, 200ms top;
  }
  
  .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
  }
  
  .swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
  .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
  }
  
  .swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform, 200ms left;
  }
  
  .swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform, 200ms right;
  }
  
  /* Fraction */
  
  .swiper-pagination-fraction {
    color: var(--swiper-pagination-fraction-color, inherit);
  }
  
  /* Progress */
  
  .swiper-pagination-progressbar {
    background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
    position: absolute;
  }
  
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
  }
  
  .swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top;
  }
  
  .swiper-horizontal > .swiper-pagination-progressbar,
  .swiper-pagination-progressbar.swiper-pagination-horizontal,
  .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
  .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
  }
  
  .swiper-vertical > .swiper-pagination-progressbar,
  .swiper-pagination-progressbar.swiper-pagination-vertical,
  .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
  .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0;
  }
  
  .swiper-pagination-lock {
    display: none;
  }
  
  :root {
    /*
    --swiper-scrollbar-border-radius: 10px;
    --swiper-scrollbar-top: auto;
    --swiper-scrollbar-bottom: 4px;
    --swiper-scrollbar-left: auto;
    --swiper-scrollbar-right: 4px;
    --swiper-scrollbar-sides-offset: 1%;
    --swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
    --swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
    --swiper-scrollbar-size: 4px;
    */
  }
  
  .swiper-scrollbar {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    position: relative;
    touch-action: none;
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
  }
  
  .swiper-scrollbar-disabled > .swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important;
  }
  
  .swiper-horizontal > .swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  }
  
  .swiper-vertical > .swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-vertical {
    position: absolute;
    left: var(--swiper-scrollbar-left, auto);
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    z-index: 50;
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  }
  
  .swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    left: 0;
    top: 0;
  }
  
  .swiper-scrollbar-cursor-drag {
    cursor: move;
  }
  
  .swiper-scrollbar-lock {
    display: none;
  }
  
  /* Zoom container styles start */
  
  .swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  
  .swiper-zoom-container > img,
  .swiper-zoom-container > svg,
  .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }
  
  /* Zoom container styles end */
  
  .swiper-slide-zoomed {
    cursor: move;
    touch-action: none;
  }
  
  /* a11y */
  
  .swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
  }
  
  .swiper-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto;
  }
  
  .swiper-grid > .swiper-wrapper {
    flex-wrap: wrap;
  }
  
  .swiper-grid-column > .swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column;
  }
  
  .swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out;
  }
  
  .swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
  }
  
  .swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none;
  }
  
  .swiper-fade .swiper-slide-active {
    pointer-events: auto;
  }
  
  .swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
  }
  
  .swiper.swiper-cube {
    overflow: visible;
  }
  
  .swiper-cube .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
  }
  
  .swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none;
  }
  
  .swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0;
  }
  
  .swiper-cube .swiper-slide-active,
  .swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
  }
  
  .swiper-cube .swiper-slide-active,
  .swiper-cube .swiper-slide-next,
  .swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible;
  }
  
  .swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    z-index: 0;
  }
  
  .swiper-cube .swiper-cube-shadow:before {
    content: "";
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    filter: blur(50px);
  }
  
  .swiper-cube .swiper-slide-next + .swiper-slide {
    pointer-events: auto;
    visibility: visible;
  }
  
  /* Cube slide shadows start */
  
  .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top,
  .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
  .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
  .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
  }
  
  /* Cube slide shadows end */
  
  .swiper.swiper-flip {
    overflow: visible;
  }
  
  .swiper-flip .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
  }
  
  .swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none;
  }
  
  .swiper-flip .swiper-slide-active,
  .swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
  }
  
  /* Flip slide shadows start */
  
  .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top,
  .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
  .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
  .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
  }
  
  /* Flip slide shadows end */
  
  .swiper-creative .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height;
  }
  
  .swiper.swiper-cards {
    overflow: visible;
  }
  
  .swiper-cards .swiper-slide {
    transform-origin: center bottom;
    backface-visibility: hidden;
    overflow: hidden;
  }
  
  .swiper.swiper--center .swiper-wrapper {
    justify-content: center;
  }
  
  html.lenis,
  html.lenis body {
    height: auto;
  }
  
  .lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
  }
  
  .lenis.lenis-stopped {
    overflow: clip;
  }
  
  .lenis.lenis-smooth iframe {
    pointer-events: none;
  }
  
  :root {
    --f-spinner-width: 36px;
    --f-spinner-height: 36px;
    --f-spinner-color-1: rgba(0, 0, 0, 0.1);
    --f-spinner-color-2: rgba(17, 24, 28, 0.8);
    --f-spinner-stroke: 2.75;
  }
  
  .f-spinner {
    margin: auto;
    padding: 0;
    width: var(--f-spinner-width);
    height: var(--f-spinner-height);
  }
  
  .f-spinner svg {
    width: 100%;
    height: 100%;
    vertical-align: top;
    animation: f-spinner-rotate 2s linear infinite;
  }
  
  .f-spinner svg * {
    stroke-width: var(--f-spinner-stroke);
    fill: none;
  }
  
  .f-spinner svg *:first-child {
    stroke: var(--f-spinner-color-1);
  }
  
  .f-spinner svg *:last-child {
    stroke: var(--f-spinner-color-2);
    animation: f-spinner-dash 2s ease-in-out infinite;
  }
  
  @keyframes f-spinner-rotate {
    100% {
      transform: rotate(360deg);
    }
  }
  
  @keyframes f-spinner-dash {
    0% {
      stroke-dasharray: 1, 150;
      stroke-dashoffset: 0;
    }
  
    50% {
      stroke-dasharray: 90, 150;
      stroke-dashoffset: -35;
    }
  
    100% {
      stroke-dasharray: 90, 150;
      stroke-dashoffset: -124;
    }
  }
  
  .f-throwOutUp {
    animation: var(--f-throw-out-duration, 0.175s) ease-out both f-throwOutUp;
  }
  
  .f-throwOutDown {
    animation: var(--f-throw-out-duration, 0.175s) ease-out both f-throwOutDown;
  }
  
  @keyframes f-throwOutUp {
    to {
      transform: translate3d(0, calc(var(--f-throw-out-distance, 150px) * -1), 0);
      opacity: 0;
    }
  }
  
  @keyframes f-throwOutDown {
    to {
      transform: translate3d(0, var(--f-throw-out-distance, 150px), 0);
      opacity: 0;
    }
  }
  
  .f-zoomInUp {
    animation: var(--f-transition-duration, 0.2s) ease 0.1s both f-zoomInUp;
  }
  
  .f-zoomOutDown {
    animation: var(--f-transition-duration, 0.2s) ease both f-zoomOutDown;
  }
  
  @keyframes f-zoomInUp {
    from {
      transform: scale(0.975) translate3d(0, 16px, 0);
      opacity: 0;
    }
  
    to {
      transform: scale(1) translate3d(0, 0, 0);
      opacity: 1;
    }
  }
  
  @keyframes f-zoomOutDown {
    to {
      transform: scale(0.975) translate3d(0, 16px, 0);
      opacity: 0;
    }
  }
  
  .f-fadeIn {
    animation: var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
    z-index: 2;
  }
  
  .f-fadeOut {
    animation: var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
    z-index: 1;
  }
  
  @keyframes f-fadeIn {
    0% {
      opacity: 0;
    }
  
    100% {
      opacity: 1;
    }
  }
  
  @keyframes f-fadeOut {
    100% {
      opacity: 0;
    }
  }
  
  .f-fadeFastIn {
    animation: var(--f-transition-duration, 0.2s) ease-out both f-fadeFastIn;
    z-index: 2;
  }
  
  .f-fadeFastOut {
    animation: var(--f-transition-duration, 0.1s) ease-out both f-fadeFastOut;
    z-index: 2;
  }
  
  @keyframes f-fadeFastIn {
    0% {
      opacity: 0.75;
    }
  
    100% {
      opacity: 1;
    }
  }
  
  @keyframes f-fadeFastOut {
    100% {
      opacity: 0;
    }
  }
  
  .f-fadeSlowIn {
    animation: var(--f-transition-duration, 0.5s) ease both f-fadeSlowIn;
    z-index: 2;
  }
  
  .f-fadeSlowOut {
    animation: var(--f-transition-duration, 0.5s) ease both f-fadeSlowOut;
    z-index: 1;
  }
  
  @keyframes f-fadeSlowIn {
    0% {
      opacity: 0;
    }
  
    100% {
      opacity: 1;
    }
  }
  
  @keyframes f-fadeSlowOut {
    100% {
      opacity: 0;
    }
  }
  
  .f-crossfadeIn {
    animation: var(--f-transition-duration, 0.2s) ease-out both f-crossfadeIn;
    z-index: 2;
  }
  
  .f-crossfadeOut {
    animation: calc(var(--f-transition-duration, 0.2s) * 0.5) linear 0.1s both f-crossfadeOut;
    z-index: 1;
  }
  
  @keyframes f-crossfadeIn {
    0% {
      opacity: 0;
    }
  
    100% {
      opacity: 1;
    }
  }
  
  @keyframes f-crossfadeOut {
    100% {
      opacity: 0;
    }
  }
  
  .f-slideIn.from-next {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInNext;
  }
  
  .f-slideIn.from-prev {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInPrev;
  }
  
  .f-slideOut.to-next {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutNext;
  }
  
  .f-slideOut.to-prev {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutPrev;
  }
  
  @keyframes f-slideInPrev {
    0% {
      transform: translateX(100%);
    }
  
    100% {
      transform: translate3d(0, 0, 0);
    }
  }
  
  @keyframes f-slideInNext {
    0% {
      transform: translateX(-100%);
    }
  
    100% {
      transform: translate3d(0, 0, 0);
    }
  }
  
  @keyframes f-slideOutNext {
    100% {
      transform: translateX(-100%);
    }
  }
  
  @keyframes f-slideOutPrev {
    100% {
      transform: translateX(100%);
    }
  }
  
  .f-classicIn.from-next {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInNext;
    z-index: 2;
  }
  
  .f-classicIn.from-prev {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInPrev;
    z-index: 2;
  }
  
  .f-classicOut.to-next {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutNext;
    z-index: 1;
  }
  
  .f-classicOut.to-prev {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutPrev;
    z-index: 1;
  }
  
  @keyframes f-classicInNext {
    0% {
      transform: translateX(-75px);
      opacity: 0;
    }
  
    100% {
      transform: translate3d(0, 0, 0);
      opacity: 1;
    }
  }
  
  @keyframes f-classicInPrev {
    0% {
      transform: translateX(75px);
      opacity: 0;
    }
  
    100% {
      transform: translate3d(0, 0, 0);
      opacity: 1;
    }
  }
  
  @keyframes f-classicOutNext {
    100% {
      transform: translateX(-75px);
      opacity: 0;
    }
  }
  
  @keyframes f-classicOutPrev {
    100% {
      transform: translateX(75px);
      opacity: 0;
    }
  }
  
  :root {
    --f-button-width: 40px;
    --f-button-height: 40px;
    --f-button-border: 0;
    --f-button-border-radius: 0;
    --f-button-color: #374151;
    --f-button-bg: #f8f8f8;
    --f-button-hover-bg: #e0e0e0;
    --f-button-active-bg: #d0d0d0;
    --f-button-shadow: none;
    --f-button-transition: all 0.15s ease;
    --f-button-transform: none;
    --f-button-svg-width: 20px;
    --f-button-svg-height: 20px;
    --f-button-svg-stroke-width: 1.5;
    --f-button-svg-fill: none;
    --f-button-svg-filter: none;
    --f-button-svg-disabled-opacity: 0.65;
  }
  
  .f-button {
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: content-box;
    position: relative;
    margin: 0;
    padding: 0;
    width: var(--f-button-width);
    height: var(--f-button-height);
    border: var(--f-button-border);
    border-radius: var(--f-button-border-radius);
    color: var(--f-button-color);
    background: var(--f-button-bg);
    box-shadow: var(--f-button-shadow);
    pointer-events: all;
    cursor: pointer;
    transition: var(--f-button-transition);
  }
  
  .f-button:active:not([disabled]) {
    background-color: var(--f-button-active-bg);
  }
  
  .f-button:focus:not(:focus-visible) {
    outline: none;
  }
  
  .f-button:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 var(--f-button-outline, 2px) var(--f-button-outline-color, var(--f-button-color));
  }
  
  .f-button svg {
    width: var(--f-button-svg-width);
    height: var(--f-button-svg-height);
    fill: var(--f-button-svg-fill);
    stroke: currentColor;
    stroke-width: var(--f-button-svg-stroke-width);
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: opacity 0.15s ease;
    transform: var(--f-button-transform);
    filter: var(--f-button-svg-filter);
    pointer-events: none;
  }
  
  .f-button[disabled] {
    cursor: default;
  }
  
  .f-button[disabled] svg {
    opacity: var(--f-button-svg-disabled-opacity);
  }
  
  .f-carousel__nav .f-button.is-prev,
  .f-carousel__nav .f-button.is-next,
  .fancybox__nav .f-button.is-prev,
  .fancybox__nav .f-button.is-next {
    position: absolute;
    z-index: 1;
  }
  
  .is-horizontal .f-carousel__nav .f-button.is-prev,
  .is-horizontal .f-carousel__nav .f-button.is-next,
  .is-horizontal .fancybox__nav .f-button.is-prev,
  .is-horizontal .fancybox__nav .f-button.is-next {
    top: 50%;
    transform: translateY(-50%);
  }
  
  .is-horizontal .f-carousel__nav .f-button.is-prev,
  .is-horizontal .fancybox__nav .f-button.is-prev {
    left: var(--f-button-prev-pos);
  }
  
  .is-horizontal .f-carousel__nav .f-button.is-next,
  .is-horizontal .fancybox__nav .f-button.is-next {
    right: var(--f-button-next-pos);
  }
  
  .is-horizontal.is-rtl .f-carousel__nav .f-button.is-prev,
  .is-horizontal.is-rtl .fancybox__nav .f-button.is-prev {
    left: auto;
    right: var(--f-button-next-pos);
  }
  
  .is-horizontal.is-rtl .f-carousel__nav .f-button.is-next,
  .is-horizontal.is-rtl .fancybox__nav .f-button.is-next {
    right: auto;
    left: var(--f-button-prev-pos);
  }
  
  .is-vertical .f-carousel__nav .f-button.is-prev,
  .is-vertical .f-carousel__nav .f-button.is-next,
  .is-vertical .fancybox__nav .f-button.is-prev,
  .is-vertical .fancybox__nav .f-button.is-next {
    top: auto;
    left: 50%;
    transform: translateX(-50%);
  }
  
  .is-vertical .f-carousel__nav .f-button.is-prev,
  .is-vertical .fancybox__nav .f-button.is-prev {
    top: var(--f-button-next-pos);
  }
  
  .is-vertical .f-carousel__nav .f-button.is-next,
  .is-vertical .fancybox__nav .f-button.is-next {
    bottom: var(--f-button-next-pos);
  }
  
  .is-vertical .f-carousel__nav .f-button.is-prev svg,
  .is-vertical .f-carousel__nav .f-button.is-next svg,
  .is-vertical .fancybox__nav .f-button.is-prev svg,
  .is-vertical .fancybox__nav .f-button.is-next svg {
    transform: rotate(90deg);
  }
  
  .f-carousel__nav .f-button:disabled,
  .fancybox__nav .f-button:disabled {
    pointer-events: none;
  }
  
  html.with-fancybox {
    width: auto;
    overflow: visible;
    scroll-behavior: auto;
  }
  
  html.with-fancybox body {
    touch-action: none;
  }
  
  html.with-fancybox body.hide-scrollbar {
    width: auto;
    margin-right: calc(var(--fancybox-body-margin, 0px) + var(--fancybox-scrollbar-compensate, 0px));
    overflow: hidden !important;
    overscroll-behavior-y: none;
  }
  
  .fancybox__container {
    --fancybox-color: #dbdbdb;
    --fancybox-hover-color: #fff;
    --fancybox-bg: rgba(24, 24, 27, 0.98);
    --fancybox-slide-gap: 10px;
    --f-spinner-width: 50px;
    --f-spinner-height: 50px;
    --f-spinner-color-1: rgba(255, 255, 255, 0.1);
    --f-spinner-color-2: #bbb;
    --f-spinner-stroke: 3.65;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    direction: ltr;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    color: #f8f8f8;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    overflow: visible;
    z-index: var(--fancybox-zIndex, 1050);
    outline: none;
    transform-origin: top left;
    text-size-adjust: 100%;
    overscroll-behavior-y: contain;
  }
  
  .fancybox__container *,
  .fancybox__container *::before,
  .fancybox__container *::after {
    box-sizing: inherit;
  }
  
  .fancybox__container::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
  
  .fancybox__backdrop {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: -1;
    background: var(--fancybox-bg);
    opacity: var(--fancybox-opacity, 1);
    will-change: opacity;
  }
  
  .fancybox__carousel {
    position: relative;
    box-sizing: border-box;
    flex: 1;
    min-height: 0;
    z-index: 10;
    overflow-y: visible;
    overflow-x: clip;
  }
  
  .fancybox__viewport {
    width: 100%;
    height: 100%;
  }
  
  .fancybox__viewport.is-draggable {
    cursor: move;
    cursor: grab;
  }
  
  .fancybox__viewport.is-dragging {
    cursor: move;
    cursor: grabbing;
  }
  
  .fancybox__track {
    display: flex;
    margin: 0 auto;
    height: 100%;
  }
  
  .fancybox__slide {
    flex: 0 0 auto;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 100%;
    margin: 0 var(--fancybox-slide-gap) 0 0;
    padding: 4px;
    overflow: auto;
    overscroll-behavior: contain;
    transform: translate3d(0, 0, 0);
    backface-visibility: hidden;
  }
  
  .fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn {
    padding-top: 40px;
  }
  
  .fancybox__slide.has-iframe,
  .fancybox__slide.has-video,
  .fancybox__slide.has-html5video {
    overflow: hidden;
  }
  
  .fancybox__slide.has-image {
    overflow: hidden;
  }
  
  .fancybox__slide.has-image.is-animating,
  .fancybox__slide.has-image.is-selected {
    overflow: visible;
  }
  
  .fancybox__slide::before,
  .fancybox__slide::after {
    content: "";
    flex: 0 0 0;
    margin: auto;
  }
  
  .fancybox__backdrop:empty,
  .fancybox__viewport:empty,
  .fancybox__track:empty,
  .fancybox__slide:empty {
    display: block;
  }
  
  .fancybox__content {
    align-self: center;
    display: flex;
    flex-direction: column;
    position: relative;
    margin: 0;
    padding: 2rem;
    max-width: 100%;
    color: var(--fancybox-content-color, #374151);
    background: var(--fancybox-content-bg, #fff);
    cursor: default;
    border-radius: 0;
    z-index: 20;
  }
  
  .is-loading .fancybox__content {
    opacity: 0;
  }
  
  .is-draggable .fancybox__content {
    cursor: move;
    cursor: grab;
  }
  
  .can-zoom_in .fancybox__content {
    cursor: zoom-in;
  }
  
  .can-zoom_out .fancybox__content {
    cursor: zoom-out;
  }
  
  .is-dragging .fancybox__content {
    cursor: move;
    cursor: grabbing;
  }
  
  .fancybox__content [data-selectable],
  .fancybox__content [contenteditable] {
    cursor: auto;
  }
  
  .fancybox__slide.has-image > .fancybox__content {
    padding: 0;
    background: rgba(0, 0, 0, 0);
    min-height: 1px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    transition: none;
    transform: translate3d(0, 0, 0);
    backface-visibility: hidden;
  }
  
  .fancybox__slide.has-image > .fancybox__content > picture > img {
    width: 100%;
    height: auto;
    max-height: 100%;
  }
  
  .is-animating .fancybox__content,
  .is-dragging .fancybox__content {
    will-change: transform, width, height;
  }
  
  .fancybox-image {
    margin: auto;
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: contain;
    -webkit-user-select: none;
            user-select: none;
    filter: blur(0px);
  }
  
  .fancybox__caption {
    align-self: center;
    max-width: 100%;
    flex-shrink: 0;
    margin: 0;
    padding: 14px 0 4px 0;
    overflow-wrap: anywhere;
    line-height: 1.375;
    color: var(--fancybox-color, currentColor);
    opacity: var(--fancybox-opacity, 1);
    cursor: auto;
    visibility: visible;
  }
  
  .is-loading .fancybox__caption,
  .is-closing .fancybox__caption {
    opacity: 0;
    visibility: hidden;
  }
  
  .is-compact .fancybox__caption {
    padding-bottom: 0;
  }
  
  .f-button.is-close-btn {
    --f-button-svg-stroke-width: 2;
    position: absolute;
    top: 0;
    right: 8px;
    z-index: 40;
  }
  
  .fancybox__content > .f-button.is-close-btn {
    --f-button-width: 34px;
    --f-button-height: 34px;
    --f-button-border-radius: 4px;
    --f-button-color: var(--fancybox-color, #fff);
    --f-button-hover-color: var(--fancybox-color, #fff);
    --f-button-bg: transparent;
    --f-button-hover-bg: transparent;
    --f-button-active-bg: transparent;
    --f-button-svg-width: 22px;
    --f-button-svg-height: 22px;
    position: absolute;
    top: -38px;
    right: 0;
    opacity: 0.75;
  }
  
  .is-loading .fancybox__content > .f-button.is-close-btn {
    visibility: hidden;
  }
  
  .is-zooming-out .fancybox__content > .f-button.is-close-btn {
    visibility: hidden;
  }
  
  .fancybox__content > .f-button.is-close-btn:hover {
    opacity: 1;
  }
  
  .fancybox__footer {
    padding: 0;
    margin: 0;
    position: relative;
  }
  
  .fancybox__footer .fancybox__caption {
    width: 100%;
    padding: 24px;
    opacity: var(--fancybox-opacity, 1);
    transition: all 0.25s ease;
  }
  
  .is-compact .fancybox__footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 20;
    background: rgba(24, 24, 27, 0.5);
  }
  
  .is-compact .fancybox__footer .fancybox__caption {
    padding: 12px;
  }
  
  .is-compact .fancybox__content > .f-button.is-close-btn {
    --f-button-border-radius: 50%;
    --f-button-color: #fff;
    --f-button-hover-color: #fff;
    --f-button-outline-color: #000;
    --f-button-bg: rgba(0, 0, 0, 0.6);
    --f-button-active-bg: rgba(0, 0, 0, 0.6);
    --f-button-hover-bg: rgba(0, 0, 0, 0.6);
    --f-button-svg-width: 18px;
    --f-button-svg-height: 18px;
    --f-button-svg-filter: none;
    top: 5px;
    right: 5px;
  }
  
  .fancybox__nav {
    --f-button-width: 50px;
    --f-button-height: 50px;
    --f-button-border: 0;
    --f-button-border-radius: 50%;
    --f-button-color: var(--fancybox-color);
    --f-button-hover-color: var(--fancybox-hover-color);
    --f-button-bg: transparent;
    --f-button-hover-bg: rgba(24, 24, 27, 0.3);
    --f-button-active-bg: rgba(24, 24, 27, 0.5);
    --f-button-shadow: none;
    --f-button-transition: all 0.15s ease;
    --f-button-transform: none;
    --f-button-svg-width: 26px;
    --f-button-svg-height: 26px;
    --f-button-svg-stroke-width: 2.5;
    --f-button-svg-fill: none;
    --f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.5));
    --f-button-svg-disabled-opacity: 0.65;
    --f-button-next-pos: 1rem;
    --f-button-prev-pos: 1rem;
    opacity: var(--fancybox-opacity, 1);
  }
  
  .fancybox__nav .f-button:before {
    position: absolute;
    content: "";
    top: -30px;
    right: -20px;
    left: -20px;
    bottom: -30px;
    z-index: 1;
  }
  
  .is-idle .fancybox__nav {
    animation: 0.15s ease-out both f-fadeOut;
  }
  
  .is-idle.is-compact .fancybox__footer {
    pointer-events: none;
    animation: 0.15s ease-out both f-fadeOut;
  }
  
  .fancybox__slide > .f-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: var(--f-spinner-top, calc(var(--f-spinner-width) * -0.5)) 0 0 var(--f-spinner-left, calc(var(--f-spinner-height) * -0.5));
    z-index: 30;
    cursor: pointer;
  }
  
  .fancybox-protected {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    -webkit-user-select: none;
            user-select: none;
  }
  
  .fancybox-ghost {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: contain;
    z-index: 40;
    -webkit-user-select: none;
            user-select: none;
    pointer-events: none;
  }
  
  .fancybox-focus-guard {
    outline: none;
    opacity: 0;
    position: fixed;
    pointer-events: none;
  }
  
  .fancybox__container:not([aria-hidden]) {
    opacity: 0;
  }
  
  .fancybox__container.is-animated[aria-hidden=false] > *:not(.fancybox__backdrop, .fancybox__carousel),
  .fancybox__container.is-animated[aria-hidden=false] .fancybox__carousel > *:not(.fancybox__viewport),
  .fancybox__container.is-animated[aria-hidden=false] .fancybox__slide > *:not(.fancybox__content) {
    animation: var(--f-interface-enter-duration, 0.25s) ease 0.1s backwards f-fadeIn;
  }
  
  .fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop {
    animation: var(--f-backdrop-enter-duration, 0.35s) ease backwards f-fadeIn;
  }
  
  .fancybox__container.is-animated[aria-hidden=true] > *:not(.fancybox__backdrop, .fancybox__carousel),
  .fancybox__container.is-animated[aria-hidden=true] .fancybox__carousel > *:not(.fancybox__viewport),
  .fancybox__container.is-animated[aria-hidden=true] .fancybox__slide > *:not(.fancybox__content) {
    animation: var(--f-interface-exit-duration, 0.15s) ease forwards f-fadeOut;
  }
  
  .fancybox__container.is-animated[aria-hidden=true] .fancybox__backdrop {
    animation: var(--f-backdrop-exit-duration, 0.35s) ease forwards f-fadeOut;
  }
  
  .has-iframe .fancybox__content,
  .has-map .fancybox__content,
  .has-pdf .fancybox__content,
  .has-youtube .fancybox__content,
  .has-vimeo .fancybox__content,
  .has-html5video .fancybox__content {
    max-width: 100%;
    flex-shrink: 1;
    min-height: 1px;
    overflow: visible;
  }
  
  .has-iframe .fancybox__content,
  .has-map .fancybox__content,
  .has-pdf .fancybox__content {
    width: calc(100% - 120px);
    height: 90%;
  }
  
  .fancybox__container.is-compact .has-iframe .fancybox__content,
  .fancybox__container.is-compact .has-map .fancybox__content,
  .fancybox__container.is-compact .has-pdf .fancybox__content {
    width: 100%;
    height: 100%;
  }
  
  .has-youtube .fancybox__content,
  .has-vimeo .fancybox__content,
  .has-html5video .fancybox__content {
    width: 960px;
    height: 540px;
    max-width: 100%;
    max-height: 100%;
  }
  
  .has-map .fancybox__content,
  .has-pdf .fancybox__content,
  .has-youtube .fancybox__content,
  .has-vimeo .fancybox__content,
  .has-html5video .fancybox__content {
    padding: 0;
    background: rgba(24, 24, 27, 0.9);
    color: #fff;
  }
  
  .has-map .fancybox__content {
    background: #e5e3df;
  }
  
  .fancybox__html5video,
  .fancybox__iframe {
    border: 0;
    display: block;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0);
  }
  
  .fancybox-placeholder {
    border: 0 !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
    white-space: nowrap !important;
  }
  
  .f-carousel__thumbs {
    --f-thumb-width: 96px;
    --f-thumb-height: 72px;
    --f-thumb-outline: 0;
    --f-thumb-outline-color: #5eb0ef;
    --f-thumb-opacity: 1;
    --f-thumb-hover-opacity: 1;
    --f-thumb-selected-opacity: 1;
    --f-thumb-border-radius: 2px;
    --f-thumb-offset: 0px;
    --f-button-next-pos: 0;
    --f-button-prev-pos: 0;
  }
  
  .f-carousel__thumbs.is-classic {
    --f-thumb-gap: 8px;
    --f-thumb-opacity: 0.5;
    --f-thumb-hover-opacity: 1;
    --f-thumb-selected-opacity: 1;
  }
  
  .f-carousel__thumbs.is-modern {
    --f-thumb-gap: 4px;
    --f-thumb-extra-gap: 16px;
    --f-thumb-clip-width: 46px;
  }
  
  .f-thumbs {
    position: relative;
    flex: 0 0 auto;
    margin: 0;
    overflow: hidden;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-user-select: none;
            user-select: none;
    perspective: 1000px;
    transform: translateZ(0);
  }
  
  .f-thumbs .f-spinner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 2px;
    background-image: linear-gradient(#ebeff2, #e2e8f0);
    z-index: -1;
  }
  
  .f-thumbs .f-spinner svg {
    display: none;
  }
  
  .f-thumbs.is-vertical {
    height: 100%;
  }
  
  .f-thumbs__viewport {
    width: 100%;
    height: auto;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
  }
  
  .f-thumbs__track {
    display: flex;
  }
  
  .f-thumbs__slide {
    position: relative;
    flex: 0 0 auto;
    box-sizing: content-box;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    width: var(--f-thumb-width);
    height: var(--f-thumb-height);
    overflow: visible;
    cursor: pointer;
  }
  
  .f-thumbs__slide.is-loading img {
    opacity: 0;
  }
  
  .is-classic .f-thumbs__viewport {
    height: 100%;
  }
  
  .is-modern .f-thumbs__track {
    width: max-content;
  }
  
  .is-modern .f-thumbs__track::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc((var(--f-thumb-clip-width, 0)) * -0.5);
    width: calc(var(--width, 0) * 1px + var(--f-thumb-clip-width, 0));
    cursor: pointer;
  }
  
  .is-modern .f-thumbs__slide {
    width: var(--f-thumb-clip-width);
    transform: translate3d(calc(var(--shift, 0) * -1px), 0, 0);
    transition: none;
    pointer-events: none;
  }
  
  .is-modern.is-resting .f-thumbs__slide {
    transition: transform 0.33s ease;
  }
  
  .is-modern.is-resting .f-thumbs__slide__button {
    transition: clip-path 0.33s ease;
  }
  
  .is-using-tab .is-modern .f-thumbs__slide:focus-within {
    filter: drop-shadow(-1px 0px 0px var(--f-thumb-outline-color)) drop-shadow(2px 0px 0px var(--f-thumb-outline-color)) drop-shadow(0px -1px 0px var(--f-thumb-outline-color)) drop-shadow(0px 2px 0px var(--f-thumb-outline-color));
  }
  
  .f-thumbs__slide__button {
    appearance: none;
    width: var(--f-thumb-width);
    height: 100%;
    margin: 0 -100% 0 -100%;
    padding: 0;
    border: 0;
    position: relative;
    border-radius: var(--f-thumb-border-radius);
    overflow: hidden;
    background: rgba(0, 0, 0, 0);
    outline: none;
    cursor: pointer;
    pointer-events: auto;
    touch-action: manipulation;
    opacity: var(--f-thumb-opacity);
    transition: opacity 0.2s ease;
  }
  
  .f-thumbs__slide__button:hover {
    opacity: var(--f-thumb-hover-opacity);
  }
  
  .f-thumbs__slide__button:focus:not(:focus-visible) {
    outline: none;
  }
  
  .f-thumbs__slide__button:focus-visible {
    outline: none;
    opacity: var(--f-thumb-selected-opacity);
  }
  
  .is-modern .f-thumbs__slide__button {
    --clip-path: inset(0 calc(((var(--f-thumb-width, 0) - var(--f-thumb-clip-width, 0))) * (1 - var(--progress, 0)) * 0.5) round var(--f-thumb-border-radius, 0));
    clip-path: var(--clip-path);
  }
  
  .is-classic .is-nav-selected .f-thumbs__slide__button {
    opacity: var(--f-thumb-selected-opacity);
  }
  
  .is-classic .is-nav-selected .f-thumbs__slide__button::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: auto;
    bottom: 0;
    border: var(--f-thumb-outline, 0) solid var(--f-thumb-outline-color, transparent);
    border-radius: var(--f-thumb-border-radius);
    animation: f-fadeIn 0.2s ease-out;
    z-index: 10;
  }
  
  .f-thumbs__slide__img {
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: var(--f-thumb-offset);
    box-sizing: border-box;
    pointer-events: none;
    object-fit: cover;
    border-radius: var(--f-thumb-border-radius);
  }
  
  .f-thumbs.is-horizontal .f-thumbs__track {
    padding: 8px 0 12px 0;
  }
  
  .f-thumbs.is-horizontal .f-thumbs__slide {
    margin: 0 var(--f-thumb-gap) 0 0;
  }
  
  .f-thumbs.is-vertical .f-thumbs__track {
    flex-wrap: wrap;
    padding: 0 8px;
  }
  
  .f-thumbs.is-vertical .f-thumbs__slide {
    margin: 0 0 var(--f-thumb-gap) 0;
  }
  
  .fancybox__thumbs {
    --f-thumb-width: 96px;
    --f-thumb-height: 72px;
    --f-thumb-border-radius: 2px;
    --f-thumb-outline: 2px;
    --f-thumb-outline-color: #ededed;
    position: relative;
    opacity: var(--fancybox-opacity, 1);
    transition: max-height 0.35s cubic-bezier(0.23, 1, 0.32, 1);
  }
  
  .fancybox__thumbs.is-classic {
    --f-thumb-gap: 8px;
    --f-thumb-opacity: 0.5;
    --f-thumb-hover-opacity: 1;
  }
  
  .fancybox__thumbs.is-classic .f-spinner {
    background-image: linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));
  }
  
  .fancybox__thumbs.is-modern {
    --f-thumb-gap: 4px;
    --f-thumb-extra-gap: 16px;
    --f-thumb-clip-width: 46px;
    --f-thumb-opacity: 1;
    --f-thumb-hover-opacity: 1;
  }
  
  .fancybox__thumbs.is-modern .f-spinner {
    background-image: linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));
  }
  
  .fancybox__thumbs.is-horizontal {
    padding: 0 var(--f-thumb-gap);
  }
  
  .fancybox__thumbs.is-vertical {
    padding: var(--f-thumb-gap) 0;
  }
  
  .is-compact .fancybox__thumbs {
    --f-thumb-width: 64px;
    --f-thumb-clip-width: 32px;
    --f-thumb-height: 48px;
    --f-thumb-extra-gap: 10px;
  }
  
  .fancybox__thumbs.is-masked {
    max-height: 0px !important;
  }
  
  .is-closing .fancybox__thumbs {
    transition: none !important;
  }
  
  .fancybox__toolbar {
    --f-progress-color: var(--fancybox-color, rgba(255, 255, 255, 0.94));
    --f-button-width: 46px;
    --f-button-height: 46px;
    --f-button-color: var(--fancybox-color);
    --f-button-hover-color: var(--fancybox-hover-color);
    --f-button-bg: rgba(24, 24, 27, 0.65);
    --f-button-hover-bg: rgba(70, 70, 73, 0.65);
    --f-button-active-bg: rgba(90, 90, 93, 0.65);
    --f-button-border-radius: 0;
    --f-button-svg-width: 24px;
    --f-button-svg-height: 24px;
    --f-button-svg-stroke-width: 1.5;
    --f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.15));
    --f-button-svg-fill: none;
    --f-button-svg-disabled-opacity: 0.65;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif;
    color: var(--fancybox-color, currentColor);
    opacity: var(--fancybox-opacity, 1);
    text-shadow: var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, 0.5));
    pointer-events: none;
    z-index: 20;
  }
  
  .fancybox__toolbar :focus-visible {
    z-index: 1;
  }
  
  .fancybox__toolbar.is-absolute,
  .is-compact .fancybox__toolbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
  }
  
  .is-idle .fancybox__toolbar {
    pointer-events: none;
    animation: 0.15s ease-out both f-fadeOut;
  }
  
  .fancybox__toolbar__column {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
  }
  
  .fancybox__toolbar__column.is-left,
  .fancybox__toolbar__column.is-right {
    flex-grow: 1;
    flex-basis: 0;
  }
  
  .fancybox__toolbar__column.is-right {
    display: flex;
    justify-content: flex-end;
    flex-wrap: nowrap;
  }
  
  .fancybox__infobar {
    padding: 0 5px;
    line-height: var(--f-button-height);
    text-align: center;
    font-size: 17px;
    font-variant-numeric: tabular-nums;
    -webkit-font-smoothing: subpixel-antialiased;
    cursor: default;
    -webkit-user-select: none;
            user-select: none;
  }
  
  .fancybox__infobar span {
    padding: 0 5px;
  }
  
  .fancybox__infobar:not(:first-child):not(:last-child) {
    background: var(--f-button-bg);
  }
  
  [data-fancybox-toggle-slideshow] {
    position: relative;
  }
  
  [data-fancybox-toggle-slideshow] .f-progress {
    height: 100%;
    opacity: 0.3;
  }
  
  [data-fancybox-toggle-slideshow] svg g:first-child {
    display: flex;
  }
  
  [data-fancybox-toggle-slideshow] svg g:last-child {
    display: none;
  }
  
  .has-slideshow [data-fancybox-toggle-slideshow] svg g:first-child {
    display: none;
  }
  
  .has-slideshow [data-fancybox-toggle-slideshow] svg g:last-child {
    display: flex;
  }
  
  [data-fancybox-toggle-fullscreen] svg g:first-child {
    display: flex;
  }
  
  [data-fancybox-toggle-fullscreen] svg g:last-child {
    display: none;
  }
  
  :fullscreen [data-fancybox-toggle-fullscreen] svg g:first-child {
    display: none;
  }
  
  :fullscreen [data-fancybox-toggle-fullscreen] svg g:last-child {
    display: flex;
  }
  
  .f-progress {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    transform: scaleX(0);
    transform-origin: 0;
    transition-property: transform;
    transition-timing-function: linear;
    background: var(--f-progress-color, var(--f-carousel-theme-color, #0091ff));
    z-index: 30;
    -webkit-user-select: none;
            user-select: none;
    pointer-events: none;
  }
  
  :root {
    --brand-main: #000000;
    --brand-secondary: #ffffff;
    --dark: #000000;
    --light: #ffffff;
    --black: #1A1919;
    --black-medium: #1B1B1B;
    --black-light: #00000030;
    --white: #ffffff;
    --light-white: #E9E7DC50;
    --whitesmoke: #FFFFFF30;
    --blue: #000E47;
    --grey: #E9E7DC;
    --dark-grey: #686868;
    --light-grey: #D9D9D9;
    --red: #B8223A;
    --light-red: #B8223A30;
    --light-blue: #000E4730;
    --dark-blue: #000E4740;
    --green: #3E7C31;
    --light-green: #49953A;
    --dark-brown: #270309;
    --brown: #3C050E;
    --orange: #C85814;
    --light-orange: #E0780F;
    --aqua: #1A9393;
    --yellow: #D49F1B;
    --pink: #CF322F;
    --nude-gold: #E3B644;
    --dark-red: #B41616;
    --forest-green: #519974;
    --dusty-rose: #D39CA2;
    --crimson-red: #E01837;
    --bright-red: #EE2F25;
    --bold-orange: #EE5D1E;
    --leaf-green: #57B347;
    --deep-red: #D11530;
    --black-matt: #161415;
    --light-yellow: #BEB192;
    --black-body: #1A1919;
    --dark-yellow: #98814E;
    --veneer: "veneer";
    --monday: "monday";
    --gellix-semibold: "gellix-semibold";
    --outfit: "outfit";
    --font-base: 16px;
    --line-height-base: 1.5rem;
    --font-size-h1: 2.5rem;
    --font-size-h2: 2rem;
    --font-size-h3: 1.75rem;
    --font-size-h4: 1.5rem;
    --font-size-h5: 1.25rem;
    --font-size-h6: 1rem;
    --font-weight-h1: 500;
    --font-weight-h2: 500;
    --font-weight-h3: 500;
    --font-weight-h4: 500;
    --font-weight-h5: 500;
    --font-weight-h6: 500;
    --text-base-size: 1em;
    --text-scale-ratio: 1.2;
    --text-xs: calc((1em / var(--text-scale-ratio)) / var(--text-scale-ratio));
    --text-sm: calc(var(--text-xs) * var(--text-scale-ratio));
    --text-md: calc(var(--text-sm) * var(--text-scale-ratio) * var(--text-scale-ratio));
    --text-lg: calc(var(--text-md) * var(--text-scale-ratio));
    --text-xl: calc(var(--text-lg) * var(--text-scale-ratio));
    --breakpoint-xs: 375px;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 1025px;
    --breakpoint-xl: 1200px;
    --breakpoint-xxl: 1440px;
    --wrap-space: 15px;
    --wrap-width-xs: 100%;
    --wrap-width-sm: 540px;
    --wrap-width-md: 720px;
    --wrap-width-lg: 960px;
    --wrap-width-xl: 1140px;
    --col-space: 30px;
    --border-radius: 0;
    --spacer: 20px;
    --cubic-bezier: ease;
    --cubic-bezier2: cubic-bezier(.4,0,0,1);
    --transition-timing: .4s;
    --transition-main: ease;
    --mobile-height: 100vh;
  }
  
  @font-face {
    font-family: "gellix-semibold";
    src: url("../fonts/g-semibold.woff2") format("woff2"), url("../fonts/g-semibold.woff") format("woff");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
  }
  
  @font-face {
    font-family: "monday";
    src: url("../fonts/m-regular.woff2") format("woff2"), url("../fonts/m-regular.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
  }
  
  @font-face {
    font-family: "veneer";
    src: url("../fonts/v.woff2") format("woff2"), url("../fonts/v.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
  }
  
  @font-face {
    font-family: "icomoon";
    src: url("../icons/icomoon.eot?7zwp9");
    src: url("../icons/icomoon.eot?7zwp9#iefix") format("embedded-opentype"), url("../icons/icomoon.ttf?7zwp9") format("truetype"), url("../icons/icomoon.woff?7zwp9") format("woff"), url("../icons/icomoon.svg?7zwp9#icomoon") format("svg");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
  }
  
  [class^=icon-],
  [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: "icomoon" !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  
  .icon-dropdown:before {
    content: "\e90a";
  }
  
  .icon-up:before {
    content: "\e90c";
  }
  
  .icon-arrow-right:before {
    content: "\e906";
  }
  
  .icon-arrow-left:before {
    content: "\e907";
  }
  
  .icon-search:before {
    content: "\e908";
  }
  
  .icon-menu:before {
    content: "\e90b";
  }
  
  .icon-instagram:before {
    content: "\e909";
  }
  
  .icon-youtube:before {
    content: "\e900";
  }
  
  .icon-facebook:before {
    content: "\e901";
  }
  
  .icon-twitter:before {
    content: "\e902";
  }
  
  .icon-linkedin:before {
    content: "\e903";
  }
  
  .icon-x:before {
    content: "\e904";
  }
  
  .icon-play:before {
    content: "\e905";
  }
  
  *,
  *:before,
  *:after {
    box-sizing: border-box;
  }
  
  ul {
    margin: 0;
    padding: 0;
    -webkit-margin-before: 0;
    -webkit-margin-after: 0;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
    -webkit-padding-start: 0;
  }
  
  li {
    list-style-type: none;
  }
  
  p,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    margin: 0;
    padding: 0;
  }
  
  iframe,
  button {
    border: none;
  }
  
  fieldset {
    border: 0;
    margin: 0;
    padding: 0;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
    -webkit-padding-before: 0;
    -webkit-padding-start: 0;
    -webkit-padding-end: 0;
    -webkit-padding-after: 0;
    min-width: auto;
  }
  
  body::before {
    content: "xs:375px,sm:576px,md:768px,lg:1025px,xl:1200px,xxl:1440px";
    display: none;
  }
  
  :root {
    scroll-behavior: smooth;
  }
  
  html,
  body {
    -webkit-overflow-scrolling: touch;
    touch-action: manipulation;
  }
  
  body {
    background-color: var(--grey);
    font-family: var(--outfit);
    color: var(--blue);
    text-align: center;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-image: url("../img/pics/about/layer.webp");
    background-size: inherit;
    background-repeat: repeat;
    overflow: auto;
    overscroll-behavior: none;
  }
  
  body.h-bg-black-body {
    color: var(--light-yellow);
    background-image: url("../img/pics/general/layer-black.webp");
  }
  
  body.h-bg-black-body .a-icon--menu.a-icon--menu-fixed {
    color: var(--black-body);
  }
  
  .container,
  .o-other-products .swiper,
  .o-products-single .swiper {
    padding-left: 15px;
    padding-right: 15px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: start;
    flex-wrap: wrap;
    gap: 0;
  }
  
  .container--column {
    display: flex;
    flex-direction: column;
    justify-content: unset;
    align-items: start;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .bg-overlay {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 11;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: all var(--transition-timing) var(--transition-main);
  }
  
  .bg-overlay.active {
    opacity: 1;
    visibility: visible;
  }
  
  .h-underline {
    text-decoration: underline;
    text-underline-offset: 2px;
  }
  
  .h-italic {
    font-family: var(--gellix-thin);
  }
  
  .h-bold {
    font-family: var(--gellix-semibold);
  }
  
  .h-uppercase {
    text-transform: uppercase;
  }
  
  .h-center {
    text-align: center;
  }
  
  .h-left {
    text-align: left;
  }
  
  .h-right {
    text-align: right;
  }
  
  .h-align-center {
    align-items: center;
  }
  
  .h-align-end {
    align-items: end;
  }
  
  .h-align-start {
    align-items: start;
  }
  
  .h-justify-center {
    justify-content: center !important;
  }
  
  .h-justify-end {
    justify-content: end;
  }
  
  .h-justify-start {
    justify-content: start;
  }
  
  .h-blue {
    color: var(--blue);
  }
  
  .h-grey {
    color: var(--grey);
  }
  
  .h-black {
    color: var(--black);
  }
  
  .h-black-medium {
    color: var(--black-medium);
  }
  
  .h-black-light {
    color: var(--black-light);
  }
  
  .h-white {
    color: var(--white);
  }
  
  .h-light-white {
    color: var(--light-white);
  }
  
  .h-whitesmoke {
    color: var(--whitesmoke);
  }
  
  .h-dark-grey {
    color: var(--dark-grey);
  }
  
  .h-light-grey {
    color: var(--light-grey);
  }
  
  .h-red {
    color: var(--red);
  }
  
  .h-light-red {
    color: var(--light-red);
  }
  
  .h-light-blue {
    color: var(--light-blue);
  }
  
  .h-dark-blue {
    color: var(--dark-blue);
  }
  
  .h-green {
    color: var(--green);
  }
  
  .h-dark-brown {
    color: var(--dark-brown);
  }
  
  .h-brown {
    color: var(--brown);
  }
  
  .h-light-green {
    color: var(--light-green);
  }
  
  .h-orange {
    color: var(--orange);
  }
  
  .h-light-orange {
    color: var(--light-orange);
  }
  
  .h-aqua {
    color: var(--aqua);
  }
  
  .h-yellow {
    color: var(--yellow);
  }
  
  .h-pink {
    color: var(--pink);
  }
  
  .h-nude-gold {
    color: var(--nude-gold);
  }
  
  .h-dark-red {
    color: var(--dark-red);
  }
  
  .h-forest-green {
    color: var(--forest-green);
  }
  
  .h-dusty-rose {
    color: var(--dusty-rose);
  }
  
  .h-crimson-red {
    color: var(--crimson-red);
  }
  
  .h-bright-red {
    color: var(--bright-red);
  }
  
  .h-bold-orange {
    color: var(--bold-orange);
  }
  
  .h-leaf-green {
    color: var(--leaf-green);
  }
  
  .h-deep-red {
    color: var(--deep-red);
  }
  
  .h-black-matt {
    color: var(--black-matt);
  }
  
  .h-light-yellow {
    color: var(--light-yellow);
  }
  
  .h-black-body {
    color: var(--black-body);
  }
  
  .h-dark-yellow {
    color: var(--dark-yellow);
  }
  
  .h-bg-blue {
    background-color: var(--blue);
  }
  
  .h-a-bg-blue .a-heading,
  .h-a-bg-blue .swiper-pagination {
    color: var(--blue);
  }
  
  .h-a-bg-blue::before {
    background-color: var(--blue);
  }
  
  .h-a-bg-blue::after {
    background-color: var(--blue);
  }
  
  .h-bg-grey {
    background-color: var(--grey);
  }
  
  .h-a-bg-grey .a-heading,
  .h-a-bg-grey .swiper-pagination {
    color: var(--grey);
  }
  
  .h-a-bg-grey::before {
    background-color: var(--grey);
  }
  
  .h-a-bg-grey::after {
    background-color: var(--grey);
  }
  
  .h-bg-black {
    background-color: var(--black);
  }
  
  .h-a-bg-black .a-heading,
  .h-a-bg-black .swiper-pagination {
    color: var(--black);
  }
  
  .h-a-bg-black::before {
    background-color: var(--black);
  }
  
  .h-a-bg-black::after {
    background-color: var(--black);
  }
  
  .h-bg-black-medium {
    background-color: var(--black-medium);
  }
  
  .h-a-bg-black-medium .a-heading,
  .h-a-bg-black-medium .swiper-pagination {
    color: var(--black-medium);
  }
  
  .h-a-bg-black-medium::before {
    background-color: var(--black-medium);
  }
  
  .h-a-bg-black-medium::after {
    background-color: var(--black-medium);
  }
  
  .h-bg-black-light {
    background-color: var(--black-light);
  }
  
  .h-a-bg-black-light .a-heading,
  .h-a-bg-black-light .swiper-pagination {
    color: var(--black-light);
  }
  
  .h-a-bg-black-light::before {
    background-color: var(--black-light);
  }
  
  .h-a-bg-black-light::after {
    background-color: var(--black-light);
  }
  
  .h-bg-white {
    background-color: var(--white);
  }
  
  .h-a-bg-white .a-heading,
  .h-a-bg-white .swiper-pagination {
    color: var(--white);
  }
  
  .h-a-bg-white::before {
    background-color: var(--white);
  }
  
  .h-a-bg-white::after {
    background-color: var(--white);
  }
  
  .h-bg-light-white {
    background-color: var(--light-white);
  }
  
  .h-a-bg-light-white .a-heading,
  .h-a-bg-light-white .swiper-pagination {
    color: var(--light-white);
  }
  
  .h-a-bg-light-white::before {
    background-color: var(--light-white);
  }
  
  .h-a-bg-light-white::after {
    background-color: var(--light-white);
  }
  
  .h-bg-whitesmoke {
    background-color: var(--whitesmoke);
  }
  
  .h-a-bg-whitesmoke .a-heading,
  .h-a-bg-whitesmoke .swiper-pagination {
    color: var(--whitesmoke);
  }
  
  .h-a-bg-whitesmoke::before {
    background-color: var(--whitesmoke);
  }
  
  .h-a-bg-whitesmoke::after {
    background-color: var(--whitesmoke);
  }
  
  .h-bg-dark-grey {
    background-color: var(--dark-grey);
  }
  
  .h-a-bg-dark-grey .a-heading,
  .h-a-bg-dark-grey .swiper-pagination {
    color: var(--dark-grey);
  }
  
  .h-a-bg-dark-grey::before {
    background-color: var(--dark-grey);
  }
  
  .h-a-bg-dark-grey::after {
    background-color: var(--dark-grey);
  }
  
  .h-bg-light-grey {
    background-color: var(--light-grey);
  }
  
  .h-a-bg-light-grey .a-heading,
  .h-a-bg-light-grey .swiper-pagination {
    color: var(--light-grey);
  }
  
  .h-a-bg-light-grey::before {
    background-color: var(--light-grey);
  }
  
  .h-a-bg-light-grey::after {
    background-color: var(--light-grey);
  }
  
  .h-bg-red {
    background-color: var(--red);
  }
  
  .h-a-bg-red .a-heading,
  .h-a-bg-red .swiper-pagination {
    color: var(--red);
  }
  
  .h-a-bg-red::before {
    background-color: var(--red);
  }
  
  .h-a-bg-red::after {
    background-color: var(--red);
  }
  
  .h-bg-light-red {
    background-color: var(--light-red);
  }
  
  .h-a-bg-light-red .a-heading,
  .h-a-bg-light-red .swiper-pagination {
    color: var(--light-red);
  }
  
  .h-a-bg-light-red::before {
    background-color: var(--light-red);
  }
  
  .h-a-bg-light-red::after {
    background-color: var(--light-red);
  }
  
  .h-bg-light-blue {
    background-color: var(--light-blue);
  }
  
  .h-a-bg-light-blue .a-heading,
  .h-a-bg-light-blue .swiper-pagination {
    color: var(--light-blue);
  }
  
  .h-a-bg-light-blue::before {
    background-color: var(--light-blue);
  }
  
  .h-a-bg-light-blue::after {
    background-color: var(--light-blue);
  }
  
  .h-bg-dark-blue {
    background-color: var(--dark-blue);
  }
  
  .h-a-bg-dark-blue .a-heading,
  .h-a-bg-dark-blue .swiper-pagination {
    color: var(--dark-blue);
  }
  
  .h-a-bg-dark-blue::before {
    background-color: var(--dark-blue);
  }
  
  .h-a-bg-dark-blue::after {
    background-color: var(--dark-blue);
  }
  
  .h-bg-green {
    background-color: var(--green);
  }
  
  .h-a-bg-green .a-heading,
  .h-a-bg-green .swiper-pagination {
    color: var(--green);
  }
  
  .h-a-bg-green::before {
    background-color: var(--green);
  }
  
  .h-a-bg-green::after {
    background-color: var(--green);
  }
  
  .h-bg-dark-brown {
    background-color: var(--dark-brown);
  }
  
  .h-a-bg-dark-brown .a-heading,
  .h-a-bg-dark-brown .swiper-pagination {
    color: var(--dark-brown);
  }
  
  .h-a-bg-dark-brown::before {
    background-color: var(--dark-brown);
  }
  
  .h-a-bg-dark-brown::after {
    background-color: var(--dark-brown);
  }
  
  .h-bg-brown {
    background-color: var(--brown);
  }
  
  .h-a-bg-brown .a-heading,
  .h-a-bg-brown .swiper-pagination {
    color: var(--brown);
  }
  
  .h-a-bg-brown::before {
    background-color: var(--brown);
  }
  
  .h-a-bg-brown::after {
    background-color: var(--brown);
  }
  
  .h-bg-light-green {
    background-color: var(--light-green);
  }
  
  .h-a-bg-light-green .a-heading,
  .h-a-bg-light-green .swiper-pagination {
    color: var(--light-green);
  }
  
  .h-a-bg-light-green::before {
    background-color: var(--light-green);
  }
  
  .h-a-bg-light-green::after {
    background-color: var(--light-green);
  }
  
  .h-bg-orange {
    background-color: var(--orange);
  }
  
  .h-a-bg-orange .a-heading,
  .h-a-bg-orange .swiper-pagination {
    color: var(--orange);
  }
  
  .h-a-bg-orange::before {
    background-color: var(--orange);
  }
  
  .h-a-bg-orange::after {
    background-color: var(--orange);
  }
  
  .h-bg-light-orange {
    background-color: var(--light-orange);
  }
  
  .h-a-bg-light-orange .a-heading,
  .h-a-bg-light-orange .swiper-pagination {
    color: var(--light-orange);
  }
  
  .h-a-bg-light-orange::before {
    background-color: var(--light-orange);
  }
  
  .h-a-bg-light-orange::after {
    background-color: var(--light-orange);
  }
  
  .h-bg-aqua {
    background-color: var(--aqua);
  }
  
  .h-a-bg-aqua .a-heading,
  .h-a-bg-aqua .swiper-pagination {
    color: var(--aqua);
  }
  
  .h-a-bg-aqua::before {
    background-color: var(--aqua);
  }
  
  .h-a-bg-aqua::after {
    background-color: var(--aqua);
  }
  
  .h-bg-yellow {
    background-color: var(--yellow);
  }
  
  .h-a-bg-yellow .a-heading,
  .h-a-bg-yellow .swiper-pagination {
    color: var(--yellow);
  }
  
  .h-a-bg-yellow::before {
    background-color: var(--yellow);
  }
  
  .h-a-bg-yellow::after {
    background-color: var(--yellow);
  }
  
  .h-bg-pink {
    background-color: var(--pink);
  }
  
  .h-a-bg-pink .a-heading,
  .h-a-bg-pink .swiper-pagination {
    color: var(--pink);
  }
  
  .h-a-bg-pink::before {
    background-color: var(--pink);
  }
  
  .h-a-bg-pink::after {
    background-color: var(--pink);
  }
  
  .h-bg-nude-gold {
    background-color: var(--nude-gold);
  }
  
  .h-a-bg-nude-gold .a-heading,
  .h-a-bg-nude-gold .swiper-pagination {
    color: var(--nude-gold);
  }
  
  .h-a-bg-nude-gold::before {
    background-color: var(--nude-gold);
  }
  
  .h-a-bg-nude-gold::after {
    background-color: var(--nude-gold);
  }
  
  .h-bg-dark-red {
    background-color: var(--dark-red);
  }
  
  .h-a-bg-dark-red .a-heading,
  .h-a-bg-dark-red .swiper-pagination {
    color: var(--dark-red);
  }
  
  .h-a-bg-dark-red::before {
    background-color: var(--dark-red);
  }
  
  .h-a-bg-dark-red::after {
    background-color: var(--dark-red);
  }
  
  .h-bg-forest-green {
    background-color: var(--forest-green);
  }
  
  .h-a-bg-forest-green .a-heading,
  .h-a-bg-forest-green .swiper-pagination {
    color: var(--forest-green);
  }
  
  .h-a-bg-forest-green::before {
    background-color: var(--forest-green);
  }
  
  .h-a-bg-forest-green::after {
    background-color: var(--forest-green);
  }
  
  .h-bg-dusty-rose {
    background-color: var(--dusty-rose);
  }
  
  .h-a-bg-dusty-rose .a-heading,
  .h-a-bg-dusty-rose .swiper-pagination {
    color: var(--dusty-rose);
  }
  
  .h-a-bg-dusty-rose::before {
    background-color: var(--dusty-rose);
  }
  
  .h-a-bg-dusty-rose::after {
    background-color: var(--dusty-rose);
  }
  
  .h-bg-crimson-red {
    background-color: var(--crimson-red);
  }
  
  .h-a-bg-crimson-red .a-heading,
  .h-a-bg-crimson-red .swiper-pagination {
    color: var(--crimson-red);
  }
  
  .h-a-bg-crimson-red::before {
    background-color: var(--crimson-red);
  }
  
  .h-a-bg-crimson-red::after {
    background-color: var(--crimson-red);
  }
  
  .h-bg-bright-red {
    background-color: var(--bright-red);
  }
  
  .h-a-bg-bright-red .a-heading,
  .h-a-bg-bright-red .swiper-pagination {
    color: var(--bright-red);
  }
  
  .h-a-bg-bright-red::before {
    background-color: var(--bright-red);
  }
  
  .h-a-bg-bright-red::after {
    background-color: var(--bright-red);
  }
  
  .h-bg-bold-orange {
    background-color: var(--bold-orange);
  }
  
  .h-a-bg-bold-orange .a-heading,
  .h-a-bg-bold-orange .swiper-pagination {
    color: var(--bold-orange);
  }
  
  .h-a-bg-bold-orange::before {
    background-color: var(--bold-orange);
  }
  
  .h-a-bg-bold-orange::after {
    background-color: var(--bold-orange);
  }
  
  .h-bg-leaf-green {
    background-color: var(--leaf-green);
  }
  
  .h-a-bg-leaf-green .a-heading,
  .h-a-bg-leaf-green .swiper-pagination {
    color: var(--leaf-green);
  }
  
  .h-a-bg-leaf-green::before {
    background-color: var(--leaf-green);
  }
  
  .h-a-bg-leaf-green::after {
    background-color: var(--leaf-green);
  }
  
  .h-bg-deep-red {
    background-color: var(--deep-red);
  }
  
  .h-a-bg-deep-red .a-heading,
  .h-a-bg-deep-red .swiper-pagination {
    color: var(--deep-red);
  }
  
  .h-a-bg-deep-red::before {
    background-color: var(--deep-red);
  }
  
  .h-a-bg-deep-red::after {
    background-color: var(--deep-red);
  }
  
  .h-bg-black-matt {
    background-color: var(--black-matt);
  }
  
  .h-a-bg-black-matt .a-heading,
  .h-a-bg-black-matt .swiper-pagination {
    color: var(--black-matt);
  }
  
  .h-a-bg-black-matt::before {
    background-color: var(--black-matt);
  }
  
  .h-a-bg-black-matt::after {
    background-color: var(--black-matt);
  }
  
  .h-bg-black-body {
    background-color: var(--black-body);
  }
  
  .h-a-bg-black-body .a-heading,
  .h-a-bg-black-body .swiper-pagination {
    color: var(--black-body);
  }
  
  .h-a-bg-black-body::before {
    background-color: var(--black-body);
  }
  
  .h-a-bg-black-body::after {
    background-color: var(--black-body);
  }
  
  .h-bg-dark-yellow {
    background-color: var(--dark-yellow);
  }
  
  .h-a-bg-dark-yellow .a-heading,
  .h-a-bg-dark-yellow .swiper-pagination {
    color: var(--dark-yellow);
  }
  
  .h-a-bg-dark-yellow::before {
    background-color: var(--dark-yellow);
  }
  
  .h-a-bg-dark-yellow::after {
    background-color: var(--dark-yellow);
  }
  
  .h-wave {
    position: absolute;
    max-width: 100%;
    height: auto;
    bottom: 1px;
    left: 0;
    z-index: 0;
  }
  
  .h-wave--top {
    top: -1px;
    z-index: 2;
    transition-delay: 0.25s;
  }
  
  .h-wave--outer-bottom {
    transform: translateY(99%);
    z-index: 2;
    bottom: 15px;
  }
  
  .h-wave--outer-top {
    top: 1px;
    z-index: 1;
    transform: translateY(-99%);
  }
  
  .swiper {
    width: 100%;
    overflow-x: clip !important;
    overflow-y: visible !important;
  }
  
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
  
  /* Skip link becomes visible when focused */
  
  .sr-only:focus {
    position: absolute;
    left: 6px;
    top: 6px;
    width: auto;
    height: auto;
    padding: 8px 16px;
    overflow: visible;
    clip: auto;
    white-space: normal;
    background-color: var(--red);
    color: var(--white);
    text-decoration: none;
    border-radius: 4px;
    font-weight: 600;
    z-index: 1000;
  }
  
  .line {
    will-change: transform;
  }
  
  .h-delay-1 {
    transition-delay: 0.1s;
  }
  
  .h-delay-2 {
    transition-delay: 0.2s;
  }
  
  .h-delay-3 {
    transition-delay: 0.3s;
  }
  
  .h-delay-4 {
    transition-delay: 0.4s;
  }
  
  .h-delay-5 {
    transition-delay: 0.5s;
  }
  
  .wpcf7 form.sent .wpcf7-response-output {
    padding: 10px !important;
    margin: 0 !important;
    text-align: center;
    border-color: var(--blue) !important;
  }
  
  .grecaptcha-badge {
    visibility: hidden !important;
    opacity: 0 !important;
  }
  
  .wpcf7 input[name=honeypot] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
    opacity: 0;
    pointer-events: none;
  }
  
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
  
  a {
    color: inherit;
    text-decoration: none;
  }
  
  a:hover {
    text-decoration: none;
  }
  
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-family: var(--font-family-base);
  }
  
  h1 {
    font-size: var(--font-size-h1);
    font-weight: var(--font-weight-h1);
  }
  
  h2 {
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-h2);
  }
  
  h3 {
    font-size: var(--font-size-h3);
    font-weight: var(--font-weight-h3);
  }
  
  h4 {
    font-size: var(--font-size-h4);
    font-weight: var(--font-weight-h4);
  }
  
  h5 {
    font-size: var(--font-size-h5);
    font-weight: var(--font-weight-h5);
  }
  
  h6 {
    font-size: var(--font-size-h6);
    font-weight: var(--font-weight-h6);
  }
  
  p {
    font-size: var(--font-base);
    line-height: var(--line-height-base);
  }
  
  .wrap {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    padding-left: var(--wrap-space);
    padding-right: var(--wrap-space);
    width: var(--wrap-width-xs);
  }
  
  .wrap-fluid {
    position: relative;
    width: 100%;
    padding-left: var(--wrap-space);
    padding-right: var(--wrap-space);
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
  
  .wrap.remove-gutter-left .cll-col {
    margin-left: 0 !important;
  }
  
  .flex {
    box-sizing: border-box;
    display: flex;
    flex: 0 1 auto;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: start;
    gap: 30px 8.333vw;
    justify-content: space-between;
  }
  
  .flex .cll-col {
    box-sizing: border-box;
    flex: 0 0 auto;
    margin: 0 0 0 var(--col-space);
    z-index: 2;
  }
  
  .flex .cll-col:first-of-type {
    margin-left: 0px;
  }
  
  .flex .cll-col.w1 {
    flex-basis: calc(100% * 1 / 12 - var(--col-space) * (12 - 1) / 12);
    max-width: calc(100% * 1 / 12 - var(--col-space) * (12 - 1) / 12);
  }
  
  .flex .cll-col.o1 {
    margin-left: calc(100% * 1 / 12 + var(--col-space) * 1 / 12);
  }
  
  .flex .cll-col.w2 {
    flex-basis: calc(100% * 2 / 12 - var(--col-space) * (12 - 2) / 12);
    max-width: calc(100% * 2 / 12 - var(--col-space) * (12 - 2) / 12);
  }
  
  .flex .cll-col.o2 {
    margin-left: calc(100% * 2 / 12 + var(--col-space) * 2 / 12);
  }
  
  .flex .cll-col.w3 {
    flex-basis: calc(100% * 3 / 12 - var(--col-space) * (12 - 3) / 12);
    max-width: calc(100% * 3 / 12 - var(--col-space) * (12 - 3) / 12);
  }
  
  .flex .cll-col.o3 {
    margin-left: calc(100% * 3 / 12 + var(--col-space) * 3 / 12);
  }
  
  .flex .cll-col.w4 {
    flex-basis: calc(100% * 4 / 12 - var(--col-space) * (12 - 4) / 12);
    max-width: calc(100% * 4 / 12 - var(--col-space) * (12 - 4) / 12);
  }
  
  .flex .cll-col.o4 {
    margin-left: calc(100% * 4 / 12 + var(--col-space) * 4 / 12);
  }
  
  .flex .cll-col.w5 {
    flex-basis: calc(100% * 5 / 12 - var(--col-space) * (12 - 5) / 12);
    max-width: calc(100% * 5 / 12 - var(--col-space) * (12 - 5) / 12);
  }
  
  .flex .cll-col.o5 {
    margin-left: calc(100% * 5 / 12 + var(--col-space) * 5 / 12);
  }
  
  .flex .cll-col.w6 {
    flex-basis: calc(100% * 6 / 12 - var(--col-space) * (12 - 6) / 12);
    max-width: calc(100% * 6 / 12 - var(--col-space) * (12 - 6) / 12);
  }
  
  .flex .cll-col.o6 {
    margin-left: calc(100% * 6 / 12 + var(--col-space) * 6 / 12);
  }
  
  .flex .cll-col.w7 {
    flex-basis: calc(100% * 7 / 12 - var(--col-space) * (12 - 7) / 12);
    max-width: calc(100% * 7 / 12 - var(--col-space) * (12 - 7) / 12);
  }
  
  .flex .cll-col.o7 {
    margin-left: calc(100% * 7 / 12 + var(--col-space) * 7 / 12);
  }
  
  .flex .cll-col.w8 {
    flex-basis: calc(100% * 8 / 12 - var(--col-space) * (12 - 8) / 12);
    max-width: calc(100% * 8 / 12 - var(--col-space) * (12 - 8) / 12);
  }
  
  .flex .cll-col.o8 {
    margin-left: calc(100% * 8 / 12 + var(--col-space) * 8 / 12);
  }
  
  .flex .cll-col.w9 {
    flex-basis: calc(100% * 9 / 12 - var(--col-space) * (12 - 9) / 12);
    max-width: calc(100% * 9 / 12 - var(--col-space) * (12 - 9) / 12);
  }
  
  .flex .cll-col.o9 {
    margin-left: calc(100% * 9 / 12 + var(--col-space) * 9 / 12);
  }
  
  .flex .cll-col.w10 {
    flex-basis: calc(100% * 10 / 12 - var(--col-space) * (12 - 10) / 12);
    max-width: calc(100% * 10 / 12 - var(--col-space) * (12 - 10) / 12);
  }
  
  .flex .cll-col.o10 {
    margin-left: calc(100% * 10 / 12 + var(--col-space) * 10 / 12);
  }
  
  .flex .cll-col.w11 {
    flex-basis: calc(100% * 11 / 12 - var(--col-space) * (12 - 11) / 12);
    max-width: calc(100% * 11 / 12 - var(--col-space) * (12 - 11) / 12);
  }
  
  .flex .cll-col.o11 {
    margin-left: calc(100% * 11 / 12 + var(--col-space) * 11 / 12);
  }
  
  .flex .cll-col.w12 {
    flex-basis: 100%;
    max-width: 100%;
    margin: 0;
  }
  
  .remove-gutter-left {
    margin-left: 0;
    padding-left: 0;
  }
  
  .remove-gutter-right {
    margin-right: 0;
    padding-right: 0;
  }
  
  .e-reveal {
    transition: opacity var(--transition-timing) var(--cubic-bezier2);
    opacity: 0;
  }
  
  .e-reveal.visible {
    opacity: 1;
  }
  
  .e-reveal--clip {
    opacity: 1;
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transition: clip-path var(--transition-timing) var(--cubic-bezier2);
  }
  
  .e-reveal--clip.visible {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  }
  
  .e-reveal--circle {
    opacity: 1;
    clip-path: circle(0% at 25% 100%);
  }
  
  .e-reveal--circle.visible {
    clip-path: circle(130% at 25% 100%);
  }
  
  .e-reveal--text {
    overflow: hidden;
    opacity: 0;
  }
  
  .e-reveal--heading {
    opacity: 0;
    display: flex;
    flex-direction: row;
    justify-content: unset;
    align-items: unset;
    flex-wrap: wrap;
    gap: 2vw;
  }
  
  .e-reveal--heading .word {
    display: flex;
    flex-direction: row;
    justify-content: unset;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .e-reveal--heading .chars {
    display: inline-block;
  }
  
  .e-reveal--heading.a-tag {
    display: flex;
    flex-wrap: wrap;
  }
  
  .e-reveal--word {
    opacity: 0;
  }
  
  .e-reveal--opacity {
    opacity: 0;
    transition: opacity 0.75s var(--transition-timing);
  }
  
  .e-reveal--opacity.visible {
    opacity: 1;
  }
  
  .a-btn {
    position: relative;
    border: none;
    outline: none;
    padding: 16px 18px 10px;
    background-color: var(--blue);
    font-size: 23px;
    font-family: var(--veneer);
    text-transform: uppercase;
    color: var(--grey);
    display: inline-block;
    white-space: nowrap;
    transition: clip-path 0.85s var(--transition-timing), color 0.3s var(--transition-main), box-shadow 0.3s var(--transition-main), transform 0.3s var(--transition-main);
    z-index: 2;
    overflow: hidden;
    min-width: 140px;
  }
  
  .windows .a-btn {
    padding: 12px 18px;
  }
  
  .a-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    background-color: var(--white);
    z-index: -1;
    transform: scaleX(0);
    transform-origin: center right;
    transition: transform var(--transition-timing) var(--transition-main);
  }
  
  .a-btn--red {
    background-color: var(--red);
  }
  
  .a-btn--white {
    background-color: var(--grey);
    color: var(--red);
  }
  
  .a-btn--white::before {
    background-color: var(--white);
  }
  
  .a-btn--small {
    padding: 10px 15px;
    font-size: 20px;
    height: 45px;
    min-width: 100px;
  }
  
  .windows .a-btn--small {
    padding: 10px 15px;
  }
  
  .a-btn--center {
    display: block;
    margin: 0 auto;
    width: max-content;
  }
  
  .a-btn--full {
    width: 100%;
    text-align: center;
  }
  
  .a-btn--icon {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 5px;
  }
  
  .a-btn--icon .a-icon {
    font-size: 10px;
  }
  
  .a-icon {
    font-size: 20px;
  }
  
  .a-icon--bg {
    width: 60px;
    height: 60px;
    background-color: var(--grey);
    color: var(--red);
    border-radius: 50%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
    display: inline-flex;
  }
  
  .a-icon--bg-red {
    background-color: var(--red);
    color: var(--white);
  }
  
  .a-icon--border {
    background-color: transparent;
    color: var(--white);
    border: 4px solid var(--white);
  }
  
  .a-icon--shadow {
    box-shadow: 0px 100px 80px rgba(0, 0, 0, 0.07), 0px 41.7776px 33.4221px rgba(0, 0, 0, 0.0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, 0.0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, 0.035), 0px 6.6501px 5.32008px rgba(0, 0, 0, 0.0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, 0.0196802);
  }
  
  .a-icon--menu.a-icon--menu-fixed {
    position: fixed;
    top: 2.125vw;
    left: 3.125vw;
    z-index: 10;
    scale: 0;
    opacity: 0;
    transition: opacity 0.4s ease, scale 0.4s ease;
    transform-origin: center center;
    background-color: var(--red);
  }
  
  .a-icon--menu.a-icon--menu-fixed.active {
    opacity: 1;
    scale: 1;
  }
  
  .a-logo {
    display: inline-block;
    height: auto;
    width: auto;
    transition: scale var(--transition-timing) var(--transition-main);
    opacity: 0;
  }
  
  .a-logo img {
    display: inline-block;
    width: 100%;
    height: 100%;
  }
  
  .a-img {
    max-width: 100%;
    height: auto;
    display: block;
  }
  
  .a-heading,
  .swiper-pagination {
    font-family: var(--veneer);
    letter-spacing: -0.04em;
    line-height: 1.08;
  }
  
  .a-heading--h1 {
    font-size: 150px;
  }
  
  .a-heading--h2 {
    font-size: 120px;
  }
  
  .a-heading--h3,
  .swiper-pagination {
    font-size: 100px;
  }
  
  .a-heading--h4 {
    letter-spacing: -0.01em;
    font-size: 80px;
  }
  
  .a-heading--h5 {
    letter-spacing: -0.01em;
    font-size: 70px;
  }
  
  .a-heading--h7 {
    letter-spacing: -0.01em;
    font-size: 60px;
  }
  
  .a-heading--h6 {
    letter-spacing: -0.01em;
    font-size: 40px;
  }
  
  .a-heading--span {
    color: var(--red);
    letter-spacing: -0.02em;
    font-size: 90px;
  }
  
  .a-heading--line {
    line-height: 0.6;
    margin-top: 45px;
  }
  
  .a-tag {
    font-family: var(--monday);
    line-height: 0.8;
    display: inline-block;
    font-size: 40px;
  }
  
  .a-tag--small {
    font-size: 20px;
  }
  
  .a-tag--medium {
    font-size: 30px;
  }
  
  .a-input {
    border: none;
    outline: none;
    border-bottom: 1px solid var(--blue);
    width: 100%;
    height: 60px;
    background: transparent;
    font-family: var(--outfit);
    font-size: 18px;
    color: var(--blue);
  }
  
  .a-input::placeholder {
    font-family: var(--outfit);
    font-size: 18px;
    color: var(--light-blue);
  }
  
  .a-input--newsletter {
    border: 1px solid var(--dark-grey);
    font-family: var(--outfit);
    font-size: 16px;
    color: var(--blue);
    height: 45px;
    padding: 0 15px;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
  }
  
  .a-input--newsletter::placeholder {
    font-family: var(--outfit);
    font-size: 16px;
    color: var(--light-blue);
  }
  
  .a--textarea {
    height: 130px;
    resize: none;
    padding-top: 20px;
  }
  
  .a-input--search {
    height: 100%;
    width: 100%;
    color: var(--red);
    font-family: var(--gellix-semibold);
    text-transform: uppercase;
    font-size: 18px;
    border: none;
    padding-left: 40px;
    padding-right: 80px;
  }
  
  .a-input--search::placeholder {
    font-family: var(--gellix-semibold);
    font-size: 18px;
    text-transform: uppercase;
    color: #B8223A;
    opacity: 0.2;
  }
  
  .a-input--search:focus {
    outline: none;
  }
  
  .a-list-item {
    font-size: 16px;
    color: var(--blue);
    letter-spacing: -0.01em;
  }
  
  .a-number {
    font-family: var(--veneer);
    font-size: 18.229vw;
    line-height: 0.771;
  }
  
  .a-main-title {
    font-family: var(--veneer);
    font-size: 23.438vw;
    position: absolute;
    width: 100%;
    line-height: 0.8;
    letter-spacing: -0.012em;
    z-index: -1;
    top: 0;
  }
  
  .a-main-title--s {
    font-size: 20.5vw;
  }
  
  .a-main-title--xs {
    font-size: 18.229vw;
  }
  
  .a-video {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 260px;
    object-fit: cover;
  }
  
  .a-text {
    font-size: 18px;
    line-height: 1.3;
    letter-spacing: -0.01em;
    font-family: var(--outfit);
  }
  
  .a-text--s,
  .a-text--m {
    font-size: 16px;
  }
  
  .a-text--l,
  .o-article .container .m-list li .h-bold,
  .o-article .o-other-products .swiper .m-list li .h-bold,
  .o-other-products .o-article .swiper .m-list li .h-bold,
  .o-article .o-products-single .swiper .m-list li .h-bold,
  .o-products-single .o-article .swiper .m-list li .h-bold {
    font-size: 18px;
  }
  
  .a-text--light {
    font-weight: 300;
  }
  
  .a-language {
    font-family: var(--veneer);
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
    position: relative;
    transition: transform 0.3s var(--transition-main);
    opacity: 0;
    font-size: 20px;
    width: 35px;
    height: 35px;
  }
  
  .a-language span {
    position: relative;
    z-index: 2;
    transition: color 0.3s var(--transition-main);
  }
  
  .a-language:after {
    content: "";
    position: absolute;
    z-index: 1;
    background-color: var(--active-color, var(--red));
    width: 100%;
    height: 100%;
    border-radius: 50%;
    top: -3px;
    left: 0;
    transition: opacity 0.3s var(--transition-main), transform 0.3s var(--transition-main);
    transform: scale(0.25);
    opacity: 0;
  }
  
  .windows .a-language:after {
    top: 0;
  }
  
  .a-language:before {
    content: "";
    position: absolute;
    top: -3px;
    left: 0;
    width: 100%;
    height: 100%;
    border: 2px solid var(--active-color, var(--blue));
    border-radius: 50%;
    z-index: 0;
  }
  
  .windows .a-language:before {
    top: 0;
  }
  
  .a-svg path {
    fill: none;
    stroke: #b8223a;
    stroke-miterlimit: 6;
    stroke-width: 5px;
  }
  
  .m-content {
    width: 100%;
  }
  
  .m-content .a-text {
    margin-bottom: 15px;
  }
  
  .m-content .a-text:last-child {
    margin-bottom: 0;
  }
  
  .m-content .a-heading,
  .m-content .swiper-pagination,
  .m-content .a-tag {
    margin-bottom: 15px;
  }
  
  .m-content .a-img {
    display: block;
    margin: 0 auto 21px;
    width: 30%;
  }
  
  .m-content .a-heading,
  .m-content .swiper-pagination {
    display: block;
  }
  
  .m-content--row {
    display: flex;
    flex-direction: column;
    justify-content: unset;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .m-content--cols {
    width: 100% !important;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: unset;
    flex-wrap: wrap;
    gap: 30px 0;
  }
  
  .m-content__col {
    width: 100%;
  }
  
  .m-content--cols-3 {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: unset;
    flex-wrap: wrap;
    gap: 30px 0;
  }
  
  .m-img {
    position: relative;
  }
  
  .m-img::after {
    content: "";
    position: absolute;
    top: 30px;
    left: 20px;
    width: calc(100% - 40px);
    height: calc(100% - 60px);
    background-color: var(--black-light);
    z-index: 1;
    border-radius: 0;
    transform: translate(0, 0);
  }
  
  .m-img .m-tag {
    position: absolute;
    left: 20px;
    top: 45px;
    z-index: 2;
    color: var(--white);
  }
  
  .m-img .a-img {
    width: 100%;
    height: auto;
    display: block;
  }
  
  .m-img--gallery {
    height: auto;
    padding: 10px;
    background: var(--grey);
    box-shadow: 0px 183.2px 73.4572px rgba(0, 0, 0, 0.01), 0px 102.663px 61.9519px rgba(0, 0, 0, 0.05), 0px 46.0214px 46.0214px rgba(0, 0, 0, 0.09), 0px 11.5053px 24.7807px rgba(0, 0, 0, 0.1);
    position: relative;
  }
  
  .m-img--gallery::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 10px;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    background-color: var(--black-light);
    z-index: 1;
    border-radius: 0;
    transform: translate(0, 0);
  }
  
  .m-img--gallery .m-tag {
    left: 11px;
    top: 20px;
  }
  
  .m-img--gallery .a-img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }
  
  .m-img--product::after {
    content: "";
    position: absolute;
    background-color: var(--grey);
    z-index: -1;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: transform 0.75s var(--transition-main);
    transform-origin: center center;
  }

  .m-img--product.m-img--product--premium::after {
    background-color: #E9E7DC;
  }
  
  .m-img--product .a-img {
    max-height: 45vh;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0 auto 15px;
    object-fit: contain;
    transition: 0s;
  }
  
  .m-img--product.visible::after {
    transform: translate(-50%, -50%) scale(1);
  }
  
  .m-img--line {
    width: 100%;
    opacity: 1;
    transition: all 0.75s var(--transition-main);
    transition-delay: 1s;
  }
  
  .m-img--line::after {
    content: "";
    position: absolute;
    left: -7.8%;
    width: 114.6%;
    height: calc(100% + 1000px);
    background-color: var(--red);
    z-index: -1;
    border-radius: 0;
    top: unset;
    bottom: 50%;
  }
  
  .m-img--line .a-img {
    border-radius: 10px;
    width: 100%;
    height: auto;
  }
  
  .m-news-card {
    position: relative;
  }
  
  .m-news-card .m-img {
    padding: 30px 20px;
    transition: 0.3s ease;
  }
  
  .m-news-card .m-img .a-img {
    height: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
  }
  
  .m-news-card .m-content {
    padding: 0 20px 30px;
    transition: 0.3s ease;
  }
  
  .m-news-card .m-content .a-btn {
    position: relative;
    display: block;
    margin: 0 auto;
    width: max-content;
  }
  
  .m-news-card .m-content .a-text {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  
  .m-tag {
    padding: 10px 15px;
    background-color: rgba(217, 217, 217, 0.2509803922);
    backdrop-filter: blur(10px);
    display: flex;
    flex-direction: column;
  }
  
  .m-tag .a-tag {
    font-family: var(--veneer);
    margin-bottom: 10px;
    font-size: 30px;
  }
  
  .m-tag .a-tag--small {
    font-family: var(--monday);
    font-size: 20px;
  }
  
  .m-icons {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
    width: 100%;
  }
  
  .m-icons a {
    width: calc(50% - 15px);
    transition: all 0.5s var(--transition-main);
  }
  
  .m-icons a:nth-child(0) {
    transition-delay: 0s;
  }
  
  .m-icons a:nth-child(1) {
    transition-delay: 0.075s;
  }
  
  .m-icons a:nth-child(2) {
    transition-delay: 0.15s;
  }
  
  .m-icons a:nth-child(3) {
    transition-delay: 0.225s;
  }
  
  .m-icons a:nth-child(4) {
    transition-delay: 0.3s;
  }
  
  .m-icons a:nth-child(5) {
    transition-delay: 0.375s;
  }
  
  .m-icons a:nth-child(6) {
    transition-delay: 0.45s;
  }
  
  .m-icons a:nth-child(7) {
    transition-delay: 0.525s;
  }
  
  .m-icons a:nth-child(8) {
    transition-delay: 0.6s;
  }
  
  .m-icons .a-img {
    display: block;
    margin: 0 auto;
    object-fit: contain;
    max-width: 80%;
  }
  
  .m-icons--social {
    display: flex;
    flex-direction: row;
    justify-content: start;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 15px 45px;
  }
  
  .m-icons--social a {
    width: auto !important;
  }
  
  .m-icons--social i {
    font-size: 26px;
  }
  
  .m-menu .a-heading,
  .m-menu .swiper-pagination {
    margin-bottom: 45px;
  }
  
  .m-menu .a-heading:last-child,
  .m-menu .swiper-pagination:last-child {
    margin-bottom: 0;
  }
  
  .m-menu--footer {
    width: 100%;
  }
  
  .m-menu--footer .a-heading,
  .m-menu--footer .swiper-pagination {
    margin-bottom: 0px;
  }
  
  .m-menu--footer .a-heading a,
  .m-menu--footer .swiper-pagination a {
    display: inline-block;
    position: relative;
    overflow: hidden;
    transition: all 0.3s var(--transition-main);
    transform-origin: center center;
  }
  
  .m-menu--footer .a-heading a:after,
  .m-menu--footer .swiper-pagination a:after {
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: var(--active-color, var(--red));
    font-weight: inherit;
    font-size: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    clip-path: circle(0% at 25% 100%);
    transition: all 0.5s var(--transition-main);
  }
  
  .m-menu-policy ul {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px 4.688vw;
  }
  
  .m-menu-policy ul li a {
    position: relative;
  }
  
  .m-menu-policy ul li a:after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--blue);
    transform-origin: right center;
    transform: scaleX(0);
    transition: transform 0.3s var(--transition-main);
  }
  
  .a-icon--menu {
    position: relative;
    cursor: pointer;
    z-index: 6;
  }
  
  .a-icon-menubar {
    opacity: 0;
  }
  
  .a-icon-menubar:before {
    transition: all 0.3s var(--transition-main);
    transform-origin: center center;
    display: inline-block;
  }
  
  .m-header__line {
    position: relative;
    width: 25px;
    height: 2px;
    margin: 3px 0;
    border-radius: 30px;
    transition: all var(--transition-timing) var(--transition-main);
    background-color: var(--blue);
    overflow: hidden;
  }
  
  .m-header__menu-mobile {
    overflow-x: clip;
    overflow-y: auto;
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    height: auto;
    min-height: 100vh;
    z-index: 12;
    transform: translateY(-101%);
    background-color: var(--red);
    transition: transform var(--transition-timing) var(--transition-main);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-image: url("../img/pics/general/layer.webp");
    background-size: inherit;
    background-repeat: repeat;
  }
  
  .m-header__menu-mobile.active {
    transform: translateY(0);
  }
  
  .m-header__menu-mobile::before {
    content: "";
    position: absolute;
    height: 80px;
    background-color: var(--grey);
    width: 100%;
    bottom: 0;
    left: 0;
  }
  
  .m-header__menu-mobile .a-icon--close {
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    z-index: 2;
    box-shadow: 0px 100px 80px rgba(0, 0, 0, 0.07), 0px 41.7776px 33.4221px rgba(0, 0, 0, 0.0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, 0.0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, 0.035), 0px 6.6501px 5.32008px rgba(0, 0, 0, 0.0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, 0.0196802);
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .m-header__menu-mobile .h-wave {
    display: none;
  }
  
  .m-header__menu-list {
    width: 100%;
    padding: 60px 0 0 15px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    justify-content: unset;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 0;
    text-align: center;
    margin: auto;
  }
  
  .m-header__menu-list .icon-dropdown.a-icon {
    position: relative;
    top: 0;
    font-size: 24px;
    padding: 10px;
  }
  
  .m-header__menu-list .a-heading,
  .m-header__menu-list .swiper-pagination {
    display: inline-block;
    margin-bottom: 10px;
    transition: 0.3s var(--transition-main);
  }
  
  .m-header__menu-list li {
    transition: all var(--transition-timing) var(--transition-main);
  }
  
  .m-header__menu-list li > a:not(.m-header__sub-menu li a) {
    color: var(--grey);
  }
  
  .m-header__menu-list li.active > .a-heading,
  .m-header__menu-list li.active > .swiper-pagination {
    color: var(--grey);
  }
  
  .m-header__menu-list li.active .m-header__sub-menu {
    right: 0;
  }
  
  .m-header__sub-menu {
    position: absolute;
    width: 100%;
    background: var(--grey);
    right: -100%;
    height: 100%;
    top: 0;
    padding: 90px 15px;
    overflow-y: auto;
    overflow-x: hidden;
    transition: all 0.45s var(--transition-main);
  }
  
  .m-header__sub-menu .a-heading,
  .m-header__sub-menu .swiper-pagination {
    color: var(--red);
    display: block;
  }
  
  .m-header__sub-menu li {
    transition: all var(--transition-timing) var(--transition-main);
  }
  
  .m-header__sub-menu li > a {
    color: var(--red);
  }
  
  .m-header__sub-menu li .a-img {
    position: absolute;
    top: 10%;
    right: 5.5645vw;
    height: 90%;
    rotate: 20deg;
    transition: all var(--transition-timing) var(--transition-main);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    max-height: unset;
  }
  
  .m-header__sub-menu .a-icon--back {
    position: absolute;
    top: 30px;
    left: 15px;
    color: var(--blue);
    font-size: 20px;
  }
  
  .m-input {
    display: flex;
    flex-direction: row;
    justify-content: unset;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .m-input .a-input {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
  }
  
  .m-input .a-btn {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
  }
  
  .m-input--search {
    position: relative;
    height: 80px;
    width: calc(100% - 30px);
    margin-left: 15px;
    border-radius: 100px;
    background-color: var(--grey);
    filter: drop-shadow(0px 28px 45px rgba(0, 0, 0, 0.21));
    transform: translateY(-50%);
  }
  
  .m-input--search .a-icon {
    position: absolute;
    right: 40px;
    top: 50%;
    background-color: transparent;
    outline: none;
    border: none;
    color: var(--red);
    transform: translateY(-50%);
  }
  
  .m-newsletter {
    width: 100%;
  }
  
  .m-newsletter .a-tag {
    margin-bottom: 21px;
  }
  
  .m-newsletter .a-text {
    font-size: 12px;
  }
  
  .m-newsletter .a-btn {
    width: 135px;
    cursor: pointer;
    transition: color 0.5s ease;
  }
  
  .m-newsletter .a-btn span {
    position: relative;
    z-index: 2;
    color: var(--white);
  }
  
  .m-newsletter .a-btn:before {
    display: none;
  }
  
  .m-newsletter .a-btn:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transition: all 0.5s var(--transition-main);
    background-color: var(--red);
    z-index: 1;
  }
  
  .m-newsletter .m-input {
    width: 100%;
    margin-bottom: 9px;
  }
  
  .m-logo {
    position: relative;
    padding: 20px 0;
    position: relative;
  }
  
  .m-logo::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--red);
    z-index: 1;
    border-radius: 0;
    transform: translate(0, 0);
  }
  
  .m-logo .a-logo {
    margin-bottom: 21px;
  }
  
  .m-table {
    padding: 30px 15px;
    border: 6px solid var(--blue);
    text-align: left;
  }
  
  .m-table__box {
    opacity: 0;
    transform-origin: center center;
    transition: all 0.6s var(--transition-main);
  }
  
  .m-table__box:nth-child(1) {
    transition-delay: 0.4s;
  }
  
  .m-table__box:nth-child(2) {
    transition-delay: 0.5s;
  }
  
  .m-table__box:nth-child(3) {
    transition-delay: 0.6s;
  }
  
  .m-table__box:nth-child(4) {
    transition-delay: 0.7s;
  }
  
  .m-table__box:nth-child(5) {
    transition-delay: 0.8s;
  }
  
  .m-table__box:nth-child(6) {
    transition-delay: 0.9s;
  }
  
  .m-table__box:nth-child(7) {
    transition-delay: 1s;
  }
  
  .m-table__box:nth-child(8) {
    transition-delay: 1.1s;
  }
  
  .m-table__box:nth-child(9) {
    transition-delay: 1.2s;
  }
  
  .m-table__box:nth-child(10) {
    transition-delay: 1.3s;
  }
  
  .m-table__box:nth-child(11) {
    transition-delay: 1.4s;
  }
  
  .m-table__box:nth-child(12) {
    transition-delay: 1.5s;
  }
  
  .m-table__box:nth-child(13) {
    transition-delay: 1.6s;
  }
  
  .m-table__box:nth-child(14) {
    transition-delay: 1.7s;
  }
  
  .m-table__box:nth-child(15) {
    transition-delay: 1.8s;
  }
  
  .m-table.visible .m-table__box {
    opacity: 1;
  }
  
  .m-table__box:last-child {
    margin-bottom: 0;
  }
  
  .m-table__box:last-child .m-box__body {
    padding-bottom: 0;
  }
  
  .m-box__head {
    border-bottom: 1px solid var(--blue);
    font-size: 30px;
    padding-bottom: 20px;
    margin-bottom: 10px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 0 3.125vw;
  }
  
  .m-box__head.m-box__head--spacing {
    margin-top: 30px;
  }
  
  .m-box__body {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 0 3.125vw;
    border-top: 3px solid var(--blue);
    padding: 20px 0;
  }
  
  .m-box__body .a-heading,
  .m-box__body .swiper-pagination {
    font-size: 24px;
  }
  
  .m-box__body .a-heading:last-of-type,
  .m-box__body .swiper-pagination:last-of-type {
    text-transform: lowercase;
  }
  
  .m-marquee {
    position: relative;
    display: flex;
    overflow: hidden;
    width: 100%;
    white-space: nowrap;
  }
  
  .m-marquee__inner {
    display: flex;
    align-items: center;
    gap: 4.688vw;
    min-width: max-content;
    padding-right: 4.688vw;
  }
  
  .m-marquee__inner .a-img {
    max-height: 100px;
  }
  
  .m-product-card {
    transition: box-shadow 0.4s var(--transition-main), transform 0.4s var(--transition-main);
    height: auto;
    position: relative;
    z-index: 1;
    transform: scale(1);
  }
  
  .m-product-card::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 42%;
    transform: translate(-50%, -50%) scale(0);
    border-radius: 50%;
    width: 310px;
    height: 310px;
    z-index: -1;
    transform-origin: center center;
    transition: transform 0.4s var(--transition-main);
  }
  
  .m-product-card .a-img {
    display: block;
    margin: 0 auto 15px;
    height: 400px;
    position: relative;
    z-index: 2;
    transform-origin: center center;
    opacity: 0;
    animation: opacity 0.4s var(--transition-main) forwards;
    animation-play-state: paused;
    transform: rotate(0) scale(1);
    transition: transform 0.4s var(--transition-main);
  }
  
  .m-product-card .a-heading,
  .m-product-card .swiper-pagination {
    text-align: center;
    position: relative;
    z-index: 2;
    opacity: 0;
    transition: transform 0.4s var(--transition-main), opacity 0.4s var(--transition-main);
  }
  
  .m-product-card:nth-child(1)::before {
    transition-delay: 0.08s;
  }
  
  .m-product-card:nth-child(1) .a-img {
    animation-delay: 0.26s;
  }
  
  .m-product-card:nth-child(2)::before {
    transition-delay: 0.16s;
  }
  
  .m-product-card:nth-child(2) .a-img {
    animation-delay: 0.36s;
  }
  
  .m-product-card:nth-child(3)::before {
    transition-delay: 0.24s;
  }
  
  .m-product-card:nth-child(3) .a-img {
    animation-delay: 0.46s;
  }
  
  .m-product-card:nth-child(4)::before {
    transition-delay: 0.32s;
  }
  
  .m-product-card:nth-child(4) .a-img {
    animation-delay: 0.56s;
  }
  
  .m-product-card.visible .a-img {
    animation-play-state: running;
  }
  
  .m-product-card.visible .a-heading,
  .m-product-card.visible .swiper-pagination {
    opacity: 1;
  }
  
  .m-product-card.visible::before {
    transform-origin: center center;
    transform: translate(-50%, -50%) scale(1);
  }
  
  .m-product-card.from-left:hover {
    transform: scale(1.035);
  }
  
  .m-product-card.from-left:hover .a-img {
    transform: rotate(-15deg) scale(1.25);
  }
  
  .m-product-card.from-right:hover {
    transform: scale(1.035);
  }
  
  .m-product-card.from-right:hover .a-img {
    transform: rotate(15deg) scale(1.25);
  }
  
  .m-product-card.from-top:hover {
    transform: scale(1.035);
  }
  
  .m-product-card.from-top:hover .a-img {
    transform: rotate(15deg) scale(1.25);
  }
  
  .m-product-card.from-bottom:hover {
    transform: scale(1.035);
  }
  
  .m-product-card.from-bottom:hover .a-img {
    transform: rotate(-15deg) scale(1.25);
  }
  
  .o-other-productcs--diff .m-product-card {
    padding: 45px 90px;
    transition: box-shadow var(--transition-timing) var(--cubic-bezier);
  }
  
  .o-other-productcs--diff .m-product-card .a-img {
    transform: rotate(0);
    height: unset;
    transition: opacity 0.45s var(--transition-main), transform 0.45s ease;
  }
  
  .o-other-productcs--diff .m-product-card .a-heading,
  .o-other-productcs--diff .m-product-card .swiper-pagination {
    justify-content: center;
    transition: transform 0.45s var(--transition-main), opacity 0.45s var(--transition-main);
  }
  
  .o-other-productcs--diff .m-product-card.visible::before {
    transform: translate(-50%, -50%) scale(1);
  }
  
  .o-other-productcs--diff .m-product-card.visible .a-img,
  .o-other-productcs--diff .m-product-card.visible .a-heading,
  .o-other-productcs--diff .m-product-card.visible .swiper-pagination {
    opacity: 1;
  }
  
  @keyframes opacity {
    0% {
      opacity: 0;
    }
  
    100% {
      opacity: 1;
    }
  }
  
  .m-hero__inner {
    display: grid;
    grid-template-columns: auto;
    grid-auto-flow: dense;
    gap: 10px;
    width: 100%;
  }
  
  .m-hero__inner > div {
    position: relative;
  }
  
  .m-hero__inner .a-img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
    object-fit: contain;
  }
  
  .m-hero__inner .a-img.a-img--dot {
    position: absolute;
    top: 0;
    display: block;
    max-width: 100%;
    max-height: 100%;
    aspect-ratio: 1/1;
    object-fit: contain;
  }
  
  .m-hero__inner .a-text {
    display: block;
    margin: 0 auto;
    text-align: center;
  }
  
  .m-hero__inner svg {
    order: 4;
    margin: 20px auto 0;
  }
  
  .m-products {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .m-products .a-img {
    transition: all 0.65s var(--transition-main);
    transition-delay: 0.65s;
    scale: 0.85;
    max-width: 50%;
    opacity: 0;
  }
  
  .m-products .a-img.visible {
    scale: 1;
    opacity: 1;
  }
  
  .m-products .a-img:nth-child(2) {
    position: absolute;
    left: 30%;
    z-index: -1;
    top: 50%;
    transform: translateY(-50%) scale(0.85);
    max-width: 70%;
    transition: all 0.55s var(--transition-main);
    transform-origin: center center;
    transition-delay: 0.75s;
    opacity: 0;
  }
  
  .m-products .a-img:nth-child(2).visible {
    transform: translateY(-50%) scale(1);
    opacity: 1;
  }
  
  .o-products--hero .m-products .a-img {
    transition-delay: 0s;
  }
  
  .o-products--hero .m-products .a-img:nth-child(2) {
    transition-delay: 0s;
  }
  
  .m-products--rotated {
    position: relative;
    aspect-ratio: 728/800;
    display: block;
    margin: auto 0;
    transform: translateX(6vw);
    transition: scale 0.55s var(--transition-main), opacity var(--transition-timing) var(--transition-main);
    opacity: 0;
    scale: 0.85;
    transition-delay: 0.2s;
  }
  
  .m-products--rotated .a-img {
    transition: all 0.75s var(--transition-main);
    transition-delay: 0.55s;
    position: absolute;
    z-index: 2;
    height: 100%;
    transform: translateX(10%);
  }
  
  .m-products--rotated .a-img:nth-child(2),
  .m-products--rotated .a-img:nth-child(3) {
    bottom: 0;
    z-index: 1;
    height: 95%;
    left: 0;
  }
  
  .m-products--rotated.visible {
    opacity: 1;
    scale: 1;
  }
  
  .m-products--rotated.visible .a-img:nth-child(2) {
    rotate: -15deg;
    left: -12vw;
  }
  
  .m-products--rotated.visible .a-img:nth-child(3) {
    rotate: 15deg;
    left: 15vw;
  }
  
  .m-navigation {
    position: relative;
    z-index: 4;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 80px;
  }
  
  .m-footer-top {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: unset;
    flex-wrap: wrap;
    gap: 60px 30px;
    width: 100%;
  }
  
  .m-footer-top .a-logo {
    transition: transform 0.3s var(--transition-main);
  }
  
  .m-footer-top .a-logo svg path {
    fill: #09043a;
  }
  
  .m-footer-bottom {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
    width: 100%;
    margin-top: 60px;
  }
  
  .m-single-product {
    display: flex;
    flex-direction: column;
    justify-content: unset;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 30px;
  }
  
  .m-single-product .a-heading,
  .m-single-product .swiper-pagination {
    justify-content: center;
    margin-bottom: 9px;
  }
  
  .m-filters {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
  }
  
  .m-filters li {
    width: calc(33% - 15px);
  }
  
  .m-filters li:nth-child(0) {
    transition-delay: 0s;
  }
  
  .m-filters li:nth-child(1) {
    transition-delay: 0.095s;
  }
  
  .m-filters li:nth-child(2) {
    transition-delay: 0.19s;
  }
  
  .m-filters li:nth-child(3) {
    transition-delay: 0.285s;
  }
  
  .m-filters li:nth-child(4) {
    transition-delay: 0.38s;
  }
  
  .m-filters li:nth-child(5) {
    transition-delay: 0.475s;
  }
  
  .m-filters li:nth-child(6) {
    transition-delay: 0.57s;
  }
  
  .m-filters li:nth-child(7) {
    transition-delay: 0.665s;
  }
  
  .m-filters li:nth-child(8) {
    transition-delay: 0.76s;
  }
  
  .m-filters li:nth-child(9) {
    transition-delay: 0.855s;
  }
  
  .m-filters li:nth-child(10) {
    transition-delay: 0.95s;
  }
  
  .m-filters .a-tag {
    position: relative;
    color: var(--dark-blue);
    transition: 0.3s ease;
  }
  
  .m-filters .a-tag.active {
    color: var(--red);
  }
  
  .m-contact__inner {
    overflow-x: clip;
    overflow-y: auto;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    height: 85%;
    z-index: 4;
    background-color: var(--grey);
    border-top-right-radius: 50px;
    border-top-left-radius: 50px;
    padding: 60px 0;
    -webkit-overflow-scrolling: touch;
    background-image: url("../img/pics/about/layer.webp");
    background-size: inherit;
    background-repeat: repeat;
  }
  
  .m-contact {
    margin-bottom: 60px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .m-contact__top {
    color: var(--grey);
    padding-right: 9.375vw;
    padding-bottom: 30px;
    margin-bottom: 60px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 0;
    position: relative;
  }
  
  .m-contact__top::after {
    content: "";
    position: absolute;
    top: -60px;
    left: -15%;
    width: 130%;
    height: calc(100% + 60px);
    background-color: var(--red);
    z-index: -1;
    border-radius: 0;
    transform: translate(0, 0);
  }
  
  .m-contact__top svg {
    width: 130%;
    left: -15%;
    max-width: unset;
    bottom: 2px;
  }
  
  .m-contact__top address {
    font-family: var(--outfit);
    font-size: 20px;
    font-style: normal;
    line-height: 1.5;
  }
  
  .m-contact__top .a-heading,
  .m-contact__top .swiper-pagination {
    margin-bottom: 15px;
  }
  
  .m-contact__bottom .m-icons {
    margin-top: 60px;
  }
  
  .m-form .a-heading,
  .m-form .swiper-pagination {
    margin-bottom: 45px;
  }
  
  .m-form form {
    display: flex;
    flex-direction: column;
    justify-content: unset;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 15px;
    margin-bottom: 30px;
  }
  
  .m-form form .a-btn {
    margin-top: 45px;
  }
  
  .m-gallery {
    position: relative;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5px;
  }
  
  .m-gallery .m-img--gallery {
    position: relative;
    opacity: 0;
    transform: translateY(150px) scale(0.9);
    transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
  }
  
  .m-gallery .m-img--gallery.visible {
    opacity: 1;
    transform: translateY(0) scale(1) rotate(var(--final-rotate, 0deg));
  }
  
  .m-gallery .m-img--gallery:nth-child(0) {
    transition-delay: 0s;
  }
  
  .m-gallery .m-img--gallery:nth-child(1) {
    transition-delay: 0.08s;
  }
  
  .m-gallery .m-img--gallery:nth-child(2) {
    transition-delay: 0.16s;
  }
  
  .m-gallery .m-img--gallery:nth-child(3) {
    transition-delay: 0.24s;
  }
  
  .m-gallery .m-img--gallery:nth-child(4) {
    transition-delay: 0.32s;
  }
  
  .m-gallery .m-img--gallery:nth-child(5) {
    transition-delay: 0.4s;
  }
  
  .m-gallery .m-img--gallery:nth-child(6) {
    transition-delay: 0.48s;
  }
  
  .m-gallery .m-img--gallery:nth-child(7) {
    transition-delay: 0.56s;
  }
  
  .m-gallery .m-img--gallery:nth-child(8) {
    transition-delay: 0.64s;
  }
  
  .m-gallery .m-img--gallery:nth-child(9) {
    transition-delay: 0.72s;
  }
  
  .m-gallery .m-img--gallery:nth-child(10) {
    transition-delay: 0.8s;
  }
  
  .m-production-card {
    transition: all 0.6s var(--transition-main);
    top: unset;
    bottom: 0;
    overflow: visible !important;
  }
  
  .m-production-card .m-content {
    position: relative;
    opacity: 0;
    visibility: hidden;
    text-align: center;
    transition: opacity var(--transition-timing) var(--transition-main);
    margin-top: 30px;
    width: 98vw;
    left: -50%;
  }
  
  .m-production-card > div .a-heading,
  .m-production-card > div .swiper-pagination {
    white-space: nowrap;
  }
  
  .m-production-card.swiper-slide {
    bottom: -23vw;
    opacity: 0;
  }
  
  .m-production-card.swiper-slide-active,
  .m-production-card.swiper-slide-next,
  .m-production-card.swiper-slide-prev {
    bottom: 0;
    opacity: 1;
  }
  
  .m-production-card.swiper-slide-next,
  .m-production-card.swiper-slide-prev,
  .m-production-card.swiper-slide-next + .swiper-slide,
  .m-production-card.swiper-slide-prev-before {
    opacity: 0.7;
  }
  
  .m-production-card.swiper-slide-prev {
    bottom: -4vw;
  }
  
  .m-production-card.swiper-slide-next {
    bottom: -4.5vw;
  }
  
  .m-production-card.swiper-slide-prev-before {
    bottom: -10vw;
  }
  
  .m-production-card.swiper-slide-next + .swiper-slide {
    bottom: -11vw;
  }
  
  .m-production-card.swiper-slide-active {
    opacity: 1;
    bottom: 15px;
  }
  
  .m-production-card.swiper-slide-active .m-content {
    opacity: 1;
    visibility: visible;
    transition-delay: 0.6s;
  }
  
  .m-production-card .a-heading,
  .m-production-card .swiper-pagination {
    margin-bottom: 5px;
  }
  
  .m-production-card .a-img {
    width: 100%;
    object-fit: cover;
    border-radius: 40px;
    aspect-ratio: 400/470;
  }
  
  .m-quality {
    position: relative;
    width: 100%;
  }
  
  .m-quality .m-content {
    position: relative;
    text-align: center;
    padding: 0 15px;
  }
  
  .m-quality .a-heading,
  .m-quality .swiper-pagination {
    display: flex;
    justify-content: center;
  }
  
  .m-quality .a-text {
    padding: 0 15px;
    font-size: 18px;
    line-height: 1.15;
  }
  
  .m-quality__box {
    position: relative;
    z-index: 1;
    height: 100vh !important;
    border-top-left-radius: 40px;
    border-top-right-radius: 40px;
    background-color: var(--grey);
    background-image: url("../img/pics/about/layer.webp");
    background-size: inherit;
    background-repeat: repeat;
    padding-top: 45px;
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .m-quality__box:nth-child(1) {
    z-index: 1;
  }
  
  .m-quality__box:nth-child(2) {
    z-index: 2;
  }
  
  .m-quality__box:nth-child(3) {
    z-index: 3;
  }
  
  .m-quality__box:nth-child(4) {
    z-index: 4;
  }
  
  .m-quality__box:nth-child(5) {
    z-index: 5;
  }
  
  .m-quality__box:nth-child(6) {
    z-index: 6;
  }
  
  .m-quality__box:nth-child(7) {
    z-index: 7;
  }
  
  .m-quality__box:nth-child(8) {
    z-index: 8;
  }
  
  .m-quality__box:nth-child(9) {
    z-index: 9;
  }
  
  .m-quality__box.m-quality__box--blue {
    background-color: var(--blue);
    color: var(--grey);
    margin-bottom: 0;
    background-image: unset;
  }
  
  .m-quality__box.m-quality__box--red {
    background-color: var(--red);
    color: var(--grey);
    overflow: hidden;
    background-image: unset;
  }
  
  .m-quality__box.active::after {
    opacity: 1;
  }
  
  .m-quality__box.active .m-quality__inner {
    opacity: 0;
  }
  
  .m-quality__inner {
    position: relative;
    overflow-x: clip;
    width: 100%;
    min-height: 45vw;
    opacity: 1;
  }
  
  .m-quality__inner svg {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
    top: 15.417vw;
    transition: clip-path 1.3s var(--transition-main) 0.5s;
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    display: none;
  }
  
  .m-quality__inner .a-img {
    position: absolute;
    width: 18.073vw;
    transition-delay: 1s;
    opacity: 0;
    transition: all 0.85s var(--transition-main) 0.5s;
  }
  
  .m-quality__inner .a-img:nth-of-type(1) {
    left: 11.146vw;
    bottom: 0vw;
    transform: translateX(50%) translateY(50%) rotate(0) scale(0.75);
    display: none;
  }
  
  .m-quality__inner .a-img:nth-of-type(2) {
    position: relative;
    width: 80%;
    left: 10%;
    transform: translateX(0%) translateY(30px) scale(0.75);
    margin-bottom: 30px;
  }
  
  .m-quality__inner .a-img:nth-of-type(3) {
    right: 11.146vw;
    bottom: 0vw;
    transform: translateX(-50%) translateY(50%) rotate(0) scale(0.75);
    display: none;
  }
  
  .m-quality__inner.visible svg {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  }
  
  .m-quality__inner.visible .a-img:nth-of-type(1) {
    opacity: 1;
    transform: translateX(0) translateY(0) rotate(-13deg) scale(1);
  }
  
  .m-quality__inner.visible .a-img:nth-of-type(2) {
    opacity: 1;
    transform: translateX(0%) translateY(0) scale(1);
  }
  
  .m-quality__inner.visible .a-img:nth-of-type(3) {
    opacity: 1;
    transform: translateX(0) translateY(0) rotate(13deg) scale(1);
  }
  
  .m-search__inner {
    overflow-x: clip;
    overflow-y: auto;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    height: 85%;
    z-index: 4;
    background-color: var(--grey);
    border-top-right-radius: 50px;
    border-top-left-radius: 50px;
    padding: 60px 0;
    display: flex;
    flex-direction: column;
    justify-content: unset;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .m-search__inner .a-heading,
  .m-search__inner .swiper-pagination {
    margin-bottom: 45px;
  }
  
  .m-list ul {
    margin-bottom: 30px;
  }
  
  .m-list ul li {
    list-style-type: decimal;
    margin-bottom: 5px;
  }
  
  .m-list ul li ul {
    padding-left: 15px;
  }
  
  .m-list ul li ul li {
    list-style-type: disc;
  }
  
  .m-list ul .a-text {
    margin-bottom: 5px;
  }
  
  .m-list > .a-text {
    margin-bottom: 10px;
  }
  
  .m-list--none ul li {
    list-style-type: none;
  }
  
  .m-share-social {
    display: flex;
    flex-direction: column;
    justify-content: unset;
    align-items: center;
    flex-wrap: nowrap;
    gap: 10px;
    margin: 0 auto;
    margin-top: 30px;
    width: 80%;
  }
  
  .m-share-social .a-text {
    font-size: 1.45rem;
    transition: 0.3s var(--transition-main);
  }
  
  .m-share-social .m-icons {
    gap: 20px;
    justify-content: center;
  }
  
  .m-share-social .m-icons .a-icon {
    transition: 0.3s var(--transition-main);
  }
  
  .m-share-social .m-icons .a-icon:nth-child(1) {
    transition-delay: 0.125s;
  }
  
  .m-share-social .m-icons .a-icon:nth-child(2) {
    transition-delay: 0.25s;
  }
  
  .m-share-social .m-icons .a-icon:nth-child(3) {
    transition-delay: 0.375s;
  }
  
  .m-share-social .m-icons .a-icon:nth-child(4) {
    transition-delay: 0.5s;
  }
  
  .m-share-social .m-icons .a-icon:nth-child(5) {
    transition-delay: 0.625s;
  }
  
  .m-share-social .m-icons .a-icon:nth-child(6) {
    transition-delay: 0.75s;
  }
  
  .m-share-social .m-icons .a-icon.visible {
    opacity: 1;
  }
  
  .m-brush--title {
    position: relative;
    z-index: 2;
    color: var(--red);
    width: 250px;
    text-align: center;
    opacity: 1;
    padding: 24px 0 24px 45px;
  }
  
  .m-brush--title.visible {
    opacity: 1;
  }
  
  .m-brush--title.visible svg {
    animation: draw 0.5s linear forwards;
  }
  
  .m-brush--title svg {
    position: absolute;
    inset: 0;
    object-fit: contain;
    object-position: left center;
    z-index: -1;
    top: 50%;
    left: 15px;
    width: 100%;
    scale: 1.1;
    filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    transform: translateY(-40%);
    stroke-dasharray: 1500;
    stroke-dashoffset: 1500;
  }
  
  .m-brush--title .a-heading,
  .m-brush--title .swiper-pagination {
    margin-bottom: 30px;
  }
  
  @keyframes draw {
    to {
      stroke-dashoffset: 889px;
    }
  }
  
  .m-faq {
    padding: 90px 0 90px 70px;
    background: var(--grey);
    border: 3px solid var(--grey);
    border-radius: 26px;
    box-shadow: 0px 9.29688px 29.75px rgba(8, 15, 52, 0.06);
    width: 100%;
    margin-bottom: 50px;
    transition: transform var(--transition-timing) ease-in-out, opacity var(--transition-timing) var(--transition-main);
    transform: translateY(45px);
    opacity: 0;
  }
  
  .m-faq.active {
    box-shadow: 0px 11.1562px 29.75px rgba(184, 34, 58, 0.19);
    border: 3px solid var(--red);
  }
  
  .m-faq:last-of-type {
    margin-bottom: 90px;
  }
  
  .m-faq.visible {
    transform: translateY(0);
    opacity: 1;
  }
  
  .m-faq__header {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
    cursor: pointer;
    padding-right: 20%;
  }
  
  .m-faq__header .a-heading,
  .m-faq__header .swiper-pagination {
    font-family: var(--outfit);
  }
  
  .m-faq__header .a-icon {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 70px;
    width: 90px;
    height: 90px;
    background: var(--grey);
    box-shadow: 0px 9.29688px 29.75px rgba(8, 15, 52, 0.06);
    transition: 0.3s ease;
    font-size: 24px;
  }
  
  .m-faq.active .m-faq__header .a-icon {
    background-color: var(--red);
    color: var(--white);
    box-shadow: unset;
    transform: translateY(-50%) rotate(90deg);
  }
  
  .m-faq__body {
    max-height: 0;
    overflow: hidden;
    transition: 0.3s ease;
    max-width: 80%;
  }
  
  .m-faq__body .a-text {
    text-align: left !important;
  }
  
  .m-team-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
  }
  
  .m-team-card {
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }
  
  .m-team-card__img-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 3/4;
    overflow: hidden;
    background: #f0f0f0;
  }
  
  .m-team-card__img-wrap .a-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    display: block;
    transition: none;
  }
  
  .m-team-card__placeholder {
    width: 100%;
    height: 100%;
    background: #e8e8e8;
  }
  
  .m-team-card__info {
    padding: 20px 24px 24px;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  
  .m-team-card__name {
    margin: 0;
  }
  
  .m-team-card__position {
    display: inline-block;
    margin: 0;
  }
  
  .m-ceo {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  
  .m-ceo img {
    width: 100%;
    object-fit: cover;
    height: 100%;
  }
  
  .m-ceo .m-content {
    width: 100%;
  }
  
  .m-ceo .m-content .a-tag {
    margin-bottom: 5px;
  }
  
  .m-about-author .a-tag {
    margin-bottom: 15px;
  }
  
  .m-about-author .a-heading,
  .m-about-author .swiper-pagination {
    margin-bottom: 60px;
  }
  
  .m-about-author .a-text {
    margin-bottom: 15px;
  }
  
  .m-moments .a-tag {
    margin-bottom: 15px;
  }
  
  .m-moments .a-heading,
  .m-moments .swiper-pagination {
    margin-bottom: 60px;
  }
  
  .m-moments .a-text {
    margin-bottom: 15px;
  }
  
  .o-header {
    position: relative;
    z-index: 4;
    top: 0;
    padding-top: 20px;
    width: 100%;
    background-color: transparent;
  }
  
  .o-header .a-btn {
    display: none;
  }
  
  .o-header .a-logo {
    position: relative;
  }
  
  .o-header .a-logo svg {
    width: 90px;
  }
  
  .o-header .a-logo svg path {
    fill: #09043a;
  }
  
  .o-header--white {
    color: var(--white);
    background-color: var(--red);
  }
  
  .o-header--white .a-logo svg path {
    fill: var(--grey);
  }
  
  .o-header--white .a-language::before {
    border-color: var(--white);
  }
  
  .o-header--white .a-language::after {
    background-color: var(--white);
  }
  
  .o-hero {
    margin-top: 30px;
    height: auto;
  }
  
  .o-hero .a-main-title {
    top: 45px;
    opacity: 0;
  }
  
  .o-hero .a-main-title .words {
    transition: clip-path 0.3s var(--timing-main);
  }
  
  .o-hero--single {
    height: auto;
    margin-bottom: 45px;
    margin-top: 15px;
  }
  
  .o-hero--single > .a-img--badge {
    position: absolute;
    top: 11vh;
    left: 15px;
    max-width: 15vw;
    min-width: 100px;
  }
  
  .o-hero--single .m-hero__inner {
    display: block;
  }
  
  .o-hero--single .m-hero__inner .a-img {
    position: relative;
    height: 45vh;
    z-index: 3;
    margin-top: -15px;
    opacity: 0;
    transform: translateY(150vh);
    transition: 0.3s ease-out;
  }
  
  .o-hero--single .a-main-title {
    position: relative;
    top: 45px;
  }
  
  .o-hero--home {
    height: calc(100vh - 100px);
    contain: layout style;
    overflow-x: clip;
  }
  
  .o-hero--home .a-main-title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    opacity: 0;
    will-change: transform, opacity;
    backface-visibility: hidden;
  }
  
  .o-hero--home .m-hero--img,
  .o-hero--home .m-hero--logo,
  .o-hero--home .a-hero--text {
    opacity: 0;
    will-change: opacity;
  }
  
  .o-hero--home .a-hero--loader {
    position: fixed;
    top: calc(50vh - 100px);
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 30vh;
    font-weight: 900;
    color: var(--red);
    font-family: var(--veneer);
    opacity: 0;
    will-change: transform, opacity;
    backface-visibility: hidden;
    pointer-events: none;
    z-index: 9999;
    transform-origin: center center;
    text-align: center;
  }
  
  .o-hero--home .parallax[data-speed] {
    will-change: transform;
    backface-visibility: hidden;
    transform: translate3d(0, 0, 0);
  }
  
  .o-about {
    position: relative;
    overflow-x: clip;
  }
  
  .o-about .m-content,
  .o-about .m-products--rotated {
    width: 100%;
    z-index: 2;
  }
  
  .o-about .m-products--rotated {
    margin-bottom: -70px;
  }
  
  .o-about .m-content {
    padding-bottom: 60px;
  }
  
  .o-about .a-text {
    margin-bottom: 45px;
  }
  
  .o-products {
    position: relative;
    overflow-x: clip;
  }
  
  .o-products .svg-circle {
    position: absolute;
    height: auto;
    max-height: 95%;
    max-width: 100%;
    width: 100%;
    left: 50%;
    top: 45%;
    transform: translate(-50%, -50%);
  }
  
  .o-products .svg-circle circle {
    scale: 0.5;
    opacity: 0;
    transition: all 0.95s var(--cubic-bezier2);
    transform-origin: center center;
  }
  
  .o-products .svg-circle circle:first-child {
    scale: 0;
  }
  
  .o-products .svg-circle circle:nth-child(0) {
    transition-delay: 0s;
  }
  
  .o-products .svg-circle circle:nth-child(1) {
    transition-delay: 0.175s;
  }
  
  .o-products .svg-circle circle:nth-child(2) {
    transition-delay: 0.35s;
  }
  
  .o-products .svg-circle circle:nth-child(3) {
    transition-delay: 0.525s;
  }
  
  .o-products .svg-circle.visible circle {
    scale: 1;
    opacity: 1;
  }
  
  .o-products .container,
  .o-products .o-other-products .swiper,
  .o-other-products .o-products .swiper,
  .o-products .o-products-single .swiper,
  .o-products-single .o-products .swiper {
    flex-wrap: nowrap;
  }
  
  .o-products .container .m-content,
  .o-products .o-other-products .swiper .m-content,
  .o-other-products .o-products .swiper .m-content,
  .o-products .o-products-single .swiper .m-content,
  .o-products-single .o-products .swiper .m-content {
    position: relative;
    width: auto;
    z-index: 2;
  }
  
  .o-products .container .m-content .a-tag,
  .o-products .o-other-products .swiper .m-content .a-tag,
  .o-other-products .o-products .swiper .m-content .a-tag,
  .o-products .o-products-single .swiper .m-content .a-tag,
  .o-products-single .o-products .swiper .m-content .a-tag {
    justify-content: left;
  }
  
  .o-products .swiper-slide {
    display: flex;
    flex-direction: column;
    justify-content: unset;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
    transition: all var(--transition-timing) var(--transition-main);
  }
  
  .o-products .swiper-slide .m-content {
    position: relative;
    width: auto;
    opacity: 0;
    visibility: hidden;
    margin-bottom: 30px;
    transition: opacity var(--transition-timing) var(--transition-main);
    text-align: center;
  }
  
  .o-products .swiper-slide .m-content .a-heading,
  .o-products .swiper-slide .m-content .swiper-pagination {
    margin-bottom: 15px;
  }
  
  .o-products .swiper-slide .m-content .a-tag {
    justify-content: center;
  }
  
  .o-products .swiper-slide .m-content .a-img,
  .o-products .swiper-slide .m-content svg {
    display: none;
  }
  
  .o-products .swiper-slide .m-products {
    max-height: 600px;
  }
  
  .o-products .swiper-slide-prev .m-products .a-img {
    rotate: -15deg;
  }
  
  .o-products .swiper-slide-prev .m-products .a-img:nth-child(2) {
    opacity: 0;
  }
  
  .o-products .swiper-slide-next .m-products .a-img {
    rotate: 15deg;
  }
  
  .o-products .swiper-slide-next .m-products .a-img:nth-child(2) {
    opacity: 0;
  }
  
  .o-products .swiper-slide-active .m-content {
    transition-delay: 0.6s;
    opacity: 1;
    visibility: visible;
  }
  
  .o-products .m-navigation {
    margin-top: 30px;
  }
  
  .o-products .m-navigation .a-icon {
    transition-delay: 0.3s;
  }
  
  .o-products--red {
    background-color: var(--red);
  }
  
  .o-products--hero {
    margin-top: 60px;
    padding-bottom: 150px;
  }
  
  .o-products--hero .svg-circle {
    top: 30%;
    max-width: 100%;
    height: auto;
  }
  
  .o-products--hero .svg-circle circle:last-child {
    transition-delay: 0s;
  }
  
  .o-products--hero .swiper {
    overflow-y: visible;
    overflow-x: clip;
    display: none;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.45s var(--transition-main) 0.45s;
  }
  
  .o-products--hero .swiper.active {
    display: block;
    visibility: visible;
  }
  
  .o-products--hero .swiper.visible {
    opacity: 1;
  }
  
  .o-products--hero .swiper-slide-active .m-products .a-img {
    rotate: 0deg;
  }
  
  .o-products--hero .swiper-slide-active .m-products .a-img:nth-child(2) {
    opacity: 1;
  }
  
  .o-products--hero .m-content svg {
    scale: 0.7;
    transform: translateX(-70px);
  }
  
  .o-products--hero .m-products {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .o-products--hero .m-navigation {
    margin-top: 45px;
    transform: translateY(0) !important;
  }
  
  .o-products--hero .m-icons {
    position: relative;
    z-index: 2;
    margin: 60px 15px 0;
    width: calc(100% - 30px);
    gap: 0;
    opacity: 1;
  }
  
  .o-products--hero .m-icons a {
    position: relative;
    border-right: 2px solid var(--grey);
    border-bottom: 2px solid var(--grey);
    height: 130px;
    width: 50%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
    transform: translateY(30px);
    background-color: rgba(0, 14, 71, 0.062745098);
    opacity: 0;
    transition: transform var(--transition-timing) var(--transition-main), opacity var(--transition-timing) var(--transition-main);
    margin-bottom: 0;
  }
  
  .o-products--hero .m-icons a:nth-child(0) {
    transition-delay: 0s;
  }
  
  .o-products--hero .m-icons a:nth-child(1) {
    transition-delay: 0.125s;
  }
  
  .o-products--hero .m-icons a:nth-child(2) {
    transition-delay: 0.25s;
  }
  
  .o-products--hero .m-icons a:nth-child(3) {
    transition-delay: 0.375s;
  }
  
  .o-products--hero .m-icons a:nth-child(4) {
    transition-delay: 0.5s;
  }
  
  .o-products--hero .m-icons a:nth-child(5) {
    transition-delay: 0.625s;
  }
  
  .o-products--hero .m-icons a:nth-child(6) {
    transition-delay: 0.75s;
  }
  
  .o-products--hero .m-icons a:nth-child(7) {
    transition-delay: 0.875s;
  }
  
  .o-products--hero .m-icons a::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background-color: var(--active-color);
    z-index: -1;
    clip-path: circle(0% at 25% 100%);
    transform-origin: center right;
    transition: clip-path 0.6s var(--transition-main);
    opacity: 1;
  }
  
  .o-products--hero .m-icons a.active::after {
    clip-path: circle(130% at 25% 100%);
  }
  
  .o-products--hero .m-icons a:first-of-type img {
    max-width: 45%;
  }
  
  .o-products--hero .m-icons a img {
    max-width: 65%;
  }
  
  .o-products--hero .m-icons.visible a {
    transform: translateY(0);
    opacity: 1;
  }
  
  @keyframes marqueeEffect {
    0% {
      transform: scale(0);
      opacity: 0;
    }
  
    2% {
      transform: scale(0);
      opacity: 1;
    }
  
    98% {
      transform: scale(1);
      opacity: 1;
    }
  
    100% {
      transform: scale(1);
      opacity: 0;
    }
  }
  
  .o-video {
    position: relative;
    max-height: 100vh;
    overflow: hidden;
    transition: all 0.75s var(--transition-main);
    width: 100%;
    aspect-ratio: 16/9;
  }
  
  .o-video .a-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    cursor: pointer;
    transition: opacity 0.6s ease, transform 0.6s ease;
  }
  
  .o-video .a-icon.active {
    opacity: 0;
  }
  
  .o-news .container,
  .o-news .o-other-products .swiper,
  .o-other-products .o-news .swiper,
  .o-news .o-products-single .swiper,
  .o-products-single .o-news .swiper {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 0 60px;
    align-items: unset;
  }
  
  .o-news .m-news-card {
    opacity: 0;
    transition: all 0.5s var(--transition-main);
    animation: fadeIn 0.5s var(--transition-main) forwards;
    animation-play-state: paused;
  }
  
  .o-news .m-news-card:nth-child(1) {
    animation-delay: 0.6s;
  }
  
  .o-news .m-news-card:nth-child(2) {
    animation-delay: 0.7s;
  }
  
  .o-news .m-news-card:nth-child(3) {
    animation-delay: 0.8s;
  }
  
  .o-news .m-news-card:nth-child(4) {
    animation-delay: 0.9s;
  }
  
  .o-news .m-news-card:nth-child(5) {
    animation-delay: 1s;
  }
  
  .o-news .m-news-card:nth-child(6) {
    animation-delay: 1.1s;
  }
  
  .o-news .m-news-card:nth-child(7) {
    animation-delay: 1.2s;
  }
  
  .o-news .m-news-card:nth-child(8) {
    animation-delay: 1.3s;
  }
  
  .o-news .m-news-card:nth-child(9) {
    animation-delay: 1.4s;
  }
  
  .o-news .m-news-card::after {
    content: "";
    position: absolute;
    inset: 0;
    top: 30px;
    left: 20px;
    background-color: rgba(0, 0, 0, 0.15);
    z-index: 0;
    opacity: 0;
    transition: all 0.3s ease;
  }
  
  .o-news .m-news-card .m-img,
  .o-news .m-news-card .m-content {
    position: relative;
    z-index: 1;
  }
  
  .o-news .m-news-card.visible {
    animation-play-state: running;
  }
  
  .o-news-slider {
    width: 100%;
  }
  
  .o-news-slider svg {
    top: 0;
    height: auto;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    max-width: 100%;
    max-height: 100%;
  }
  
  .o-news-slider svg circle {
    scale: 0;
    opacity: 0;
    transition: all 0.95s var(--transition-main);
    transition-delay: 0.5s;
    transform-origin: center center;
  }
  
  .o-news-slider svg.visible circle {
    scale: 1;
    opacity: 1;
  }
  
  .o-news-slider .m-news-card {
    transition: unset;
    animation: none;
  }
  
  .o-news-slider .m-news-card .m-content {
    transition: clip-path 0.55s var(--transition-main);
    clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
    margin-top: -2px;
    background-color: var(--red);
  }
  
  .o-news-slider .m-news-card .m-content .a-heading,
  .o-news-slider .m-news-card .m-content .swiper-pagination,
  .o-news-slider .m-news-card .m-content .a-text,
  .o-news-slider .m-news-card .m-content .a-btn {
    transition: opacity 0.3s ease-in;
    opacity: 0;
    transition-delay: 0.5s;
  }
  
  .o-news-slider .m-news-card .m-content .a-text {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  
  .o-news-slider .m-news-card .m-img {
    background-color: var(--red);
  }
  
  .o-news-slider.swiper-slide .m-img {
    box-shadow: 0px 207px 83px rgba(0, 0, 0, 0.01), 0px 116px 70px rgba(0, 0, 0, 0.05), 0px 52px 52px rgba(0, 0, 0, 0.09), 0px 13px 28px rgba(0, 0, 0, 0.1);
  }
  
  .o-news-slider .swiper-slide {
    position: relative;
    opacity: 0;
    top: 160px;
    color: var(--white);
    transition: all 0.4s ease;
    overflow: visible;
  }
  
  .o-news-slider .swiper-slide.swiper-slide-prev,
  .o-news-slider .swiper-slide.swiper-slide-next {
    z-index: 1;
    opacity: 1;
    box-shadow: unset;
  }
  
  .o-news-slider .swiper-slide.swiper-slide-prev .m-img,
  .o-news-slider .swiper-slide.swiper-slide-next .m-img {
    box-shadow: unset;
  }
  
  .o-news-slider .swiper-slide.swiper-slide-prev .m-img {
    transform: translateX(100%) rotate(15deg);
    transition: transform 0.85s ease, opacity 0.3s ease;
    opacity: 0;
    transition-delay: 0.5s;
  }
  
  .o-news-slider .swiper-slide.swiper-slide-next .m-img {
    transform: translateX(-100%) rotate(-15deg);
    transition: transform 0.85s ease, opacity 0.3s ease;
    opacity: 0;
    transition-delay: 0.5s;
  }
  
  .o-news-slider .swiper-slide.swiper-slide-active {
    opacity: 1;
    top: 0;
  }
  
  .o-news-slider .swiper-slide.swiper-slide-active .m-content {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  }
  
  .o-news-slider .swiper-slide.swiper-slide-active .m-content .a-heading,
  .o-news-slider .swiper-slide.swiper-slide-active .m-content .swiper-pagination,
  .o-news-slider .swiper-slide.swiper-slide-active .m-content .a-text,
  .o-news-slider .swiper-slide.swiper-slide-active .m-content .a-btn {
    opacity: 1;
  }
  
  .o-news-slider .swiper-slide .a-btn {
    background-color: var(--grey);
    color: var(--red);
  }
  
  .o-news-slider .m-navigation {
    margin-top: 45px;
  }
  
  .o-news-slider .swiper.visible {
    animation: newsThrow 0.65s linear forwards;
  }
  
  .o-news-slider .swiper.visible .swiper-slide.swiper-slide-prev .m-img,
  .o-news-slider .swiper.visible .swiper-slide.swiper-slide-next .m-img {
    transform: translateX(0%) rotate(0);
    opacity: 1;
  }
  
  @keyframes newsThrow {
    0% {
      transform: translateY(400px) scale(1.5);
    }
  
    25% {
      transform: translateY(300px) scale(1.25);
    }
  
    50% {
      transform: translateY(200px) scale(1.15);
    }
  
    75% {
      transform: translateY(100px) scale(0.8 5);
    }
  
    100% {
      transform: translateY(0) scale(1);
    }
  }
  
  @keyframes fadeIn {
    from {
      opacity: 0;
      transform: translateY(10px);
    }
  
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  
  .o-brand {
    background-color: var(--red);
    color: var(--grey);
    position: relative;
  }
  
  .o-brand .m-content {
    margin-bottom: 45px;
  }
  
  .o-brand .m-icons .a-img {
    transition: transform 0.3s var(--transition-main);
    transform: scale(0.85);
  }
  
  .o-brand .h-wave--outer-bottom {
    bottom: 5px;
  }
  
  .o-footer {
    padding: 90px 0 45px;
  }
  
  .o-footer .a-logo svg {
    width: 190px;
    height: 90px;
  }
  
  .o-banner-hero .a-tag {
    justify-content: center;
    margin-bottom: 15px;
  }
  
  .o-banner-hero .a-heading,
  .o-banner-hero .swiper-pagination {
    margin-top: 0;
  }
  
  .o-banner {
    position: relative;
    display: block;
    transition: all 0.75s var(--transition-main);
    overflow: hidden;
  }
  
  .o-banner .a-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  
  .o-banner .m-content {
    width: 100%;
    display: block;
    margin: 0 auto;
    text-align: center;
    color: var(--grey);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    padding: 0 15px;
  }
  
  .o-banner .h-banner-wave {
    bottom: -10px;
  }
  
  .o-banner--layer {
    height: 80vh;
  }
  
  .o-banner--layer::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.4);
  }
  
  .o-single-product {
    position: relative;
    background: radial-gradient(41.14% 32.12% at 46.12% 67.88%, #3e4777 0%, #000E47 100%);
    color: var(--grey);
    text-align: center;
    overflow-x: clip;
  }
  
  .o-single-product .container,
  .o-single-product .o-other-products .swiper,
  .o-other-products .o-single-product .swiper,
  .o-single-product .o-products-single .swiper,
  .o-products-single .o-single-product .swiper {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: unset;
    align-items: unset;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .o-single-product .container .svg,
  .o-single-product .o-other-products .swiper .svg,
  .o-other-products .o-single-product .swiper .svg,
  .o-single-product .o-products-single .swiper .svg,
  .o-products-single .o-single-product .swiper .svg {
    position: relative;
    max-width: 839px;
    margin: 30px auto;
    display: block;
  }
  
  .o-single-product .container .svg > svg,
  .o-single-product .o-other-products .swiper .svg > svg,
  .o-other-products .o-single-product .swiper .svg > svg,
  .o-single-product .o-products-single .swiper .svg > svg,
  .o-products-single .o-single-product .swiper .svg > svg {
    width: 100%;
    display: block;
    margin: auto;
    height: auto;
  }
  
  .o-single-product .container .svg > svg.svg--neon,
  .o-single-product .o-other-products .swiper .svg > svg.svg--neon,
  .o-other-products .o-single-product .swiper .svg > svg.svg--neon,
  .o-single-product .o-products-single .swiper .svg > svg.svg--neon,
  .o-products-single .o-single-product .swiper .svg > svg.svg--neon {
    animation: neonBlink 4s infinite alternate linear;
    transition-delay: 0.35s;
  }
  
  .o-single-product .container .svg > svg.svg--lines,
  .o-single-product .o-other-products .swiper .svg > svg.svg--lines,
  .o-other-products .o-single-product .swiper .svg > svg.svg--lines,
  .o-single-product .o-products-single .swiper .svg > svg.svg--lines,
  .o-products-single .o-single-product .swiper .svg > svg.svg--lines {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 5;
    display: none;
  }
  
  .o-single-product .a-heading,
  .o-single-product .swiper-pagination {
    margin-bottom: 0;
  }
  
  @keyframes neonBlink {
    0% {
      filter: drop-shadow(0 0 0.5px rgba(233, 231, 220, 0.125)) drop-shadow(0 0 1px rgba(233, 231, 220, 0.125));
      opacity: 1;
    }
  
    2% {
      filter: drop-shadow(0 0 0.3px rgba(233, 231, 220, 0.125)) drop-shadow(0 0 0.5px rgba(233, 231, 220, 0.125));
      opacity: 0.8;
    }
  
    4% {
      filter: drop-shadow(0 0 0.7px rgba(233, 231, 220, 0.125)) drop-shadow(0 0 1.2px rgba(233, 231, 220, 0.125));
      opacity: 1;
    }
  
    6% {
      filter: none;
      opacity: 0.4;
    }
  
    8% {
      filter: drop-shadow(0 0 0.5px rgba(233, 231, 220, 0.125)) drop-shadow(0 0 1px rgba(233, 231, 220, 0.125));
      opacity: 0.9;
    }
  
    10% {
      filter: none;
      opacity: 0.3;
    }
  
    12% {
      filter: drop-shadow(0 0 0.7px rgba(233, 231, 220, 0.125)) drop-shadow(0 0 1.5px rgba(233, 231, 220, 0.125));
      opacity: 1;
    }
  
    45% {
      filter: drop-shadow(0 0 0.5px rgba(233, 231, 220, 0.125)) drop-shadow(0 0 1px rgba(233, 231, 220, 0.125));
      opacity: 0.9;
    }
  
    48% {
      filter: none;
      opacity: 0.2;
    }
  
    50% {
      filter: drop-shadow(0 0 0.7px rgba(233, 231, 220, 0.125)) drop-shadow(0 0 1.2px rgba(233, 231, 220, 0.125));
      opacity: 1;
    }
  
    52% {
      filter: drop-shadow(0 0 0.3px rgba(233, 231, 220, 0.125)) drop-shadow(0 0 0.7px rgba(233, 231, 220, 0.125));
      opacity: 0.7;
    }
  
    54% {
      filter: none;
      opacity: 0.3;
    }
  
    56% {
      filter: drop-shadow(0 0 1px rgba(233, 231, 220, 0.125)) drop-shadow(0 0 1.5px rgba(233, 231, 220, 0.125));
      opacity: 1;
    }
  
    100% {
      filter: drop-shadow(0 0 0.5px rgba(233, 231, 220, 0.125)) drop-shadow(0 0 1px rgba(233, 231, 220, 0.125));
      opacity: 0.9;
    }
  }
  
  .o-quality {
    overflow: hidden;
  }
  
  .o-quality .container > .m-content--full,
  .o-quality .o-other-products .swiper > .m-content--full,
  .o-other-products .o-quality .swiper > .m-content--full,
  .o-quality .o-products-single .swiper > .m-content--full,
  .o-products-single .o-quality .swiper > .m-content--full {
    margin: 45px 0;
  }
  
  .o-quality .container > .m-content--full .a-heading,
  .o-quality .o-other-products .swiper > .m-content--full .a-heading,
  .o-other-products .o-quality .swiper > .m-content--full .a-heading,
  .o-quality .o-products-single .swiper > .m-content--full .a-heading,
  .o-products-single .o-quality .swiper > .m-content--full .a-heading,
  .o-quality .container > .m-content--full .swiper-pagination,
  .o-quality .o-other-products .swiper > .m-content--full .swiper-pagination,
  .o-other-products .o-quality .swiper > .m-content--full .swiper-pagination,
  .o-quality .o-products-single .swiper > .m-content--full .swiper-pagination,
  .o-products-single .o-quality .swiper > .m-content--full .swiper-pagination {
    justify-content: center;
  }
  
  .o-article {
    overflow: hidden;
  }
  
  .o-article .m-content {
    margin-bottom: 45px;
  }
  
  .o-article .a-tag {
    justify-content: center;
  }
  
  .o-article .a-img {
    max-height: 90vh;
    object-fit: cover;
    object-position: center;
    transition: clip-path 0.65s var(--transition-main);
  }
  
  .o-article .a-text {
    transition: opacity 0.4s var(--transition-main);
  }
  
  .o-article .container > .a-text,
  .o-article .o-other-products .swiper > .a-text,
  .o-other-products .o-article .swiper > .a-text,
  .o-article .o-products-single .swiper > .a-text,
  .o-products-single .o-article .swiper > .a-text {
    text-align: center;
    display: block;
    margin: 0 auto;
    font-weight: 300;
    margin-bottom: 30px;
  }
  
  .o-article .container > .a-text:first-of-type,
  .o-article .o-other-products .swiper > .a-text:first-of-type,
  .o-other-products .o-article .swiper > .a-text:first-of-type,
  .o-article .o-products-single .swiper > .a-text:first-of-type,
  .o-products-single .o-article .swiper > .a-text:first-of-type {
    margin-top: 45px;
  }
  
  .o-article .container .m-list,
  .o-article .o-other-products .swiper .m-list,
  .o-other-products .o-article .swiper .m-list,
  .o-article .o-products-single .swiper .m-list,
  .o-products-single .o-article .swiper .m-list {
    font-weight: 300;
    text-align: center;
    padding: 0 15px;
  }
  
  .o-map {
    position: relative;
    padding: 60px 0;
    background-color: var(--red);
  }
  
  .o-map .container > svg,
  .o-map .o-other-products .swiper > svg,
  .o-other-products .o-map .swiper > svg,
  .o-map .o-products-single .swiper > svg,
  .o-products-single .o-map .swiper > svg {
    width: 100%;
    height: auto;
    opacity: 0;
    will-change: opacity, transform;
    transform-origin: center center;
    transform: scale(0.95);
    transition: opacity 0.75s var(--transition-main) 0.95s, transform 0.75s var(--transition-main) 0.95s;
  }
  
  .o-map .container > svg .country-name,
  .o-map .o-other-products .swiper > svg .country-name,
  .o-other-products .o-map .swiper > svg .country-name,
  .o-map .o-products-single .swiper > svg .country-name,
  .o-products-single .o-map .swiper > svg .country-name {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s var(--transition-main);
    transition-delay: 0.3s;
  }
  
  .o-map .container > svg line,
  .o-map .o-other-products .swiper > svg line,
  .o-other-products .o-map .swiper > svg line,
  .o-map .o-products-single .swiper > svg line,
  .o-products-single .o-map .swiper > svg line,
  .o-map .container > svg .line,
  .o-map .o-other-products .swiper > svg .line,
  .o-other-products .o-map .swiper > svg .line,
  .o-map .o-products-single .swiper > svg .line,
  .o-products-single .o-map .swiper > svg .line {
    stroke-dasharray: 60;
    stroke-dashoffset: 60;
    transition: all 0.6s var(--transition-main);
  }
  
  .o-map .container > svg .country:focus .country-name,
  .o-map .o-other-products .swiper > svg .country:focus .country-name,
  .o-other-products .o-map .swiper > svg .country:focus .country-name,
  .o-map .o-products-single .swiper > svg .country:focus .country-name,
  .o-products-single .o-map .swiper > svg .country:focus .country-name {
    opacity: 1;
  }
  
  .o-map .container > svg .country:hover .country-name,
  .o-map .o-other-products .swiper > svg .country:hover .country-name,
  .o-other-products .o-map .swiper > svg .country:hover .country-name,
  .o-map .o-products-single .swiper > svg .country:hover .country-name,
  .o-products-single .o-map .swiper > svg .country:hover .country-name {
    opacity: 1;
  }
  
  .o-map .container > svg .country:hover line,
  .o-map .o-other-products .swiper > svg .country:hover line,
  .o-other-products .o-map .swiper > svg .country:hover line,
  .o-map .o-products-single .swiper > svg .country:hover line,
  .o-products-single .o-map .swiper > svg .country:hover line {
    stroke-dasharray: 60;
    stroke-dashoffset: 130;
  }
  
  .o-map .container > svg .country:hover .line,
  .o-map .o-other-products .swiper > svg .country:hover .line,
  .o-other-products .o-map .swiper > svg .country:hover .line,
  .o-map .o-products-single .swiper > svg .country:hover .line,
  .o-products-single .o-map .swiper > svg .country:hover .line {
    stroke-dasharray: 60;
    stroke-dashoffset: 0;
  }
  
  .o-map .a-text {
    position: relative;
    text-align: center;
    margin-bottom: 30px;
  }
  
  .o-map.visible .container > svg,
  .o-map.visible .o-other-products .swiper > svg,
  .o-other-products .o-map.visible .swiper > svg,
  .o-map.visible .o-products-single .swiper > svg,
  .o-products-single .o-map.visible .swiper > svg {
    opacity: 1;
    transform: scale(1);
  }
  
  .o-contact {
    width: 100%;
    position: fixed;
    left: 0;
    bottom: 0;
    height: 100%;
    z-index: 12;
    transform: translateY(100%);
    transition: transform var(--transition-timing) var(--transition-main);
  }
  
  .o-contact.active {
    transform: translateY(0);
  }
  
  .o-contact .m-contact {
    width: 100%;
  }
  
  .o-contact .container,
  .o-contact .o-other-products .swiper,
  .o-other-products .o-contact .swiper,
  .o-contact .o-products-single .swiper,
  .o-products-single .o-contact .swiper {
    height: 100%;
  }
  
  .o-contact .a-icon--contact-close {
    position: fixed;
    right: 6%;
    top: 3%;
    cursor: pointer;
  }
  
  .o-about-single .m-content,
  .o-about-single .m-table {
    width: 100%;
  }
  
  .o-products-single {
    position: relative;
    background-color: var(--blue);
    color: var(--grey);
  }
  
  .h-bg-black-body .o-products-single {
    background-color: transparent !important;
    color: var(--light-yellow) !important;
  }
  
  .o-products-single .swiper-wrapper {
    align-items: end;
  }
  
  .o-products-single .m-navigation {
    margin-top: 60px;
    width: 100%;
  }
  
  .o-products-single .m-navigation a {
    transition-delay: 1s;
  }
  
  .o-other-products .m-content {
    width: 100%;
    margin-bottom: 15px;
  }
  
  .o-other-products .a-btn {
    display: block;
    width: max-content;
    margin: 45px auto 0;
  }
  
  .o-other-products .m-navigation {
    width: 88%;
    position: absolute;
    top: 50%;
    justify-content: space-between;
    display: none;
  }
  
  .o-other-products .swiper-pagination {
    margin: 45px 0 0 0;
  }
  
  .o-other-productcs--diff > .swiper {
    padding-left: 15px;
    padding-right: 15px;
  }
  
  .o-gallery--scroll {
    overflow: hidden;
    position: relative;
    padding-top: 90px;
  }
  
  .o-gallery--scroll .o-gallery--title {
    position: relative;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  
  .o-gallery--scroll .o-gallery--title .a-tag {
    margin-bottom: 30px;
  }
  
  .o-gallery--scroll .container,
  .o-gallery--scroll .o-products-single .swiper,
  .o-products-single .o-gallery--scroll .swiper,
  .o-gallery--scroll .o-other-products .swiper,
  .o-other-products .o-gallery--scroll .swiper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100vh;
    width: 100%;
    font-size: 1vw;
    position: relative;
    z-index: 2;
  }
  
  .o-gallery--scroll .cards {
    display: flex;
    width: max-content;
    white-space: nowrap;
    gap: 1vw;
    will-change: transform;
    padding: 0 120vw;
  }
  
  .o-gallery--scroll .card {
    position: relative;
    width: 84vw;
    aspect-ratio: 0.75;
    overflow: hidden;
    object-fit: cover;
    border: 10px solid var(--grey);
    box-shadow: unset;
  }
  
  .o-gallery--scroll .card img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
  }
  
  .o-gallery--scroll .card-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
  }
  
  .o-production .m-content--row {
    margin-bottom: 45px;
  }
  
  .o-production .swiper--production-image {
    width: 100%;
  }
  
  .o-production .swiper--production-image .swiper-slide-next > div:not(.m-content),
  .o-production .swiper--production-image .swiper-slide-next + .swiper-slide > div:not(.m-content),
  .o-production .swiper--production-image .swiper-slide-prev > div:not(.m-content),
  .o-production .swiper--production-image .swiper-slide-prev-before > div:not(.m-content) {
    transition: transform 0.65s ease-in-out;
  }
  
  .o-production .swiper--production-image .swiper-slide-next > div:not(.m-content) .a-heading,
  .o-production .swiper--production-image .swiper-slide-next > div:not(.m-content) .swiper-pagination,
  .o-production .swiper--production-image .swiper-slide-next + .swiper-slide > div:not(.m-content) .a-heading,
  .o-production .swiper--production-image .swiper-slide-next + .swiper-slide > div:not(.m-content) .swiper-pagination,
  .o-production .swiper--production-image .swiper-slide-prev > div:not(.m-content) .a-heading,
  .o-production .swiper--production-image .swiper-slide-prev > div:not(.m-content) .swiper-pagination,
  .o-production .swiper--production-image .swiper-slide-prev-before > div:not(.m-content) .a-heading,
  .o-production .swiper--production-image .swiper-slide-prev-before > div:not(.m-content) .swiper-pagination {
    opacity: 0;
    transition: all 0.4s ease-in-out;
    transition-delay: 0.6s;
  }
  
  .o-production .swiper--production-image .swiper-slide-next > div:not(.m-content) {
    transform: translate(-120%, 13%) rotate(-15deg);
  }
  
  .o-production .swiper--production-image .swiper-slide-next + .swiper-slide > div:not(.m-content) {
    transform: translate(-230%, 51%) rotate(-30deg);
  }
  
  .o-production .swiper--production-image .swiper-slide-prev > div:not(.m-content) {
    transform: translate(119%, 12%) rotate(15deg);
  }
  
  .o-production .swiper--production-image .swiper-slide-prev-before > div:not(.m-content) {
    transform: translate(229%, 52%) rotate(30deg);
  }
  
  .o-production .swiper--production-image.visible .swiper-slide-next > div:not(.m-content),
  .o-production .swiper--production-image.visible .swiper-slide-next + .swiper-slide > div:not(.m-content),
  .o-production .swiper--production-image.visible .swiper-slide-prev > div:not(.m-content),
  .o-production .swiper--production-image.visible .swiper-slide-prev-before > div:not(.m-content) {
    transform: translate(0%, 0%) rotate(0deg);
  }
  
  .o-production .swiper--production-image.visible .swiper-slide-next > div:not(.m-content) .a-heading,
  .o-production .swiper--production-image.visible .swiper-slide-next > div:not(.m-content) .swiper-pagination,
  .o-production .swiper--production-image.visible .swiper-slide-next + .swiper-slide > div:not(.m-content) .a-heading,
  .o-production .swiper--production-image.visible .swiper-slide-next + .swiper-slide > div:not(.m-content) .swiper-pagination,
  .o-production .swiper--production-image.visible .swiper-slide-prev > div:not(.m-content) .a-heading,
  .o-production .swiper--production-image.visible .swiper-slide-prev > div:not(.m-content) .swiper-pagination,
  .o-production .swiper--production-image.visible .swiper-slide-prev-before > div:not(.m-content) .a-heading,
  .o-production .swiper--production-image.visible .swiper-slide-prev-before > div:not(.m-content) .swiper-pagination {
    opacity: 1;
  }
  
  .o-production .swiper--production-content {
    margin-top: 45px;
  }
  
  .o-production .swiper--production-content .a-heading,
  .o-production .swiper--production-content .swiper-pagination,
  .o-production .swiper--production-content .a-text {
    text-align: center;
  }
  
  .o-production .swiper--production-content .m-content {
    display: block;
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
  }
  
  .o-production .a-text--l,
  .o-production .o-article .container .m-list li .h-bold,
  .o-article .container .m-list li .o-production .h-bold,
  .o-production .o-article .o-products-single .swiper .m-list li .h-bold,
  .o-article .o-products-single .swiper .m-list li .o-production .h-bold,
  .o-production .o-products-single .o-article .swiper .m-list li .h-bold,
  .o-products-single .o-article .swiper .m-list li .o-production .h-bold,
  .o-production .o-article .o-other-products .swiper .m-list li .h-bold,
  .o-article .o-other-products .swiper .m-list li .o-production .h-bold,
  .o-production .o-other-products .o-article .swiper .m-list li .h-bold,
  .o-other-products .o-article .swiper .m-list li .o-production .h-bold {
    max-width: 600px;
    margin: 0 auto;
  }
  
  .o-search {
    width: 100%;
    position: fixed;
    left: 0;
    bottom: 0;
    height: 100%;
    z-index: 9999;
    outline: none;
    transform: translateY(100%);
    transition: transform var(--transition-timing) var(--transition-main);
  }
  
  .o-search:focus {
    outline: none;
  }
  
  .o-search.active {
    transform: translateY(0);
  }
  
  .o-search .container,
  .o-search .o-products-single .swiper,
  .o-products-single .o-search .swiper,
  .o-search .o-other-products .swiper,
  .o-other-products .o-search .swiper {
    height: 100%;
  }
  
  .o-search .a-icon--search-close {
    position: fixed;
    right: 6%;
    top: 3%;
    z-index: 3;
    cursor: pointer;
  }
  
  .o-not-found {
    min-height: calc(100vh - 100px);
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
  }
  
  .o-not-found .a-heading,
  .o-not-found .swiper-pagination,
  .o-not-found .a-text {
    text-align: center;
  }
  
  .o-not-found .m-content {
    width: 100%;
  }
  
  .o-team {
    padding: var(--spacing-xl, 60px) 0;
  }
  
  .o-img {
    position: relative;
    width: 100%;
  }
  
  .o-img .a-img {
    max-height: 100vh;
    width: 100%;
    object-fit: cover;
  }
  
  .o-history {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
  }
  
  .o-history .a-main-title {
    position: relative;
  }
  
  .o-history .a-heading,
  .o-history .swiper-pagination,
  .o-history .a-tag,
  .o-history .a-text {
    justify-content: center;
    text-align: center;
  }
  
  .o-about-author {
    position: relative;
  }
  
  .o-about-author .a-img,
  .o-about-author .m-about-author {
    width: 100%;
  }
  
  .o-about-author .a-img--left {
    position: absolute;
    left: 0;
    top: 70px;
    max-width: 150px;
  }
  
  .o-moments {
    position: relative;
  }
  
  .o-moments .container > .a-img,
  .o-moments .o-products-single .swiper > .a-img,
  .o-products-single .o-moments .swiper > .a-img,
  .o-moments .o-other-products .swiper > .a-img,
  .o-other-products .o-moments .swiper > .a-img,
  .o-moments .container .m-moments,
  .o-moments .o-products-single .swiper .m-moments,
  .o-products-single .o-moments .swiper .m-moments,
  .o-moments .o-other-products .swiper .m-moments,
  .o-other-products .o-moments .swiper .m-moments {
    width: 100%;
    position: relative;
  }
  
  .o-moments .container > .a-img .a-img,
  .o-moments .o-products-single .swiper > .a-img .a-img,
  .o-products-single .o-moments .swiper > .a-img .a-img,
  .o-moments .o-other-products .swiper > .a-img .a-img,
  .o-other-products .o-moments .swiper > .a-img .a-img,
  .o-moments .container .m-moments .a-img,
  .o-moments .o-products-single .swiper .m-moments .a-img,
  .o-products-single .o-moments .swiper .m-moments .a-img,
  .o-moments .o-other-products .swiper .m-moments .a-img,
  .o-other-products .o-moments .swiper .m-moments .a-img {
    position: absolute;
    top: -100px;
    right: 0;
  }
  
  .o-unique .container > .a-text,
  .o-unique .o-products-single .swiper > .a-text,
  .o-products-single .o-unique .swiper > .a-text,
  .o-unique .o-other-products .swiper > .a-text,
  .o-other-products .o-unique .swiper > .a-text {
    margin: 45px 0;
  }
  
  .o-unique ul {
    width: 100%;
    gap: 30px;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
  }
  
  .o-unique ul li {
    list-style-type: none;
    border: 2px solid var(--light-yellow);
    padding: 30px 60px;
    text-align: center;
  }
  
  @media (min-width: 576px) {
    .h-wave--outer-bottom {
      bottom: 0px;
    }
  
    .wrap {
      padding-left: 0;
      padding-right: 0;
      max-width: var(--wrap-width-sm);
    }
  
    .m-menu--footer {
      width: auto;
    }
  
    .m-single-product {
      display: flex;
      flex-direction: row;
      justify-content: unset;
      align-items: unset;
      flex-wrap: wrap;
      gap: 30px;
    }
  
    .m-single-product .m-content {
      width: calc(33.333% - 20px);
    }
  
    .o-brand .h-wave--outer-bottom {
      bottom: 0px;
    }
  }
  
  @media (min-width: 767px) {
    body {
      text-align: left;
      overflow: hidden;
    }
  }
  
  @media (min-width: 768px) {
    .container,
    .o-other-products .swiper,
    .o-products-single .swiper {
      padding-left: 6%;
      padding-right: 6%;
    }
  
    .wrap {
      max-width: var(--wrap-width-md);
    }
  
    .e-reveal--section {
      opacity: 1;
      clip-path: polygon(0 -100%, 0 0, 0 100%, 0% 200%);
      transition: clip-path 0.95s var(--transition-main);
      z-index: 1;
    }
  
    .e-reveal--section.visible {
      clip-path: polygon(0 -100%, 100% -50%, 100% 150%, 0 200%);
    }
  
    .a-btn {
      padding: 20px 60px;
      font-size: 30px;
      height: 70px;
      min-width: unset;
    }
  
    .windows .a-btn {
      padding: 20px 60px;
    }
  
    .a-btn--small {
      padding: 10px 15px;
      font-size: 20px;
      height: 45px;
    }
  
    .windows .a-btn--small {
      padding: 10px 15px;
    }
  
    .a-icon {
      font-size: 30px;
    }
  
    .a-text {
      font-size: 20px;
    }
  
    .a-text--s,
    .a-text--m {
      font-size: 18px;
    }
  
    .a-text--l,
    .o-article .container .m-list li .h-bold,
    .o-article .o-other-products .swiper .m-list li .h-bold,
    .o-other-products .o-article .swiper .m-list li .h-bold,
    .o-article .o-products-single .swiper .m-list li .h-bold,
    .o-products-single .o-article .swiper .m-list li .h-bold {
      font-size: 22px;
    }
  
    .a-language {
      font-size: 28px;
      width: 50px;
      height: 50px;
    }
  
    .a-language::before,
    .a-language::after {
      top: -4px;
    }
  
    .m-content {
      width: auto;
    }
  
    .m-content .a-img {
      width: unset;
      margin: 0 0 15px 21px;
    }
  
    .m-content .a-heading,
    .m-content .swiper-pagination,
    .m-content .a-tag {
      margin-bottom: 30px;
    }
  
    .m-content .a-btn {
      margin-top: 30px;
    }
  
    .m-content--cols-2 .m-content__col {
      width: calc(50% - 30px);
    }
  
    .m-img--gallery {
      padding: 20px;
      position: relative;
    }
  
    .m-img--gallery::after {
      content: "";
      position: absolute;
      top: 20px;
      left: 20px;
      width: calc(100% - 40px);
      height: calc(100% - 40px);
      background-color: var(--black-light);
      z-index: 1;
      border-radius: 0;
      transform: translate(0, 0);
    }
  
    .m-img--gallery .m-tag {
      left: 20px;
      top: 35px;
    }
  
    .m-news-card .m-content {
      padding: 0 20px 120px;
    }
  
    .m-news-card .m-content .a-btn {
      position: absolute;
      bottom: 30px;
      left: 20px;
      width: auto;
      margin: 0;
    }
  
    .m-menu-policy ul {
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 15px 4.688vw;
    }
  
    .m-header__line {
      width: 35px;
      height: 3px;
      margin: 4px 0;
    }
  
    .m-header__menu-mobile .a-icon--close {
      top: 60px;
      right: 60px;
    }
  
    .m-header__sub-menu {
      padding: 120px 8.333vw;
    }
  
    .m-table {
      padding: 33px 30px;
    }
  
    .m-box__body .a-heading,
    .m-box__body .swiper-pagination {
      font-size: 29px;
    }
  
    .m-marquee__inner .a-img {
      max-height: 260px;
    }
  
    .m-product-card::before {
      top: 35%;
    }
  
    .m-product-card .a-img {
      margin: 0 auto 45px;
    }
  
    .m-product-card .a-heading,
    .m-product-card .swiper-pagination {
      padding: 0 20%;
    }
  
    .m-filters {
      display: flex;
      flex-direction: row;
      justify-content: end;
      align-items: center;
      flex-wrap: wrap;
      gap: 15px;
      gap: 15px 5.208vw;
    }
  
    .m-filters li {
      width: unset;
    }
  
    .m-quality__box::after {
      top: 10px;
    }
  
    .m-faq__body .a-text {
      font-size: 26px;
      line-height: 1.83;
    }
  
    .m-ceo .m-content {
      width: calc(55% - 30px);
    }
  
    .m-ceo img {
      width: calc(45% - 30px);
      aspect-ratio: 1/1;
    }
  
    .m-moments .m-text {
      width: 80%;
    }
  
    .o-header .a-btn {
      display: block;
    }
  
    .o-header .a-logo svg {
      width: 160px;
    }
  
    .o-hero--single > .a-img--badge {
      left: 6%;
      top: 18vh;
    }
  
    .o-products--hero .m-icons a {
      width: 33.3333333333%;
    }
  
    .o-products--hero .m-icons {
      margin: 0 6%;
      width: 88%;
    }
  
    .o-news .container,
    .o-news .o-other-products .swiper,
    .o-other-products .o-news .swiper,
    .o-news .o-products-single .swiper,
    .o-products-single .o-news .swiper {
      gap: 60px 15px;
      grid-template-columns: repeat(2, 1fr);
    }
  
    .o-banner .a-img {
      width: 100%;
    }
  
    .o-banner .m-content {
      width: 64.792vw;
    }
  
    .o-single-product .a-heading,
    .o-single-product .swiper-pagination {
      margin-bottom: 9px;
      font-size: 50px;
    }
  
    .o-article .m-content {
      width: 100%;
    }
  
    .o-article .container > .a-text,
    .o-article .o-other-products .swiper > .a-text,
    .o-other-products .o-article .swiper > .a-text,
    .o-article .o-products-single .swiper > .a-text,
    .o-products-single .o-article .swiper > .a-text {
      width: 80%;
      text-align: justify;
    }
  
    .o-article .container > .a-text:first-of-type,
    .o-article .o-other-products .swiper > .a-text:first-of-type,
    .o-other-products .o-article .swiper > .a-text:first-of-type,
    .o-article .o-products-single .swiper > .a-text:first-of-type,
    .o-products-single .o-article .swiper > .a-text:first-of-type {
      margin-top: 90px;
    }
  
    .o-article .container .m-list,
    .o-article .o-other-products .swiper .m-list,
    .o-other-products .o-article .swiper .m-list,
    .o-article .o-products-single .swiper .m-list,
    .o-products-single .o-article .swiper .m-list {
      width: 80%;
      margin-left: 10%;
      text-align: left;
    }
  
    .o-article .container .m-list ul,
    .o-article .o-other-products .swiper .m-list ul,
    .o-other-products .o-article .swiper .m-list ul,
    .o-article .o-products-single .swiper .m-list ul,
    .o-products-single .o-article .swiper .m-list ul {
      padding-left: 20px;
    }
  
    .o-products-single .m-content {
      margin-bottom: 45px;
    }
  
    .o-products-single .swiper-wrapper {
      align-items: unset;
    }
  
    .o-other-products .m-content {
      margin-bottom: 45px;
    }
  
    .o-other-products .m-navigation {
      display: flex;
    }
  
    .o-other-productcs--diff > .swiper {
      padding-left: 6%;
      padding-right: 6%;
    }
  
    .o-gallery--scroll .card {
      width: 48vw;
      box-shadow: 0px 183.2px 73.4572px rgba(0, 0, 0, 0.01), 0px 102.663px 61.9519px rgba(0, 0, 0, 0.05), 0px 46.0214px 46.0214px rgba(0, 0, 0, 0.09), 0px 11.5053px 24.7807px rgba(0, 0, 0, 0.1);
    }
  
    .o-production .m-content--row {
      margin-bottom: 90px;
    }
  
    .o-production .m-content--row .a-text {
      margin-bottom: 45px;
      padding-right: 6.146vw;
    }
  
    .o-production .swiper--production-content {
      margin-top: 90px;
    }
  
    .o-production .swiper--production-content .m-content {
      width: 50%;
    }
  
    .o-history .container,
    .o-history .o-products-single .swiper,
    .o-products-single .o-history .swiper,
    .o-history .o-other-products .swiper,
    .o-other-products .o-history .swiper {
      max-width: 60%;
    }
  
    .o-history .a-img--left {
      position: absolute;
      bottom: 45px;
      right: 6%;
      max-width: 300px;
    }
  
    .o-about-author .container,
    .o-about-author .o-products-single .swiper,
    .o-products-single .o-about-author .swiper,
    .o-about-author .o-other-products .swiper,
    .o-other-products .o-about-author .swiper {
      display: flex;
      justify-content: space-between;
    }
  
    .o-about-author .a-img {
      width: calc(45% - 90px);
    }
  
    .o-about-author .m-about-author {
      width: calc(55% - 90px);
    }
  
    .o-moments .container,
    .o-moments .o-products-single .swiper,
    .o-products-single .o-moments .swiper,
    .o-moments .o-other-products .swiper,
    .o-other-products .o-moments .swiper {
      display: flex;
      justify-content: space-between;
    }
  
    .o-moments .container > .a-img,
    .o-moments .o-products-single .swiper > .a-img,
    .o-products-single .o-moments .swiper > .a-img,
    .o-moments .o-other-products .swiper > .a-img,
    .o-other-products .o-moments .swiper > .a-img {
      width: calc(45% - 90px);
      margin-top: 100px;
    }
  
    .o-moments .container .m-moments,
    .o-moments .o-products-single .swiper .m-moments,
    .o-products-single .o-moments .swiper .m-moments,
    .o-moments .o-other-products .swiper .m-moments,
    .o-other-products .o-moments .swiper .m-moments {
      width: calc(55% - 90px);
    }
  
    .o-unique ul {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  
  @media (min-width: 992px) {
    .o-unique ul {
      grid-template-columns: repeat(3, 1fr);
    }
  }
  
  @media (min-width: 1024px) {
    .m-newsletter {
      width: auto;
    }
  }
  
  @media (min-width: 1025px) {
    .wrap {
      max-width: var(--wrap-width-lg);
    }
  
    .s-d-t-xs {
      padding-top: 15px;
    }
  
    .s-d-t-s {
      padding-top: 30px;
    }
  
    .s-d-t-m {
      padding-top: 60px;
    }
  
    .s-d-t-l {
      padding-top: 90px;
    }
  
    .s-d-t-xl {
      padding-top: 120px;
    }
  
    .s-d-t-xxl {
      padding-top: 150px;
    }
  
    .s-d-t-xxxl {
      padding-top: 240px;
    }
  
    .s-d-t-xxxxl {
      padding-top: 300px;
    }
  
    .s-d-t-xxxxxl {
      padding-top: 340px;
    }
  
    .s-d-b-xs {
      padding-bottom: 15px;
    }
  
    .s-d-b-s {
      padding-bottom: 30px;
    }
  
    .s-d-b-m {
      padding-bottom: 60px;
    }
  
    .s-d-b-l {
      padding-bottom: 90px;
    }
  
    .s-d-b-xl {
      padding-bottom: 120px;
    }
  
    .s-d-b-xxl {
      padding-bottom: 150px;
    }
  
    .s-d-b-xxxl {
      padding-bottom: 240px;
    }
  
    .s-d-b-xxxxl {
      padding-bottom: 300px;
    }
  
    .s-d-b-xxxxxl {
      padding-bottom: 340px;
    }
  
    .e-reveal--heading {
      display: flex;
      flex-direction: row;
      justify-content: unset;
      align-items: unset;
      flex-wrap: wrap;
      gap: 15px;
    }
  
    .a-icon--bg {
      width: 90px;
      height: 90px;
    }
  
    .a-input--search {
      font-size: 24px;
      padding-right: 140px;
    }
  
    .a-input--search::placeholder {
      font-size: 24px;
    }
  
    .m-content--cols-3 .m-content__col {
      width: calc(33.3333333333% - 4.2vw);
    }
  
    .m-img--product::after {
      width: 21.735vw;
      height: 21.735vw;
      transform-origin: center center;
      transform: translate(-50%, -50%) scale(0);
    }
  
    .m-img--product .a-img {
      max-height: 55vh;
      margin-bottom: 0;
    }
  
    .m-icons a {
      width: calc(33.3333% - 60px);
      margin-bottom: 90px;
    }
  
    .m-icons a:nth-last-child(-n+3) {
      margin-bottom: 0;
    }
  
    .m-icons--social a {
      margin-bottom: 0;
    }
  
    .m-menu--footer .a-heading,
    .m-menu--footer .swiper-pagination {
      margin-bottom: 15px;
    }
  
    .m-header__menu-mobile::before {
      height: 120px;
    }
  
    .m-header__menu-mobile .h-wave {
      display: block;
      min-height: 200px;
      z-index: -1;
      bottom: -1px;
    }
  
    .m-header__menu-list {
      padding: 60px 0 90px 60px;
      text-align: left;
      margin: 0;
    }
  
    .m-header__menu-list .a-heading,
    .m-header__menu-list .swiper-pagination {
      margin-bottom: 24px;
    }
  
    .m-header__sub-menu {
      padding: 60px 0 0 8.333vw;
      overflow: hidden;
      width: 50%;
    }
  
    .m-header__sub-menu .a-icon--back {
      display: none;
    }
  
    .m-input--search {
      display: block;
      width: 57.188vw;
      height: 120px;
      margin: 0 auto;
    }
  
    .m-input--search .a-icon {
      font-size: 35px;
    }
  
    .m-hero__inner {
      grid-template-columns: auto auto 15.625vw;
    }
  
    .m-hero__inner svg {
      margin-top: 90px;
      order: 0;
    }
  
    .m-hero__inner .a-img {
      width: auto;
      height: 90vh;
    }
  
    .m-hero__inner .a-text {
      width: auto;
      text-align: left;
      margin-top: 90px;
    }
  
    .m-products--rotated.visible .a-img {
      transform: unset;
      bottom: 70px;
    }
  
    .m-products--rotated.visible .a-img:nth-child(2) {
      left: -8vw;
    }
  
    .m-products--rotated.visible .a-img:nth-child(3) {
      left: 8vw;
    }
  
    .m-footer-top .a-logo {
      position: relative;
      top: -20px;
    }
  
    .m-footer-bottom {
      margin-top: 90px;
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 30px;
    }
  
    .m-gallery {
      display: block;
      height: 50vw;
    }
  
    .m-gallery .m-img--gallery {
      width: 20.372vw;
      position: absolute;
      transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
    }
  
    .m-gallery .m-img--gallery:nth-child(1) {
      left: 23.958vw;
      z-index: 1;
      --final-rotate: 15deg;
      transform: translateY(250px) scale(0.7) rotate(45deg);
    }
  
    .m-gallery .m-img--gallery:nth-child(2) {
      right: 14.844vw;
      --final-rotate: -9deg;
      transform: translateY(220px) scale(0.75) rotate(-30deg);
    }
  
    .m-gallery .m-img--gallery:nth-child(3) {
      top: 16.667vw;
      left: 9.375vw;
      --final-rotate: -15deg;
      transform: translateY(280px) scale(0.65) rotate(-45deg);
    }
  
    .m-gallery .m-img--gallery:nth-child(4) {
      top: 13.021vw;
      width: 25.781vw;
      left: 40%;
      z-index: 2;
      --final-rotate: 0deg;
      transform: translateY(300px) scale(0.6) rotate(15deg);
    }
  
    .m-gallery .m-img--gallery:nth-child(5) {
      top: 36.458vw;
      left: 27.927vw;
      --final-rotate: -26deg;
      transform: translateY(260px) scale(0.7) rotate(-60deg);
    }
  
    .m-gallery .m-img--gallery:nth-child(6) {
      top: 28.854vw;
      right: 5.167vw;
      --final-rotate: 15deg;
      transform: translateY(240px) scale(0.75) rotate(30deg);
    }
  
    .m-gallery .m-img--gallery.visible {
      transform: translateY(0) scale(1) rotate(var(--final-rotate, 0deg));
    }
  
    .m-quality .m-content {
      text-align: left;
      margin-top: 4vw;
      width: 28vw;
      height: 15vw;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      padding: 0;
    }
  
    .m-quality .m-content .a-heading,
    .m-quality .m-content .swiper-pagination {
      margin-bottom: 0;
    }
  
    .m-quality .m-content .a-text {
      text-align: center;
    }
  
    .m-quality__box {
      display: block;
      padding-top: 0;
    }
  
    .m-quality__box::after {
      top: 0;
    }
  
    .m-quality__inner .a-img:nth-of-type(1) {
      bottom: 12vw;
      display: block;
    }
  
    .m-quality__inner .a-img:nth-of-type(2) {
      width: 18.073vw;
      position: absolute;
      top: 2vw;
      left: 50%;
      transform: translateX(-50%) translateY(100px) scale(0.75);
      margin-bottom: 0;
    }
  
    .m-quality__inner .a-img:nth-of-type(3) {
      bottom: 12vw;
      display: block;
    }
  
    .m-quality__inner.visible .a-img:nth-of-type(2) {
      transform: translateX(-50%) translateY(0) scale(1);
    }
  
    .m-quality__inner svg {
      display: block;
    }
  
    .m-share-social .m-icons .a-icon {
      font-size: 24px;
    }
  
    .o-hero--single {
      overflow: hidden;
      height: calc(100vh - 100px);
      margin-bottom: 0;
    }
  
    .o-hero--single .a-main-title {
      top: calc(50% - 50px);
      transform: translateY(-50%);
    }
  
    .o-hero--single .m-hero__inner .a-img {
      position: relative;
      top: 120px !important;
      height: calc(100vh - 110px) !important;
      left: 50% !important;
      transform: translateX(-50%) translateY(0);
      z-index: 3;
      object-fit: contain !important;
      margin-top: 0;
      rotate: unset;
      opacity: 0;
      transition: unset;
    }
  
    .o-about .m-content,
    .o-about .m-products--rotated {
      width: calc(50% - 60px);
    }
  
    .o-about .a-text {
      margin-bottom: 15px;
    }
  
    .o-products .swiper-slide .m-content {
      position: absolute;
      width: 30.438vw;
      left: 15px;
      bottom: 45px;
      text-align: left;
    }
  
    .o-products .swiper-slide .m-content .a-heading--h5 {
      font-size: 3.646vw;
    }
  
    .o-products .swiper-slide .m-content .a-tag {
      justify-content: start;
    }
  
    .o-products .swiper-slide .m-content .a-img,
    .o-products .swiper-slide .m-content svg {
      display: block;
    }
  
    .o-products .m-navigation {
      margin-top: 0;
      transform: translateY(5vw);
    }
  
    .o-products .a-btn {
      margin-bottom: 90px;
    }
  
    .o-products--hero .m-navigation {
      justify-content: start;
    }
  
    .o-products--hero .m-icons a {
      width: 14.285714286%;
      border-bottom: 0;
    }
  
    .o-products--hero .m-icons a img {
      max-width: 80%;
    }
  
    .o-products--hero .m-icons a:first-of-type img {
      max-width: 80%;
    }
  
    .o-products--hero {
      margin-top: 130px;
    }
  
    .o-products--hero .m-products .a-img {
      height: 60vh;
      max-width: unset;
    }
  
    .o-products--hero .m-products .a-img:nth-child(2) {
      height: 50vh;
    }
  
    .o-products--hero .svg-circle {
      height: 70vh;
    }
  
    .o-products--hero .swiper {
      height: calc(100vh - 430px);
    }
  
    .o-products--hero .m-icons {
      position: absolute;
      bottom: -70px;
    }
  
    .o-products--hero .swiper-slide .m-content {
      bottom: 0;
    }
  
    .o-products--hero .swiper-slide .m-content .a-heading,
    .o-products--hero .swiper-slide .m-content .swiper-pagination {
      flex-wrap: nowrap;
    }
  
    .o-products--hero .a-btn {
      margin-bottom: 60px;
    }
  
    .o-news .container,
    .o-news .o-other-products .swiper,
    .o-other-products .o-news .swiper,
    .o-news .o-products-single .swiper,
    .o-products-single .o-news .swiper {
      grid-template-columns: repeat(3, 1fr);
    }
  
    .o-news-slider .m-navigation {
      margin-top: 90px;
      transform: translateY(-35px);
    }
  
    .o-brand .m-content {
      margin-bottom: 90px;
    }
  
    .o-brand .m-icons .a-img {
      transform: scale(1.4);
    }
  
    .o-footer {
      padding: 210px 0 45px;
    }
  
    .o-banner-hero .a-text {
      width: 90%;
    }
  
    .o-banner-hero .a-tag {
      justify-content: start;
    }
  
    .o-banner-hero .m-content--half {
      width: 52.322vw;
    }
  
    .o-banner-hero .a-heading,
    .o-banner-hero .swiper-pagination {
      margin-top: 60px;
    }
  
    .o-banner-hero .m-content--cols {
      margin-top: 60px;
    }
  
    .o-single-product .container .svg > svg.svg--lines,
    .o-single-product .o-other-products .swiper .svg > svg.svg--lines,
    .o-other-products .o-single-product .swiper .svg > svg.svg--lines,
    .o-single-product .o-products-single .swiper .svg > svg.svg--lines,
    .o-products-single .o-single-product .swiper .svg > svg.svg--lines {
      display: block;
    }
  
    .o-quality .container > .m-content--quality,
    .o-quality .o-other-products .swiper > .m-content--quality,
    .o-other-products .o-quality .swiper > .m-content--quality,
    .o-quality .o-products-single .swiper > .m-content--quality,
    .o-products-single .o-quality .swiper > .m-content--quality {
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      align-items: end;
      flex-wrap: wrap;
      gap: 0;
    }
  
    .o-quality .container > .m-content--quality .a-tag,
    .o-quality .o-other-products .swiper > .m-content--quality .a-tag,
    .o-other-products .o-quality .swiper > .m-content--quality .a-tag,
    .o-quality .o-products-single .swiper > .m-content--quality .a-tag,
    .o-products-single .o-quality .swiper > .m-content--quality .a-tag {
      width: 100vw;
    }
  
    .o-quality .container > .m-content--quality .a-heading--h1,
    .o-quality .o-other-products .swiper > .m-content--quality .a-heading--h1,
    .o-other-products .o-quality .swiper > .m-content--quality .a-heading--h1,
    .o-quality .o-products-single .swiper > .m-content--quality .a-heading--h1,
    .o-products-single .o-quality .swiper > .m-content--quality .a-heading--h1 {
      font-size: 7.292vw;
      margin-bottom: 45px;
    }
  
    .o-quality .container > .m-content--cols,
    .o-quality .o-other-products .swiper > .m-content--cols,
    .o-other-products .o-quality .swiper > .m-content--cols,
    .o-quality .o-products-single .swiper > .m-content--cols,
    .o-products-single .o-quality .swiper > .m-content--cols {
      margin-bottom: 80px;
    }
  
    .o-quality .container > .m-content--full,
    .o-quality .o-other-products .swiper > .m-content--full,
    .o-other-products .o-quality .swiper > .m-content--full,
    .o-quality .o-products-single .swiper > .m-content--full,
    .o-products-single .o-quality .swiper > .m-content--full {
      width: 100%;
      margin: 60px 0;
    }
  
    .o-map .a-text {
      position: absolute;
      width: 24.083vw;
      right: 21.979vw;
      top: 8vw;
      text-align: left;
    }
  
    .o-about-single .m-content,
    .o-about-single .m-table {
      width: 31.146vw;
    }
  
    .o-other-products .swiper-pagination {
      margin: 60px 0 0;
    }
  
    .o-other-products .a-btn {
      margin: 60px auto 0;
    }
  
    .o-gallery--scroll .card {
      width: 25vw;
      border: 20px solid var(--grey);
    }
  }
  
  @media (min-width: 1200px) {
    .wrap {
      max-width: var(--wrap-width-xl);
    }
  
    .m-content--row {
      display: flex;
      flex-direction: row;
      justify-content: unset;
      align-items: end;
      flex-wrap: nowrap;
      gap: 0 8.854vw;
    }
  
    .m-products .a-img {
      height: 100%;
      max-width: unset;
    }
  
    .m-products .a-img:nth-child(2) {
      max-width: unset;
      height: unset;
      left: 10%;
    }
  
    .m-contact {
      height: 100%;
      margin-bottom: 0;
    }
  
    .m-contact__top {
      margin-bottom: 0;
      position: relative;
    }
  
    .m-contact__top::after {
      content: "";
      position: absolute;
      top: -60px;
      left: -15%;
      width: 115%;
      height: calc(100% + 60px);
      background-color: var(--red);
      z-index: -1;
      border-radius: 0;
      transform: translate(0, 0);
    }
  
    .m-contact__top svg {
      width: 115.1%;
    }
  
    .m-contact__top::after {
      border-top-right-radius: 50px;
    }
  
    .m-contact__top .a-heading,
    .m-contact__top .swiper-pagination {
      font-size: 4.167vw;
    }
  
    .m-contact__bottom {
      padding-right: 9.375vw;
    }
  
    .m-contact__bottom .a-heading,
    .m-contact__bottom .swiper-pagination {
      font-size: 6.25vw;
    }
  
    .m-gallery {
      top: -150px;
    }
  
    .m-production-card.swiper-slide-prev {
      bottom: -2vw;
    }
  
    .m-production-card.swiper-slide-next {
      bottom: -2vw;
    }
  
    .o-products .svg-circle {
      top: 50%;
    }
  
    .o-products .swiper-slide {
      display: flex;
      flex-direction: row;
      justify-content: center;
      align-items: unset;
      flex-wrap: nowrap;
      gap: 0;
    }
  
    .o-products .swiper-slide .m-content {
      left: unset;
      width: 23.438vw;
      transform: translateX(-110%);
    }
  
    .o-products--hero .svg-circle {
      top: 32%;
    }
  
    .o-contact .m-contact {
      width: 55%;
    }
  
    .o-contact .m-form {
      width: 45%;
      padding-left: 60px;
    }
  
    .o-contact .m-form .a-heading,
    .o-contact .m-form .swiper-pagination {
      font-size: 4.167vw;
    }
  }
  
  @media (min-width: 1500px) {
    .m-single-product {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      align-items: unset;
      flex-wrap: nowrap;
      gap: 80px;
    }
  
    .m-single-product .m-content {
      width: auto;
    }
  
    .m-single-product .a-heading,
    .m-single-product .swiper-pagination {
      justify-content: start;
    }
  
    .o-single-product {
      text-align: left;
    }
  
    .o-single-product .container,
    .o-single-product .o-other-products .swiper,
    .o-other-products .o-single-product .swiper,
    .o-single-product .o-products-single .swiper,
    .o-products-single .o-single-product .swiper {
      display: flex;
      flex-direction: row;
      justify-content: unset;
      align-items: unset;
      flex-wrap: nowrap;
      gap: 0;
    }
  
    .o-single-product .container > svg,
    .o-single-product .o-other-products .swiper > svg,
    .o-other-products .o-single-product .swiper > svg,
    .o-single-product .o-products-single .swiper > svg,
    .o-products-single .o-single-product .swiper > svg {
      width: calc(50% - 45px);
    }
  
    .o-single-product .m-single-product {
      width: calc(25% - 45px);
      margin: 90px 0;
    }
  
    .o-single-product .a-heading,
    .o-single-product .swiper-pagination {
      flex-wrap: nowrap;
    }
  }
  
  @media (min-width: 1600px) {
    .m-production-card.swiper-slide-active {
      bottom: 30px;
    }
  }
  
  @media only screen and (min-width: 1640px) {
    .wrap.remove-gutter-left {
      padding: 0;
      max-width: none;
      width: calc(50% + 720px);
      left: 0;
    }
  
    .wrap.remove-gutter-left .cll-col {
      margin-left: 0 !important;
      max-width: 100% !important;
      flex-basis: 100% !important;
    }
  }
  
  @media (min-width: 1900px) and (max-height: 1100px) {
    .o-hero--single {
      height: 40vw;
    }
  
    .o-hero--single .a-main-title {
      top: 75px;
      transform: translateY(0%);
    }
  
    .o-hero--home {
      height: 40vw;
    }
  
    .o-hero--home .a-main-title {
      top: 75px;
      transform: translate3d(-50%, 0%, 0);
    }
  }
  
  @media (min-width: 1920px) {
    .h-wave {
      width: 100%;
    }
  
    .a-text {
      font-size: 0.938vw;
    }
  
    .a-text--s,
    .a-text--m {
      font-size: 0.833vw;
    }
  
    .a-text--l,
    .o-article .container .m-list li .h-bold,
    .o-article .o-other-products .swiper .m-list li .h-bold,
    .o-other-products .o-article .swiper .m-list li .h-bold,
    .o-article .o-products-single .swiper .m-list li .h-bold,
    .o-products-single .o-article .swiper .m-list li .h-bold {
      font-size: 1vw;
    }
  }
  
  @media (max-width: 1500px) {
    .o-banner-hero .a-heading,
    .o-banner-hero .swiper-pagination {
      line-height: 0.85;
    }
  }
  
  @media (max-width: 1200px) {
    .m-contact__bottom .m-icons--social {
      gap: 15px 20px;
      justify-content: center;
    }
  }
  
  @media (max-width: 1025px) {
    .a-heading--h1 {
      font-size: calc(150px * 0.8);
    }
  
    .a-heading--h2 {
      font-size: calc(120px * 0.8);
    }
  
    .a-heading--h3,
    .swiper-pagination {
      font-size: calc(100px * 0.8);
    }
  
    .a-heading--h4 {
      font-size: calc(80px * 0.8);
    }
  
    .a-heading--h5 {
      font-size: calc(70px * 0.8);
    }
  
    .a-heading--h7 {
      font-size: calc(60px * 0.8);
    }
  
    .a-heading--h6 {
      font-size: calc(40px * 0.8);
    }
  
    .a-heading--span {
      font-size: calc(90px * 0.8);
    }
  
    .a-tag {
      font-size: calc(40px * 0.8);
    }
  
    .m-tag .a-tag {
      font-size: calc(30px * 0.8);
    }
  
    .m-header__sub-menu ul {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
    }
  
    .m-header__sub-menu ul li {
      position: relative;
      border: 1px solid var(--grey);
      background: rgba(0, 14, 71, 0.062745098);
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: unset;
      flex-wrap: nowrap;
      gap: 0;
    }
  
    .m-header__sub-menu ul li .a-img {
      visibility: visible;
      opacity: 1;
      position: relative;
      top: unset;
      left: unset;
      right: unset;
      max-height: 115px;
      margin: 0 auto;
      rotate: 0;
    }
  
    .m-header__sub-menu ul li .a-heading,
    .m-header__sub-menu ul li .swiper-pagination {
      order: 2;
      font-size: 30px;
      padding: 0 15px;
    }
  
    .m-quality__box:nth-child(1) {
      height: calc(100vh - 20px) !important;
    }
  
    .m-quality__box:nth-child(2) {
      height: calc(100vh - 40px) !important;
    }
  
    .m-quality__box:nth-child(3) {
      height: calc(100vh - 60px) !important;
    }
  
    .m-quality__box:nth-child(4) {
      height: calc(100vh - 80px) !important;
    }
  
    .m-quality__box:nth-child(5) {
      height: calc(100vh - 100px) !important;
    }
  
    .m-quality__box:nth-child(6) {
      height: calc(100vh - 120px) !important;
    }
  
    .m-quality__box:nth-child(7) {
      height: calc(100vh - 140px) !important;
    }
  
    .m-quality__box:nth-child(8) {
      height: calc(100vh - 160px) !important;
    }
  
    .m-quality__box:nth-child(9) {
      height: calc(100vh - 180px) !important;
    }
  
    .m-brush--title {
      margin-left: auto;
      margin-right: auto;
      max-width: 200px;
    }
  
    .m-brush--title svg {
      top: 35px;
    }
  
    .o-hero--home .a-main-title {
      top: 17%;
    }
  
    .o-hero--home .a-img {
      transform: translateY(30px);
    }
  
    .o-hero--home .a-hero--text {
      font-size: 20px;
    }
  
    .o-products--hero .svg-circle {
      transform: translate(-50%, -65%);
      width: 90%;
    }
  
    .o-banner-hero .a-heading,
    .o-banner-hero .swiper-pagination {
      line-height: 1;
      margin-bottom: 45px;
    }
  
    .o-banner-hero .m-brush--title .a-heading,
    .o-banner-hero .m-brush--title .swiper-pagination {
      margin-bottom: 30px;
    }
  
    .o-production .swiper--production-image {
      transition-delay: 0.2s;
    }
  }
  
  @media (max-width: 1024px) {
    .flex {
      width: 100%;
    }
  
    .s-m-t-xs {
      padding-top: 15px;
    }
  
    .s-m-t-s {
      padding-top: 30px;
    }
  
    .s-m-t-m {
      padding-top: 60px;
    }
  
    .s-m-t-l {
      display: block;
      padding-top: 90px;
    }
  
    .s-m-t-xl {
      padding-top: 120px;
    }
  
    .s-m-t-xxl {
      padding-top: 150px;
    }
  
    .s-m-t-xxxl {
      padding-top: 240px;
    }
  
    .s-m-t-xxxxl {
      padding-top: 300px;
    }
  
    .s-m-b-xs {
      padding-bottom: 15px;
    }
  
    .s-m-b-s {
      padding-bottom: 30px;
    }
  
    .s-m-b-m {
      padding-bottom: 60px;
    }
  
    .s-m-b-l {
      padding-bottom: 90px;
    }
  
    .s-m-b-xl {
      padding-bottom: 120px;
    }
  
    .s-m-b-xxl {
      padding-bottom: 150px;
    }
  
    .s-m-b-xxxl {
      padding-bottom: 240px;
    }
  
    .s-m-b-xxxxl {
      padding-bottom: 300px;
    }
  
    .m-team-grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  
  @media (max-width: 1024px) and (orientation: landscape) {
    .o-products--hero .swiper {
      height: auto;
    }
  }
  
  @media (max-width: 991px) {
    .m-gallery .m-img--gallery {
      --final-rotate: 0deg;
      transform: translateY(150px) scale(0.9);
    }
  
    .m-gallery .m-img--gallery.visible {
      transform: translateY(0) scale(1);
    }
  }
  
  @media only screen and (max-width: 768px) {
    .flex.wrap .cll-col {
      flex-basis: 100% !important;
      max-width: 100% !important;
    }
  
    .flex .cll-col {
      flex-basis: 100% !important;
      max-width: 100% !important;
      margin-left: 0 !important;
    }
  }
  
  @media (max-width: 768px) {
    .a-heading--h1 {
      font-size: calc(150px * 0.8 * 0.8);
    }
  
    .a-heading--h2 {
      font-size: calc(120px * 0.8 * 0.8);
    }
  
    .a-heading--h3,
    .swiper-pagination {
      font-size: calc(100px * 0.8 * 0.8);
    }
  
    .a-heading--h4 {
      font-size: calc(80px * 0.8 * 0.8);
    }
  
    .a-heading--h5 {
      font-size: calc(70px * 0.8 * 0.8);
    }
  
    .a-heading--h7 {
      font-size: calc(60px * 0.8 * 0.8);
    }
  
    .a-heading--h6 {
      font-size: calc(40px * 0.8 * 0.8);
    }
  
    .a-heading--span {
      font-size: calc(90px * 0.8 * 0.8);
    }
  
    .a-tag {
      font-size: calc(40px * 0.8 * 0.8);
    }
  
    .m-tag .a-tag {
      font-size: calc(30px * 0.8 * 0.8);
    }
  
    .m-product-card .a-heading,
    .m-product-card .swiper-pagination {
      font-size: 45px;
    }
  
    .m-navigation {
      gap: 60px;
    }
  
    .m-brush--title {
      max-width: 130px;
      padding: 24px 0 0px 0px;
    }
  
    .m-brush--title svg {
      top: 30px;
      left: 0;
    }
  
    .m-faq {
      padding: 45px 0 45px 15px;
      margin-bottom: 15px;
    }
  
    .m-faq:last-of-type {
      margin-bottom: 45px;
    }
  
    .m-faq__header .a-icon {
      right: 15px;
      width: 45px;
      height: 45px;
      font-size: 12px;
    }
  
    .m-faq__header .a-heading,
    .m-faq__header .swiper-pagination {
      text-align: left;
    }
  
    .o-hero--home .a-hero--loader {
      width: 300px;
      transform: translate3d(-25%, -50%);
    }
  
    .o-hero--home {
      display: flex;
      flex-direction: row;
      justify-content: unset;
      align-items: center;
      flex-wrap: nowrap;
      gap: 0;
    }
  
    .o-hero--home .a-hero--loader {
      font-size: 25vh;
      top: 45%;
      left: 43%;
    }
  
    .windows .o-hero--home .a-hero--loader {
      top: 50%;
    }
  
    .o-unique ul li br {
      display: none;
    }
  }
  
  @media (max-width: 767px) {
    body {
      -webkit-overflow-scrolling: touch;
      overflow-x: hidden;
      overflow-y: auto;
      position: relative;
    }
  
    .e-reveal--heading {
      justify-content: center;
    }
  }
  
  @media (max-width: 600px) {
    .m-team-grid {
      grid-template-columns: 1fr;
    }
  }
  
  @media (max-width: 576px) {
    .a-heading--h1 {
      font-size: 57.6px;
    }
  
    .m-footer-top .a-logo {
      display: block;
      margin: 0 auto;
    }
  
    .o-video {
      margin-top: -15px;
    }
  }
  
  @media (max-width: 480px) {
    .o-products--hero .svg-circle {
      top: 24%;
    }
  }
  
  @media (min-width: 768px) and (max-width: 1025px) {
    .o-products--hero {
      margin-top: 100px;
    }
  }
  
  @media (hover: hover) {
    .f-button:hover:not([disabled]) {
      color: var(--f-button-hover-color);
      background-color: var(--f-button-hover-bg);
    }
  
    .a-btn:hover {
      color: var(--active-color, var(--blue));
      box-shadow: 0 0 20px 10px rgba(0, 0, 0, 0.015);
      transform: scale(1.05);
    }
  
    .a-btn:hover::before {
      transform: scaleX(1);
      transform-origin: center left;
    }
  
    .a-btn--red:hover {
      color: var(--red);
    }
  
    .a-btn--white:hover {
      color: var(--red);
    }
  
    .a-language:hover {
      transform: scale(1.1);
    }
  
    .a-language:hover span {
      color: var(--white);
    }
  
    .a-language:hover:after {
      transform: scale(1);
      opacity: 1;
    }
  
    .m-menu--footer .a-heading a:hover,
    .m-menu--footer .swiper-pagination a:hover {
      transform: scale(1.1125);
    }
  
    .m-menu--footer .a-heading a:hover:after,
    .m-menu--footer .swiper-pagination a:hover:after {
      clip-path: circle(100% at 50% 50%);
    }
  
    .m-menu-policy ul li a:hover::after {
      transform: scaleX(1);
      transform-origin: left center;
    }
  
    .a-icon-menubar:hover:before {
      color: var(--active-color, var(--red));
      transform: scale(1.1125);
    }
  
    .m-header__menu-list li:hover > .a-heading,
    .m-header__menu-list li:hover > .swiper-pagination {
      color: var(--grey);
    }
  
    .m-header__menu-list li:hover > a {
      color: var(--grey);
    }
  
    .m-header__menu-list li:hover .m-header__sub-menu {
      right: 0;
    }
  
    .m-header__menu-list:hover > li:not(:hover) > a {
      color: var(--whitesmoke);
    }
  
    .m-header__sub-menu li:hover > .a-heading,
    .m-header__sub-menu li:hover > .swiper-pagination {
      color: var(--red);
    }
  
    .m-header__sub-menu li:hover > .a-img {
      opacity: 1;
      visibility: visible;
    }
  
    .m-header__sub-menu:hover li:not(:hover) > a {
      color: var(--light-red);
    }
  
    .m-newsletter .a-btn:hover:after {
      clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    }
  
    .m-product-card:hover .a-heading,
    .m-product-card:hover .swiper-pagination {
      transform: scale(1.065);
    }
  
    .m-footer-top .a-logo:hover {
      transform: scale(1.05);
    }
  
    .m-filters .a-tag:hover {
      color: var(--red);
    }
  
    .m-share-social .m-icons .a-icon:hover {
      color: var(--red);
      scale: 1.215;
    }
  
    .o-header--white .a-language:hover span {
      color: var(--red);
    }
  
    .o-products--hero .m-icons a:hover:not(.active)::after {
      background-color: var(--active-color);
      clip-path: circle(130% at 25% 100%);
    }
  
    .o-video .a-icon:hover {
      transform: translate(-50%, -50%) scale(1.1);
    }
  
    .o-news .m-news-card:hover {
      background-color: var(--red);
      transform: scale(1.035) translateY(-8px);
      box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
    }
  
    .o-news .m-news-card:hover .m-content {
      color: var(--grey);
    }
  
    .o-news .m-news-card:hover .a-btn {
      background-color: var(--grey);
      color: var(--red);
    }
  
    .o-news-slider .m-news-card .m-news-card:hover {
      background-color: unset;
      color: unset;
    }
  
    .o-brand .m-icons .a-img:hover {
      transform: scale(1.5);
    }
  }
  
  @media (prefers-reduced-motion: reduce) {
    .o-hero--home .parallax[data-speed] {
      transform: translate3d(0, 0, 0) !important;
      will-change: auto;
    }
  
    .o-hero--home .a-hero--loader,
    .o-hero--home .m-hero--img,
    .o-hero--home .m-hero--logo,
    .o-hero--home .a-hero--text,
    .o-hero--home .a-main-title {
      transition: none;
      animation: none;
      will-change: auto;
    }
  }
/* FRUCH: título de portada en una sola palabra, más grande para ocupar el ancho */
.a-main-title--one {
  font-size: 42vw;
  white-space: nowrap;
}

/* FRUCH: logo en imagen (cabecera y pie) */
.o-header .a-logo img { width: 110px; height: auto; }
.o-footer .a-logo img { width: 200px; height: auto; }
.o-header--white .a-logo img { filter: brightness(0) invert(1); }
@media (min-width: 1025px) {
  .o-header .a-logo img { width: 170px; }
}

/* FRUCH: portada a pantalla completa. Título gigante arriba y paquetes grandes delante,
   tapando el tercio inferior del título. Todo entra en la primera pantalla. */
.o-hero--home {
  --hdr: 106px;                                         /* alto de la cabecera */
  --H: calc(100svh - var(--hdr));                       /* alto disponible */
  --top: calc(var(--H) * 0.12);                         /* donde empieza el título (separado del logo) */
  --F: min(33vw, calc(var(--H) * 0.56));                /* tamaño de letra del título */
  --redTop: calc(var(--top) + var(--F) * 0.8 * 0.66);   /* el paquete rojo tapa el tercio inferior */
  --imgH: min(calc((var(--H) * 0.99 - var(--redTop)) / 0.82 * 1.08), calc(72vw / 2)); /* ancho máx. 72vw: deja lugar al texto de la derecha */
  position: relative;
  height: var(--H);
  min-height: 0;
  overflow: hidden;
}
.o-hero--home .a-main-title--one {
  top: var(--top);
  font-size: var(--F);
  letter-spacing: 0.02em;
  padding-left: 0.02em;
  transform: translate3d(-50%, 0, 0);
  z-index: 0;
}
.o-hero--home .m-hero--logo { display: none; }
.o-hero--home .m-hero--img {
  position: absolute;
  left: 50%;
  bottom: calc(var(--H) * 0.01);
  height: var(--imgH);
  width: auto;
  margin: 0;
  transform: translateX(-50%);
  z-index: 1;
}
.o-hero--home .m-hero--img .a-img--fruch-hero {
  height: 100%;
  width: auto;
  max-width: none;
  transform: none;
}
.o-hero--home .a-hero--text {
  position: absolute;
  right: 1.5vw;
  top: calc(var(--top) + var(--F) * 0.8 + 50px);   /* debajo de la H, al costado de los paquetes */
  width: 13vw;
  margin: 0;
  z-index: 1;
  font-size: clamp(17px, 1.3vw, 26px);   /* más grande y en negrita para que se lea */
  font-weight: 600;
  line-height: 1.3;
}
@media (max-width: 1024px) {
  .o-hero--home {
    --hdr: 77px;
    --top: calc(var(--H) * 0.16);
    --F: min(35vw, calc(var(--H) * 0.3));
    --imgW: min(112vw, calc(2 * var(--H) * 0.5));
    --imgH: calc(var(--imgW) / 2);
  }
  .o-hero--home .m-hero--img {
    bottom: auto;
    top: calc(var(--redTop) - var(--imgH) * 0.18);
    width: var(--imgW);
    height: auto;
  }
  .o-hero--home .m-hero--img .a-img--fruch-hero {
    width: 100%;
    height: auto;
  }
  .o-hero--home .a-hero--text {
    left: 6vw;
    right: 6vw;
    width: auto;
    top: calc(var(--redTop) + var(--imgH) * 0.82 + 20px);
    text-align: center;
  }
}

/* FRUCH: cuando aparece la primera línea del texto de portada, mostrar todas (la animación original solo revela las de arriba) */
.o-hero--home .a-hero--text.fruch-lineas .line { transform: none !important; transition: transform 0.6s ease; }

/* FRUCH: íconos manzana roja · montañas · manzana verde arriba del texto de portada */
.o-hero--home .a-hero--text::before {
  content: "";
  display: block;
  width: 130px;
  height: 40px;
  margin-bottom: 12px;
  background: url("../img/fruch/iconos-manzana-montana-manzana.svg") no-repeat left center / contain;
  opacity: 0;
  transition: opacity 0.6s ease;
}
.o-hero--home .a-hero--text.fruch-lineas::before { opacity: 1; }
@media (max-width: 1024px) {
  .o-hero--home .a-hero--text::before { margin: 0 auto 8px; width: 110px; height: 34px; background-position: center; }
}

/* FRUCH: sección «Somos FRUCH» (texto a la izquierda, manzanas y chips a la derecha) */
.o-about--fruch { padding: 60px 0 110px; overflow: hidden; }
.fruch-historia { display: grid; grid-template-columns: 1fr; gap: 24px; align-items: center; }
.fruch-historia__tag { color: var(--green); font-size: clamp(26px, 2.2vw, 40px); margin-bottom: 18px; }
.fruch-historia__titulo { color: var(--red); font-family: var(--veneer); text-transform: uppercase; font-size: clamp(64px, 7.5vw, 150px); line-height: 0.9; margin-bottom: 36px; }
.fruch-historia__p { color: #000E47; font-size: clamp(16px, 1.15vw, 21px); line-height: 1.45; max-width: 34em; margin-bottom: 22px; }
.fruch-btn { display: inline-block; margin-top: 16px; padding: 18px 48px; background: var(--red); color: #fff; font-family: var(--veneer); font-size: clamp(20px, 1.6vw, 28px); letter-spacing: 0.02em; text-transform: uppercase; text-decoration: none; transition: background 0.3s ease; }
.fruch-btn:hover { background: #8f1a2d; color: #fff; }
.fruch-historia__img img { display: block; width: 100%; height: auto; }
@media (min-width: 1025px) {
  .o-about--fruch { padding: 90px 0 170px; }
  .fruch-historia { grid-template-columns: 42% 58%; gap: 0; }
  .fruch-historia__img img { width: 118%; max-width: none; margin-left: -4%; }
}

/* FRUCH: sección «Nuestros productos» */
.o-products .m-products--fruch { display: flex; align-items: center; justify-content: center; }
.o-products .m-products--fruch .a-img { position: relative; width: 100%; max-width: 860px; height: auto; max-height: 72vh; object-fit: contain; margin: 0 auto; transform: none; }
.fruch-btn--claro { background: #E9E7DC; color: var(--red); display: inline-flex; gap: 14px; align-items: center; }
.fruch-btn--claro:hover { background: #fff; color: var(--red); }
@media (min-width: 1025px) {
  /* FRUCH: el paquete va a la derecha para no tapar el nombre del producto */
  .o-products .m-products--fruch .a-img { left: 17vw; max-width: 720px; }
  .o-products .swiper-slide .m-content { z-index: 3; }
}

/* FRUCH: «Nuestros productos» — composición fija medida sobre la referencia (1672 × 941).
   Todas las posiciones están en % del ancho/alto de la composición. */
.fruch-prod { position: relative; width: 100%; height: 56.3vw; color: #E9E7DC; z-index: 2; }
.o-products .svg-circle { left: 61%; top: 50%; }
.fruch-prod__tag { position: absolute; left: 6%; top: 11%; font-size: 2.1vw; color: #E9E7DC; }
.fruch-prod__titulo { position: absolute; left: 6%; top: 17%; margin: 0; z-index: 3; font-family: var(--veneer); text-transform: uppercase; font-size: 8.6vw; line-height: 0.84; color: #E9E7DC; font-weight: 400; }
.fruch-prod__contador { position: absolute; right: 3.4%; top: 10%; font-family: var(--veneer); font-size: 6.2vw; line-height: 1; }
.fruch-prod__total { opacity: 0.4; }
.fruch-prod__flecha { position: absolute; top: 52%; width: 4.4vw; height: 4.4vw; transform: translateY(-50%); border: 1px solid rgba(233,231,220,0.75); border-radius: 50%; background: transparent; color: #E9E7DC; font-size: 2.4vw; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; z-index: 4; transition: background 0.3s ease; }
.fruch-prod__flecha:hover { background: rgba(233,231,220,0.15); }
.fruch-prod__flecha--prev { left: 2.1%; }
.fruch-prod__flecha--next { right: 2.1%; }
.fruch-prod__trazo { position: absolute; left: 17%; top: 45%; width: 18.6%; height: auto; z-index: 3; filter: brightness(0) invert(0.93); }
.fruch-prod__slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity 0.6s ease; }
.fruch-prod__slide.is-activa { opacity: 1; visibility: visible; }
.fruch-prod__img { position: absolute; left: 33%; top: 14%; width: 61%; height: auto; max-width: none; z-index: 1; }
.fruch-prod__sub { position: absolute; left: 9.4%; top: 58.5%; font-size: 1.75vw; color: #E9E7DC; z-index: 3; }
.fruch-prod__nombre { position: absolute; left: 9.4%; top: 62.5%; margin: 0; font-family: var(--veneer); text-transform: uppercase; font-size: 5vw; line-height: 0.86; color: #E9E7DC; z-index: 3; }
.fruch-prod__btn { position: absolute; left: 9.4%; top: 78.8%; width: 15.2%; height: 7%; display: flex; align-items: center; justify-content: center; gap: 1.6vw; background: #E9E7DC; color: var(--red); font-family: var(--veneer); text-transform: uppercase; font-size: 1.45vw; text-decoration: none; z-index: 3; transition: background 0.3s ease; }
.fruch-prod__btn:hover { background: #fff; color: var(--red); }

/* Celular y tablet: todo en columna */
@media (max-width: 1024px) {
  .fruch-prod { height: auto; padding: 40px 6vw 30px; }
  .fruch-prod__tag, .fruch-prod__titulo, .fruch-prod__contador, .fruch-prod__sub, .fruch-prod__nombre, .fruch-prod__btn, .fruch-prod__img { position: static; }
  .fruch-prod__tag { display: block; font-size: 22px; margin-bottom: 10px; }
  .fruch-prod__titulo { font-size: 17vw; }
  .fruch-prod__contador { position: absolute; top: 40px; right: 6vw; font-size: 12vw; }
  .fruch-prod__trazo { display: none; }
  .fruch-prod__slide { position: relative; inset: auto; display: none; }
  .fruch-prod__slide.is-activa { display: block; }
  .fruch-prod__img { display: block; width: 112%; margin: 20px -6% 10px; }
  .fruch-prod__sub { display: block; font-size: 20px; margin-bottom: 6px; }
  .fruch-prod__nombre { font-size: 13vw; margin-bottom: 18px; }
  .fruch-prod__btn { display: inline-flex; width: auto; height: auto; padding: 16px 30px; gap: 14px; font-size: 20px; }
  .fruch-prod__flecha { top: auto; bottom: 34px; transform: none; width: 52px; height: 52px; font-size: 26px; }
  .fruch-prod__flecha--prev { left: auto; right: calc(6vw + 64px); }
  .fruch-prod__flecha--next { right: 6vw; }
}
@media (max-width: 1024px) {
  .fruch-prod { text-align: left; }
  .fruch-prod__tag { max-width: 62%; }
  .fruch-prod__contador { font-size: 10vw; top: 36px; }
  .fruch-prod__btn { padding: 14px 22px; font-size: 18px; }
}

/* FRUCH: fondo verde cuando se muestra Manzana Verde (verde de la bolsa) */
.o-products--red { transition: background-color 0.6s ease; }
.o-products--red.o-products--verde { background-color: #4E9A2F; }
.o-products--verde .svg-circle circle { stroke: #67B33F; }
.o-products--verde .fruch-prod__btn, .o-products--verde .fruch-prod__btn:hover { color: #3C7F22; }
.o-products--verde .h-wave path { fill: #4E9A2F; transition: fill 0.6s ease; }
.o-products--red .h-wave path { transition: fill 0.6s ease; }

/* FRUCH — producto 3 (Corte Americano) con fondo bordó */
.o-products--red.o-products--bordo { background-color: #7A1E2E; }
.o-products--bordo .svg-circle circle { stroke: #933244; }
.o-products--bordo .fruch-prod__btn, .o-products--bordo .fruch-prod__btn:hover { color: #7A1E2E; }
.o-products--bordo .h-wave path { fill: #7A1E2E; transition: fill 0.6s ease; }

/* FRUCH — logos de clientes (sección «Nos eligen»): misma grilla que la original */
.o-brand .m-icons--fruch .fruch-cliente { width: auto; max-width: 80%; height: 80px; object-fit: contain; }
.o-brand .m-icons--fruch .fruch-cliente--redondo { height: 110px; }
@media (min-width: 1025px) {
  .o-brand .m-icons--fruch .fruch-cliente { height: 95px; }
  .o-brand .m-icons--fruch .fruch-cliente--redondo { height: 130px; }
}
.o-brand .m-icons--fruch .fruch-cliente--ancho { height: 44px; }
@media (min-width: 1025px) {
  .o-brand .m-icons--fruch .fruch-cliente--ancho { height: 56px; }
}

/* ===================== FRUCH — «Por qué nos eligen» =====================
   Grilla de 4 tarjetas. Los .fruch-porque__hueco son lugares reservados para imágenes
   (data-img dice qué archivo va); cuando lleguen se reemplazan por <img>. */
.o-porque { padding: 130px 0 90px; }
.fruch-porque__titulo { width: 100%; margin: 0 0 36px; text-align: center; color: #111; font-family: var(--veneer); text-transform: uppercase; font-size: clamp(44px, 5.2vw, 96px); line-height: 0.9; }
.fruch-porque__grilla { display: grid; grid-template-columns: repeat(12, 1fr); gap: 16px; width: 100%; }
.fruch-porque__card { position: relative; overflow: hidden; text-align: left; border-radius: 16px; background: #F7F4EE; box-shadow: 0 1px 0 rgba(0,0,0,0.04); padding: clamp(20px, 2vw, 32px); min-height: clamp(320px, 26vw, 420px); color: var(--blue); }
.fruch-porque__card--llegamos { grid-column: span 8; }
.fruch-porque__card--frase { grid-column: span 4; }
.fruch-porque__card--variedades { grid-column: span 6; display: flex; gap: 20px; align-items: flex-start; }
.fruch-porque__card--paises { grid-column: span 6; }

.fruch-porque__col { position: relative; z-index: 2; }
.fruch-porque__h3 { margin: 0 0 14px; color: var(--red); font-family: var(--veneer); text-transform: uppercase; font-size: clamp(40px, 4.2vw, 76px); line-height: 0.88; }
.fruch-porque__p { margin: 0; max-width: 19em; color: #2a2a2a; font-size: clamp(15px, 1.15vw, 19px); line-height: 1.4; }
.fruch-porque__etiqueta { position: absolute; top: clamp(20px, 2vw, 32px); right: clamp(20px, 2vw, 32px); color: #2a2a2a; font-size: 14px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; }

/* medidor */
.fruch-porque__dato { position: absolute; z-index: 2; right: 6%; bottom: 0; width: 52%; aspect-ratio: 320 / 170; }
.fruch-porque__medidor { position: absolute; inset: 0; width: 100%; height: 100%; }
.fruch-porque__tick { stroke: #cfcac0; stroke-width: 3; stroke-linecap: round; }
.fruch-porque__tick--on { stroke: var(--red); }
.fruch-porque__dato-txt { position: absolute; left: 0; right: 0; top: 34%; margin: 0; text-align: center; color: #2a2a2a; font-size: clamp(13px, 1.1vw, 18px); line-height: 1.25; }
.fruch-porque__numero { position: absolute; left: 0; right: 0; bottom: 0; margin: 0; text-align: center; color: var(--red); font-family: var(--veneer); font-size: clamp(70px, 7.5vw, 140px); line-height: 0.8; }

/* frase */
.fruch-porque__comillas { position: relative; z-index: 2; display: block; height: 0.55em; color: var(--red); font-family: Georgia, serif; font-weight: 700; font-size: clamp(56px, 5vw, 84px); line-height: 1; }
.fruch-porque__frase { position: relative; z-index: 2; margin: 18px 0 0; color: #2a2a2a; font-size: clamp(22px, 2vw, 34px); line-height: 1.2; }
.fruch-porque__frase strong { color: var(--red); font-weight: 800; }
.fruch-porque__logo { position: absolute; z-index: 2; left: clamp(20px, 2vw, 32px); bottom: clamp(20px, 2vw, 32px); width: clamp(110px, 10vw, 170px); height: auto; }

/* variedades */
.fruch-porque__grande { margin: 0; color: var(--red); font-family: var(--veneer); font-size: clamp(90px, 9vw, 170px); line-height: 0.8; }
.fruch-porque__sub { margin: 10px 0 0; color: var(--red); font-family: var(--veneer); text-transform: uppercase; font-size: clamp(24px, 2.1vw, 38px); line-height: 0.95; }
.fruch-porque__col--paquetes { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.fruch-porque__lista { margin: 0; color: #2a2a2a; font-family: var(--veneer); font-size: clamp(16px, 1.3vw, 22px); letter-spacing: 0.03em; text-transform: uppercase; }
.fruch-porque__lista span { color: var(--red); padding: 0 6px; }
.fruch-porque__btn { display: inline-flex; align-items: center; justify-content: center; gap: 14px; width: 100%; max-width: 330px; padding: 15px 24px; border-radius: 6px; background: var(--red); color: #fff; font-family: var(--veneer); font-size: clamp(20px, 1.6vw, 28px); text-transform: uppercase; text-decoration: none; transition: background 0.3s ease; }
.fruch-porque__btn:hover { background: #8f1a2d; color: #fff; }
.fruch-porque__btn:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }

/* lugares reservados para las imágenes */
.fruch-porque__hueco { display: flex; align-items: center; justify-content: center; border: 2px dashed #c9c2b4; border-radius: 12px; background: rgba(233, 231, 220, 0.6); color: #8a8274; text-align: center; font-size: 14px; font-weight: 600; }
.fruch-porque__hueco small { font-weight: 400; font-size: 12px; }
.fruch-porque__hueco--manzana { position: absolute; z-index: 1; left: 3%; bottom: 3%; width: 44%; height: 46%; }
.fruch-porque__hueco--chips { position: absolute; z-index: 1; right: 3%; top: 4%; width: 46%; height: 92%; }
.fruch-porque__hueco--paquetes { width: 100%; aspect-ratio: 16 / 9; }
.fruch-porque__hueco--mapa { position: absolute; z-index: 1; right: 3%; top: 5%; width: 44%; height: 90%; }
.fruch-porque__card--paises .fruch-porque__col { max-width: 54%; }
.fruch-porque__card--paises .fruch-porque__p { margin-top: 26px; }

@media (max-width: 1024px) {
  .o-porque { padding: 90px 0 60px; }
  .fruch-porque__card--llegamos, .fruch-porque__card--frase,
  .fruch-porque__card--variedades, .fruch-porque__card--paises { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
  .fruch-porque__card { min-height: 0; }
  .fruch-porque__card--llegamos { display: flex; flex-direction: column; gap: 16px; }
  .fruch-porque__etiqueta { position: static; order: -1; }
  .fruch-porque__dato { position: relative; right: auto; width: 100%; max-width: 340px; margin: 0 auto; }
  .fruch-porque__hueco--manzana, .fruch-porque__hueco--chips, .fruch-porque__hueco--mapa { position: relative; left: auto; right: auto; top: auto; bottom: auto; width: 100%; height: 200px; }
  .fruch-porque__card--frase { display: flex; flex-direction: column; }
  .fruch-porque__card--frase .fruch-porque__hueco--chips { order: 5; margin-top: 16px; }
  .fruch-porque__logo { position: static; margin-top: 18px; }
  .fruch-porque__card--variedades { flex-direction: column; }
  .fruch-porque__card--paises .fruch-porque__col { max-width: none; margin-bottom: 16px; }
}
/* imágenes reales en lugar de los huecos */
.fruch-porque__img { display: block; object-fit: contain; }
.fruch-porque__img.fruch-porque__hueco--manzana { object-position: left bottom; left: 0; bottom: 0; width: 50%; height: 55%; }
.fruch-porque__img.fruch-porque__hueco--chips { object-position: right center; right: -4%; }
.fruch-porque__img.fruch-porque__hueco--paquetes { height: auto; aspect-ratio: auto; max-width: 100%; }
.fruch-porque__img.fruch-porque__hueco--mapa { object-position: center; }
@media (max-width: 767px) {
  .fruch-porque__img.fruch-porque__hueco--manzana, .fruch-porque__img.fruch-porque__hueco--chips, .fruch-porque__img.fruch-porque__hueco--mapa { width: 100%; height: 220px; object-position: center; right: auto; }
}
@media (min-width: 768px) {
  .fruch-porque__img.fruch-porque__hueco--manzana { width: 52%; height: 56%; left: -1%; bottom: -2%; }
  .fruch-porque__img.fruch-porque__hueco--chips { width: 52%; height: 100%; top: 0; right: -12%; }
}

/* mapa con nombres de países (las etiquetas se ubican en % de la imagen) */
.fruch-porque__mapa { position: absolute; z-index: 1; right: 15%; top: 6%; height: 88%; width: auto; aspect-ratio: 359 / 433; }
.fruch-porque__mapa-img { display: block; width: 100%; height: 100%; }
.fruch-porque__pais { position: absolute; left: var(--x); top: var(--y); display: flex; align-items: center; gap: 0; white-space: nowrap; color: #2a2a2a; font-size: clamp(12px, 0.95vw, 15px); font-weight: 700; transform: translate(-4px, -50%); }
.fruch-porque__pais i { width: 8px; height: 8px; border-radius: 50%; background: #2a2a2a; flex: none; }
.fruch-porque__pais b { width: clamp(22px, 2.6vw, 44px); height: 1.5px; background: #2a2a2a; margin: 0 6px 0 0; flex: none; }
.fruch-porque__pais--izq { flex-direction: row-reverse; transform: translate(calc(-100% + 4px), -50%); }
.fruch-porque__pais--izq b { margin: 0 0 0 6px; }
@media (max-width: 767px) {
  .fruch-porque__mapa { position: relative; right: auto; top: auto; width: auto; height: 280px; margin: 0 auto; }
}
/* Estados Unidos: etiqueta a la derecha en pantallas anchas (a la izquierda chocaba con el título), a la izquierda en celular */
.fruch-porque__pais--eeuu { --x: 64%; --y: 24%; }
@media (max-width: 767px) {
  .fruch-porque__pais--eeuu { --x: 30%; --y: 22%; flex-direction: row-reverse; transform: translate(calc(-100% + 4px), -50%); }
  .fruch-porque__pais--eeuu b { margin: 0 0 0 6px; }
}
/* mapa con nombres incluidos en la imagen (reemplaza al anterior con etiquetas HTML) */
.fruch-porque__mapa2 { position: absolute; z-index: 1; right: 1%; top: 50%; transform: translateY(-50%); width: 54%; height: auto; }
.fruch-porque__card--paises .fruch-porque__col { max-width: 46%; }
@media (max-width: 767px) {
  .fruch-porque__mapa2 { position: static; transform: none; width: 100%; }
  .fruch-porque__card--paises .fruch-porque__col { max-width: none; }
}
/* medidor animado (solo si el JS lo activa) */
.fruch-porque__dato--anim .fruch-porque__tick--on { stroke: #cfcac0; transition: stroke 0.4s ease; }
.fruch-porque__dato--anim.is-visible .fruch-porque__tick--on { stroke: var(--red); }
/* títulos «Llegamos lejos» y «Desde la Patagonia a 5 países» en verde */
.fruch-porque__h3 { color: var(--green); }

/* FRUCH — prensa: lugar reservado para la foto de cada nota */
.fruch-prensa__hueco { display: flex; align-items: center; justify-content: center; width: 100%; aspect-ratio: 3 / 2; border: 2px dashed #c9c2b4; border-radius: 12px; background: rgba(233, 231, 220, 0.6); color: #8a8274; text-align: center; font-size: 14px; font-weight: 600; }
.fruch-prensa__hueco small { font-weight: 400; font-size: 12px; }

/* FRUCH — secciones rojas siempre completas: sin el efecto de «barrido» en diagonal al entrar (deformaba la ola) */
.e-reveal--section, .e-reveal--section.visible { clip-path: none !important; transition: none !important; opacity: 1 !important; }

/* ===================== FRUCH — sin el script de Royal Beverage =====================
   La entrada del hero es un fundido corto (sin contador ni desenfoques) y los elementos
   .e-reveal aparecen con una transición de opacidad cuando assets/js/fruch.js les pone .visible. */
.o-hero--home .a-hero--loader { display: none !important; }
.o-hero--home .a-main-title, .o-hero--home .m-hero--img, .o-hero--home .a-hero--text { transition: opacity 0.7s ease; }
.fruch-listo .o-hero--home .a-main-title, .fruch-listo .o-hero--home .m-hero--img, .fruch-listo .o-hero--home .a-hero--text { opacity: 1; }
.fruch-listo .o-hero--home .m-hero--img { transition-delay: 0.15s; }
.fruch-listo .o-hero--home .a-hero--text { transition-delay: 0.3s; }
.e-reveal--heading, .e-reveal--word, .e-reveal--text { transition: opacity 0.8s ease; }
.e-reveal--heading.visible, .e-reveal--word.visible, .e-reveal--text.visible { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .o-hero--home .a-main-title, .o-hero--home .m-hero--img, .o-hero--home .a-hero--text,
  .e-reveal, .e-reveal--heading, .e-reveal--word, .e-reveal--text, .e-reveal--opacity { transition: none !important; }
}
/* sin JS: todo visible */
.no-js .e-reveal, .no-js .e-reveal--heading, .no-js .e-reveal--word, .no-js .e-reveal--opacity, .no-js .o-hero--home .a-main-title, .no-js .o-hero--home .m-hero--img, .no-js .o-hero--home .a-hero--text { opacity: 1; }
/* scroll nativo del navegador (el diseño original lo bloqueaba y lo manejaba Lenis) */
html, body { overflow-y: visible !important; }
body { overflow-x: clip !important; }
/* cabecera: el logo y las 3 rayitas los mostraba la animación vieja; ahora aparecen con el hero */
.o-header .a-logo, .o-header .a-icon-menubar, .o-header .a-language { transition: opacity 0.6s ease; }
.fruch-listo .o-header .a-logo, .fruch-listo .o-header .a-icon-menubar, .fruch-listo .o-header .a-language,
.no-js .o-header .a-logo, .no-js .o-header .a-icon-menubar { opacity: 1; }
/* logo siempre al centro de la cabecera (sin el botón de idioma, space-between lo corría a la derecha) */
.o-header .container::after { content: ""; display: block; width: 30px; flex: none; }  /* espacio igual al ícono del menú */
@media (max-width: 767px) { .o-header .container::after { width: 21px; } }

/* ===================== FRUCH — «Quiénes somos» (socios) ===================== */
.o-socios { padding: 110px 0 60px; text-align: center; }
.fruch-socios__tag { display: block; color: var(--green); font-size: clamp(24px, 2vw, 36px); margin-bottom: 10px; }
.fruch-socios__titulo { margin: 0 0 22px; color: var(--red); font-family: var(--veneer); text-transform: uppercase; font-size: clamp(44px, 5.2vw, 96px); line-height: 0.9; }
.fruch-socios__intro { max-width: 40em; margin: 0 auto 48px; color: #2a2a2a; font-size: clamp(16px, 1.2vw, 20px); line-height: 1.5; }
.fruch-socios__grilla { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(16px, 2vw, 32px); width: 100%; text-align: left; }
.fruch-socios__card { background: #F7F4EE; border-radius: 16px; padding: clamp(16px, 1.4vw, 24px); }
.fruch-socios__foto { display: flex; align-items: center; justify-content: center; width: 100%; aspect-ratio: 4 / 5; margin-bottom: 18px; border: 2px dashed #c9c2b4; border-radius: 12px; background: rgba(233, 231, 220, 0.6); color: #8a8274; text-align: center; font-size: 14px; font-weight: 600; overflow: hidden; }
.fruch-socios__foto small { font-weight: 400; font-size: 12px; }
.fruch-socios__foto img { width: 100%; height: 100%; object-fit: cover; }
.fruch-socios__nombre { margin: 0 0 6px; color: var(--red); font-family: var(--veneer); text-transform: uppercase; font-size: clamp(30px, 2.4vw, 44px); line-height: 0.95; }
.fruch-socios__rol { margin: 0 0 12px; color: var(--green); font-size: 13px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.fruch-socios__texto { margin: 0; color: #2a2a2a; font-size: clamp(15px, 1.05vw, 18px); line-height: 1.45; }
@media (max-width: 767px) {
  .o-socios { padding: 80px 0 40px; }
  .fruch-socios__grilla { grid-template-columns: 1fr; }
  .fruch-socios__foto { aspect-ratio: 1 / 1; }
}
.fruch-socios__tag, .fruch-socios__titulo, .fruch-socios__intro { width: 100%; text-align: center; justify-content: center; }
.fruch-socios__tag { margin-bottom: 26px; line-height: 1.2; }

/* FRUCH — botón «Comprar» debajo de «Ver producto» (lleva a la tienda online) */
.fruch-prod__btn--comprar { top: 87.5%; }
@media (max-width: 1024px) {
  .fruch-prod__btn { display: flex; width: max-content; }
  .fruch-prod__btn--comprar { margin-top: 10px; }
}
@media (max-width: 1024px) { .fruch-prod__btn { min-width: 200px; } }

/* fotos de las notas de prensa: llenan el recuadro sin deformarse */
.fruch-prensa__img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; object-position: center 35%; border-radius: 12px; }
.fruch-prensa__img--socios { object-position: center 30%; }

/* ===================== FRUCH — Prensa: 3 tarjetas siempre visibles =====================
   La tarjeta elegida (.is-activa) se agranda; las otras quedan un poco más chicas pero legibles. */
.fruch-prensa { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(16px, 2vw, 32px); align-items: center; width: 100%; padding: 40px 0 20px; text-align: left; }
.fruch-prensa__card { display: flex; flex-direction: column; background: var(--red); color: #E9E7DC; border-radius: 14px; overflow: hidden; cursor: pointer;
  transform: scale(0.92); opacity: 0.88; transition: transform 0.45s ease, opacity 0.45s ease, box-shadow 0.45s ease; }
.fruch-prensa__card.is-activa { transform: scale(1.04); opacity: 1; cursor: default; position: relative; z-index: 2; box-shadow: 0 24px 50px rgba(60, 5, 14, 0.25); }
.fruch-prensa__card:not(.is-activa):hover { opacity: 1; transform: scale(0.94); }
.fruch-prensa__foto { position: relative; margin: 14px 14px 0; }
.fruch-prensa__img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; object-position: center 35%; border-radius: 10px; }
.fruch-prensa__img--socios { object-position: center 30%; }
.fruch-prensa__datos { position: absolute; left: 10px; top: 10px; display: flex; flex-direction: column; padding: 6px 12px; border-radius: 6px; background: rgba(184, 34, 58, 0.85); }
.fruch-prensa__medio { font-family: var(--monday); font-size: 18px; line-height: 1.1; }
.fruch-prensa__fecha { font-family: var(--veneer); font-size: 22px; line-height: 1; }
.fruch-prensa__cuerpo { display: flex; flex-direction: column; gap: 12px; flex: 1; padding: 18px 20px 22px; }
.fruch-prensa__titulo { margin: 0; color: #E9E7DC; font-family: var(--veneer); text-transform: uppercase; font-size: clamp(22px, 1.9vw, 34px); line-height: 1; }
.fruch-prensa__texto { margin: 0; color: #E9E7DC; font-size: clamp(14px, 1vw, 17px); line-height: 1.4; }
.fruch-prensa__btn { align-self: flex-start; margin-top: auto; display: inline-flex; gap: 12px; padding: 12px 22px; background: #E9E7DC; color: var(--red); font-family: var(--veneer); font-size: 20px; text-transform: uppercase; text-decoration: none; transition: background 0.3s ease; }
.fruch-prensa__btn:hover { background: #fff; color: var(--red); }
.fruch-prensa__btn:focus-visible, .fruch-prensa__flecha:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
.fruch-prensa__nav { display: flex; justify-content: center; gap: 16px; margin-top: 24px; }
.fruch-prensa__flecha { width: 52px; height: 52px; border: 2px solid var(--blue); border-radius: 50%; background: transparent; color: var(--blue); font-size: 24px; cursor: pointer; transition: background 0.3s ease, color 0.3s ease; }
.fruch-prensa__flecha:hover { background: var(--blue); color: #E9E7DC; }
@media (max-width: 767px) {
  .fruch-prensa { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 30px 8vw 20px; margin: 0 -16px; width: calc(100% + 32px); scrollbar-width: none; }
  .fruch-prensa::-webkit-scrollbar { display: none; }
  .fruch-prensa__card { flex: 0 0 78%; scroll-snap-align: center; }
}
@media (prefers-reduced-motion: reduce) { .fruch-prensa__card { transition: none; } }
.fruch-prensa__nav { width: 100%; }
/* fotos reales de los socios: sin borde punteado, encuadre en la cara */
.fruch-socios__foto--lista { border: 0; background: #557a45; }
.fruch-socios__foto--lista img { object-position: center 20%; }
/* socios sin fondo: apoyados abajo sobre un fondo suave de la marca */
.fruch-socios__foto--lista { background: radial-gradient(circle at 50% 60%, #EFE9DC 0%, #E2DACA 100%); align-items: flex-end; }
.fruch-socios__foto--lista img { width: 100%; height: 92%; object-fit: contain; object-position: center bottom; }

/* ===================== FRUCH — Prensa, opción A: una nota grande y dos al costado ===================== */
.fruch-prensa2 { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: clamp(16px, 2vw, 28px); width: 100%; padding: 36px 0 10px; text-align: left; }
.fruch-prensa2__principal { display: flex; flex-direction: column; background: var(--red); color: #E9E7DC; border-radius: 16px; overflow: hidden; }
.fruch-prensa2__principal .fruch-prensa2__foto img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; object-position: center 40%; }
.fruch-prensa2__principal .fruch-prensa2__cuerpo { display: flex; flex-direction: column; gap: 12px; padding: clamp(18px, 2vw, 30px); flex: 1; }
.fruch-prensa2__principal .fruch-prensa2__titulo { color: #E9E7DC; font-size: clamp(30px, 3vw, 54px); }
.fruch-prensa2__principal .fruch-prensa2__meta { color: #E9E7DC; }
.fruch-prensa2__lado { display: grid; grid-template-rows: 1fr 1fr; gap: clamp(16px, 2vw, 28px); }
.fruch-prensa2__chica { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr); background: #F7F4EE; border-radius: 16px; overflow: hidden; }
.fruch-prensa2__chica .fruch-prensa2__foto img { display: block; width: 100%; height: 100%; min-height: 200px; object-fit: cover; object-position: center 30%; }
.fruch-prensa2__chica .fruch-prensa2__cuerpo { display: flex; flex-direction: column; gap: 10px; padding: clamp(14px, 1.4vw, 22px); }
.fruch-prensa2__chica .fruch-prensa2__titulo { color: var(--red); font-size: clamp(20px, 1.6vw, 28px); }
.fruch-prensa2__chica .fruch-prensa2__meta { color: var(--green); }
.fruch-prensa2__meta { margin: 0; display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.fruch-prensa2__medio { font-family: var(--monday); font-size: 20px; line-height: 1.1; }
.fruch-prensa2__fecha { font-family: var(--veneer); font-size: 18px; letter-spacing: 0.03em; opacity: 0.85; }
.fruch-prensa2__titulo { margin: 0; font-family: var(--veneer); text-transform: uppercase; line-height: 0.98; }
.fruch-prensa2__texto { margin: 0; color: #E9E7DC; font-size: clamp(15px, 1.1vw, 18px); line-height: 1.45; max-width: 38em; }
.fruch-prensa2__btn { align-self: flex-start; margin-top: auto; display: inline-flex; gap: 12px; padding: 13px 24px; background: #E9E7DC; color: var(--red); font-family: var(--veneer); font-size: 21px; text-transform: uppercase; text-decoration: none; transition: background 0.3s ease; }
.fruch-prensa2__btn:hover { background: #fff; color: var(--red); }
.fruch-prensa2__link { margin-top: auto; align-self: flex-start; color: var(--red); font-family: var(--veneer); font-size: 19px; text-transform: uppercase; text-decoration: none; border-bottom: 2px solid currentColor; padding-bottom: 2px; }
.fruch-prensa2__link:hover { color: #8f1a2d; }
.fruch-prensa2__btn:focus-visible, .fruch-prensa2__link:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
@media (max-width: 900px) {
  .fruch-prensa2 { grid-template-columns: 1fr; }
  .fruch-prensa2__lado { grid-template-rows: none; }
}
@media (max-width: 520px) {
  .fruch-prensa2__chica { grid-template-columns: 1fr; }
  .fruch-prensa2__chica .fruch-prensa2__foto img { aspect-ratio: 16 / 10; height: auto; min-height: 0; }
}
.fruch-prensa2 .fruch-prensa__img { border-radius: 0; }
/* nota grande de prensa en verde */
.fruch-prensa2__principal { background: var(--green); }
.fruch-prensa2__principal .fruch-prensa2__btn, .fruch-prensa2__principal .fruch-prensa2__btn:hover { color: var(--green); }

/* ===================== FRUCH — «Quiénes somos» v2: foto grupal grande + 3 cards chicas ===================== */
.fruch-socios2 { display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr); gap: clamp(28px, 4vw, 70px); align-items: center; text-align: left; }
.fruch-socios2__foto { border-radius: 18px; overflow: hidden; }
.fruch-socios2__foto img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 35%; }
.fruch-socios2__tag { display: block; color: var(--green); font-size: clamp(24px, 2vw, 36px); margin-bottom: 18px; line-height: 1.2; }
.fruch-socios2__titulo { margin: 0 0 18px; color: var(--red); font-family: var(--veneer); text-transform: uppercase; font-size: clamp(44px, 4.6vw, 88px); line-height: 0.9; }
.fruch-socios2__intro { margin: 0 0 28px; max-width: 34em; color: #2a2a2a; font-size: clamp(16px, 1.15vw, 20px); line-height: 1.5; }
.fruch-socios2__cards { display: flex; flex-direction: column; gap: 12px; }
.fruch-socios2__card { display: flex; align-items: center; gap: 16px; padding: 14px 18px; background: #F7F4EE; border-radius: 14px; }
.fruch-socios2__avatar { flex: none; width: 76px; height: 76px; border-radius: 50%; overflow: hidden; background: radial-gradient(circle at 50% 60%, #EFE9DC 0%, #E2DACA 100%); display: flex; align-items: flex-end; justify-content: center; }
.fruch-socios2__avatar img { width: 100%; height: 100%; object-fit: cover; object-position: center 12%; }
.fruch-socios2__nombre { margin: 0 0 2px; color: var(--red); font-family: var(--veneer); text-transform: uppercase; font-size: clamp(22px, 1.7vw, 30px); line-height: 1; }
.fruch-socios2__rol { margin: 0 0 6px; color: var(--green); font-size: 12px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.fruch-socios2__texto { margin: 0; color: #2a2a2a; font-size: clamp(14px, 0.95vw, 16px); line-height: 1.4; }
@media (max-width: 900px) {
  .fruch-socios2 { grid-template-columns: 1fr; }
  .fruch-socios2__foto img { aspect-ratio: 4 / 4.4; }
}
@media (max-width: 480px) {
  .fruch-socios2__card { align-items: flex-start; padding: 12px 14px; }
  .fruch-socios2__avatar { width: 60px; height: 60px; }
}

/* socios: datos que se despliegan (Formación, Experiencia, Sistemas de gestión, Competencias) */
.fruch-socios2__card { align-items: flex-start; }
.fruch-socios2__card > div:last-child { flex: 1; min-width: 0; }
.fruch-socios2__mas { margin-top: 10px; border-top: 1px solid #E2DACA; }
.fruch-socios2__mas details { border-bottom: 1px solid #E2DACA; }
.fruch-socios2__mas summary { list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 9px 2px; cursor: pointer; color: var(--blue); font-size: 13px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; }
.fruch-socios2__mas summary::-webkit-details-marker { display: none; }
.fruch-socios2__mas summary::after { content: "+"; color: var(--red); font-size: 20px; font-weight: 400; line-height: 1; transition: transform 0.25s ease; }
.fruch-socios2__mas details[open] summary::after { transform: rotate(45deg); }
.fruch-socios2__mas summary:hover { color: var(--red); }
.fruch-socios2__mas summary:focus-visible { outline: 3px solid var(--blue); outline-offset: 2px; border-radius: 4px; }
.fruch-socios2__mas details p { margin: 0 2px 12px; color: #2a2a2a; font-size: clamp(14px, 0.95vw, 16px); line-height: 1.45; }
.fruch-socios2__mas summary::after { display: inline-block; }
/* texto de la portada con la misma letra que el resto de los textos (Outfit normal, no negrita) */
.o-hero--home .a-hero--text { font-family: var(--outfit); font-weight: 400; line-height: 1.45; letter-spacing: normal; }

/* ===================== FRUCH — pie de página ===================== */
.fruch-footer { padding: 110px 0 30px; text-align: left; color: var(--blue); }
.fruch-footer__grilla { display: grid; grid-template-columns: 1.1fr 1.2fr 1fr 1.2fr; gap: clamp(24px, 3vw, 56px); align-items: start; }
.fruch-footer__logo img { display: block; width: clamp(150px, 13vw, 220px); height: auto; }
.fruch-footer__lema { margin: 16px 0 18px; max-width: 18em; font-size: clamp(15px, 1.05vw, 18px); line-height: 1.45; }
.fruch-footer__redes { display: flex; gap: 12px; }
.fruch-footer__redes a { display: inline-flex; width: 46px; height: 46px; align-items: center; justify-content: center; border-radius: 50%; background: var(--red); color: #E9E7DC; transition: background 0.3s ease; }
.fruch-footer__redes a:hover { background: var(--green); }
.fruch-footer__redes svg { width: 22px; height: 22px; }
.fruch-footer__menu ul, .fruch-footer__lista { list-style: none; margin: 0; padding: 0; }
.fruch-footer__menu li { margin: 0 0 6px; }
.fruch-footer__menu a { font-family: var(--veneer); text-transform: uppercase; font-size: clamp(24px, 2vw, 36px); line-height: 1.05; color: var(--blue); text-decoration: none; transition: color 0.25s ease; }
.fruch-footer__menu a:hover { color: var(--red); }
.fruch-footer__titulo { margin: 0 0 14px; font-family: var(--veneer); text-transform: uppercase; font-size: clamp(26px, 2vw, 38px); line-height: 1; color: var(--red); }
.fruch-footer__lista li { margin: 0 0 12px; font-size: clamp(15px, 1.05vw, 18px); line-height: 1.4; }
.fruch-footer__lista a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.fruch-footer__lista a:hover { color: var(--red); }
.fruch-footer__etq { display: block; font-size: 12px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--green); }
.fruch-footer__btn { display: inline-flex; gap: 12px; margin-top: 8px; padding: 13px 22px; background: var(--green); color: #E9E7DC; font-family: var(--veneer); font-size: 20px; text-transform: uppercase; text-decoration: none; transition: background 0.3s ease; }
.fruch-footer__btn:hover { background: #2f6125; color: #E9E7DC; }
.fruch-footer a:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
.fruch-footer__base { margin-top: 60px; padding-top: 18px; border-top: 1px solid rgba(0, 14, 71, 0.18); }
.fruch-footer__base p { margin: 0; font-size: 14px; }
@media (max-width: 1024px) { .fruch-footer__grilla { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .fruch-footer { padding-top: 80px; } .fruch-footer__grilla { grid-template-columns: 1fr; } }
html { scroll-behavior: smooth; }

/* ===================== FRUCH — efectos de aparición (solo si fruch.js activa .fx-activo) ===================== */
@keyframes fxRebote {
  0%   { transform: translateY(-110%); opacity: 0; }
  35%  { transform: translateY(0) scale(1, 1); opacity: 1; }
  50%  { transform: translateY(0) scale(1.06, 0.88); }
  65%  { transform: translateY(-12%) scale(0.98, 1.03); }
  80%  { transform: translateY(0) scale(1.02, 0.97); }
  90%  { transform: translateY(-3%); }
  100% { transform: none; opacity: 1; }
}
@keyframes fxBolsas { 0% { transform: translateY(18%) scale(0.92); opacity: 0; } 70% { transform: translateY(-2%) scale(1.01); opacity: 1; } 100% { transform: none; opacity: 1; } }
@keyframes fxSubir  { 0% { transform: translateY(46px); opacity: 0; } 70% { transform: translateY(-5px); opacity: 1; } 100% { transform: none; opacity: 1; } }
@keyframes fxSuave  { 0% { transform: translateY(18px); opacity: 0; } 100% { transform: none; opacity: 1; } }
@keyframes fxZoom   { 0% { transform: scale(0.94); opacity: 0; } 100% { transform: none; opacity: 1; } }

/* hero */
.fx-activo .o-hero--home .a-main-title { opacity: 1 !important; transition: none; }
.fx-letra { display: inline-block; animation: fxRebote 1.15s cubic-bezier(0.28, 0.84, 0.42, 1) both; animation-delay: calc(var(--i) * 0.09s + 0.15s); transform-origin: 50% 100%; }
.fx-activo .o-hero--home .m-hero--img { opacity: 1 !important; transition: none; }
.fx-activo .o-hero--home .m-hero--img .a-img--fruch-hero { animation: fxBolsas 1s cubic-bezier(0.34, 1.4, 0.64, 1) 0.75s both; }
.fx-activo .o-hero--home .a-hero--text { transition: opacity 0.7s ease 1.4s; }

/* al bajar */
.fx-activo .fx { opacity: 0; }
.fx-activo .fx.fx-in.fx-rebote { animation: fxSubir 0.9s cubic-bezier(0.34, 1.56, 0.64, 1) both; }
.fx-activo .fx.fx-in.fx-suave  { animation: fxSuave 0.8s ease-out 0.1s both; }
.fx-activo .fx.fx-in.fx-zoom   { animation: fxZoom 1s ease-out both; }
.fx-activo .fx.fx-in.fx-subir  { animation: fxSubir 0.85s cubic-bezier(0.34, 1.4, 0.64, 1) var(--d, 0s) both; }
@media (prefers-reduced-motion: reduce) { .fx-letra, .fx-activo .fx { animation: none !important; opacity: 1 !important; } }

/* «Nuestros productos»: la bolsa da una vuelta (como una moneda) al aparecer la sección y al cambiar de sabor */
@keyframes fxGira {
  0%   { transform: perspective(1400px) rotateY(-360deg) scale(0.82); opacity: 0; }
  20%  { opacity: 1; }
  75%  { transform: perspective(1400px) rotateY(12deg) scale(1.04); }
  90%  { transform: perspective(1400px) rotateY(-4deg) scale(0.99); }
  100% { transform: none; opacity: 1; }
}
.fx-activo .fruch-prod .fruch-prod__img { opacity: 0; }
.fx-activo .fruch-prod.fx-visto .fruch-prod__img { opacity: 1; }
.fx-activo .fruch-prod.fx-visto .fruch-prod__slide.is-activa .fruch-prod__img { animation: fxGira 1.25s cubic-bezier(0.25, 0.9, 0.35, 1) both; }
@media (prefers-reduced-motion: reduce) { .fx-activo .fruch-prod .fruch-prod__img { opacity: 1; animation: none !important; } }

/* ===================== FRUCH — Recetas ===================== */
.o-recetas { padding: 120px 0 40px; text-align: center; }
.fruch-recetas__tag { display: block; width: 100%; color: var(--green); font-size: clamp(24px, 2vw, 36px); margin-bottom: 22px; line-height: 1.2; }
.fruch-recetas__h2 { width: 100%; margin: 0 0 16px; color: var(--red); font-family: var(--veneer); text-transform: uppercase; font-size: clamp(44px, 5.2vw, 96px); line-height: 0.9; }
.fruch-recetas__intro { width: 100%; max-width: 36em; margin: 0 auto 44px; color: #2a2a2a; font-size: clamp(16px, 1.2vw, 20px); line-height: 1.5; }
.fruch-recetas__grilla { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(16px, 2vw, 32px); width: 100%; text-align: left; align-items: start; }
.fruch-recetas__card { background: #F7F4EE; border-radius: 16px; overflow: hidden; }
.fruch-recetas__foto img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.fruch-recetas__cuerpo { padding: 18px 20px 20px; }
.fruch-recetas__meta { display: flex; gap: 8px; flex-wrap: wrap; margin: 0 0 8px; color: var(--green); font-size: 13px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; }
.fruch-recetas__titulo { margin: 0 0 12px; color: var(--red); font-family: var(--veneer); text-transform: uppercase; font-size: clamp(24px, 1.9vw, 34px); line-height: 0.98; }
.fruch-recetas__mas { border-top: 1px solid #E2DACA; }
.fruch-recetas__mas summary { list-style: none; display: flex; justify-content: space-between; align-items: center; padding: 12px 2px 4px; cursor: pointer; color: var(--blue); font-family: var(--veneer); font-size: 20px; text-transform: uppercase; }
.fruch-recetas__mas summary::-webkit-details-marker { display: none; }
.fruch-recetas__mas summary::after { content: "+"; display: inline-block; color: var(--red); font-family: var(--outfit), sans-serif; font-size: 22px; transition: transform 0.25s ease; }
.fruch-recetas__mas[open] summary::after { transform: rotate(45deg); }
.fruch-recetas__mas summary:hover { color: var(--red); }
.fruch-recetas__mas summary:focus-visible { outline: 3px solid var(--blue); outline-offset: 2px; border-radius: 4px; }
.fruch-recetas__sub { margin: 14px 0 6px; color: var(--green); font-size: 12px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.fruch-recetas__mas ul, .fruch-recetas__mas ol { margin: 0; padding-left: 20px; color: #2a2a2a; font-size: clamp(14px, 1vw, 16px); line-height: 1.5; }
.fruch-recetas__mas li { margin-bottom: 4px; }
@media (max-width: 900px) { .fruch-recetas__grilla { grid-template-columns: 1fr; max-width: 520px; margin: 0 auto; } }

/* Recetas v2: cards iguales que giran (frente: foto y título · dorso: ingredientes y pasos) */
.fruch-recetas__grilla { align-items: stretch; }
.fruch-receta { perspective: 1600px; }
.fruch-receta__giro { position: relative; display: grid; height: 100%; transition: transform 0.75s cubic-bezier(0.3, 1.25, 0.5, 1); transform-style: preserve-3d; }
.fruch-receta.is-girada .fruch-receta__giro { transform: rotateY(180deg); }
.fruch-receta__cara { grid-area: 1 / 1; display: flex; flex-direction: column; border-radius: 16px; overflow: hidden; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.fruch-receta__cara--frente { background: #F7F4EE; }
.fruch-receta__cara--frente .fruch-recetas__cuerpo { display: flex; flex-direction: column; flex: 1; }
.fruch-receta__cara--dorso { transform: rotateY(180deg); background: var(--red); color: #E9E7DC; padding: 22px 22px 20px; overflow-y: auto; }
.fruch-receta__dorso-titulo { margin: 0 0 6px; font-family: var(--veneer); text-transform: uppercase; font-size: clamp(24px, 1.9vw, 32px); line-height: 0.98; color: #E9E7DC; }
.fruch-receta__cara--dorso .fruch-recetas__meta { color: #F2D7DC; }
.fruch-receta__cara--dorso .fruch-recetas__sub { color: #E9E7DC; opacity: 0.85; }
.fruch-receta__cara--dorso ul, .fruch-receta__cara--dorso ol { margin: 0; padding-left: 20px; color: #E9E7DC; font-size: clamp(14px, 1vw, 16px); line-height: 1.5; }
.fruch-receta__cara--dorso li { margin-bottom: 4px; }
.fruch-receta__btn { align-self: flex-start; margin-top: auto; display: inline-flex; align-items: center; gap: 10px; padding: 12px 20px; border: 0; background: var(--red); color: #E9E7DC; font-family: var(--veneer); font-size: 20px; text-transform: uppercase; cursor: pointer; transition: background 0.3s ease, transform 0.2s ease; }
.fruch-receta__btn:hover { background: #8f1a2d; transform: translateY(-2px); }
.fruch-receta__btn--volver { margin-top: 18px; background: #E9E7DC; color: var(--red); }
.fruch-receta__btn--volver:hover { background: #fff; }
.fruch-receta__btn:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  .fruch-receta__giro { transition: none; }
}
/* dorso de la receta: ingredientes con puntitos y pasos numerados (el tema original sacaba las viñetas) */
.fruch-receta__cara--dorso ul, .fruch-receta__cara--dorso ol { list-style: none; padding-left: 0; }
.fruch-receta__cara--dorso ul li { position: relative; padding-left: 18px; }
.fruch-receta__cara--dorso ul li::before { content: ""; position: absolute; left: 2px; top: 0.6em; width: 7px; height: 7px; border-radius: 50%; background: #E9E7DC; }
.fruch-receta__cara--dorso ol { counter-reset: paso; }
.fruch-receta__cara--dorso ol li { position: relative; padding-left: 32px; margin-bottom: 8px; counter-increment: paso; }
.fruch-receta__cara--dorso ol li::before { content: counter(paso); position: absolute; left: 0; top: 0.05em; width: 22px; height: 22px; border-radius: 50%; background: #E9E7DC; color: var(--red); font-family: var(--veneer); font-size: 15px; line-height: 22px; text-align: center; }
/* socios: la foto grupal ocupa todo el alto de la columna, hasta la última card */
@media (min-width: 901px) {
  .fruch-socios2 { align-items: stretch; }
  .fruch-socios2__foto { height: 100%; }
  .fruch-socios2__foto img { height: 100%; aspect-ratio: auto; object-position: center 40%; }
}

/* FRUCH — Nuestra historia: las cards de cada año quedan fijas y la siguiente sube y las tapa (apiladas) */
.o-quality { overflow: clip !important; }
.m-quality__box { position: sticky; top: 0; transform-origin: 50% 0; transform: scale(calc(1 - var(--tapada, 0) * 0.06)); will-change: transform; }
.m-quality__box::after { content: ""; position: absolute; inset: 0; border-radius: inherit; background: #000; opacity: calc(var(--tapada, 0) * 0.45); pointer-events: none; z-index: 2; }
@media (prefers-reduced-motion: reduce) { .m-quality__box { transform: none; } .m-quality__box::after { opacity: 0; } }
/* Nuestra historia: bajada de la portada y cards de año que crecen si el texto es largo */
.fruch-historia-bajada { max-width: 760px; margin-top: 28px; font-size: 20px; line-height: 1.45; }
.m-quality__box { height: auto !important; min-height: 100vh; padding-bottom: 60px; }
.m-quality .a-text { max-width: 640px; margin-left: auto; margin-right: auto; }
.m-quality .m-list li { max-width: 640px; margin: 0 auto 6px; }
@media (max-width: 767px) { .fruch-historia-bajada { font-size: 17px; margin-top: 18px; } }
/* Nuestra historia: lo azul pasa al verde de FRUCH */
.page-template-about .o-single-product { background: radial-gradient(41.14% 32.12% at 46.12% 67.88%, #5E9A50 0%, var(--green) 100%); }
.page-template-about .m-quality__box.m-quality__box--blue { background-color: var(--green); }
/* Nuestra historia: títulos en verde FRUCH (los textos siguen en azul oscuro para leerse bien) */
.page-template-about main .a-heading:not(.a-heading--span):not(.h-whitesmoke):not(.m-brush--title .a-heading), .page-template-about main .a-tag { color: var(--green); }
.page-template-about .o-single-product .a-heading, .page-template-about .m-quality__box--blue .a-heading, .page-template-about .m-quality__box--red .a-heading { color: var(--grey); }
/* Nuestra historia: títulos del bloque verde en blanco y negrita */
.page-template-about .o-single-product .m-content .a-heading { color: #fff !important; font-weight: 700; letter-spacing: .01em; }
.page-template-about .m-quality__box--blue .a-heading, .page-template-about .m-quality__box--red .a-heading { color: var(--grey) !important; }
/* Nuestra historia: silueta de la bolsa FRUCH en lugar de la lata, con brillo tipo neón */
.page-template-about .fruch-bolsa-neon { filter: drop-shadow(0 0 6px rgba(255,255,255,.55)) drop-shadow(0 0 22px rgba(255,255,255,.35)); }
.page-template-about .m-content--quality .a-heading { color: var(--red) !important; }
/* Nuestra historia: fotos de FRUCH en las cards de cada año, todas cuadradas */
.page-template-about .m-quality__inner .a-img { aspect-ratio: 1 / 1; height: auto; object-fit: cover; object-position: center 30%; background: #fff; }
.page-template-about .m-quality__inner .a-img[src*="documento"], .page-template-about .m-quality__inner .a-img[src*="sello"], .page-template-about .m-quality__inner .a-img[src*="nuevo-envase"] { object-fit: contain; padding: 0; }
.page-template-about .m-quality__inner .a-img[src*="retrato"], .page-template-about .m-quality__inner .a-img[src*="tres-socios"] { background: #111; object-position: center 20%; }

/* FRUCH — página de producto (copia de la de RC Cola): título y envase visibles sin el script original */
.o-hero--single .a-main-title { opacity: 0; transition: opacity .6s ease .1s; }
.fruch-listo .o-hero--single .a-main-title { opacity: 1; }
.fruch-listo .o-hero--single .m-hero__inner .a-img { opacity: 1; transform: none; transition: opacity .6s ease .25s; }
@media (min-width: 1025px) {
  /* el envase queda solo en la portada, inclinado sobre el título */
  .fruch-listo .o-hero--single .m-hero__inner .a-img {
    position: absolute !important; top: 120px !important; left: 64% !important; width: auto; max-width: none;
    transform: translateX(-50%) rotate(-22.8deg);
  }
}
/* Productos FRUCH: los 3 paquetes en la portada y la foto de cada sabor entre el texto y la tabla */
.o-hero--fruch3 .m-hero__inner .a-img { height: auto !important; }
.fruch-listo .o-hero--fruch3 .m-hero__inner .a-img { position: relative !important; top: 0 !important; left: auto !important; transform: none; width: 100%; max-width: 900px; margin: -6vw auto 0; display: block; }
@media (min-width: 1025px) {
  .fruch-listo .o-hero--fruch3 .m-hero__inner .a-img { position: absolute !important; top: auto !important; bottom: 0; left: 50% !important; transform: translateX(-50%); width: 62vw; max-width: none; margin: 0; }
}
.o-about-single--fruch .container { position: relative; }
.fruch-prod-centro { display: block; width: 100%; max-width: 420px; margin: 0 auto 30px; }
@media (min-width: 1025px) {
  .fruch-prod-centro { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 26vw; max-width: 460px; margin: 0; z-index: 1; }
  .o-about-single--fruch .m-content, .o-about-single--fruch .m-table { position: relative; z-index: 2; }
}
/* Productos FRUCH: paquete grande en el medio y ficha técnica más chica */
@media (min-width: 1025px) {
  .o-about-single--fruch .container { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr) minmax(0, .75fr); gap: 3vw; align-items: center; }
  .o-about-single--fruch .m-content, .o-about-single--fruch .m-table { width: auto; }
  .o-about-single--fruch .fruch-prod-centro { position: static; transform: none; width: 100%; max-width: 560px; margin: 0 auto; filter: drop-shadow(0 18px 24px rgba(0,0,0,.18)); }
  .o-about-single--fruch .m-table { padding: 20px 20px; border-width: 4px; }
  .o-about-single--fruch .m-table .a-heading--h6 { font-size: 17px; }
  .o-about-single--fruch .m-box__body, .o-about-single--fruch .m-box__head { padding-top: 9px; padding-bottom: 9px; }
}
/* Productos FRUCH: título en rojo y entero a la vista; los paquetes van debajo, apenas montados */
.o-hero--fruch3 .a-main-title { color: var(--red) !important; position: relative; top: 0 !important; transform: none !important; padding-top: 30px; }
@media (min-width: 1025px) {
  .o-hero--fruch3 { height: auto !important; overflow: visible; }
  .fruch-listo .o-hero--fruch3 .m-hero__inner .a-img { position: relative !important; bottom: auto; left: auto !important; transform: none; width: 66vw; margin: -9vw auto 0; }
}
@media (max-width: 1024px) { .fruch-listo .o-hero--fruch3 .m-hero__inner .a-img { margin-top: -10vw; } }
/* Productos FRUCH: más aire entre la portada y el primer sabor */
#manzana-roja { margin-top: 240px; }
@media (max-width: 1024px) { #manzana-roja { margin-top: 70px; } }
@media (max-width: 1024px) { .fruch-listo .o-hero--fruch3 .m-hero__inner .a-img { width: 112%; max-width: none; margin-left: -6%; } }

/* Productos FRUCH — portada «Elegí tu sabor»: al tocar un sabor cambian paquete, título y color de fondo */
.fruch-sel { --c: var(--red); --fondo: #F3DEDF; position: relative; margin: 110px 16px 0; padding: 40px 16px 50px; border-radius: 28px; background: var(--fondo); text-align: center; transition: background-color .5s ease; overflow: hidden; }
.fruch-sel[data-sabor="verde"] { --c: var(--green); --fondo: #E1EBD9; }
.fruch-sel[data-sabor="americano"] { --c: #7A1F33; --fondo: #EBDCDD; }
.fruch-sel__tag { font-family: var(--monday); font-size: 30px; color: var(--c); margin: 0 0 4px; transition: color .5s; }
.fruch-sel__titulo { font-family: var(--veneer); font-weight: 400; color: var(--c); line-height: .82; font-size: 20vw; margin: 0; text-transform: uppercase; transition: color .5s; }
.fruch-sel__titulo span { display: block; }
.fruch-sel__titulo.is-cambia span { animation: fselTexto .55s cubic-bezier(.2,.8,.2,1) both; }
.fruch-sel__titulo.is-cambia .fruch-sel__l2 { animation-delay: .06s; }
.fruch-sel__paquetes { position: relative; width: 68vw; max-width: 420px; aspect-ratio: 852 / 991; margin: -9vw auto 0; }
.fruch-sel__paq { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; opacity: 0; pointer-events: none; filter: drop-shadow(0 22px 26px rgba(0,0,0,.22)); }
.fruch-sel__paq.is-activo { opacity: 1; animation: fselGira .9s cubic-bezier(.2,.8,.2,1) both; }
.fruch-sel__botones { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 26px 0 18px; }
.fruch-sel__btn { font-family: var(--outfit); font-size: 16px; font-weight: 500; padding: 11px 20px; border-radius: 999px; border: 2px solid currentColor; background: transparent; cursor: pointer; transition: background-color .25s, color .25s, transform .2s; }
.fruch-sel__btn[data-sabor="roja"] { color: var(--red); }
.fruch-sel__btn[data-sabor="verde"] { color: var(--green); }
.fruch-sel__btn[data-sabor="americano"] { color: #7A1F33; }
.fruch-sel__btn:hover { transform: translateY(-2px); }
.fruch-sel__btn[aria-pressed="true"] { background: currentColor; }
.fruch-sel__btn[aria-pressed="true"]::first-line { color: #fff; }
.fruch-sel__btn[aria-pressed="true"] { -webkit-text-fill-color: #fff; }
.fruch-sel__btn:focus-visible, .fruch-sel__ficha:focus-visible { outline: 3px solid var(--c); outline-offset: 3px; }
.fruch-sel__ficha { display: inline-block; font-family: var(--outfit); font-weight: 500; font-size: 16px; color: var(--c); text-decoration: underline; text-underline-offset: 4px; transition: color .5s; }
@media (min-width: 1025px) {
  .fruch-sel { margin: 120px 3vw 0; padding: 50px 3vw 56px; }
  .fruch-sel__titulo { font-size: 12.5vw; }
  .fruch-sel__paquetes { width: 26vw; max-width: 460px; margin-top: -6.2vw; }
}
@keyframes fselGira {
  0%   { transform: perspective(1400px) rotateY(-180deg) scale(.86); opacity: 0; }
  25%  { opacity: 1; }
  75%  { transform: perspective(1400px) rotateY(10deg) scale(1.03); }
  100% { transform: none; opacity: 1; }
}
@keyframes fselTexto { 0% { transform: translateY(40%); opacity: 0; } 100% { transform: none; opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .fruch-sel__paq.is-activo, .fruch-sel__titulo.is-cambia span { animation: none; } }
#manzana-roja { margin-top: 120px; }
@media (min-width: 1025px) {
  .fruch-sel { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); grid-template-rows: auto auto auto 1fr; column-gap: 3vw; text-align: left; align-items: start; min-height: calc(100vh - 170px); padding: 60px 5vw 60px; }
  .fruch-sel__tag { grid-column: 1; grid-row: 1; margin-top: 2vw; }
  .fruch-sel__titulo { grid-column: 1; grid-row: 2; font-size: 10.5vw; }
  .fruch-sel__botones { grid-column: 1; grid-row: 3; justify-content: flex-start; margin: 34px 0 20px; }
  .fruch-sel__ficha { grid-column: 1; grid-row: 4; align-self: start; justify-self: start; }
  .fruch-sel__paquetes { grid-column: 2; grid-row: 1 / 5; align-self: center; width: 100%; max-width: 470px; margin: 0 auto; }
}
.fruch-sel__tag { margin-bottom: 18px !important; position: relative; z-index: 1; }
.fruch-sel__titulo { padding-top: .06em; }
/* Productos FRUCH: paquete más grande y botón grande de compra */
.fruch-sel__comprar { display: inline-flex; align-items: center; gap: 14px; margin: 4px 0 18px; padding: 18px 30px; border-radius: 999px; background: var(--c); color: #fff; font-family: var(--outfit); font-weight: 600; font-size: 22px; line-height: 1.1; text-align: left; text-decoration: none; box-shadow: 0 12px 26px rgba(0,0,0,.18); transition: background-color .5s, transform .2s, box-shadow .2s; }
.fruch-sel__comprar small { display: block; font-size: 14px; font-weight: 400; opacity: .9; margin-top: 3px; }
.fruch-sel__comprar:hover { transform: translateY(-3px); box-shadow: 0 16px 30px rgba(0,0,0,.24); }
.fruch-sel__comprar:focus-visible { outline: 3px solid var(--c); outline-offset: 4px; }
.fruch-sel__ficha { display: block; }
.fruch-sel__paquetes { width: 82vw; max-width: 520px; }
@media (min-width: 1025px) {
  .fruch-sel { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: auto auto auto auto 1fr; }
  .fruch-sel__comprar { grid-column: 1; grid-row: 4; justify-self: start; }
  .fruch-sel__ficha { grid-row: 5; }
  .fruch-sel__paquetes { grid-row: 1 / 6; max-width: 640px; width: 108%; margin: -2vw -4% -2vw 0; }
}
@media (min-width: 1025px) {
  .fruch-sel__paquetes { width: 100%; max-width: min(560px, calc((100vh - 190px) * .86)); margin: 0 auto; }
}
.fruch-sel__ficha { font-size: 21px; font-weight: 600; text-underline-offset: 6px; text-decoration-thickness: 2px; }
.fruch-sel__comprar { margin-top: 28px; }
.fruch-sel__ficha { margin-top: 10px; }
/* Productos FRUCH: al cargar el paquete aparece quieto; solo gira al cambiar de sabor, y nunca se ve el revés */
.fruch-sel__paq.is-activo { animation: fselEntra .6s ease both; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.fruch-sel__paq.is-activo.is-girando { animation: fselGira2 .8s cubic-bezier(.2,.8,.2,1) both; }
@keyframes fselEntra { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes fselGira2 {
  0%   { transform: perspective(1400px) rotateY(-88deg) scale(.92); opacity: 0; }
  30%  { opacity: 1; }
  70%  { transform: perspective(1400px) rotateY(8deg) scale(1.02); }
  100% { transform: none; opacity: 1; }
}
@media (prefers-reduced-motion: reduce) { .fruch-sel__paq.is-activo, .fruch-sel__paq.is-activo.is-girando { animation: none; } }
/* Productos FRUCH: título de la página arriba del selector */
.fruch-prods-cab { text-align: center; margin: 120px 16px 0; }
.fruch-prods-cab__tag { font-family: var(--monday); font-size: 28px; color: var(--green); margin: 0 0 6px; }
.fruch-prods-cab__titulo { font-family: var(--veneer); font-weight: 400; text-transform: uppercase; color: var(--red); font-size: 15vw; line-height: .85; margin: 0; }
.fruch-prods-cab + .fruch-sel { margin-top: 36px; }
@media (min-width: 1025px) {
  .fruch-prods-cab { margin-top: 130px; }
  .fruch-prods-cab__titulo { font-size: 8.5vw; }
  .fruch-prods-cab + .fruch-sel { margin-top: 44px; }
}
.fruch-prods-cab__tag { margin-bottom: 16px !important; position: relative; z-index: 1; }
.fruch-prods-cab__titulo { padding-top: .05em; }
/* «Nuestros productos» en letra manuscrita (como el logo), para que se distinga de los títulos del sabor */
.fruch-prods-cab__titulo { font-family: var(--monday); text-transform: none; font-size: 17vw; line-height: 1; letter-spacing: 0; padding-top: 0; }
.fruch-prods-cab__tag { font-family: var(--outfit); font-size: 15px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
@media (min-width: 1025px) { .fruch-prods-cab__titulo { font-size: 7.5vw; } }
/* «Nuestros productos» en letra redondeada tipo snack (Lilita One, Google Fonts) */
.fruch-prods-cab__titulo { font-family: 'Lilita One', var(--outfit), sans-serif; font-weight: 400; line-height: .95; letter-spacing: 0; font-size: 15vw; }
@media (min-width: 1025px) { .fruch-prods-cab__titulo { font-size: 6.6vw; } }
.fruch-prods-cab__titulo { text-transform: uppercase; letter-spacing: .01em; }
/* Productos FRUCH: sin título de página; la tarjeta del sabor ocupa más pantalla */
.fruch-sel { margin-top: 100px; }
@media (min-width: 1025px) {
  .fruch-sel { margin: 105px 1.5vw 0; min-height: calc(100vh - 125px); padding: 56px 5vw; align-content: center; }
  .fruch-sel__titulo { font-size: 12vw; }
  .fruch-sel__paquetes { max-width: min(680px, calc((100vh - 150px) * .86)); }
}
@media (min-width: 1025px) { .fruch-sel__paquetes { max-width: min(680px, calc((100vh - 240px) * .86)); } .fruch-sel { padding-top: 46px; padding-bottom: 46px; } }
/* Productos FRUCH: la sección del sabor sin bordes, de lado a lado y desde arriba de todo (detrás del logo) */
.fruch-sel { margin: 0 !important; border-radius: 0; padding-top: 120px; min-height: 100vh; }
@media (min-width: 1025px) { .fruch-sel { padding: 120px 6vw 50px !important; min-height: 100vh; } }
.single-product .o-header { position: absolute; left: 0; right: 0; }
.fruch-sel { padding-top: 110px; }
@media (min-width: 1025px) { .fruch-sel { padding-top: 140px !important; } }
@media (max-width: 600px) { .fruch-sel__comprar { font-size: 18px; padding: 15px 22px; gap: 10px; } }
/* Productos FRUCH: títulos de cada ficha con el color de su paquete */
#manzana-roja .m-content .a-tag, #manzana-roja .m-content .a-heading { color: var(--red) !important; }
#manzana-verde .m-content .a-tag, #manzana-verde .m-content .a-heading { color: var(--green) !important; }
#corte-americano .m-content .a-tag, #corte-americano .m-content .a-heading { color: #7A1F33 !important; }
/* Productos FRUCH: fichas técnicas en negro y negrita */
.o-about-single--fruch .m-table { border-color: #111 !important; }
.o-about-single--fruch .m-table .a-heading { color: #111 !important; font-family: var(--outfit); font-weight: 700; letter-spacing: 0; text-transform: none; font-size: 16px; }
.o-about-single--fruch .m-table .m-box__head .a-heading { font-size: 17px; font-weight: 800; text-transform: uppercase; }
.o-about-single--fruch .m-table .m-box__body, .o-about-single--fruch .m-table .m-box__head { border-color: #111 !important; }
.o-about-single--fruch .m-table .m-table__box, .o-about-single--fruch .m-table .m-table__box * { --blue: #111; }
/* Productos FRUCH: sin la línea finita bajo «Información nutricional» y botón de compra en cada ficha */
.o-about-single--fruch .m-table .m-box__head { border-bottom: 0 !important; margin-bottom: 0; }
.fruch-prod-comprar { display: inline-flex; align-items: center; gap: 12px; margin-top: 26px; padding: 15px 26px; border-radius: 999px; color: #fff; font-family: var(--outfit); font-weight: 600; font-size: 19px; line-height: 1.1; text-decoration: none; box-shadow: 0 10px 22px rgba(0,0,0,.16); transition: transform .2s, box-shadow .2s; }
.fruch-prod-comprar small { display: block; font-size: 13px; font-weight: 400; opacity: .9; margin-top: 3px; }
.fruch-prod-comprar:hover { transform: translateY(-3px); box-shadow: 0 14px 28px rgba(0,0,0,.22); }
#manzana-roja .fruch-prod-comprar { background: var(--red); }
#manzana-verde .fruch-prod-comprar { background: var(--green); }
#corte-americano .fruch-prod-comprar { background: #7A1F33; }
#manzana-roja .fruch-prod-comprar:focus-visible { outline: 3px solid var(--red); outline-offset: 4px; }
#manzana-verde .fruch-prod-comprar:focus-visible { outline: 3px solid var(--green); outline-offset: 4px; }
#corte-americano .fruch-prod-comprar:focus-visible { outline: 3px solid #7A1F33; outline-offset: 4px; }
/* Productos FRUCH: texto de cada sabor más vivo (frase corta, chips con íconos, ingredientes e «ideal para») */
#manzana-roja { --c: var(--red); --suave: #F6DFE2; }
#manzana-verde { --c: var(--green); --suave: #E0EBD8; }
#corte-americano { --c: #7A1F33; --suave: #EEDDE0; }
.fruch-ficha__lead { font-family: var(--monday); font-size: 30px; line-height: 1.15; color: var(--c); margin: 14px 0 6px; }
.fruch-ficha__txt { margin: 0 0 16px; }
.fruch-ficha__chips { list-style: none; padding: 0; margin: 0 0 18px; display: flex; flex-wrap: wrap; gap: 8px; }
.fruch-ficha__chip { display: inline-flex; align-items: center; gap: 7px; padding: 8px 13px 8px 10px; border-radius: 999px; background: var(--suave); color: var(--c); font-family: var(--outfit); font-weight: 600; font-size: 14px; line-height: 1; transition: transform .2s, background-color .2s, color .2s; }
.fruch-ficha__chip svg { width: 18px; height: 18px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.fruch-ficha__chip:hover { transform: translateY(-2px) rotate(-1.5deg); background: var(--c); color: #fff; }
.fruch-ficha__fila { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 0 0 10px; }
.fruch-ficha__rot { font-family: var(--outfit); font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: #555; margin-right: 4px; }
.fruch-ficha__ing, .fruch-ficha__ideal { font-family: var(--outfit); font-size: 14px; font-weight: 600; padding: 5px 11px; border-radius: 999px; }
.fruch-ficha__ing { border: 1.5px solid var(--c); color: var(--c); }
.fruch-ficha__ideal { background: #fff; color: #333; box-shadow: 0 1px 0 rgba(0,0,0,.08); }
.fx-activo .fruch-ficha__chip { opacity: 0; transform: translateY(12px) scale(.94); }
.fx-activo .fruch-ficha__chips.is-visto .fruch-ficha__chip { animation: fichaChip .5s cubic-bezier(.2,.8,.2,1) both; animation-delay: calc(var(--i, 0) * 90ms); }
@keyframes fichaChip { to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .fx-activo .fruch-ficha__chip { opacity: 1; transform: none; animation: none !important; } }
/* Productos FRUCH: la frase corta va al lado de «Receta original», más chica */
.fruch-ficha__top { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; }
.fruch-ficha__top .a-tag { margin: 0; }
.fruch-ficha__sep { color: var(--c); font-size: 22px; line-height: 1; }
.fruch-ficha__lead { font-family: var(--monday); font-size: 21px; line-height: 1.1; color: var(--c); margin: 0; }
.fruch-ficha__top { flex-wrap: nowrap; white-space: nowrap; }
.fruch-ficha__top .a-tag { font-size: 30px !important; }
.fruch-ficha__lead { font-size: 18px; }
@media (max-width: 420px) { .fruch-ficha__top { flex-wrap: wrap; white-space: normal; } }
.fruch-ficha__lead { font-size: 22px; }
.fruch-ficha__top { flex-wrap: wrap; white-space: normal; column-gap: 8px; row-gap: 2px; }
.fruch-ficha__top > * { white-space: nowrap; }
@media (min-width: 1025px) { .o-about-single--fruch .container { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.15fr) minmax(0, .75fr); } }
/* Productos FRUCH: etiqueta y frase corta en la letra del texto, mismo tamaño */
.fruch-ficha__top .a-tag, .fruch-ficha__lead, .fruch-ficha__sep { font-family: var(--outfit) !important; font-size: 20px !important; line-height: 1.2; color: var(--c) !important; }
.fruch-ficha__top .a-tag { font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.fruch-ficha__lead { font-weight: 500; }
.fruch-ficha__top { align-items: center; margin-bottom: 10px; }
.fruch-ficha__top .a-tag, .fruch-ficha__lead, .fruch-ficha__sep { font-size: 17px !important; } .fruch-ficha__top .a-tag { letter-spacing: .04em; }
.fruch-ficha__ideal { background: transparent; box-shadow: none; border: 1.5px solid var(--c); color: var(--c); }
.o-about-single--fruch .m-content h2 { margin-bottom: 2px; } .fruch-ficha__txt { margin-top: -6px !important; }

/* Productos — cinta de palabras (copia de RC): filas que corren sin parar, la del medio al revés */
.o-maruqee .m-marquee__inner { animation: fMarquesina 55s linear infinite; }
.o-maruqee .m-marquee:nth-child(2) .m-marquee__inner { animation-direction: reverse; animation-duration: 65s; }
.o-maruqee .m-marquee:hover .m-marquee__inner { animation-play-state: paused; }
@keyframes fMarquesina { from { transform: translateX(0); } to { transform: translateX(-100%); } }
@media (prefers-reduced-motion: reduce) { .o-maruqee .m-marquee__inner { animation: none; } }

/* Productos — galería: la sección queda fija y las fotos (inclinadas) cruzan de derecha a izquierda al bajar */
.o-gallery--scroll { overflow: clip; }
.o-gallery--scroll .container { position: sticky; top: 0; overflow: hidden; }
.o-gallery--scroll .cards { padding: 0 100vw; align-items: center; }
.o-gallery--scroll .card { transform: translateY(var(--y, 0px)) rotate(var(--r, 0deg)); flex: none; }
.o-gallery--scroll .card .a-img { z-index: 0; }
.o-gallery--scroll .card .m-tag { z-index: 2; }
/* Cinta de palabras: una fila por sabor con su paquete */
.o-maruqee .h-bordo { color: #7A1F33; }
.o-maruqee .m-marquee__inner .a-img { filter: drop-shadow(0 10px 14px rgba(0,0,0,.18)); }
.o-maruqee .m-marquee__inner .a-img { max-height: 120px; width: auto; }
.o-maruqee .m-marquee + .m-marquee { margin-top: 18px; }
@media (min-width: 768px) { .o-maruqee .m-marquee__inner .a-img { max-height: 190px; } .o-maruqee .m-marquee + .m-marquee { margin-top: 26px; } }
/* Cinta: tamaños fijos para que ningún navegador (Safari) encime palabras y paquetes */
.o-maruqee .m-marquee__inner > * { flex: none; }
.o-maruqee .m-marquee__inner .a-img { height: 120px; max-height: none; width: auto; }
@media (min-width: 768px) { .o-maruqee .m-marquee__inner .a-img { height: 190px; } }
.o-maruqee .m-marquee { align-items: center; }
/* Productos: la cinta de los 3 sabores es la portada de la página */
.o-maruqee--heroe { min-height: 100vh; display: flex; flex-direction: column; justify-content: center; padding: 120px 0 50px; }
.o-maruqee--heroe .m-marquee + .m-marquee { margin-top: 3vh; }
.o-gallery--scroll .o-gallery--title h2 { color: var(--red) !important; } .o-gallery--scroll .o-gallery--title .a-tag { color: var(--green) !important; }
/* Productos — portada: botones de comprar y de conocer los productos */
.fruch-heroe-acciones { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 14px; margin-top: 5vh; padding: 0 16px; }
.fruch-heroe-btn { display: inline-flex; align-items: center; gap: 12px; padding: 16px 28px; border-radius: 999px; font-family: var(--outfit); font-weight: 600; font-size: 19px; line-height: 1.1; text-decoration: none; transition: transform .2s, box-shadow .2s, background-color .2s, color .2s; }
.fruch-heroe-btn small { display: block; font-size: 13px; font-weight: 400; opacity: .9; margin-top: 3px; }
.fruch-heroe-btn--comprar { background: var(--red); color: #fff; box-shadow: 0 10px 22px rgba(0,0,0,.16); }
.fruch-heroe-btn--ver { border: 2px solid var(--green); color: var(--green); padding: 18px 28px; }
.fruch-heroe-btn:hover { transform: translateY(-3px); }
.fruch-heroe-btn--ver:hover { background: var(--green); color: #fff; }
.fruch-heroe-btn:focus-visible { outline: 3px solid var(--green); outline-offset: 4px; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
.fruch-galeria-comprar { margin: 30px 0 90px; } @media (max-width: 767px) { .fruch-galeria-comprar { margin: 20px 0 60px; } }
.o-gallery--scroll .cards { padding: 0 8vw 0 100vw; } .fruch-galeria-comprar { margin-top: 10px; }
/* Productos — botón de compra al final de la galería: más grande y entra girando */
.fruch-galeria-comprar .fruch-heroe-btn--comprar { font-size: 28px; padding: 24px 46px; gap: 16px; box-shadow: 0 18px 36px rgba(184,34,58,.35); }
.fruch-galeria-comprar .fruch-heroe-btn--comprar svg { width: 34px; height: 34px; }
.fruch-galeria-comprar .fruch-heroe-btn--comprar small { font-size: 15px; }
.fx-activo .fruch-galeria-comprar .fruch-heroe-btn--comprar { opacity: 0; transform: scale(.3) rotate(-360deg); }
.fx-activo .fruch-galeria-comprar.is-visto .fruch-heroe-btn--comprar { animation: fCompraGira 1.1s cubic-bezier(.2,.9,.25,1.15) both, fCompraLatido 2.4s ease-in-out 1.3s infinite; }
@keyframes fCompraGira { 0% { opacity: 0; transform: scale(.3) rotate(-360deg); } 60% { opacity: 1; } 100% { opacity: 1; transform: scale(1) rotate(0); } }
@keyframes fCompraLatido { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.06); } }
.fx-activo .fruch-galeria-comprar.is-visto .fruch-heroe-btn--comprar:hover { animation-play-state: paused; }
@media (max-width: 600px) { .fruch-galeria-comprar .fruch-heroe-btn--comprar { font-size: 22px; padding: 18px 30px; } }
@media (prefers-reduced-motion: reduce) { .fx-activo .fruch-galeria-comprar .fruch-heroe-btn--comprar { opacity: 1; transform: none; animation: none !important; } }
/* Home — «Somos FRUCH»: debajo de «Conocé nuestra historia», el botón a la página de productos */
.fruch-historia__botones { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; margin-top: 16px; }
.fruch-historia__botones .fruch-btn { margin-top: 0; }
.fruch-btn--verde { background: var(--green); }
.fruch-btn--verde:hover { background: #2d5c23; }
@media (max-width: 900px) { .fruch-historia__botones { align-items: center; } }
.fruch-historia__botones { display: inline-flex; align-items: stretch; text-align: center; } @media (max-width: 900px) { .fruch-historia__botones { display: flex; align-items: stretch; } }
.fruch-recetas__mas { display: flex; justify-content: center; margin-top: 40px; } .fruch-recetas__mas .fruch-btn { margin-top: 0; }
.fruch-recetas__mas { width: 100%; align-self: stretch; }
/* Home — botón «Recetas FRUCH» llamativo: grande, con gorro de cocinero, flecha y brillo que pasa */
.fruch-recetas-btn { position: relative; overflow: hidden; display: inline-flex; align-items: center; gap: 16px; padding: 20px 34px 20px 28px; border-radius: 999px; background: var(--green); color: #fff; text-decoration: none; font-family: var(--veneer); font-size: clamp(26px, 2.3vw, 36px); letter-spacing: .02em; text-transform: uppercase; line-height: 1; box-shadow: 0 16px 32px rgba(62,124,49,.35); transition: transform .25s, box-shadow .25s, background-color .25s; animation: fRecetaLatido 2.6s ease-in-out infinite; }
.fruch-recetas-btn small { display: block; font-family: var(--outfit); font-size: 14px; letter-spacing: 0; text-transform: none; font-weight: 400; opacity: .92; margin-top: 6px; }
.fruch-recetas-btn b { font-family: var(--outfit); font-size: 28px; transition: transform .25s; }
.fruch-recetas-btn svg { flex: none; }
.fruch-recetas-btn::after { content: ""; position: absolute; top: 0; left: -60%; width: 40%; height: 100%; background: linear-gradient(100deg, transparent, rgba(255,255,255,.35), transparent); transform: skewX(-20deg); animation: fRecetaBrillo 3.2s ease-in-out infinite; }
.fruch-recetas-btn:hover { background: #336a28; transform: translateY(-4px) scale(1.03); box-shadow: 0 22px 40px rgba(62,124,49,.45); animation-play-state: paused; }
.fruch-recetas-btn:hover b { transform: translateX(6px); }
.fruch-recetas-btn:focus-visible { outline: 3px solid var(--green); outline-offset: 5px; }
@keyframes fRecetaLatido { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.04); } }
@keyframes fRecetaBrillo { 0%, 55% { left: -60%; } 100% { left: 130%; } }
@media (max-width: 600px) { .fruch-recetas-btn { padding: 16px 22px; gap: 12px; } .fruch-recetas-btn small { font-size: 12px; } }
@media (prefers-reduced-motion: reduce) { .fruch-recetas-btn, .fruch-recetas-btn::after { animation: none; } }
/* Home — «FRUCH en los medios» con el Instagram de FRUCH al costado */
.fruch-prensa-cab { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 18px 30px; width: 100%; }
.fruch-ig { display: inline-flex; align-items: center; gap: 12px; padding: 12px 22px 12px 12px; border-radius: 999px; color: #fff; text-decoration: none; font-family: var(--outfit); font-weight: 700; font-size: 18px; line-height: 1.1; background: linear-gradient(45deg, #F58529, #DD2A7B 45%, #8134AF 75%, #515BD4); box-shadow: 0 12px 26px rgba(221,42,123,.3); transition: transform .25s, box-shadow .25s; margin-bottom: 10px; }
.fruch-ig svg { flex: none; width: 44px; height: 44px; padding: 7px; border-radius: 50%; background: rgba(255,255,255,.2); }
.fruch-ig small { display: block; font-size: 12px; font-weight: 400; opacity: .9; margin-bottom: 3px; }
.fruch-ig:hover { transform: translateY(-3px) scale(1.03); box-shadow: 0 16px 32px rgba(221,42,123,.4); color: #fff; }
.fruch-ig:focus-visible { outline: 3px solid #DD2A7B; outline-offset: 4px; }
.fruch-ig svg { position: static !important; transform: none !important; display: block; }
@media (min-width: 1025px) { .fruch-ig { font-size: 22px; padding: 14px 28px 14px 14px; } .fruch-ig svg { width: 54px; height: 54px; } .fruch-ig small { font-size: 14px; } }
/* Instagram: alineado al medio del título y un poco más chico */
.fruch-prensa-cab { align-items: center; }
.fruch-ig { margin-bottom: 0; font-size: 16px; padding: 10px 20px 10px 10px; gap: 10px; }
.fruch-ig svg { width: 40px; height: 40px; padding: 6px; }
.fruch-ig small { font-size: 11px; }
@media (min-width: 1025px) { .fruch-ig { font-size: 18px; padding: 11px 22px 11px 11px; } .fruch-ig svg { width: 44px; height: 44px; } .fruch-ig small { font-size: 12px; } .fruch-prensa-cab > div { margin-top: 0; } }
@media (min-width: 1025px) { .fruch-ig { margin-top: 32px; } }
/* Instagram: logo oficial a color, sin fondo de colores detrás */
.fruch-ig { background: #fff; color: var(--blue); box-shadow: 0 8px 22px rgba(0,0,0,.12); padding: 8px 20px 8px 8px; }
.fruch-ig:hover { color: var(--blue); box-shadow: 0 12px 28px rgba(221,42,123,.25); }
.fruch-ig small { color: #666; }
.fruch-ig__logo { display: block; width: 42px; height: 42px; flex: none; }
@media (min-width: 1025px) { .fruch-ig { padding: 9px 22px 9px 9px; } .fruch-ig__logo { width: 46px; height: 46px; } }
/* Home — botón de productos al final de «Por qué nos eligen» (mismo estilo que Recetas, en rojo) */
.fruch-porque__mas { display: flex; justify-content: center; width: 100%; margin-top: 44px; }
.fruch-recetas-btn--rojo { background: var(--red); box-shadow: 0 16px 32px rgba(184,34,58,.35); }
.fruch-recetas-btn--rojo:hover { background: #8f1a2d; box-shadow: 0 22px 40px rgba(184,34,58,.45); }
.fruch-recetas-btn--rojo:focus-visible { outline-color: var(--red); }
.fruch-socios__mas { display: flex; justify-content: center; width: 100%; margin-top: 48px; }
.fruch-socios__mas { grid-column: 1 / -1; justify-self: stretch; }

/* Recetas (copia de «Production» de Royal Beverage): carrusel en arco hecho a mano, sin la librería Swiper */
.o-production .swiper--production-image { overflow: hidden; padding: 6vw 0 2vw; cursor: grab; touch-action: pan-y; user-select: none; }
.o-production .swiper--production-image.is-arrastrando { cursor: grabbing; }
.o-production .swiper--production-image .swiper-wrapper { display: flex; transition: transform .65s cubic-bezier(.2,.8,.2,1); will-change: transform; }
.o-production .swiper--production-image .swiper-slide { flex: none; width: 58vw; position: relative; }
.o-production .swiper--production-image .swiper-slide img { pointer-events: none; -webkit-user-drag: none; }
@media (min-width: 768px) { .o-production .swiper--production-image .swiper-slide { width: 30vw; } }
@media (min-width: 1025px) { .o-production .swiper--production-image .swiper-slide { width: 19vw; } }
.o-production .swiper--production-content .swiper-slide { display: none; }
.o-production .swiper--production-content .swiper-slide.swiper-slide-active { display: block; animation: fProdTexto .6s ease both; }
@keyframes fProdTexto { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
/* Recetas: carrusel circular y siempre centrado (cada tarjeta se ubica según su distancia a la del medio) */
.o-production .swiper--production-image .swiper-wrapper { position: relative; transform: none !important; display: block; height: calc(19vw * 470 / 400 + 7vw); }
.o-production .swiper--production-image .swiper-slide { position: absolute; top: 0; transition: left .65s cubic-bezier(.2,.8,.2,1), bottom .6s, opacity .6s; }
.o-production .swiper--production-image .swiper-slide.fruch-sig2 { bottom: -11vw; opacity: .7; }
@media (max-width: 1024px) { .o-production .swiper--production-image .swiper-wrapper { height: calc(30vw * 470 / 400 + 12vw); } }
@media (max-width: 767px) { .o-production .swiper--production-image .swiper-wrapper { height: calc(58vw * 470 / 400 + 20vw); } }
.o-production .swiper--production-image .swiper-slide { bottom: auto !important; top: 23vw; opacity: 0; transition: left .65s cubic-bezier(.2,.8,.2,1), top .6s cubic-bezier(.2,.8,.2,1), opacity .6s; }
.o-production .swiper--production-image .swiper-slide.swiper-slide-active { top: 0; opacity: 1; }
.o-production .swiper--production-image .swiper-slide.swiper-slide-prev, .o-production .swiper--production-image .swiper-slide.swiper-slide-next { top: 4.5vw; opacity: .85; }
.o-production .swiper--production-image .swiper-slide.swiper-slide-prev-before, .o-production .swiper--production-image .swiper-slide.fruch-sig2 { top: 11vw; opacity: .7; }
/* Recetas FRUCH: ingredientes y preparación debajo del carrusel */
.fruch-rec-detalle { display: grid; grid-template-columns: 1fr; gap: 18px 50px; max-width: 900px; margin: 22px auto 0; text-align: left; }
@media (min-width: 768px) { .fruch-rec-detalle { grid-template-columns: 1fr 1.3fr; } }
.fruch-rec-sub { font-family: var(--outfit); font-weight: 700; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: var(--green); margin: 0 0 10px; }
.fruch-rec-ing, .fruch-rec-pasos { margin: 0; padding: 0; list-style: none; font-family: var(--outfit); font-size: 17px; line-height: 1.45; }
.fruch-rec-ing li { position: relative; padding-left: 20px; margin-bottom: 6px; }
.fruch-rec-ing li::before { content: ""; position: absolute; left: 0; top: .55em; width: 8px; height: 8px; border-radius: 50%; background: var(--red); }
.fruch-rec-pasos { counter-reset: paso; }
.fruch-rec-pasos li { position: relative; padding-left: 36px; margin-bottom: 10px; counter-increment: paso; }
.fruch-rec-pasos li::before { content: counter(paso); position: absolute; left: 0; top: 0; width: 26px; height: 26px; border-radius: 50%; background: var(--green); color: #fff; font-weight: 700; font-size: 14px; display: flex; align-items: center; justify-content: center; }
.fruch-rec-detalle .a-text { font-size: 17px; line-height: 1.5; margin: 0; }
.o-production .swiper--production-content h3.a-heading { font-size: clamp(28px, 3vw, 46px); line-height: 1; } .o-production .swiper--production-content .a-heading--h5 { font-size: clamp(16px, 1.4vw, 22px); }
.o-production .m-production-card > div > .a-heading--h5 { font-size: clamp(15px, 1.3vw, 20px) !important; text-align: center; display: block; width: 100%; margin-bottom: 8px; }
.o-production .m-production-card > div > .a-heading--h5 { font-size: clamp(18px, 1.7vw, 26px) !important; }
/* Recetas: título en rojo y texto de presentación más grande, centrado a la altura del título */
.pagina-recetas .o-production .m-content--row h2 { color: var(--red) !important; }
.pagina-recetas .o-production .m-content--row { align-items: center; }
.fruch-rec-intro { font-size: 20px !important; line-height: 1.55; align-self: center; text-align: center; }
@media (max-width: 767px) { .fruch-rec-intro { font-size: 17px !important; } }
/* Recetas: chips de manzana que caen girando debajo del texto de presentación */
.fruch-lluvia { position: relative; height: 230px; overflow: hidden; margin: 10px 0 -40px; pointer-events: none; }
.fruch-lluvia img { position: absolute; left: var(--x); top: 0; width: var(--s); height: auto; filter: drop-shadow(0 10px 12px rgba(0,0,0,.15)); animation: fChipCae 6s linear var(--d) infinite both; }
@keyframes fChipCae {
  0% { transform: translate(-50%, -140px) rotate(var(--r)); opacity: 0; }
  12% { opacity: 1; }
  85% { opacity: 1; }
  100% { transform: translate(calc(-50% + 30px), 260px) rotate(calc(var(--r) + 260deg)); opacity: 0; }
}
@media (max-width: 767px) { .fruch-lluvia { height: 170px; } .fruch-lluvia img { width: calc(var(--s) * .7); } }
@media (prefers-reduced-motion: reduce) { .fruch-lluvia img { animation: none; top: 60px; transform: translateX(-50%) rotate(var(--r)); } }
.fruch-lluvia { margin-top: -50px; height: 280px; } .fruch-lluvia img { width: calc(var(--s) * 1.5); }
.fruch-lluvia { -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 70px, #000 calc(100% - 50px), transparent 100%); mask-image: linear-gradient(to bottom, transparent 0, #000 70px, #000 calc(100% - 50px), transparent 100%); }
/* «Llegamos lejos»: foto del depósito con pallets en lugar de la manzana, como foto con esquinas redondeadas */
.fruch-porque__img.fruch-porque__foto { object-fit: cover; object-position: center 40% !important; border-radius: 16px; left: 4% !important; bottom: 5% !important; width: 46% !important; height: 48% !important; box-shadow: 0 10px 22px rgba(0,0,0,.18); }
@media (max-width: 767px) { .fruch-porque__img.fruch-porque__foto { position: relative; left: 0 !important; bottom: 0 !important; width: 100% !important; height: 220px !important; margin-top: 14px; } }
/* «Llegamos lejos»: la foto del depósito es el fondo de toda la tarjeta, con velo oscuro y textos en blanco */
.fruch-porque__card--llegamos { background: linear-gradient(90deg, rgba(10,14,30,.82) 0%, rgba(10,14,30,.55) 45%, rgba(10,14,30,.78) 100%), url("../img/fruch/porque-deposito-cajas.webp") center 45% / cover no-repeat; color: #fff; }
.fruch-porque__card--llegamos .fruch-porque__foto { display: none !important; }
.fruch-porque__card--llegamos .fruch-porque__h3, .fruch-porque__card--llegamos .fruch-porque__p, .fruch-porque__card--llegamos .fruch-porque__etiqueta, .fruch-porque__card--llegamos .fruch-porque__dato-txt { color: #fff !important; }
.fruch-porque__card--llegamos .fruch-porque__tick { stroke: rgba(255,255,255,.35); }
.fruch-porque__card--llegamos .fruch-porque__dato--anim .fruch-porque__tick--on { stroke: rgba(255,255,255,.35); }
.fruch-porque__card--llegamos .fruch-porque__dato--anim.is-visible .fruch-porque__tick--on, .fruch-porque__card--llegamos .fruch-porque__tick--on { stroke: #ff4a64; }
.fruch-porque__card--llegamos .fruch-porque__numero { color: #fff; }
@media (max-width: 767px) { .fruch-porque__card--llegamos { background: linear-gradient(180deg, rgba(10,14,30,.8), rgba(10,14,30,.7)), url("../img/fruch/porque-deposito-cajas.webp") center / cover no-repeat; } }
/* «Llegamos lejos» v3: texto y medidor a la izquierda (uno debajo del otro), foto del depósito a la derecha */
.fruch-porque__card--llegamos { background: #F7F4EE; color: var(--blue); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); grid-template-areas: "col foto" "eti foto" "dato foto"; grid-template-rows: auto auto 1fr; column-gap: clamp(18px, 2vw, 32px); }
.fruch-porque__card--llegamos .fruch-porque__col { grid-area: col; }
.fruch-porque__card--llegamos .fruch-porque__etiqueta { grid-area: eti; position: static; margin: 14px 0 0; color: #2a2a2a !important; }
.fruch-porque__card--llegamos .fruch-porque__dato { grid-area: dato; position: relative; right: auto; bottom: auto; top: auto; left: auto; width: 100%; max-width: 300px; align-self: end; justify-self: start; aspect-ratio: 320 / 170; height: auto; }
.fruch-porque__card--llegamos .fruch-porque__foto { display: block !important; grid-area: foto; position: relative !important; left: auto !important; bottom: auto !important; width: 100% !important; height: 100% !important; min-height: 260px; object-fit: cover; object-position: center 40% !important; border-radius: 12px; box-shadow: none; }
.fruch-porque__card--llegamos .fruch-porque__h3, .fruch-porque__card--llegamos .fruch-porque__p { color: inherit !important; }
.fruch-porque__card--llegamos .fruch-porque__h3 { color: var(--red) !important; }
.fruch-porque__card--llegamos .fruch-porque__dato-txt { color: #2a2a2a !important; }
.fruch-porque__card--llegamos .fruch-porque__numero { color: var(--red); }
.fruch-porque__card--llegamos .fruch-porque__tick, .fruch-porque__card--llegamos .fruch-porque__dato--anim .fruch-porque__tick--on { stroke: #cfcac0; }
.fruch-porque__card--llegamos .fruch-porque__dato--anim.is-visible .fruch-porque__tick--on, .fruch-porque__card--llegamos .fruch-porque__dato:not(.fruch-porque__dato--anim) .fruch-porque__tick--on { stroke: var(--red); }
@media (max-width: 767px) { .fruch-porque__card--llegamos { display: flex; flex-direction: column; background: #F7F4EE; } .fruch-porque__card--llegamos .fruch-porque__foto { height: 220px !important; min-height: 0; } .fruch-porque__card--llegamos .fruch-porque__dato { margin: 0 auto; } }
.fruch-porque__card--llegamos .fruch-porque__dato { max-width: 320px; aspect-ratio: 320 / 185; } .fruch-porque__card--llegamos .fruch-porque__dato-txt { top: 26%; font-size: 14px; } .fruch-porque__card--llegamos .fruch-porque__numero { font-size: clamp(56px, 4.6vw, 86px); }
@media (max-width: 767px) { .fruch-porque__card--llegamos .fruch-porque__etiqueta { order: 0; margin: 0; } .fruch-porque__card--llegamos .fruch-porque__foto { order: 2; } .fruch-porque__card--llegamos .fruch-porque__dato { order: 3; } }
/* «Llegamos lejos»: la foto llega hasta arriba, abajo y a la derecha de la tarjeta (sin margen) */
@media (min-width: 768px) {
  .fruch-porque__card--llegamos .fruch-porque__foto { margin: calc(-1 * clamp(20px, 2vw, 32px)) calc(-1 * clamp(20px, 2vw, 32px)) calc(-1 * clamp(20px, 2vw, 32px)) 0; width: calc(100% + clamp(20px, 2vw, 32px)) !important; height: calc(100% + 2 * clamp(20px, 2vw, 32px)) !important; border-radius: 0; }
}
/* «Llegamos lejos»: foto casi hasta el borde, con un margen fino alrededor */
@media (min-width: 768px) {
  .fruch-porque__card--llegamos .fruch-porque__foto { --m: calc(clamp(20px, 2vw, 32px) - 12px); margin: calc(-1 * var(--m)) calc(-1 * var(--m)) calc(-1 * var(--m)) 0; width: calc(100% + var(--m)) !important; height: calc(100% + 2 * var(--m)) !important; border-radius: 12px; }
}
@media (min-width: 768px) { .fruch-porque__card--llegamos .fruch-porque__foto { --m: calc(clamp(20px, 2vw, 32px) - 22px); } }
.fruch-porque__card--llegamos .fruch-porque__dato-txt { font-weight: 700; top: 33%; }
/* Historia en celular: también se ven las 3 fotos de cada año (dos chicas inclinadas a los costados de la grande) */
@media (max-width: 1024px) {
  .page-template-about .m-quality__inner { padding-bottom: 14vw; }
  .page-template-about .m-quality__inner .a-img:nth-of-type(1), .page-template-about .m-quality__inner .a-img:nth-of-type(3) { display: block; width: 36vw; bottom: 0; z-index: 2; box-shadow: 0 10px 22px rgba(0,0,0,.2); }
  .page-template-about .m-quality__inner .a-img:nth-of-type(1) { left: 2vw; }
  .page-template-about .m-quality__inner .a-img:nth-of-type(3) { right: 2vw; }
  .page-template-about .m-quality__inner .a-img:nth-of-type(2) { width: 72%; left: 14%; }
}
/* Contacto FRUCH (panel copiado de Royal Beverage): motivos como botones y envío por WhatsApp */
.o-contact .a-icon--contact-close { border: 0; cursor: pointer; }
.fruch-contacto-motivos { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
.fruch-contacto-motivos label { cursor: pointer; }
.fruch-contacto-motivos input { position: absolute; opacity: 0; pointer-events: none; }
.fruch-contacto-motivos span { display: inline-block; padding: 9px 16px; border-radius: 999px; border: 2px solid var(--red); color: var(--red); font-family: var(--outfit); font-weight: 600; font-size: 15px; transition: background-color .2s, color .2s; }
.fruch-contacto-motivos input:checked + span { background: var(--red); color: #fff; }
.fruch-contacto-motivos input:focus-visible + span { outline: 3px solid var(--red); outline-offset: 3px; }
.fruch-contacto-form .a-input { display: block; width: 100%; margin-bottom: 12px; }
.fruch-contacto-error { color: var(--red); font-family: var(--outfit); font-weight: 600; font-size: 14px; margin: 0 0 10px; }
.fruch-contacto-nota { font-family: var(--outfit); font-size: 13px; opacity: .75; margin-top: 8px; }
.fruch-contacto-logo { display: block; width: clamp(130px, 12vw, 190px); height: auto; margin: 0 0 18px; }
.fruch-contacto-logo { margin-top: 46px; }
