/*!
Theme Name: EQM by PICTAU
Theme URI: https://pictau.com
Author: Oscar Rey Tajes
Author URI: https://www.pictau.com
Description: Pictau theme with "tailwind CSS" support and customizations for EQM.
Version: 2.2.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: pictau
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

pictau_tw is based on _tw https://underscoretw.com/, (C) 2021-2023 Greg Sullivan
_tw is distributed under the terms of the GNU GPL v2 or later.

_tw is based on Underscores https://underscores.me/ and Varia https://github.com/Automattic/themes/tree/master/varia, (C) 2012-2023 Automattic, Inc.
Underscores and Varia are distributed under the terms of the GNU GPL v2 or later.
*/

/**
 * The line above injects the WordPress file header. It needs to be first,
 * before this comment.
 */

/**
 * This injects custom `@font-face` rules.
 */

/**
 * Custom `@font-face` rules
 *
 * These will be added immediately before Tailwind’s `base` layer.
 */

/* montserrat-regular - latin */

/* @font-face {
	font-display: swap;
	font-family: "Montserrat";
	font-style: normal;
	font-weight: 400;
	src: url("./fonts/montserrat-v29-latin-regular.woff2") format("woff2");
} */

/* inter-regular - latin */

@font-face {
  font-display: swap;

  font-family: "Inter";

  font-style: normal;

  font-weight: 400;

  src: url("/wp-content/themes/pictau/theme/fonts/inter-v18-latin-regular.woff2") format("woff2");
}

/* outfit-200 - latin */

@font-face {
  font-display: swap;

  font-family: "Outfit";

  font-style: normal;

  font-weight: 200;

  src: url("/wp-content/themes/pictau/theme/fonts/outfit-v11-latin-200.woff2") format("woff2");
}

/* outfit-regular - latin */

@font-face {
  font-display: swap;

  font-family: "Outfit";

  font-style: normal;

  font-weight: 400;

  src: url("/wp-content/themes/pictau/theme/fonts/outfit-v11-latin-regular.woff2") format("woff2");
}

/* outfit-600 - latin */

@font-face {
  font-display: swap;

  font-family: "Outfit";

  font-style: normal;

  font-weight: 600;

  src: url("/wp-content/themes/pictau/theme/fonts/outfit-v11-latin-600.woff2") format("woff2");
}

/* outfit-700 - latin */

@font-face {
  font-display: swap;

  font-family: "Outfit";

  font-style: normal;

  font-weight: 700;

  src: url("/wp-content/themes/pictau/theme/fonts/outfit-v11-latin-700.woff2") format("woff2");
}

/*! DEFAULT PICTAU ICONS */

@font-face {
  font-family: "pictauicons";

  /* font-display: swap; */

  font-display: optional;

  src: url("/wp-content/themes/pictau/theme/fonts/pictauicons.woff2") format("woff2");

  font-weight: normal;

  font-style: normal;

  font-display: block;
}

[class^="pcticon-"],
[class*=" pcticon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "pictauicons" !important;
  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;
}

.pcticon-star:before {
  content: "\f005";
}

.pcticon-star-o:before {
  content: "\f006";
}

.pcticon-angle-left:before {
  content: "\f104";
}

.pcticon-angle-right:before {
  content: "\f105";
}

.pcticon-angle-up:before {
  content: "\f108";
}

.pcticon-angle-down:before {
  content: "\f109";
}

.pcticon-angle-left1:before {
  content: "\f10a";
}

.pcticon-angle-right1:before {
  content: "\f10b";
}

.pcticon-angle-up1:before {
  content: "\f106";
}

.pcticon-angle-down1:before {
  content: "\f107";
}

.pcticon-instagram:before {
  content: "\f16e";
}

.pcticon-globe:before {
  content: "\f0ac";
}

.pcticon-youtube:before {
  content: "\f16a";
}

.pcticon-user-circle:before {
  content: "\f2bd";
}

.pcticon-user-circle-o:before {
  content: "\f2be";
}

.pcticon-user:before {
  content: "\f007";
}

.pcticon-clock-o:before {
  content: "\f017";
}

.pcticon-tag:before {
  content: "\f02b";
}

.pcticon-bookmark:before {
  content: "\f02e";
}

.pcticon-map-marker:before {
  content: "\f041";
}

.pcticon-check-circle:before {
  content: "\f058";
}

.pcticon-question-circle:before {
  content: "\f059";
}

.pcticon-info-circle:before {
  content: "\f05a";
}

.pcticon-exclamation-triangle:before {
  content: "\f071";
}

.pcticon-warning:before {
  content: "\f071";
}

.pcticon-calendar:before {
  content: "\f073";
}

.pcticon-comment:before {
  content: "\f075";
}

.pcticon-shopping-bag:before {
  content: "\f290";
}

.pcticon-pictau-logo .path1:before {
  --def-color: rgb(61, 57, 55);
  content: "\e927";
  color: var(--def-color);
}

.pcticon-pictau-logo .path2:before {
  --def-color: rgb(83, 182, 141);
  content: "\e92a";
  margin-left: -0.8798828125em;
  color: var(--def-color);
}

.pcticon-pictau-logo .path3:before {
  --def-color: rgb(83, 182, 141);
  content: "\e92b";
  margin-left: -0.8798828125em;
  color: var(--def-color);
}

.pcticon-twitter-x:before {
  content: "\e928";
}

.pcticon-engranaje:before {
  content: "\e929";
}

.pcticon-search:before {
  content: "\f002";
}

.pcticon-heart:before {
  content: "\f004";
}

.pcticon-ok:before {
  content: "\f00c";
}

.pcticon-cog:before {
  content: "\f013";
}

.pcticon-download_alt:before {
  content: "\f019";
}

.pcticon-chevron_left:before {
  content: "\f053";
}

.pcticon-chevron_right:before {
  content: "\f054";
}

.pcticon-ok_sign:before {
  content: "\f05b";
}

.pcticon-question_sign:before {
  content: "\f05c";
}

.pcticon-exclamation_sign:before {
  content: "\f06a";
}

.pcticon-magnet:before {
  content: "\f076";
}

.pcticon-chevron_up:before {
  content: "\f077";
}

.pcticon-chevron_down:before {
  content: "\f078";
}

.pcticon-comments:before {
  content: "\f086";
}

.pcticon-thumbs_up_alt:before {
  content: "\f087";
}

.pcticon-phone1:before {
  content: "\f095";
}

.pcticon-facebook:before {
  content: "\f09a";
}

.pcticon-envelope_alt:before {
  content: "\f0e0";
}

.pcticon-linkedin:before {
  content: "\f0e1";
}

.pcticon-circle:before {
  content: "\f111";
}

.pcticon-exclamation:before {
  content: "\f12a";
}

/**
 * This injects Tailwind's base styles and any base styles registered by
 * plugins, then adds custom base styles.
 */

*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

/*! tailwindcss v3.4.14 | MIT License | https://tailwindcss.com
*/

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e5e7eb;
  /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
     tab-size: 4;
  /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  /* 4 */
  font-feature-settings: normal;
  /* 5 */
  font-variation-settings: normal;
  /* 6 */
  -webkit-tap-highlight-color: transparent;
  /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0;
  /* 1 */
  line-height: inherit;
  /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
  border-top-width: 1px;
  /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  /* 1 */
  font-feature-settings: normal;
  /* 2 */
  font-variation-settings: normal;
  /* 3 */
  font-size: 1em;
  /* 4 */
}

/*
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;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0;
  /* 1 */
  border-color: inherit;
  /* 2 */
  border-collapse: collapse;
  /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-feature-settings: inherit;
  /* 1 */
  font-variation-settings: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  font-weight: inherit;
  /* 1 */
  line-height: inherit;
  /* 1 */
  letter-spacing: inherit;
  /* 1 */
  color: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
  padding: 0;
  /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button;
  /* 1 */
  background-color: transparent;
  /* 2 */
  background-image: none;
  /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-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 in Chrome and Safari on macOS.
*/

::-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 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  /* 1 */
  vertical-align: middle;
  /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

/**
 * Custom styles to immediately follow Tailwind’s `base` layer
 *
 * “Add things like base typography styles [or] opinionated global resets.”
 *
 * — from https://tailwindcss.com/docs/plugins#adding-base-styles
 */

/**
 * This uses the background and foreground colors declared in the
 * `theme.json` file and is applied both to the frontend and in the block
 * editor.
*/

body {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --tw-text-opacity: 1;
  color: rgb(64 64 64 / var(--tw-text-opacity));
}

/**
 * This injects Tailwind's component classes and any component classes
 * registered by plugins, then adds custom component classes.
 *
 * The `@import-glob` line imports all CSS files from the `components`
 * directory (except for `components.css`, which is imported on the following
 * line). This is meant to simplify the process of integrating styles from
 * JavaScript components or WordPress plugins.
 */

.container {
  width: 100%;
}

@media (min-width: 640px) {
  .container {
    max-width: 640px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 768px;
  }
}

@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
  }
}

@media (min-width: 1280px) {
  .container {
    max-width: 1280px;
  }
}

@media (min-width: 1536px) {
  .container {
    max-width: 1536px;
  }
}

:root {
  --animation-fade-in: fade-in 0.5s var(--ease-3);
  --animation-fade-in-bloom: fade-in-bloom 2s var(--ease-3);
  --animation-fade-out: fade-out 0.5s var(--ease-3);
  --animation-fade-out-bloom: fade-out-bloom 2s var(--ease-3);
  --animation-scale-up: scale-up 0.5s var(--ease-3);
  --animation-scale-down: scale-down 0.5s var(--ease-3);
  --animation-slide-out-up: slide-out-up 0.5s var(--ease-3);
  --animation-slide-out-down: slide-out-down 0.5s var(--ease-3);
  --animation-slide-out-right: slide-out-right 0.5s var(--ease-3);
  --animation-slide-out-left: slide-out-left 0.5s var(--ease-3);
  --animation-slide-in-up: slide-in-up 0.5s var(--ease-3);
  --animation-slide-in-down: slide-in-down 0.5s var(--ease-3);
  --animation-slide-in-right: slide-in-right 0.5s var(--ease-3);
  --animation-slide-in-left: slide-in-left 0.5s var(--ease-3);
  --animation-shake-x: shake-x 0.75s var(--ease-out-5);
  --animation-shake-y: shake-y 0.75s var(--ease-out-5);
  --animation-shake-z: shake-z 1s var(--ease-in-out-3);
  --animation-spin: spin 2s linear infinite;
  --animation-ping: ping 5s var(--ease-out-3) infinite;
  --animation-blink: blink 1s var(--ease-out-3) infinite;
  --animation-float: float 3s var(--ease-in-out-3) infinite;
  --animation-bounce: bounce 2s var(--ease-squish-2) infinite;
  --ease-1: cubic-bezier(0.25, 0, 0.5, 1);
  --ease-2: cubic-bezier(0.25, 0, 0.4, 1);
  --ease-3: cubic-bezier(0.25, 0, 0.3, 1);
  --ease-out-1: cubic-bezier(0, 0, 0.75, 1);
  --ease-out-2: cubic-bezier(0, 0, 0.5, 1);
  --ease-out-3: cubic-bezier(0, 0, 0.3, 1);
  --ease-out-4: cubic-bezier(0, 0, 0.1, 1);
  --ease-out-5: cubic-bezier(0, 0, 0, 1);
  --ease-in-out-1: cubic-bezier(0.1, 0, 0.9, 1);
  --ease-in-out-2: cubic-bezier(0.3, 0, 0.7, 1);
  --ease-in-out-3: cubic-bezier(0.5, 0, 0.5, 1);
  --ease-in-out-4: cubic-bezier(0.7, 0, 0.3, 1);
  --ease-in-out-5: cubic-bezier(0.9, 0, 0.1, 1);
  --ease-squish-1: var(--ease-elastic-in-out-1);
  --ease-squish-2: var(--ease-elastic-in-out-2);
  --ease-squish-3: var(--ease-elastic-in-out-3);
}

@keyframes intro-gradient {
  0% {
    background-position: 300% 100%;
  }

  100% {
    background-position: 0% 100%;
  }
}

@keyframes ping {
  75%,
	100% {
    scale: 3;
    opacity: 0;
  }

  0% {
    scale: 1;
    opacity: 1;
  }

  100% {
    scale: 7;
    opacity: 0;
  }
}

@keyframes ping-filled {
  75%,
	100% {
    scale: 1.5;
    opacity: 0;
  }

  0% {
    scale: 1;
    opacity: 1;
  }

  100% {
    scale: 3;
    opacity: 0;
  }
}

@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}

@keyframes fade-in-bloom {
  0% {
    filter: brightness(1) blur(20px);
    opacity: 0;
  }

  10% {
    filter: brightness(2) blur(10px);
    opacity: 1;
  }

  to {
    filter: brightness(1) blur(0);
    opacity: 1;
  }
}

@keyframes fade-out {
  to {
    opacity: 0;
  }
}

@keyframes fade-out-bloom {
  to {
    filter: brightness(1) blur(20px);
    opacity: 0;
  }

  10% {
    filter: brightness(2) blur(10px);
    opacity: 1;
  }

  0% {
    filter: brightness(1) blur(0);
    opacity: 1;
  }
}

@keyframes scale-up {
  to {
    transform: scale(1.25);
  }
}

@keyframes scale-down {
  to {
    transform: scale(0.75);
  }
}

@keyframes slide-out-up {
  to {
    transform: translateY(-100%);
  }
}

@keyframes slide-out-down {
  to {
    transform: translateY(100%);
  }
}

@keyframes slide-out-right {
  to {
    transform: translateX(100%);
  }
}

@keyframes slide-out-left {
  to {
    transform: translateX(-100%);
  }
}

@keyframes slide-in-up {
  0% {
    transform: translateY(100%);
  }
}

@keyframes slide-in-down {
  0% {
    transform: translateY(-100%);
  }
}

@keyframes slide-in-right {
  0% {
    transform: translateX(-100%);
  }
}

@keyframes slide-in-left {
  0% {
    transform: translateX(100%);
  }
}

@keyframes shake-x {
  0%,
	to {
    transform: translateX(0);
  }

  20% {
    transform: translateX(-5%);
  }

  40% {
    transform: translateX(5%);
  }

  60% {
    transform: translateX(-5%);
  }

  80% {
    transform: translateX(5%);
  }
}

@keyframes shake-y {
  0%,
	to {
    transform: translateY(0);
  }

  20% {
    transform: translateY(-5%);
  }

  40% {
    transform: translateY(5%);
  }

  60% {
    transform: translateY(-5%);
  }

  80% {
    transform: translateY(5%);
  }
}

@keyframes shake-z {
  0%,
	to {
    transform: rotate(0deg);
  }

  20% {
    transform: rotate(-2deg);
  }

  40% {
    transform: rotate(2deg);
  }

  60% {
    transform: rotate(-2deg);
  }

  80% {
    transform: rotate(2deg);
  }
}

@keyframes spin {
  to {
    transform: rotate(1turn);
  }
}

@keyframes blink {
  0%,
	to {
    opacity: 1;
  }

  50% {
    opacity: 0.5;
  }
}

@keyframes float {
  50% {
    transform: translateY(-25%);
  }
}

@keyframes bounce {
  25% {
    transform: translateY(-20%);
  }

  40% {
    transform: translateY(-3%);
  }

  0%,
	60%,
	to {
    transform: translateY(0);
  }
}

@keyframes pulse {
  50% {
    transform: scale(0.9);
  }
}

@keyframes slide-right {
  0% {
    transform: none;
  }

  50% {
    transform: translateX(100%);
  }

  50.1% {
    transform: translateX(-100%);
  }

  100% {
    transform: none;
  }
}

@keyframes marquee-slide {
  from {
    translate: 0;
  }

  to {
    translate: -100%;
  }
}

@keyframes marquee-slide-reverse {
  from {
    translate: -100%;
  }

  to {
    translate: 0;
  }
}

.mz-dot-char {
  --dot-color: var(--main-color);
  --dot-wave-width: 1px;
  position: relative;
  z-index: 3;
  display: inline-block;
  width: calc(1ch * 0.3);
  aspect-ratio: 1;
  margin-left: 0.1ch;
  /* background-color: currentColor; */
  background-color: var(--dot-color);
  border-radius: 9999px;
}

.mz-dot-char::before {
  content: "";
  position: absolute;
  display: block;
  width: calc(1ch * 0.3);
  aspect-ratio: 1;
  border: var(--dot-wave-width) solid var(--dot-color);
  border-radius: 9999px;
  animation: ping 2s ease-out infinite;
}

.mz-dot-char::after {
  content: "";
  position: absolute;
  display: block;
  width: calc(1ch * 0.3);
  aspect-ratio: 1;
  border: var(--dot-wave-width) solid var(--dot-color);
  border-radius: 9999px;
  animation: ping 2s ease-out infinite 0.5s;
}

.mz-dot-char.filled::before,
		.mz-dot-char.filled::after {
  background-color: var(--dot-color);
}

@keyframes scroll-up-icon {
  100% {
    opacity: 0;
    transform: translate3d(0, 5%, 0);
  }

  90% {
    opacity: 1;
  }

  25% {
    opacity: 1;
  }

  0% {
    transform: translate3d(0, 50%, 0);
    opacity: 0;
  }
}

/**
 * BACKGROUNDS FOR ELEMENTS AND LINEAL GRADIENTS FOR LINES
 *
 *
**/

:root {
  --line-grad-color-rgb: 0 119 211;
  --horiz-line-gradient: linear-gradient(
		90deg,
		rgb(var(--line-grad-color-rgb) / 0%),
		rgb(var(--line-grad-color-rgb) / 23%) 5%,
		rgb(var(--line-grad-color-rgb) / 45%) 50%,
		rgb(var(--line-grad-color-rgb) / 23%) 95%,
		rgb(var(--line-grad-color-rgb) / 0%)
	);
  --bg-gradient-card: linear-gradient(45deg, #1dddfd 0%, #337cff 25%, #a055fc 50%, #f34bbb 75.5%, #fd8c3d 100%);
  /*! BACKGROUND PATTERNS SVG */
  --bg-pattern-cross: url('data:image/svg+xml,<svg version="1.1" id="rect" xmlns="http://www.w3.org/2000/svg" width="30" height="30" x="0px" y="0px" viewBox="0 0 30 30" enable-background="new 0 0 30 30" xml:space="preserve"><g><line opacity="1" fill="none" stroke="%23343434" stroke-miterlimit="10" x1="0" y1="5" x2="10" y2="5"/><line opacity="1" fill="none" stroke="%23343434" stroke-miterlimit="10" x1="5" y1="10" x2="5" y2="0"/></g></svg>');
  --bg-pattern-dot: url('data:image/svg+xml,<svg version="1.1" id="rect" xmlns="http://www.w3.org/2000/svg" width="30" height="30" x="0px" y="0px" viewBox="0 0 30 30" enable-background="new 0 0 30 30" xml:space="preserve"><circle cx="3.5" cy="3.5" r="1.5"/></svg>');
  --bg-pattern-dot-square: url('data:image/svg+xml,<svg version="1.1" id="rect" xmlns="http://www.w3.org/2000/svg" width="30" height="30" x="0px" y="0px" viewBox="0 0 30 30" enable-background="new 0 0 30 30" xml:space="preserve"><line fill="none" stroke="%23000000" stroke-width="3" stroke-miterlimit="10" x1="2" y1="3" x2="5" y2="3"/></svg>');
  --bg-pattern-grid: url('data:image/svg+xml,<svg version="1.1" id="rect" xmlns="http://www.w3.org/2000/svg" width="30" height="30" x="0px" y="0px" viewBox="0 0 30 30" enable-background="new 0 0 30 30" xml:space="preserve"><path fill="none" stroke="%23000000" stroke-width="0.5" d="M0 0h30v30H0z" /></svg>');
  --bg-pattern-cross-dark: url('data:image/svg+xml,<svg version="1.1" id="rect" xmlns="http://www.w3.org/2000/svg" width="30" height="30" x="0px" y="0px" viewBox="0 0 30 30" enable-background="new 0 0 30 30" xml:space="preserve"><g><line opacity="1" fill="none" stroke="%23ffffff" stroke-miterlimit="10" x1="0" y1="5" x2="10" y2="5"/><line opacity="1" fill="none" stroke="%23ffffff" stroke-miterlimit="10" x1="5" y1="10" x2="5" y2="0"/></g></svg>');
  --bg-pattern-footer: url('data:image/svg+xml,<svg version="1.1" id="rect" xmlns="http://www.w3.org/2000/svg" width="30" height="30" x="0px" y="0px" viewBox="0 0 40 40" enable-background="new 0 0 30 30" xml:space="preserve"><g><line opacity="0.5" fill="none" stroke="%23ffffff" stroke-miterlimit="10" x1="0" y1="5" x2="10" y2="5"/><line opacity="0.5" fill="none" stroke="%23ffffff" stroke-miterlimit="10" x1="5" y1="10" x2="5" y2="0"/></g></svg>');
  --bg-pattern-footer: url('data:image/svg+xml,<svg version="1.1" id="rect" xmlns="http://www.w3.org/2000/svg" width="30" height="30" x="0px" y="0px" viewBox="0 0 30 30" enable-background="new 0 0 30 30" xml:space="preserve"><line fill="none" opacity="0.5" stroke="%23ffffff" stroke-width="2" stroke-miterlimit="10" x1="2" y1="3" x2="4" y2="3"/></svg>');
  --line-gradient: linear-gradient(
		90deg,
		rgb(var(--line-grad-color-rgb) / 0%),
		rgb(var(--line-grad-color-rgb) / 0%) 25%,
		rgb(var(--line-grad-color-rgb) / 45%) 50%,
		rgb(var(--line-grad-color-rgb) / 0%) 75%,
		rgb(var(--line-grad-color-rgb) / 0%)
	);
  --line-gradient-dch: linear-gradient(
		90deg,
		rgb(var(--line-grad-color-rgb) / 0%),
		rgb(var(--line-grad-color-rgb) / 45%) 20%,
		rgb(var(--line-grad-color-rgb) / 0%) 75%,
		rgb(var(--line-grad-color-rgb) / 0%)
	);
}

:has(> [class*="bg-pattern"]) {
  position: relative !important;
}

:has(> .webgl-dots) > * {
  position: relative;
}

.bg-glow {
  background: linear-gradient(90deg, rgb(29, 221, 253) 0%, rgb(51, 124, 255) 25%, rgb(160, 85, 252) 50%, rgb(243, 75, 187) 75.5%, rgb(253, 140, 61) 100%);
  width: 100%;
  height: 100%;
  filter: blur(177px);
  right: 0px;
  left: 0px;
  /* bottom: -350px; */
  position: absolute;
}

[class*="bg-pattern-"] {
  /* background-color: blue; */
  --bg-opacity: 0.25;
  --tile-dim: 20px;
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  margin: 0;
  max-width: unset !important;
  opacity: var(--bg-opacity);
  background-image: var(--bg-pattern-cross);
}

[class*="bg-pattern-"].bg-pattern-dot {
  background-image: var(--bg-pattern-dot);
}

[class*="bg-pattern-"].bg-pattern-dot-square {
  background-image: var(--bg-pattern-dot-square);
}

[class*="bg-pattern-"].bg-pattern-grid {
  background-image: var(--bg-pattern-grid);
}

[class*="bg-pattern-"].bg-pattern-footer {
  background-image: var(--bg-pattern-footer);
}

[class*="bg-pattern-"].bg-theme-light {
  opacity: 0.6;
}

[class*="bg-pattern-"].fixed {
  position: fixed;
}

[class*="bg-pattern-"] svg #plus {
  width: var(--tile-dim);
  height: var(--tile-dim);
}

[class*="masked-"] {
  --mask-y-dim: 50%;
}

[class*="masked-"].landscape {
  --mask-y-dim: 18%;
}

.masked-center {
  -webkit-mask-image: radial-gradient(33% calc(var(--mask-y-dim) * 0.66) at 50% 50%, black, transparent), radial-gradient(60% var(--mask-y-dim) at 50% 50%, black, transparent);
          mask-image: radial-gradient(33% calc(var(--mask-y-dim) * 0.66) at 50% 50%, black, transparent), radial-gradient(60% var(--mask-y-dim) at 50% 50%, black, transparent);
}

/* .masked-center {
	background: red;
	mask-image: radial-gradient(90% 80%, white 0%, transparent 60%, transparent 100%);
} */

.masked-center-top {
  -webkit-mask-image: radial-gradient(45% var(--mask-y-dim) at 50% 0%, black, transparent), radial-gradient(33% var(--mask-y-dim) at 50% 0%, black, transparent);
          mask-image: radial-gradient(45% var(--mask-y-dim) at 50% 0%, black, transparent), radial-gradient(33% var(--mask-y-dim) at 50% 0%, black, transparent);
}

.masked-center-bottom {
  -webkit-mask-image: radial-gradient(45% var(--mask-y-dim) at 50% 100%, black, transparent), radial-gradient(33% var(--mask-y-dim) at 50% 100%, black, transparent);
          mask-image: radial-gradient(45% var(--mask-y-dim) at 50% 100%, black, transparent), radial-gradient(33% var(--mask-y-dim) at 50% 100%, black, transparent);
}

.masked-left {
  /* background-color: blue; */
  -webkit-mask-image: radial-gradient(50% calc(var(--mask-y-dim) * 0.66) at 0% 50%, black, transparent), radial-gradient(80% var(--mask-y-dim) at 0% 50%, black, transparent);
          mask-image: radial-gradient(50% calc(var(--mask-y-dim) * 0.66) at 0% 50%, black, transparent), radial-gradient(80% var(--mask-y-dim) at 0% 50%, black, transparent);
}

.masked-right {
  /* background-color: blue; */
  -webkit-mask-image: radial-gradient(50% calc(var(--mask-y-dim) * 0.66) at 100% 50%, black, transparent), radial-gradient(80% var(--mask-y-dim) at 100% 50%, black, transparent);
          mask-image: radial-gradient(50% calc(var(--mask-y-dim) * 0.66) at 100% 50%, black, transparent), radial-gradient(80% var(--mask-y-dim) at 100% 50%, black, transparent);
}

[class*="bg-masked-image"] {
  /* background-color: blue; */
  --bg-opacity: 0.3;
  --tile-dim: 20px;
  --mask-y-dim: 50%;
}

[class*="bg-masked-image"].landscape {
  --mask-y-dim: 18%;
}

[class*="bg-masked-image"] {
  display: flex;
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  max-width: unset !important;
  opacity: var(--bg-opacity);
  margin: 0 !important;
}

/* background-image: var(--bg-pattern-cross); */

[class*="bg-masked-image"].bg-left-bottom {
  /* left: -50%; */
}

[class*="bg-masked-image"].bg-scale-50 figure,
		[class*="bg-masked-image"].bg-scale-50 svg {
  width: 50%;
}

[class*="bg-masked-image"].bg-scale-50 figure:has(svg), [class*="bg-masked-image"].bg-scale-50 svg:has(svg) {
  width: 100%;
}

[class*="isometric"] img,
	[class*="isometric"] svg {
  width: 300px;
  transform: skewX(-30deg) rotateZ(-45deg) scaleY(0.6);
  transform-origin: bottom center;
  /* transform: rotateX(35.264deg) rotateY(45deg);
		transform-style: preserve-3d;
		transform-origin: center; */
}

[class*="isometric"].plane-right {
  transform: rotateX(35.264deg) rotateY(45deg);
  transform-style: preserve-3d;
  transform-origin: center;
}

[class*="isometric"].plane-horizontal {
}

[class*="perspective-rotate"] {
  perspective: 800px;
}

[class*="perspective-rotate"].perspective-rotate-x img,
		[class*="perspective-rotate"].perspective-rotate-x svg {
  transform: rotateX(45deg);
  /* ángulo de inclinación en eje X */
  transform-style: preserve-3d;
  transform-origin: center;
}

.color-brand {
  color: var(--logo-brand-color);
}

body.blog,
	body.archive.category,
	body.single-post {
  background: var(--bg-color-theme-A);
}

/* Override Tailwind's styles not accepted as default  */

body.single-post ol {
  list-style-type: decimal;
  padding: revert;
}

body.single-post ol li {
  padding-bottom: 1ch;
}

.cat-filter {
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity));
}

.cat-filter:is(.dark *) {
  border-color: rgb(255 255 255 / 0.5);
}

.cat-filter {
  margin-bottom: clamp(2rem, 8vw, 4rem);
}

.cat-filter .cat-filter--grid {
  display: flex;
  flex-flow: row;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: wrap;
  padding-bottom: 1.5rem;
  gap: 0.3rem;
}

.cat-filter .cat-filter--grid > * {
  display: inline-flex;
  width: -moz-fit-content !important;
  width: fit-content !important;
  padding: 0.3rem 1rem;
  font-size: clamp(0.6rem, 3vw, 1rem);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
  border-radius: var(--def-border-radius);
  background-color: rgb(255 255 255 / 0.8);
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
  transition-property: all;
  transition-duration: 300ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  text-transform: uppercase;
}

.cat-filter .cat-filter--grid > * * {
  text-transform: uppercase;
}

.cat-filter .cat-filter--grid > *:hover {
  background-color: var(--main-color);
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

.cat-filter .cat-filter--grid > *:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(51 65 85 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.cat-filter .cat-filter--grid > *:hover:is(.dark *) {
  background-color: var(--main-color);
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

.cat-filter .cat-filter--grid > * {
  /* border-radius: var(--def-border-radius); */
}

.cat-filter .cat-filter--grid > *.current {
  background-color: var(--main-color);
}

.cat-filter .cat-filter--grid > *.current:hover {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

.cat-filter .cat-filter--grid > *.current:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

/*! LAYOUT MODERN 2025: home.php with no header/title, last post as featured, and no pagination */

body.blog,
body.single-post,
body.archive,
body.home {
  --gap-default: clamp(2rem, 8vw, 6rem);
}

body.blog #main > article header.entry-header, body.single-post #main > article header.entry-header, body.archive #main > article header.entry-header, body.home #main > article header.entry-header {
  min-height: var(--whole-header-height);
}

@media (min-width: 1024px) {
  body.blog #main > article header.entry-header, body.single-post #main > article header.entry-header, body.archive #main > article header.entry-header, body.home #main > article header.entry-header {
    min-height: 120px;
  }
}

body.blog .latest-entry, body.single-post .latest-entry, body.archive .latest-entry, body.home .latest-entry {
  padding-bottom: var(--gap-default) !important;
  padding-top: var(--gap-default) !important;
}

@media (min-width: 1024px) {
  body.blog .latest-entry, body.single-post .latest-entry, body.archive .latest-entry, body.home .latest-entry {
    padding-top: 0px !important;
  }
}

body.blog .latest-entries, body.single-post .latest-entries, body.archive .latest-entries, body.home .latest-entries {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--gap-default);
}

@media only screen and (max-width: 980px) {
  body.blog .latest-entries, body.single-post .latest-entries, body.archive .latest-entries, body.home .latest-entries {
    grid-template-columns: repeat(2, 1fr);
    row-gap: calc(var(--gap-default) * 0.5)
  }

  body.blog .latest-entries .entry-header > figure, body.single-post .latest-entries .entry-header > figure, body.archive .latest-entries .entry-header > figure, body.home .latest-entries .entry-header > figure {
    display: none;
  }
}

@media only screen and (max-width: 768px) {
  body.blog .latest-entries, body.single-post .latest-entries, body.archive .latest-entries, body.home .latest-entries {
    grid-template-columns: 1fr
  }
}

body.blog .entry-content:has(.category-entries), body.single-post .entry-content:has(.category-entries), body.archive .entry-content:has(.category-entries), body.home .entry-content:has(.category-entries) {
  /* @apply pt-[var(--gap-default)] lg:pt-0 !important; */
  padding-top: 0 !important;
}

body.blog .category-entries > h2, body.single-post .category-entries > h2, body.archive .category-entries > h2, body.home .category-entries > h2 {
  /* margin-bottom: calc(var(--gap-default) * 0.5) !important; */
  margin-bottom: clamp(3rem, 8vw, 4rem) !important;
}

body.blog .category-entries .entries-grid, body.single-post .category-entries .entries-grid, body.archive .category-entries .entries-grid, body.home .category-entries .entries-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--gap-default);
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}

@media only screen and (max-width: 980px) {
  body.blog .category-entries .entries-grid, body.single-post .category-entries .entries-grid, body.archive .category-entries .entries-grid, body.home .category-entries .entries-grid {
    grid-template-columns: repeat(2, 1fr);
    row-gap: calc(var(--gap-default) * 0.5)
  }
}

@media only screen and (max-width: 640px) {
  body.blog .category-entries .entries-grid, body.single-post .category-entries .entries-grid, body.archive .category-entries .entries-grid, body.home .category-entries .entries-grid {
    grid-template-columns: 1fr;
    row-gap: calc(var(--gap-default) * 1)
  }
}

body.blog .category-entries .category-link, body.single-post .category-entries .category-link, body.archive .category-entries .category-link, body.home .category-entries .category-link {
  display: flex;
  justify-content: flex-end;
  margin-top: 2rem;
}

body.blog .category-entries .category-link a, body.single-post .category-entries .category-link a, body.archive .category-entries .category-link a, body.home .category-entries .category-link a {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: 1ch;
}

body.blog .category-entries ~ .category-entries::after, body.single-post .category-entries ~ .category-entries::after, body.archive .category-entries ~ .category-entries::after, body.home .category-entries ~ .category-entries::after {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 10;
  border-top-width: 1px;
  border-image-source: var(--horiz-line-gradient);
  border-image-slice: 1;
}

body.blog article.type-post, body.single-post article.type-post, body.archive article.type-post, body.home article.type-post {
  border: 0;
  padding-bottom: 0;
  container-type: inline-size;
  container-name: post-excerpt;
}

body.blog article.type-post header.entry-header, body.single-post article.type-post header.entry-header, body.archive article.type-post header.entry-header, body.home article.type-post header.entry-header {
  display: flex;
  flex-flow: column;
  width: 100% !important;
  left: unset !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
  gap: 1.5rem;
}

body.blog article.type-post header.entry-header:has(.content a:hover) > figure img, body.single-post article.type-post header.entry-header:has(.content a:hover) > figure img, body.archive article.type-post header.entry-header:has(.content a:hover) > figure img, body.home article.type-post header.entry-header:has(.content a:hover) > figure img {
  scale: 1.05;
}

body.blog article.type-post header.entry-header:has(.content a:hover) > figure.duotone img, body.single-post article.type-post header.entry-header:has(.content a:hover) > figure.duotone img, body.archive article.type-post header.entry-header:has(.content a:hover) > figure.duotone img, body.home article.type-post header.entry-header:has(.content a:hover) > figure.duotone img {
  scale: 1;
  mix-blend-mode: normal;
  filter: grayscale(0) contrast(1) blur(0);
}

body.blog article.type-post header.entry-header > figure, body.single-post article.type-post header.entry-header > figure, body.archive article.type-post header.entry-header > figure, body.home article.type-post header.entry-header > figure {
  width: 100%;
  padding-bottom: 0 !important;
  border-radius: var(--def-border-radius);
  overflow: clip;
}

body.blog article.type-post header.entry-header > figure img, body.single-post article.type-post header.entry-header > figure img, body.archive article.type-post header.entry-header > figure img, body.home article.type-post header.entry-header > figure img {
  width: 100%;
  /* aspect-ratio: 16 / 9; */
  aspect-ratio: 18 / 9;
  /* Este cliente usa featured images con aspect ratio particulares ???  */
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: left center;
     object-position: left center;
  scale: 1;
  will-change: auto;
  transition: all 0.8s cubic-bezier(0.2, 1, 0.3, 1);
}

body.blog article.type-post header.entry-header .content, body.single-post article.type-post header.entry-header .content, body.archive article.type-post header.entry-header .content, body.home article.type-post header.entry-header .content {
  z-index: 5;
}

body.blog article.type-post header.entry-header .content .cat, body.single-post article.type-post header.entry-header .content .cat, body.archive article.type-post header.entry-header .content .cat, body.home article.type-post header.entry-header .content .cat {
  position: relative;
  z-index: 22;
  width: -moz-fit-content;
  width: fit-content;
}

body.blog article.type-post header.entry-header .content .cat a, body.single-post article.type-post header.entry-header .content .cat a, body.archive article.type-post header.entry-header .content .cat a, body.home article.type-post header.entry-header .content .cat a {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  /* background: rgba(56, 173, 213, 1); */
  background: var(--cta-color);
  background: var(--main-color);
  color: white !important;
  padding: 0.3ch 1.5ch;
  background-image: unset !important;
  font-size: clamp(0.7rem, 2cqw, 0.9rem);
  line-height: 1.6;
}

body.blog article.type-post header.entry-header .content > a:before, body.single-post article.type-post header.entry-header .content > a:before, body.archive article.type-post header.entry-header .content > a:before, body.home article.type-post header.entry-header .content > a:before {
  content: "";
  position: absolute;
  inset: 0;
  /* background-color: var(--bg-color); */
  z-index: 9;
}

body.blog article.type-post header.entry-header .content .title-date, body.single-post article.type-post header.entry-header .content .title-date, body.archive article.type-post header.entry-header .content .title-date, body.home article.type-post header.entry-header .content .title-date {
  padding-bottom: 0;
}

body.blog article.type-post header.entry-header .content .entry-title, body.single-post article.type-post header.entry-header .content .entry-title, body.archive article.type-post header.entry-header .content .entry-title, body.home article.type-post header.entry-header .content .entry-title {
  font-size: clamp(1.3rem, 3.5cqw, 3.5rem);
  line-height: 1.75ch;
  text-transform: unset;
  text-wrap: unset;
}

body.blog article.type-post header.entry-header .content .date, body.single-post article.type-post header.entry-header .content .date, body.archive article.type-post header.entry-header .content .date, body.home article.type-post header.entry-header .content .date {
  font-size: clamp(0.7rem, 1.5cqw, 1rem);
  background-color: transparent;
  border: 0;
  border-radius: unset;
  padding: 0 !important;
  margin-bottom: 0;
  color: color-mix(in srgb, var(--heading-color), transparent 66%);
  /* color: color-mix(in srgb, black, transparent 66%); */
}

body.blog article.type-post header.entry-header .content .entry-cta, body.single-post article.type-post header.entry-header .content .entry-cta, body.archive article.type-post header.entry-header .content .entry-cta, body.home article.type-post header.entry-header .content .entry-cta {
  margin-top: 1ch !important;
  width: clamp(25px, 4cqw, 40px);
}

@container post-excerpt (width > 685px) {
  body.blog article.type-post.featured header.entry-header, body.single-post article.type-post.featured header.entry-header, body.archive article.type-post.featured header.entry-header, body.home article.type-post.featured header.entry-header {
    flex-flow: row;
    align-items: center;
  }

  body.blog article.type-post.featured header.entry-header > *, body.single-post article.type-post.featured header.entry-header > *, body.archive article.type-post.featured header.entry-header > *, body.home article.type-post.featured header.entry-header > * {
    flex-basis: 50%;
  }
}

body.blog article.type-post.featured, body.single-post article.type-post.featured, body.archive article.type-post.featured, body.home article.type-post.featured {
  /* background: yellow; */
}

body.blog article.type-post.featured header.entry-header, body.single-post article.type-post.featured header.entry-header, body.archive article.type-post.featured header.entry-header, body.home article.type-post.featured header.entry-header {
  gap: calc(var(--gap-default) * 0.75);
}

body.blog article.type-post.featured header.entry-header h2, body.single-post article.type-post.featured header.entry-header h2, body.archive article.type-post.featured header.entry-header h2, body.home article.type-post.featured header.entry-header h2 {
  text-wrap: unset;
}

body.single-post {
  --max-w: 50rem;
}

body.single-post #main > article .entry-content {
  display: flex;
  justify-content: center;
  padding-top: var(--gap-default) !important;
}

@media (min-width: 1024px) {
  body.single-post #main > article .entry-content {
    padding-top: 0px !important;
  }
}

body.single-post #main > article .entry-content .post-content {
  max-width: var(--max-w);
}

body.single-post #main > article .entry-content .post-content header {
  width: 100%;
  left: unset;
  padding-top: var(--def-layout-x-padding);
  flex-flow: column;
  margin-bottom: 5ch;
}

body.single-post #main > article .entry-content .post-content header .date-reading-time .reading-time {
  display: flex;
  align-items: center;
  font-size: clamp(0.7rem, 1cqw, 0.9rem);
}

body.single-post #main > article .entry-content .post-content header:has(.content a:hover) > figure img {
  scale: 1;
}

body.single-post #main > article .entry-content .post-content header h1 {
  font-size: clamp(1.3rem, 8vw, 3rem);
  line-height: 1.75ch;
  text-transform: unset;
  text-wrap: unset;
  padding: 0.3ch 0;
}

body.single-post #main > article .entry-content .post-content h2 {
  font-size: clamp(1.1rem, 8vw, 2rem);
  padding-top: 1.5ch;
}

body.single-post #main > article .entry-content .post-content h2 b,
					body.single-post #main > article .entry-content .post-content h2 strong {
  font-weight: inherit !important;
}

body.single-post #main > article .entry-content .post-content h3 {
  font-size: clamp(1rem, 8vw, 1.4rem);
  padding-top: 1.5ch;
}

body.single-post #main > article .entry-content .post-content > figure {
  padding-top: 4ch;
  padding-bottom: 4ch;
}

body.single-post .date-reading-time {
  margin-bottom: clamp(1.4rem, 5vw, 2rem);
  display: flex;
  flex-flow: row;
  gap: 1rem;
  align-items: center;
  color: rgb(255 255 255 / 0.5);
}

body.single-post .date-reading-time .date {
  display: flex;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1;
  text-transform: uppercase;
  font-size: 1.1rem;
  border-width: 1px;
  border-radius: 999px;
  border-color: rgb(51 65 85 / 0.5);
  background-color: rgb(255 255 255 / 0.7);
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 6px;
  padding-bottom: 6px;
}

body.single-post .date-reading-time .date:is(.dark *) {
  border-color: rgb(255 255 255 / 0.6);
  background-color: rgb(255 255 255 / 0.2);
}

body.single-post .date-reading-time .reading-time {
  display: flex;
  flex-flow: row;
  gap: 0.4rem;
  font-size: 1.1rem;
}

/*! SINGLE POSTS STYLES */

body.single-post .post .entry-content {
  /* padding: var(--default-section-vert-padding) 0; */
  padding-top: var(--gap-default) !important;
}

@media (min-width: 1024px) {
  body.single-post .post .entry-content {
    padding-top: 0px !important;
  }
}

body.archive.category #main > article > .entry-header .entry-header-content {
  display: flex;
  flex-flow: column;
  padding-top: var(--default-section-vert-padding);
}

body.archive.category #main > article > .entry-header .entry-header-content h1 {
  font-weight: 600;
}

body.archive.category #main > article > .entry-header .entry-header-content .goback-link a {
  display: grid;
  grid-template-columns: min-content auto;
  align-items: center;
  gap: 1ch;
}

body.archive.category #main > article > .entry-header .entry-header-content .goback-link a svg {
  order: -1;
  rotate: 180deg;
}

section:has(.related-posts)::after {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 10;
  border-top-width: 1px;
  /* border-image-source: linear-gradient(90deg, #2c2238, #40407e 15%, #33223a 48%, #4e375a 80%, #271c2a); */
  /* border-image-source: linear-gradient(90deg, rgb(62 110 100 / 0%), rgb(50 98 88) 15%, rgb(39 178 148 / 45%) 48%, rgb(50 98 88) 80%, rgb(62 110 100 / 0%)); */
  border-image-source: var(--horiz-line-gradient);
  border-image-slice: 1;
}

body.archive.post-type-archive-webinar-ondemand .archive-grid-2cols, body.archive.post-type-archive-ebook .archive-grid-2cols {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(2rem, 8vw, 5rem);
}

@media only screen and (max-width: 767px) {
  body.archive.post-type-archive-webinar-ondemand .archive-grid-2cols, body.archive.post-type-archive-ebook .archive-grid-2cols {
    grid-template-columns: 1fr
  }
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post, body.archive.post-type-archive-ebook article.card-archive-post {
  border-radius: var(--card-border-radius);
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post:is(.dark *), body.archive.post-type-archive-ebook article.card-archive-post:is(.dark *) {
  background-color: rgb(255 255 255 / 0.2);
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post a, body.archive.post-type-archive-ebook article.card-archive-post a {
  text-decoration: none;
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post a:hover .featured-img figure, body.archive.post-type-archive-ebook article.card-archive-post a:hover .featured-img figure {
  scale: 1.05;
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post a:hover .read-more svg, body.archive.post-type-archive-ebook article.card-archive-post a:hover .read-more svg {
  animation: slide-right 0.55s cubic-bezier(0.2, 1, 0.3, 1);
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post:last-child, body.archive.post-type-archive-ebook article.card-archive-post:last-child {
  margin-bottom: 0 !important;
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post p:first-of-type, body.archive.post-type-archive-ebook article.card-archive-post p:first-of-type {
  margin-top: 0;
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post h2, body.archive.post-type-archive-ebook article.card-archive-post h2 {
  font-size: clamp(1.3rem, 5vw, 2rem);
  margin-top: 0;
  /* color: currentColor; */
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post p:last-of-type, body.archive.post-type-archive-ebook article.card-archive-post p:last-of-type {
  font-size: 16px;
  margin-bottom: 0;
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post .featured-img, body.archive.post-type-archive-ebook article.card-archive-post .featured-img {
  overflow: hidden;
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post .featured-img figure, body.archive.post-type-archive-ebook article.card-archive-post .featured-img figure {
  transition: all 0.3s ease;
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post .featured-img figure img, body.archive.post-type-archive-ebook article.card-archive-post .featured-img figure img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom;
     object-position: bottom;
  aspect-ratio: 1.4 / 1;
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post .entry-content, body.archive.post-type-archive-ebook article.card-archive-post .entry-content {
  min-height: unset !important;
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post .description, body.archive.post-type-archive-ebook article.card-archive-post .description {
  padding: var(--card-padding);
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post .category, body.archive.post-type-archive-ebook article.card-archive-post .category {
  display: flex;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1;
  text-transform: uppercase;
  font-size: 0.7rem;
  border-width: 1px;
  margin-bottom: 0.75rem;
  border-radius: 999px;
  border-color: rgb(51 65 85 / 0.5);
  padding-left: 12px;
  padding-right: 12px;
  padding-top: 6px;
  padding-bottom: 6px;
  color: rgb(51 65 85 / 0.5);
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post .category:is(.dark *), body.archive.post-type-archive-ebook article.card-archive-post .category:is(.dark *) {
  border-color: rgb(255 255 255 / 0.6);
  color: rgb(255 255 255 / 0.6);
}

body.archive.post-type-archive-webinar-ondemand article.card-archive-post .read-more figure, body.archive.post-type-archive-ebook article.card-archive-post .read-more figure {
  color: var(--main-color);
  margin-top: calc(var(--card-padding) * 0.5) !important;
}

body.archive.post-type-archive-webinar-ondemand .navigation.pagination, body.archive.post-type-archive-ebook .navigation.pagination {
  margin-top: 6rem;
}

/*! Posts Archive Pagination */

.navigation.pagination {
  --item-dim: 2ch;
  display: flex;
  justify-content: center;
  font-size: clamp(1rem, 5vw, 1rem);
}

.navigation.pagination .screen-reader-text {
  display: none;
}

.navigation.pagination .nav-links {
  /* width: fit-content; */
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.navigation.pagination .nav-links .nav-item {
  display: flex;
  height: 3ch;
  aspect-ratio: 1;
  justify-content: center;
  align-items: center;
  border-radius: 999px;
  background: white;
  transition: all 0.3s ease;
}

.navigation.pagination .nav-links .nav-item .item-content {
  position: relative;
}

.navigation.pagination .nav-links .nav-item .item-content::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 999px;
}

/* > .item-content {
				grid-area: 1 / 1;
				display: grid;
				justify-content: center;
				align-items: center;
				justify-self: center;
				width: calc(var(--item-dim));
				aspect-ratio: 1;
				z-index: 5;
				padding: 1rem;
				padding-bottom: 1rem !important;
				background: var(--main-color);
				border-radius: 50%;
				background-image: none !important;
				color: var(--main-color-darker);

				@apply bg-white hover:bg-[var(--main-color)] !text-black;
				scale: 1;
				transition: all 0.3s ease;
				&.bt-link {
					&:hover {
						scale: 1.1;
					}
				}
			} */

.navigation.pagination .nav-links .nav-item.current {
  pointer-events: none;
  background-color: rgb(255 255 255 / 0.1);
  color: rgb(255 255 255 / 0.3);
  /* @apply bg-white text-black; */
}

.navigation.pagination .nav-links a:hover {
  background: var(--cta-color);
}

/*! CONTENT WITH SIDEBAR WIDGET */

.has-sidebar {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 3rem;
}

@media only screen and (max-width: 950px) {
  .has-sidebar {
    grid-template-columns: 1fr
  }
}

/*! SOCIAL SHARE BUTTONS */

.social-share-buttons {
  --dim: 14px;
  --padd: 0.75rem;
  display: flex;
  gap: 0.2rem;
  justify-content: flex-end;
  margin-top: var(--default-section-vert-padding);
}

.social-share-buttons [data-socialshare] {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.5rem;
}

.social-share-buttons [data-socialshare] figure {
  display: flex;
  justify-content: center;
  align-items: center;
  /* width: var(--dim); */
  aspect-ratio: 1;
  border-radius: 999px;
  padding: var(--padd);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  transition: all 0.6s cubic-bezier(0.2, 1, 0.3, 1);
  color: var(--bg-color-theme-A);
}

.social-share-buttons [data-socialshare] figure svg {
  width: var(--dim);
  height: var(--dim);
}

.social-share-buttons [data-socialshare]:hover figure {
  color: white;
  background: var(--main-color);
}

:root {
  --button-font-size: clamp(1.1rem, 3.5vw, 1.2rem);
  /* --bg-color: radial-gradient(80% 80% at 50% -15%, #27b294 70%, #1d997e 100%); */
  --bg-color: var(--main-color);
  /* --bg-color: #34f1c7; */
  --bg-color-hover: var(--highlight-color);
  --bg-color-outline: transparent;
  --padding-y: 0.75ch;
  --padding-x: 2.5ch;
  --button-txt-color: white;
  /* --txt-color: #293846; */
  --button-txt-color-hover: white;
  --button-border-radius: 60px;
  --button-border-width: 1px;
  --button-border-color: var(--bg-color);
}

.wp-block-buttons {
  /* gap: 2rem; */
  /* margin-top: 2rem; */
  padding-top: 2rem;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  row-gap: clamp(1rem, 2vw, 1.5rem);
}

.wp-block-buttons .wp-block-button {
  flex-shrink: 0 !important;
}

.wp-element-button,
.menu-bt a,
button#submit {
  scale: 1;
  background: var(--bg-color);
  letter-spacing: 0px;
  /* text-transform: capitalize; */
  border-radius: var(--button-border-radius);
  padding-top: var(--padding-y);
  padding-bottom: var(--padding-y);
  padding-left: var(--padding-x);
  padding-right: var(--padding-x);
  color: var(--button-txt-color);
  text-decoration-line: none !important;
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(0 0 0 / 0.4);
  --tw-shadow: var(--tw-shadow-colored);
}

.card.wp-element-button,.card
.menu-bt a,
button.card#submit {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(0 0 0 / 0.15);
  --tw-shadow: var(--tw-shadow-colored);
}

.card.wp-element-button:is(.dark *),.card
.menu-bt a:is(.dark *),
button.card#submit:is(.dark *) {
  --tw-shadow-color: rgb(255 255 255 / 0.15);
  --tw-shadow: var(--tw-shadow-colored);
}

.card.wp-element-button,.card
.menu-bt a,
button.card#submit {
  /* box-shadow: var(--card-shadow); */
}

.card.border-gradient.wp-element-button,.card.border-gradient
.menu-bt a,
button.card.border-gradient#submit {
  box-shadow:
				0px 1px 3px rgba(39, 178, 148, 0.1),
				0px 6px 12px rgba(39, 178, 148, 0.08);
}

.os-window.wp-element-button .os-window-content,.os-window
.menu-bt a .os-window-content,
button.os-window#submit .os-window-content {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(100 116 139 / 0.3);
  --tw-shadow: var(--tw-shadow-colored);
}

.os-window.win-theme-white.wp-element-button .os-window-content,.os-window.win-theme-white
.menu-bt a .os-window-content,
button.os-window.win-theme-white#submit .os-window-content {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(15 23 42 / 0.3);
  --tw-shadow: var(--tw-shadow-colored);
}

.os-window.win-theme-white.wp-element-button.shadow-light .os-window-content,.os-window.win-theme-white
.menu-bt a.shadow-light .os-window-content,
button.os-window.win-theme-white#submit.shadow-light .os-window-content {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: #1F8E76;
  --tw-shadow: var(--tw-shadow-colored);
}

figure.local-video.wp-element-button::before,figure.local-video
.menu-bt a::before,figure
button.local-video#submit::before {
  grid-area: 1 / 1;
  content: "";
  /* background-color: red; */
  display: block;
  border-radius: var(--def-border-radius);
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: #cbd5e1;
  --tw-shadow: var(--tw-shadow-colored);
}

figure.local-video.wp-element-button:is(.dark *)::before,figure.local-video
.menu-bt a:is(.dark *)::before,figure
button.local-video#submit:is(.dark *)::before {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(255 255 255 / 0.6);
  --tw-shadow: var(--tw-shadow-colored);
}

.wp-element-button:hover,
.menu-bt a:hover,
button#submit:hover {
  color: var(--button-txt-color-hover);
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(51 65 85 / 0.4);
  --tw-shadow: var(--tw-shadow-colored);
}

.wp-element-button,
.menu-bt a,
button#submit {
  border: var(--button-border-width) solid var(--button-border-color);
  font-size: var(--button-font-size);
  line-height: 1.75ch;
  /* text-transform: uppercase; */
  will-change: auto;
  transition:
		scale 0.3s cubic-bezier(0.2, 1, 0.3, 1),
		background 0.6s cubic-bezier(0.2, 1, 0.3, 1),
		border-color 0.6s cubic-bezier(0.2, 1, 0.3, 1);
}

.wp-element-button:hover, .menu-bt a:hover, button#submit:hover {
  scale: 1.1;
  /* color: white; */
  background: var(--bg-color-hover);
  border-color: var(--bg-color-hover);
}

.wp-element-button:has(i.icon) i.icon, .menu-bt a:has(i.icon) i.icon, button#submit:has(i.icon) i.icon {
  margin-left: 1ex;
}

.menu-bt a,
.sub-menu .wp-block-button a {
  font-size: var(--nav-text-size);
  line-height: 2.6ch;
}

.outline {
  outline-style: none !important;
}

.outline .wp-element-button {
  box-shadow: none;
  background-color: var(--bg-color-outline);
  color: var(--bg-color) !important;
}

.outline .wp-element-button:hover {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(51 65 85 / 0.4);
  --tw-shadow: var(--tw-shadow-colored);
  border-color: var(--bg-color-hover);
  background-color: var(--bg-color-hover);
  color: var(--button-txt-color-hover) !important;
}

.outline.white .wp-element-button {
  color: white !important;
  border-color: white;
}

.outline.white .wp-element-button:hover {
  border-color: var(--bg-color-hover);
}

.white:not(.outline) {
  outline-style: none !important;
}

.white:not(.outline) .wp-element-button {
  box-shadow: none;
  background-color: white;
  border-color: white;
  /* color: var(--main-color) !important; */
  color: black !important;
  mix-blend-mode: lighten;
}

.white:not(.outline) .wp-element-button:hover {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(51 65 85 / 0.4);
  --tw-shadow: var(--tw-shadow-colored);
  border-color: var(--bg-color-hover);
  background-color: var(--bg-color-hover);
  mix-blend-mode: unset;
  color: var(--button-txt-color-hover) !important;
}

.menu-bt {
  display: flex;
}

.menu-bt a {
  padding-top: 0.2ch;
  padding-bottom: 0.2ch;
  padding-left: 2ch;
  padding-right: 2ch;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.menu-bt a:hover {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  scale: 1.02;
}

.menu-bt.icon a {
  display: grid !important;
  grid-template-columns: min-content auto;
  grid-gap: 5px;
  align-items: center;
  justify-content: center;
}

.menu-bt.icon a::after {
  grid-column: 1;
  grid-row: 1;
  content: "\f095";
  font-family: "pictauicons";
  color: currentColor;
  margin-top: 0.2ch;
}

.above-header-wrap .menu-bt a {
  display: flex;
  min-width: 120px;
  justify-content: center;
  border-color: transparent;
  background-color: rgb(255 255 255 / 0.05);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.above-header-wrap .menu-bt a:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity)) !important;
}

.main-nav-desktop .menu-bt a {
  display: flex;
  min-width: 120px;
  justify-content: center;
}

/* !ALL CARDS STYLES AND LAYOUTS */

/*  @ CSS classes for variants
    @ transparent       Card background transparent
    @ shadow            Box shadow
    @ bg-dark           Card background color dark --> text white and button inverted!
		@ v-align-center		Align card vertically center (align-self: center)


  You need the following blocks structure @ WP editor
    --- Group @class: card , @variants: content-x-center, transparent, shadow, media-img, media-left, bg-dark...
        --- Group ( card container)
            --- Image / svg
            --- Group
                --- Heading + content

*/

:root {
  --default-card-padding: clamp(2rem, 5vw, 3rem);
  --card-padding: var(--default-card-padding);
  --card-border-radius: var(--def-border-radius);
  --card-border-width: 1px;
  --card-border-color: rgba(0, 0, 0, 0.1);
  --card-background: white;
  --card-icon-dim: 20px;
  --card-icon-padd: 0.75ch;
}

.pct-3cols:has(> .card):has(.is-card-icon) {
  padding-left: calc(var(--card-icon-dim) - var(--card-icon-padd));
}

.card {
  border-radius: var(--card-border-radius);
  overflow: clip;
  padding: var(--card-padding);
  background: var(--card-background, white);
  border: var(--card-border-width) solid var(--card-border-color);
  container-type: inline-size;
  container-name: pctcard;
}

.card:last-child {
  margin-bottom: 0 !important;
}

.card p:first-of-type {
  margin-top: 0;
}

.card h2,
	.card h3,
	.card h4 {
  padding-top: 0;
  margin-top: 0;
  /* color: currentColor; */
}

/* .wp-block-button {
		@apply mt-[var(--def-layout-x-padding)] !important;
	} */

.card p:last-of-type {
  margin-bottom: 0;
}

.card.v-align-top > * {
  justify-content: flex-start !important;
}

/*? variants */

.card.transparent {
  background-color: transparent !important;
  border: 0;
}

.card.shadow {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(0 0 0 / 0.15);
  --tw-shadow: var(--tw-shadow-colored);
}

.card.shadow:is(.dark *) {
  --tw-shadow-color: rgb(255 255 255 / 0.15);
  --tw-shadow: var(--tw-shadow-colored);
}

.card.shadow {
  /* box-shadow: var(--card-shadow); */
}

.card.bordered {
  --border-padding: 0.4rem;
  /* background-color: transparent !important; */
  padding: var(--border-padding);
  background: rgb(from var(--card-background) r g b / 25%);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
}

.card.bordered > * {
  display: flex;
  justify-content: center;
  flex-flow: column;
  height: 100%;
  padding: var(--card-padding);
  background: var(--card-background, white);
  border-radius: calc(max(var(--card-border-radius) - var(--border-padding), 0.25rem));
  border: var(--card-border-width) solid var(--card-border-color);
}

.card:has(.is-card-icon) {
  --icon-dim: 20px;
  position: relative;
  display: flex;
  place-content: center;
  height: 100%;
  overflow: initial;
}

.card:has(.is-card-icon) > * {
  padding-left: max(var(--card-padding) * 0.5, 1rem);
}

.card:has(.is-card-icon) .is-card-icon {
  width: -moz-fit-content !important;
  width: fit-content !important;
  aspect-ratio: 1 / 1;
  /* height: fit-content !important; */
  position: absolute;
  top: 50%;
  left: 0;
  translate: calc(-50% + (var(--card-padding) * -1)) -50%;
  background: var(--heading-color);
  border-radius: 100%;
  padding: var(--card-icon-padd);
  color: white;
}

.card:has(.is-card-icon) .is-card-icon img,
			.card:has(.is-card-icon) .is-card-icon svg {
  width: var(--card-icon-dim);
  height: var(--card-icon-dim);
}

.card:has(.is-card-icon).bordered > * {
  display: flex;
  justify-content: center;
  padding-left: calc(var(--card-padding) + max(var(--card-padding) * 0.5, 1.25rem));
}

.card:has(.is-card-icon).bordered .is-card-icon {
  /* --delta-x: calc(var(--border-padding) * 0.5); */
  --delta-x: calc(var(--icon-dim) * 0.5 + var(--border-padding));
  left: 0;
  /* transform: translateX(calc(var(--icon-dim) - var(--delta-x))); */
  transform: translateX(var(--delta-x));
}

.card:has(.hero-image) .hero-image {
  padding: 0 !important;
}

.card:has(.hero-image):has(.hero-image.align-bottom) > * {
  justify-content: space-between !important;
}

.card:has(.hero-image):has(.hero-image.align-bottom) > * .hero-image {
  margin-top: auto !important;
}

.card:has(.hero-image):has(.align-right, .align-left) > * {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  padding-top: 0px;
}

@media (min-width: 768px) {
  .card:has(.hero-image):has(.align-right, .align-left) > * {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.card:has(.hero-image):has(.align-right, .align-left) > * {
  gap: 0;
}

.card:has(.hero-image):has(.align-right, .align-left) > * > *:not(.hero-image) {
  padding: var(--card-padding);
}

.card:has(.hero-image):has(.align-right, .align-left) .hero-image {
  margin-top: 0 !important;
  height: 100%;
}

.card:has(.hero-image):has(.align-right, .align-left) .hero-image > * {
  height: 100%;
}

.card:has(.hero-image):has(.align-right, .align-left) .hero-image > * figure {
  height: 100% !important;
}

.card:has(.hero-image):has(.align-right, .align-left) .hero-image > * figure > * {
  height: 100%;
}

.card:has(.hero-image):has(.align-right, .align-left) .hero-image.align-right {
  order: 0;
}

@media (min-width: 768px) {
  .card:has(.hero-image):has(.align-right, .align-left) .hero-image.align-right {
    order: 9999;
  }
}

.card:has(.hero-image):has(.align-right, .align-left) .hero-image.align-right {
  /* order: 1;  */
}

.card:has(.hero-image):has(.align-right, .align-left) .hero-image.align-left {
  order: 0;
}

@media (min-width: 768px) {
  .card:has(.hero-image):has(.align-right, .align-left) .hero-image.align-left {
    order: -9999;
  }
}

.card:has(.hero-image):has(.align-right, .align-left) .hero-image.align-left {
  /* order: -1; */
}

.card:has(.hero-image):has(.align-right, .align-left):has(.align-left) > * > *:not(.hero-image) {
  padding: var(--card-padding);
}

.card:has(.hero-image) > * {
  padding: 0;
}

.card:has(.hero-image) > * > *:not(.hero-image) {
  padding: var(--card-padding);
}

.card:has(.hero-image) > * > p {
  margin-bottom: 3ch !important;
  /* background: red; */
  /* margin-bottom: 1rem; */
}

.card:has(.hero-image) > * .hero-image {
  padding: var(--border-padding) !important;
  border: 0 !important;
}

.card:has(.hero-image) > * .hero-image a {
  margin-top: 0 !important;
}

.card:has(.hero-image) > * .hero-image figure {
  position: relative;
}

.card:has(.hero-image) > * .hero-image figure > * {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.card:has(.hero-image) > * .hero-image > * {
  border-radius: calc(max(var(--card-border-radius) - (var(--border-padding) * 2), 0.3rem)) !important;
  overflow: clip;
}

.card:has(.hero-image) > * .hero-image.border > * {
  border: var(--card-border-width) solid var(--card-border-color);
}

.card:has(.hero-image) > * .hero-image.has-bg {
  --img-background: darkslateblue;
  --img-background-gradient: var(--bg-gradient-card);
}

.card:has(.hero-image) > * .hero-image.has-bg > * {
  background: var(--img-background);
}

.card:has(.hero-image) > * .hero-image.has-bg > *::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--img-background-gradient);
}

.card:has(.hero-image) > * .hero-image.has-bg.blur > *::before {
  filter: blur(60px);
}

.card:has(.hero-image) > * .hero-image.rotate-x > * {
  padding-top: calc(var(--card-padding) * 0.5);
  padding-bottom: 0;
}

.card:has(.hero-image) > * .hero-image.rotate-x figure {
  perspective: 800px;
  scale: 1.6;
  translate: 33%;
}

.card:has(.hero-image) > * .hero-image.rotate-x figure > img,
						.card:has(.hero-image) > * .hero-image.rotate-x figure > svg {
  transform: rotateX(45deg);
  transform-style: preserve-3d;
  transform-origin: center bottom;
  translate: var(--card-padding) 0;
  scale: 1.15;
}

.card.padd-min {
  --card-padding: calc(var(--default-card-padding) * 0.5);
}

.card.stretch-h-full {
  width: calc(100vw * 0.5) !important;
}

.card.media-img {
  padding: 0;
}

.card.media-img > div:not(:first-child) {
  padding: var(--card-padding);
}

.card.media-bg-glassy {
  --inner-padding: 0.75rem;
  --border-radius: var(--card-border-radius);
  padding: 0;
  height: 100%;
}

.card.media-bg-glassy > div {
  display: grid;
  grid-template-areas: "stack";
  height: 100%;
  min-height: 360px;
}

/* place-content: center; */

.card.media-bg-glassy > div figure {
  z-index: 1;
}

.card.media-bg-glassy > div figure > * {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100% !important;
}

.card.media-bg-glassy > div .content {
  z-index: 10;
}

.card.media-bg-glassy > div::before {
  content: "";
  position: absolute;
  inset: 0;
  /* background: var(--dark-overlay-header); */
  background: var(--dark-overlay-from-bottom);
  z-index: 2;
}

.card.media-bg-glassy > div > * {
  grid-area: stack;
  height: 100% !important;
}

.card.media-bg-glassy > div > *:last-child {
  padding: var(--inner-padding);
  display: flex;
  justify-content: flex-end;
}

.card.media-bg-glassy > div > *:last-child > .inner-card {
  display: grid;
  grid-template-columns: auto min-content;
  align-items: center;
  gap: 1rem;
  padding: calc(var(--card-padding) * 0.66);
  border-radius: calc(var(--border-radius) - (var(--inner-padding) * 0.66));
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  /* background-color: rgba(255, 255, 255, 0.15); */
  background-color: rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: white;
}

.card.media-bg-glassy > div > *:last-child > .inner-card h2,
						.card.media-bg-glassy > div > *:last-child > .inner-card h3 {
  font-size: clamp(1.6rem, 5vw, 1.8rem);
  margin-bottom: 0 !important;
  text-align: center;
  text-wrap: balance !important;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
}

.card.media-bg-glassy > div > *:last-child > .inner-card h2,
						.card.media-bg-glassy > div > *:last-child > .inner-card h3,
						.card.media-bg-glassy > div > *:last-child > .inner-card p {
  color: white;
}

@container pctcard (max-width: 450px) {
  .card.media-bg-glassy h2 {
    text-align: left !important;
  }
}

.card.media-left {
  padding: 0;
}

.card.media-left > div {
  display: grid;
  grid-template-columns: auto 1fr;
}

/* gap: var(--def-layout-x-padding); */

@media only screen and (max-width: 768px) {
  .card.media-left > div {
    grid-template-columns: 1fr
  }
}

.card.media-left > div > figure {
  width: auto !important;
  justify-content: center;
}

.card.media-left > div figure + * {
  padding: var(--card-padding);
}

.card.media-left > div > figure {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  padding: var(--card-padding);
  padding-right: 0;
}

.card.media-left.media-img > div > figure {
  padding: 0;
}

.card.full-width > figure.alignfull {
  width: 100%;
  max-width: unset !important;
}

.card.border-gradient {
  --border-width: 1.8px;
  position: relative;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.card.border-gradient::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--card-border-radius);
  border: var(--border-width) solid transparent;
  /* background: linear-gradient(140deg, red, orange, yellow, green, indigo, blue) border-box; */
  background: linear-gradient(170deg, rgba(39, 178, 148, 0) 0%, rgba(39, 178, 148, 0.3) 55%, rgba(39, 178, 148, 0.06) 100%) border-box;
  -webkit-mask:
				linear-gradient(#fff 0 0) padding-box,
				linear-gradient(#fff 0 0);
          mask:
				linear-gradient(#fff 0 0) padding-box,
				linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
}

.card.border-gradient.shadow {
  box-shadow:
				0px 1px 3px rgba(39, 178, 148, 0.1),
				0px 6px 12px rgba(39, 178, 148, 0.08) !important;
}

.card.border-gradient.no-border {
  border: 0 !important;
}

.slider-card {
  --card-padding: calc(var(--default-card-padding) * 0.66) !important;
}

/* --card-background: rgba(255, 255, 255, 0.1); */

.slider-card.bordered {
  --border-padding: 0.4rem;
  padding: var(--border-padding) !important;
  background: rgb(from var(--card-background) r g b / 25%);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  border-radius: var(--card-border-radius);
}

.slider-card.bordered > * {
  display: flex;
  justify-content: center;
  height: 100%;
  padding: var(--card-padding);
  background: rgb(from var(--card-background) r g b / 66%);
  border-radius: calc(max(var(--card-border-radius) - var(--border-padding), 0.25rem));
  border: var(--card-border-width) solid var(--card-border-color);
}

.cta-arrow {
  --width: 24px;
  --bg-color: rgba(255, 255, 255, 0.15);
  --border-color: rgba(255, 255, 255, 0.1);
  width: -moz-fit-content !important;
  width: fit-content !important;
  height: intrinsic !important;
  aspect-ratio: 1 / 1;
  color: currentColor;
  background-color: var(--bg-color);
  border: 1px solid var(--border-color);
  border-radius: 100%;
  /* color: #343434; */
  padding: 0.5rem;
}

.cta-arrow svg {
  width: var(--width) !important;
  height: var(--width) !important;
}

.cta-arrow svg * {
  stroke-width: 20;
}

.cta-arrow.no-bg {
  background-color: transparent;
  border-color: transparent;
}

.bg-noise::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: calc(var(--card-border-radius) - var(--border-width));
  background-position: 50%;
  background-image: url(/xen_media/noise-bg.webp);
  background-repeat: repeat;
  background-size: 338px 301px;
  mix-blend-mode: overlay;
  opacity: 0.1;
}

.card-icon {
  --icon-dim: 40px;
  display: flex;
  flex-flow: column;
}

.card-icon > figure {
  color: white;
  padding-bottom: 0.33rem;
}

.card-icon > figure img,
		.card-icon > figure svg {
  width: var(--icon-dim);
  height: var(--icon-dim);
}

.card-icon icon[class*="grad-"] {
  display: flex;
  width: var(--icon-dim) !important;
  margin: 0 !important;
  aspect-ratio: 1;
  -webkit-mask-size: contain;
          mask-size: contain;
  margin-bottom: 0.33rem !important;
}

.card-icon h4 {
  line-height: 1.8ch;
}

.card-icon p {
  font-size: clamp(0.7rem, 4vw, 0.85rem);
}

:has(> figure.glow) {
  position: relative;
}

.is-bg.glow {
  --dim: 12px;
  --offset: 30%;
  --scale: 25;
  --opacity: 0.11;
  display: flex;
  color: var(--main-color);
}

.is-bg.glow > * {
  opacity: var(--opacity);
  filter: blur(1.5px);
  scale: var(--scale);
  width: var(--dim);
  height: var(--dim);
}

.is-bg.glow.glow-landscape > * {
  scale: calc(var(--scale) * 2) var(--scale);
}

.is-bg.glow.glow-portrait > * {
  scale: var(--scale) calc(var(--scale) * 2);
}

.is-bg.glow.glow-intensity-2 {
  --opacity: 0.4;
  --scale: 50;
}

.is-bg.glow.glow-size-2 {
  --scale: 90;
}

.is-bg.bg-bottom-right {
  justify-content: flex-end;
  align-items: flex-end;
  transform-origin: bottom right;
}

.is-bg.bg-bottom-left {
  justify-content: flex-start;
  align-items: flex-end;
  transform-origin: bottom left;
}

.is-bg.bg-top-right {
  justify-content: flex-end;
  align-items: flex-start;
  transform-origin: top right;
}

.is-bg.bg-top-left {
  justify-content: flex-start;
  align-items: flex-start;
  transform-origin: top left;
}

.is-bg.bg-center {
  justify-content: center;
  align-items: center;
  transform-origin: center;
}

.is-bg.bg-center-left {
  justify-content: flex-start;
  align-items: center;
  transform-origin: center left;
}

.is-bg.bg-center-right {
  justify-content: flex-end;
  align-items: center;
  transform-origin: center right;
}

.is-bg.bg-center-top {
  justify-content: center;
  align-items: flex-start;
  transform-origin: top center;
}

.is-bg.bg-center-bottom {
  justify-content: center;
  align-items: flex-end;
  transform-origin: bottom center;
}

.is-bg.bg-offset.bg-bottom-right > * {
  translate: var(--offset) var(--offset);
}

.is-bg.bg-offset.bg-bottom-left > * {
  translate: calc(var(--offset) * -1) var(--offset);
}

.is-bg.bg-offset.bg-top-right > * {
  translate: var(--offset) calc(var(--offset) * -1);
}

.is-bg.bg-offset.bg-top-left > * {
  translate: calc(var(--offset) * -1) calc(var(--offset) * -1);
}

.is-bg.bg-offset.bg-center-left > * {
  translate: calc(var(--offset) * -1) 0%;
}

.is-bg.bg-offset.bg-center-right > * {
  translate: var(--offset) 0%;
}

.is-bg.bg-offset.bg-center-top > * {
  translate: 0% calc(var(--offset) * -1);
}

.is-bg.bg-offset.bg-center-bottom > * {
  translate: 0% var(--offset);
}

/*! Cards with ordered numbers */

.ordered-counter {
  --numSize: 1.5rem;
  /* --numberedColor: var(--heading-color); */
  --numberedColor: var(--main-color);
  --numberedBgColor: rgba(39, 178, 148, 0.2);
  --numberedBorderColor: var(--numberedColor);
  --numberedBorderSize: 2px;
  --dim: 2rem;
  --padding: 1.5em;
  --border-radius: var(--card-border-radius);
  counter-reset: xx;
}

.card-ordered-num {
  display: flex;
  flex-flow: column;
  /* gap: calc(var(--card-padding) * 0.7); */
  /* border-radius: var(--card-border-radius); */
  border-top: 1px solid black;
  border-top-color: var(--line-color);
  overflow: hidden;
  padding: var(--card-padding);
}

/* container-type: inline-size;
	container-name: pctcard; */

.card-ordered-num h3 {
  padding-top: 0;
}

.card-ordered-num:nth-child(-n + 9)::before {
  content: "0" counter(xx);
}

.card-ordered-num:last-of-type {
  padding-bottom: 0;
}

.card-ordered-num p:first-of-type {
  margin-top: 0;
}

.card-ordered-num::before {
  content: counter(xx);
  counter-increment: xx;
  border-radius: var(--border-radius);
  border: var(--numberedBorderSize) solid var(--numberedBorderColor);
  background-color: var(--numberedBgColor, red);
  color: var(--numberedColor, currentColor);
  width: var(--dim);
  height: var(--dim);
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  font-size: var(--numSize);
  padding: var(--padding);
  margin-bottom: calc(var(--card-padding) * 0.85);
}

.card-ordered-num.bordered {
  --icon-size: clamp(2rem, 5vw, 2.6rem);
  --icon-padding: calc(var(--icon-size) * 0.5);
}

.card-ordered-num.bordered::before {
  --border-padding: 2rem;
  /* background-color: transparent !important; */
  padding: var(--border-padding);
  margin-bottom: 0;
  background-color: rgb(from var(--card-background) r g b / 25%);
  -webkit-backdrop-filter: blur(1.5px);
          backdrop-filter: blur(1.5px);
  border-width: 1px;
  border-color: var(--card-border-color);
  color: var(--heading-color-theme-custom);
  background: var(--heading-color);
  color: white;
}

.icon-card-pinned {
  --icon-size: clamp(20px, 5vw, 35px);
  --icon-padding: clamp(0.3rem, 3vw, 1rem);
  display: flex;
  flex-flow: column;
  /* gap: calc(var(--card-padding) * 0.7); */
  /* border-radius: var(--card-border-radius); */
  /* border-top: 1px solid black;
	@apply border-t-[var(--line-color)]; */
  /* overflow: hidden; */
  padding: var(--card-padding);
}

/* container-type: inline-size;
	container-name: pctcard; */

.icon-card-pinned h3 {
  padding-top: 0;
}

.icon-card-pinned:last-of-type {
  padding-bottom: 0;
}

.icon-card-pinned p:first-of-type {
  margin-top: 0;
}

.icon-card-pinned figure {
  display: flex;
  border-radius: var(--border-radius);
  border: var(--numberedBorderSize) solid var(--numberedBorderColor);
  background-color: var(--numberedBgColor, red);
  /* background: linear-gradient(135deg, rgba(39, 178, 148, 0.35) 0%, rgba(39, 178, 148, 0.08) 100%); */
  color: var(--numberedColor, currentColor);
  width: -moz-fit-content !important;
  width: fit-content !important;
  aspect-ratio: 1;
  justify-content: center;
  align-items: center;
  padding: var(--icon-padding);
  margin: 0 !important;
  margin-bottom: calc(var(--card-padding) * 0.5) !important;
}

.icon-card-pinned figure svg,
		.icon-card-pinned figure img {
  color: var(--numberedColor);
}

.icon-card-pinned figure svg *, .icon-card-pinned figure img * {
  stroke-width: 1;
}

.icon-card-pinned figure svg,
		.icon-card-pinned figure img {
  width: var(--icon-size);
  height: var(--icon-size);
}

.address-card {
  --icon-dim: 46px;
  --icon-item-dim: 22px;
  display: grid;
  grid-template-columns: min-content 1fr;
  align-items: center;
  align-self: flex-start;
  gap: 0.5rem;
}

.address-card:first-of-type {
  margin-top: 3rem !important;
}

/* grid-row: 1 / 3; */

.address-card > *:first-child {
  align-self: flex-start;
  padding-right: 1rem;
}

.address-card > *:last-child {
  border-left-width: 1px;
  --tw-border-opacity: 1;
  border-left-color: rgb(0 0 0 / var(--tw-border-opacity));
}

.address-card > *:last-child:is(.dark *) {
  --tw-border-opacity: 1;
  border-left-color: rgb(255 255 255 / var(--tw-border-opacity));
}

.address-card > *:last-child {
  display: flex;
  flex-flow: column;
  padding-left: 1rem;
  margin-left: 1rem;
}

.address-card .icon-big {
  display: grid;
  align-items: center;
  justify-content: center;
  color: black;
  width: var(--icon-dim) !important;
  aspect-ratio: 1/1;
}

.address-card .icon-big svg {
  width: 100%;
  height: auto;
  padding: calc(var(--icon-dim) * 0.25);
}

.address-card .icon-big > * {
  grid-area: 1 / 1;
}

.address-card .icon-big::before {
  grid-area: 1 / 1;
  content: "";
  display: block;
  width: var(--icon-dim);
  height: var(--icon-dim);
  /* border: var(--numberedBorderSize) solid var(--numberedBorderColor); */
  background-color: var(--main-color);
  border-radius: 50%;
  /* color: var(--numberedColor, currentColor); */
}

.address-card h3,
	.address-card .title {
  font-size: clamp(1.4rem, 5vw, 1.8rem);
  margin-bottom: 0 !important;
  padding-top: 0;
  font-weight: 500;
  line-height: var(--icon-dim);
}

.address-card h3 span, .address-card .title span {
  font-weight: 100;
  font-size: 0.6em;
}

.address-card .item {
  display: grid;
  grid-template-columns: min-content 1fr;
  align-items: center;
  gap: 0.5ch;
}

.address-card .item figure {
  align-self: flex-start;
  width: var(--icon-item-dim) !important;
  aspect-ratio: 1;
  margin-top: 2px !important;
}

.address-card .item p {
  font-size: 1rem;
}

.address-card .item:first-of-type {
  margin-top: 0.5rem;
}

.address-card .item:not(:last-of-type) {
  margin-bottom: 0.8rem;
}

.card.cta {
  --tw-bg-opacity: 1;
  background-color: rgb(30 41 59 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.card.cta:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

.card.cta {
  --decorator-padding: 1rem;
}

.card.cta::after {
  content: "";
  display: block;
  background-color: var(--main-color);
  max-width: 100px;
  width: 15%;
  aspect-ratio: 1;
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  translate: calc(var(--decorator-padding)) 0;
  border-bottom-right-radius: var(--def-border-radius);
  clip-path: polygon(100% 0%, 100% 100%, 0% 100%);
}

.card.cta h2,
	.card.cta h3 {
  padding-top: 0;
  padding-bottom: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.card.cta h2:is(.dark *),
	.card.cta h3:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity));
}

.card.cta h2,
	.card.cta h3 {
  text-wrap: wrap !important;
  line-height: 1.2;
}

.card.cta h2 em, .card.cta h3 em {
  display: inline-flex;
}

:root.dark .card.cta h2 em,
		:root.dark .card.cta h3 em {
  /* @apply text-[var(--main-color)]; */
  color: var(--main-color);
  background-image: unset;
  background-clip: unset;
  -webkit-text-fill-color: unset;
  font-size: 1.5em;
}

/*! CARD DECORATIONS (SHADOW, GLOW, BACKGROUND) */

.card-decoration {
  --base-color: var(--main-color-rgb);
  --base-color: var(--brand-color-rgb);
  box-shadow:
		3px 3px 20px 8px rgba(var(--base-color), 0.1),
		0px 6px 12px rgba(var(--base-color), 0.08) !important;
}

.has-webgl:has(.media-container) .webgl-dots {
  translate: 20% 10%;
}

/*! CPT CARDS GRID */

.cpt-grid.pct-2cols {
  gap: var(--card-padding);
  row-gap: var(--card-padding) !important;
}

/*! OS WINDOW LIKE CARD */

.os-window .os-window-content {
  --padding: 0.5rem;
  --border-radius: var(--def-border-radius);
  --ui-color: rgba(255, 255, 255, 0.2);
  --bg-color: rgba(255, 255, 255, 0);
  /* Needs the following html structure: .os-window > div.title-bar + div.content */
  display: flex;
  flex-flow: column;
  border-radius: var(--border-radius);
  border: 1px solid var(--ui-color);
  overflow: clip;
  background-color: var(--bg-color) !important;
}

.os-window .os-window-content .title-bar {
  display: flex;
  flex-flow: row;
  justify-content: flex-start;
  gap: var(--padding);
  border-bottom: 1px solid var(--ui-color);
  padding: var(--padding) calc(var(--padding) * 2);
}

.os-window .os-window-content .title-bar::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background-color: var(--ui-color);
  opacity: 0.05;
}

.os-window .os-window-content .title-bar .os-dots {
  display: flex;
  flex-flow: row;
  width: -moz-fit-content;
  width: fit-content;
  gap: 6px;
}

.os-window .os-window-content .title-bar .os-dots figure {
  display: flex;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 !important;
  align-items: center;
  color: var(--ui-color);
}

.os-window .os-window-content .title-bar p,
			.os-window .os-window-content .title-bar .title {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0.85rem;
  min-height: 18px;
  color: var(--ui-color);
}

.os-window .os-window-content .content {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(var(--padding) * 2);
}

.os-window .os-window-content .content:has(figure) {
  padding: 0;
}

/* &::before {
				content: "";
				display: block;
				position: absolute;
				inset: 0;
				background-color: var(--ui-color);
				opacity: 0.04;
			} */

.os-window .os-window-content .content .iso-grid-pattern {
  color: var(--ui-color);
  opacity: 0.2;
}

.os-window .os-window-content .content canvas {
  position: relative;
}

.os-window.shadow .os-window-content {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(100 116 139 / 0.3);
  --tw-shadow: var(--tw-shadow-colored);
}

.os-window.mask-faded-down {
  padding: 1.5rem;
  -webkit-mask-image: var(--mask-faded-down2);
          mask-image: var(--mask-faded-down2);
}

/* .os-window color themes */

.os-window.win-theme-white .os-window-content {
  --ui-color: rgb(182, 182, 182);
  --bg-color: rgba(255, 255, 255, 1);
}

.os-window.win-theme-white.shadow .os-window-content {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(15 23 42 / 0.3);
  --tw-shadow: var(--tw-shadow-colored);
}

.os-window.win-theme-white.shadow.shadow-light .os-window-content {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: #1F8E76;
  --tw-shadow: var(--tw-shadow-colored);
}

@media only screen and (min-width: 768px) {
  .card:has(figure.mobile-landscape) > * {
    grid-template-columns: 70% auto !important
  }

  .card:has(figure.mobile-landscape) > *:has(.align-left) {
    grid-template-columns: auto 70% !important
  }
}

@media only screen and (max-width: 767px) {
  .card:has(figure.mobile-landscape) figure.mobile-landscape {
    width: 100% !important;
    aspect-ratio: 16/9;
  }
}

/* .os-window-wrapper {
	.os-window {
		@apply shadow-slate-500/30 shadow-xl;
		mask-image: none;
	}

	&:has(> .mask-faded-down-2) {
		padding: 2rem;
		.os-window {
			@apply shadow-slate-500/30 shadow-xl;
			mask-image: none;
		}
		mask-image: var(--mask-faded-down2);
	}
} */

/*! EVENTOS: AGENDA */

/*! CARD AGENDA FOR EVENTS */

.card.agenda {
  display: flex;
  gap: 1rem;
}

.card.agenda h2,
	.card.agenda h3 {
  text-align: center;
}

.card.agenda .sesion {
  display: grid;
  grid-template-columns: 62% 1fr;
  gap: 2rem;
}

@media only screen and (max-width: 545px) {
  .card.agenda .sesion {
    grid-template-columns: 1fr
  }
}

.card.agenda .sesion {
  padding: 1rem 0;
}

/* background: red; */

.card.agenda .sesion:not(:last-of-type) {
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-bottom-color: rgb(0 0 0 / var(--tw-border-opacity));
}

.card.agenda .sesion:not(:last-of-type):is(.dark *) {
  border-bottom-color: rgb(255 255 255 / 0.5);
}

.card.agenda .sesion:not(:last-of-type) {
  margin-bottom: 1rem;
}

.card.agenda .sesion .contenido {
  display: flex;
  gap: 0.2rem;
  /* .descripcion {
				font-weight: bold;
			} */
}

.card.agenda .sesion .contenido .hora {
  font-size: 0.9em;
}

.card.agenda .sesion .ponentes {
  display: flex;
  gap: 0.5rem;
}

/* padding-top: 1.6rem; */

.card.agenda .sesion .ponentes .ponente {
  display: flex;
  gap: 0.1rem;
  border-radius: var(--def-border-radius);
  background-color: rgb(51 65 85 / 0.05);
}

.card.agenda .sesion .ponentes .ponente:is(.dark *) {
  background-color: rgb(255 255 255 / 0.1);
}

.card.agenda .sesion .ponentes .ponente {
  /* display: flex;
				flex-flow: row;
				gap: 4px;
				align-items: center;
				justify-content: center; */
  padding: 0.4rem 0.6rem;
}

.card.agenda .sesion .ponentes .ponente * {
  font-size: 1em;
  line-height: 1;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0;
  /* @apply !text-black; */
}

/* .nombre {
					opacity: 0.6;
				} */

.card.agenda .sesion .ponentes .ponente .empresa {
  opacity: 0.45;
  font-size: 0.8em;
  text-align: center;
}

@media only screen and (max-width: 545px) {
  .card.agenda .sesion .ponentes {
    flex-flow: row;
    flex-wrap: wrap
  }

  .card.agenda .sesion .ponentes .ponente {
    width: -moz-fit-content;
    width: fit-content;
  }
}

.card.ponentes h2,
	.card.ponentes h3 {
  text-align: center;
  padding-bottom: 2rem;
}

.card.ponentes .grid {
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem;
}

.card.ponentes .grid figure {
  /* width: fit-content !important; */
  display: inline-flex;
  width: auto;
}

.card.ponentes .grid figure img {
  /* width: 195px; */
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: top;
     object-position: top;
}

.event-card {
  --border-dim: 6px;
  --border-color: white;
  --border: var(--border-dim) solid var(--border-color);
  --padd: 1rem;
  --max-w: 450px;
  background-color: rgb(255 255 255 / 0.1);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  display: grid;
  grid-template-areas:
		"date citytime"
		"address address";
  grid-template-rows: auto auto;
  grid-template-columns: min-content 1fr;
  /* gap: var(--border-dim); */
  max-width: var(--max-w) !important;
  border: var(--border);
  margin-top: var(--card-padding);
}

.event-card > * {
  padding: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  /* background: red; */
}

.event-card p {
  margin: 0 !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
}

.event-card .date {
  grid-area: date;
  border-right: var(--border);
  border-bottom: var(--border);
  padding: 0;
}

.event-card .date * {
  display: flex;
  align-items: center;
  justify-content: center;
}

.event-card .date .day-month {
  flex-grow: 1;
  padding: var(--padd) 0;
  font-weight: bold;
}

.event-card .date .day-month > * {
  padding: 0 var(--padd);
}

.event-card .date .day-month .day {
  line-height: 1 !important;
  font-size: clamp(2em, 8vw, 3em);
}

.event-card .date .day-month .month {
  font-size: clamp(1.2em, 6vw, 1.6em);
  text-transform: uppercase;
  line-height: 1 !important;
}

.event-card .date .year {
  display: flex;
  width: 100% !important;
  border-top: var(--border);
  padding: var(--padd);
  font-size: clamp(1em, 6vw, 1.3em);
  font-weight: bold;
}

.event-card .city-time {
  grid-area: citytime;
  border-bottom: var(--border);
}

.event-card .city-time .city {
  font-weight: bold;
  font-size: clamp(1.4rem, 7vw, 2rem);
  text-transform: uppercase;
  line-height: 1;
  text-align: center;
}

.event-card .city-time .time {
  font-size: clamp(1rem, 5vw, 1.3rem);
}

.event-card .address {
  grid-area: address;
}

.event-card .address > * {
  display: flex;
  align-items: center;
  justify-content: center;
}

.event-card .address strong {
  font-size: 1.3em;
}

.event-card .address figure a {
  margin-top: 1rem !important;
  border-radius: 9999px;
  background-color: rgb(255 255 255 / 0.1);
  aspect-ratio: 1/1;
  padding: 1rem !important;
  transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.event-card .address figure a img {
  width: 30px;
  height: 30px;
  -o-object-fit: contain;
     object-fit: contain;
  scale: 1;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.event-card .address figure a:hover {
  background-color: rgb(30 41 59 / 0.5);
}

.event-card .address figure a:hover img {
  scale: 1.2;
}

:root {
  --def-heading-font-family: "Outfit", Helvetica, Arial, sans-serif;
  --def-font-family: "Inter", Helvetica, Arial, sans-serif;
  --txt-slider-heading: "Montserrat", Helvetica, Arial, sans-serif;
  --def-font-family: "Outfit", Helvetica, Arial, sans-serif;
  --def-txt-color: #404040;
  --txt-heading-color: #3a3a3a;
  --light-grey-color: #ddd;
  --light-light-grey-color: #f5f5f5;
  --ui-font-size: 0.7rem;
  --ui-mm-font-size: 0.8rem;
}

body {
  color: var(--txt-color);
  font-size: 1rem;
}

h1,
h2,
h3,
h4,
h5 {
  font-weight: 500;
  letter-spacing: -0.03ch;
}

h1,
h2,
h3 {
  /* letter-spacing: -0.02ch; */
  letter-spacing: -0.03ch;
  line-height: 1.6ch;
  margin-left: 0;
  margin-right: 0;
}

h1:not([data-anim_any]), h2:not([data-anim_any]), h3:not([data-anim_any]) {
  text-wrap: balance;
}

h1:has(.char), h2:has(.char), h3:has(.char) {
  line-height: 1.65ch;
}

h3 {
  letter-spacing: -0.01ch;
}

h1 {
  /* @apply txt-[var(--heading-color)] dark:txt-[var(--heading-color-dark)]; */
  margin-top: 0px !important;
  padding-bottom: 0.5ch;
  color: var(--heading-color);
}

h1:is(.dark *) {
  color: var(--heading-color-dark);
}

h1 {
  font-size: clamp(2.2rem, 5vw, 3.5rem);
  font-weight: 500;
}

h1.smaller,
	h1 span.smaller {
  font-size: clamp(1.4rem, 5vw, 2rem);
}

h2 {
  margin-top: 0px !important;
  padding-bottom: .7ch !important;
  padding-top: 0.3ch;
  color: var(--heading-color);
  font-size: clamp(2.2rem, 8vw, 3.4rem);
  font-weight: 500;
}

/* line-height: 1.7ch; */

/* letter-spacing: -0.06ch; */

/* max-width: 600px !important; */

h2.smaller {
  font-size: clamp(2rem, 5vw, 4rem);
}

h2.smaller-2 {
  font-size: clamp(2rem, 5vw, 3.3rem);
}

h3 {
  margin-top: 0px !important;
  color: var(--heading-color);
}

h3:is(.dark *) {
  color: var(--heading-color-dark);
}

h3 {
  margin-bottom: 0.6ch;
  font-size: clamp(1.6rem, 5vw, 2rem);
  font-weight: 500;
}

h3.bigger {
  font-size: clamp(1.8rem, 5vw, 2.75rem);
}

h3.smaller {
  font-size: clamp(1.45rem, 5vw, 1.5rem);
}

h4 {
  margin-top: 0px !important;
  margin-bottom: .5ch !important;
  color: var(--heading-color);
}

h4:is(.dark *) {
  color: var(--heading-color-dark);
}

h4 {
  font-size: clamp(1.2rem, 5vw, 1.4rem);
  font-weight: 600;
}

.over-heading {
  font-weight: 400;
  margin-bottom: 0 !important;
}

.over-heading:has(+ h1) {
  font-size: clamp(1.2rem, 8vw, 1.8rem);
}

.over-heading:has(+ h2) {
  font-size: clamp(1.2rem, 5vw, 1.35rem);
}

.over-heading + h2 {
  padding-top: 0.2ch;
}

.section-heading:has(+ .sub-heading) {
  padding-bottom: 0;
}

h2:has(+ .sub-heading), h1:has(+ .sub-heading) {
  padding-bottom: 0.4ch !important;
}

h2:has(+ .sub-heading) + .sub-heading, h1:has(+ .sub-heading) + .sub-heading {
  padding-bottom: 3ch !important;
  margin-bottom: 0;
}

/* h2 {
	&:has(+ .sub-heading) {
		margin-bottom: 0.4ch !important;
	}
} */

.sub-heading {
  font-family: var(--def-heading-font-family);
  font-size: clamp(1.2rem, 4vw, 1.6rem);
}

.sub-heading.has-text-align-center {
  max-width: 48rem !important;
}

sup {
  font-size: 0.7ch;
  top: -1ch;
  left: 1.5px;
}

p {
  margin-bottom: 1.2ch;
  color: var(--txt-color);
}

p:is(.dark *) {
  color: var(--txt-color-dark);
}

p {
  font-size: clamp(1rem, 2vw, 1.1rem);
  /* letter-spacing: 0.03ch; */
  letter-spacing: 0.03em;
  line-height: 2.2ch;
  /* color: var(--txt-color, currentColor); */
}

p.bigger {
  font-family: var(--def-heading-font-family);
  font-size: clamp(1.2rem, 4vw, 1.4rem);
  line-height: 1.4;
}

p {
  color: currentColor;
}

li {
  font-size: clamp(1rem, 5vw, 1.1rem);
}

/*! Headings custom styles */

h1.gradient,
	h1 i,
	h2.gradient,
	h2 i,
	h3.gradient,
	h3 i,
	h4.gradient,
	h4 i {
  background-color: var(--main-color);
  background-image: var(--heading-gradient);
  background-size: 150% 100%;
  background-repeat: no-repeat;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  padding-bottom: 0.25ch;
}

/* animation: intro-gradient 4.2s cubic-bezier(0.165, 0.84, 0.44, 1); */

h1.gradient.gradient-anim, h1 i.gradient-anim, h2.gradient.gradient-anim, h2 i.gradient-anim, h3.gradient.gradient-anim, h3 i.gradient-anim, h4.gradient.gradient-anim, h4 i.gradient-anim {
  animation: intro-gradient 4.2s cubic-bezier(0.075, 0.82, 0.165, 1);
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-fill-mode: backwards;
  animation-delay: 0.3s;
}

/* Highlight header */

h1 em, h2 em, h3 em {
  padding-right: 0.01ch;
  background-color: var(--main-color);
  background-image: var(--heading-gradient);
  background-size: 150% 100%;
  background-repeat: no-repeat;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  /* padding-bottom: 0.25ch; */
  font-style: normal;
}

h1 em .word, h2 em .word, h3 em .word {
  overflow: visible;
}

h1[data-split_text]:has(em),
	h1[data-anim_header]:has(em),
	h1[data-anim_any]:has(em),
	h2[data-split_text]:has(em),
	h2[data-anim_header]:has(em),
	h2[data-anim_any]:has(em),
	h3[data-split_text]:has(em),
	h3[data-anim_header]:has(em),
	h3[data-anim_any]:has(em) {
  /* line-height: 2ch; */
}

h1[data-split_text]:has(em) .line:not(:first-of-type), h1[data-anim_header]:has(em) .line:not(:first-of-type), h1[data-anim_any]:has(em) .line:not(:first-of-type), h2[data-split_text]:has(em) .line:not(:first-of-type), h2[data-anim_header]:has(em) .line:not(:first-of-type), h2[data-anim_any]:has(em) .line:not(:first-of-type), h3[data-split_text]:has(em) .line:not(:first-of-type), h3[data-anim_header]:has(em) .line:not(:first-of-type), h3[data-anim_any]:has(em) .line:not(:first-of-type) {
  margin-top: -0.35ch;
}

h2 span, h3 span {
  display: inline-block;
}

:root.dark h1 em, :root.dark h2 em, :root.dark h3 em {
  background-image: var(--heading-highlight-grad-dark);
}

.uppercase {
  text-transform: uppercase !important;
}

.uppercase * {
  text-transform: uppercase !important;
}

.wrap-default {
  text-wrap: initial !important;
}

/*! STYLES FOR POSTS CONTENT */

h3,
h4,
h5,
h6 {
  padding-top: 1.5ch;
}

/*------------------------------------------------------------------------------------------------------*
            RESET THEME FORM SETTINGS
\*------------------------------------------------------------------------------------------------------*/

/* !Warning, disable/enable response layer */

.wpcf7-response-output {
  display: none !important;
}

.wpcf7 form > div,
.wpcf7 form > p {
  margin-bottom: 0;
}

.wpcf7 {
  padding-top: 1rem;
}

.wpcf7 br {
  display: none;
}

.wpcf7 form {
  --form-input-border-width: 2px;
  /* --form-field-border-color: #808080; */
  --form-field-border-color: #767a7f;
  --form-field-border-radius: 6px;
  --form-field-focus-border-color: var(--main-color);
  --form-field-bg-color: white;
  --form-field-not-valid-bg-color: rgb(255 255 198);
  --form-error-validation-icon-filter: brightness(0);
  --form-field-txt-color: black;
  --form-legal-txt-color: var(--def-txt-color);
  --form-submit-bg-color: green;
  --msg-sent-ok-bg-color: rgba(0, 0, 0, 0.2);
  --form-placeholder-color: #9ca3af;
  --form-input-padding-x: 1.25rem;
  --form-input-padding-y: 0.33rem;
  position: relative;
}

.wpcf7 form input[type="email"],
	.wpcf7 form input[type="number"],
	.wpcf7 form input[type="password"],
	.wpcf7 form input[type="reset"],
	.wpcf7 form input[type="search"],
	.wpcf7 form input[type="tel"],
	.wpcf7 form input[type="text"],
	.wpcf7 form input[type="url"],
	.wpcf7 form select,
	.wpcf7 form textarea {
  font-size: 16px !important;
  border-color: var(--form-field-border-color);
  border-width: var(--form-input-border-width);
  padding: var(--form-input-padding-y) var(--form-input-padding-x);
  color: var(--form-field-txt-color);
  border-radius: var(--form-field-border-radius);
  background-color: var(--form-field-bg-color);
  width: 100%;
  transition: backgorund-color 6.5s ease;
}

.wpcf7 form input[type="email"]::-moz-placeholder, .wpcf7 form input[type="number"]::-moz-placeholder, .wpcf7 form input[type="password"]::-moz-placeholder, .wpcf7 form input[type="reset"]::-moz-placeholder, .wpcf7 form input[type="search"]::-moz-placeholder, .wpcf7 form input[type="tel"]::-moz-placeholder, .wpcf7 form input[type="text"]::-moz-placeholder, .wpcf7 form input[type="url"]::-moz-placeholder, .wpcf7 form select::-moz-placeholder, .wpcf7 form textarea::-moz-placeholder {
  color: var(--form-placeholder-color);
}

.wpcf7 form input[type="email"]::placeholder, .wpcf7 form input[type="number"]::placeholder, .wpcf7 form input[type="password"]::placeholder, .wpcf7 form input[type="reset"]::placeholder, .wpcf7 form input[type="search"]::placeholder, .wpcf7 form input[type="tel"]::placeholder, .wpcf7 form input[type="text"]::placeholder, .wpcf7 form input[type="url"]::placeholder, .wpcf7 form select::placeholder, .wpcf7 form textarea::placeholder {
  color: var(--form-placeholder-color);
}

.wpcf7 form label {
  outline-color: var(--form-field-focus-border-color);
}

.wpcf7 select {
  --icon-bg-size: 5px;
  --ui-width: 30px;
  --ui-y-padding: 5px;
  --height: calc(2ch + var(--icon-bg-size) + var(--form-input-padding-y) * 2);
  --y-center-pos: calc(var(--height) / 2);
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, gray 50%), linear-gradient(135deg, gray 50%, transparent 50%), linear-gradient(to right, #ccc, #ccc);
  background-position:
		calc(100% - (var(--ui-width) / 2)) calc(var(--y-center-pos) - var(--icon-bg-size) / 2),
		calc(100% - (var(--ui-width) / 2) + var(--icon-bg-size)) calc(var(--y-center-pos) - var(--icon-bg-size) / 2),
		calc(100% - var(--ui-width)) calc(var(--y-center-pos) - calc(var(--height) - var(--ui-y-padding) * 2) / 2);
  background-size:
		var(--icon-bg-size) var(--icon-bg-size),
		var(--icon-bg-size) var(--icon-bg-size),
		var(--form-input-border-width) calc(var(--height) - calc(var(--ui-y-padding) * 2));
  background-repeat: no-repeat;
}

:root.dark form {
  --form-error-validation-icon-filter: brightness(1);
  --form-legal-txt-color: white;
  --msg-sent-ok-bg-color: #193a67;
}

.wpcf7 i[class*="ico-"] svg, .wpcf7 .wpcf7-checkbox svg {
  color: var(--form-field-border-color);
  width: 30px;
  height: 30px;
  stroke-width: var(--form-input-border-width);
}

[id*="legalinput"] + label .ico-checked {
  top: 0;
  left: 0;
}

[id*="legalinput"] + label .ico-checked svg {
  transition: all 0.3s ease;
  opacity: 0;
  scale: 0;
}

.ico-unchecked svg .bg, .wpcf7-checkbox svg .bg {
  fill: var(--form-field-bg-color);
}

[id*="legalinput"]:checked + label .ico-checked svg {
  scale: 1;
  opacity: 1;
}

.wpcf7 input:not([type="submit"]):focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus {
  border-color: var(--form-field-focus-border-color);
  outline: 0;
  color: var(--def-txt-color) !important;
}

/*------------------------------------------------------------------------------------------------------*\

						CONTACT FORM 7 STYLES & FORMULARIOS GENERAL

\*------------------------------------------------------------------------------------------------------*/

.wpcf7 label {
  text-align: left;
  color: var(--form-field-txt-color);
}

.wpcf7-form {
  margin-top: 0 !important;
}

.wpcf7-form-control-wrap.cv_file + label {
  cursor: pointer;
  display: block;
  margin-bottom: 1.2rem !important;
  padding: 1rem;
  background-color: #fff;
  transition: all 0.3s cubic-bezier(0.2, 1, 0.3, 1);
}

.wpcf7-form-control-wrap.cv_file + label.file_ready {
  pointer-events: none;
}

.wpcf7-form-control-wrap.cv_file + label span {
  color: inherit !important;
}

.wpcf7-form-control-wrap.cv_file + label:before,
.wpcf7-form-control-wrap.cv_file + label + .bt_remove_file:before {
  font-family: fontAwesome;
  color: var(--default-text-color);
}

.wpcf7-form-control-wrap.cv_file + label:before {
  content: "\f093";
  margin-right: 0.5rem;
}

.wpcf7-form-control-wrap.cv_file + label + .bt_remove_file {
  display: flex;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: auto;
  height: 100%;
  align-items: center;
  width: 40px;
  justify-content: center;
  cursor: pointer;
  transition: transform 1.5s cubic-bezier(0.2, 1, 0.3, 1) 1s;
  z-index: -2;
}

.wpcf7-form-control-wrap.cv_file + label.file_ready:before {
  content: "\f15c";
}

.wpcf7-form-control-wrap.cv_file + label.file_ready + .bt_remove_file {
  /*display: flex;*/
  z-index: 1;
  transform: scale3d(1, 1, 1);
}

.wpcf7-form-control-wrap.cv_file + label.file_ready + .bt_remove_file:hover:before {
  transform: scale3d(1.3, 1.3, 1);
}

.wpcf7-form-control-wrap.cv_file + label + .bt_remove_file:before {
  content: "\f00d";
  transform: scale3d(0, 0, 1);
  transition: all 0.3s cubic-bezier(0.2, 1, 0.3, 1);
}

.wpcf7-form-control-wrap.cv_file + label.file_ready + .bt_remove_file:before {
  transform: scale3d(1, 1, 1);
}

.wpcf7-form-control-wrap.cv_file + label:hover {
  background-color: var(--default-text-color);
  color: #fff;
}

.wpcf7-form-control-wrap.cv_file + label:hover:before {
  color: #fff;
}

.wpcf7-form-control-wrap.cv_file {
  position: absolute;
  z-index: 2;
  margin: 0 !important;
}

.wpcf7-form-control-wrap [type="file"] {
  display: none !important;
}

.screen-reader-response {
  display: none !important;
}

input:not([type="checkbox"]):not([type="radio"]),
textarea {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
       appearance: none !important;
}

span.wpcf7-list-item {
  margin: auto;
}

.wpcf7 a.pct-lk-privacidad {
  display: inline-block;
  transition: all 0.3s ease;
}

.wpcf7 a.pct-lk-privacidad:hover {
  color: var(--main-color);
  text-decoration: none !important;
}

.pct-legal,
.pct-legal a,
.pct-legal .pct-lk-privacidad {
  font-size: 14px !important;
  line-height: 14px;
  box-sizing: border-box;
  color: var(--form-legal-txt-color);
}

.pct-legal a {
  color: var(--link-color);
}

.pct-legal a:hover {
  color: var(--link-color) !important;
}

#legal-input label {
  outline: 0;
}

#legal-input label:focus svg {
  color: var(--form-field-focus-border-color);
}

.checkIcon span:has(i) {
  display: grid;
}

.checkIcon span:has(i) > * {
  grid-area: 1 / 1;
}

.wpcf7-form-control-wrap,
label[for="cv_file"] {
  display: flex;
  width: 100%;
  position: relative;
  margin: 0.5em auto !important;
}

.wpcf7 textarea {
  height: 70px;
  min-height: unset !important;
}

/* !new legal icon checked + unchecked 2025 */

[id*="legalinput"] + label {
  display: flex;
  align-items: center;
  position: relative;
  gap: 0.8rem;
  cursor: pointer;
  line-height: 18px;
  letter-spacing: 0.5px;
  margin-bottom: 0;
}

[id*="legalinput"] + label > div:first-of-type {
  display: block;
  position: relative;
}

[id*="legalinput"] + label p {
  display: none;
}

.wpcf7 .placeholder_as_label input[type="email"],
.wpcf7 .placeholder_as_label input[type="text"],
.wpcf7 .placeholder_as_label input[type="url"],
.wpcf7 .placeholder_as_label textarea {
  border-radius: var(--box-border-radius);
}

.wpcf7 .legal-content {
  background-color: transparent;
  margin-top: 1rem;
  margin-bottom: 2rem;
}

/*! CHECKBOX & RADIOBUTTON CUSTOM ICON STYLES */

.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .wpcf7-list-item-label, .wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .wpcf7-list-item-label {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container,
		.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container,
		.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container,
		.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container {
  display: grid;
  margin-right: 0.5rem;
}

.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container > svg, .wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container > svg, .wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container > svg, .wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container > svg {
  grid-area: 1 / 1;
  transition: all 0.3s ease;
}

.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container > svg.icon-tabler-circle,
				.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container > svg.icon-tabler-square,
				.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container > svg.icon-tabler-circle,
				.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container > svg.icon-tabler-square,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container > svg.icon-tabler-circle,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container > svg.icon-tabler-square,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container > svg.icon-tabler-circle,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container > svg.icon-tabler-square {
  scale: 1;
}

.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container > svg.icon-tabler-circle-check,
				.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container > svg.icon-tabler-square-check,
				.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container > svg.icon-tabler-circle-check,
				.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container > svg.icon-tabler-square-check,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container > svg.icon-tabler-circle-check,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container > svg.icon-tabler-square-check,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container > svg.icon-tabler-circle-check,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container > svg.icon-tabler-square-check {
  scale: 0;
}

.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container:focus svg, .wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container:focus svg, .wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container:focus svg, .wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container:focus svg {
  color: var(--form-field-focus-border-color);
}

.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container:focus, .wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container:focus, .wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .check-icon-container:focus, .wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item .radio-icon-container:focus {
  outline: 0;
}

.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item:has(:checked) .check-icon-container .icon-tabler-circle-check,
				.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item:has(:checked) .check-icon-container .icon-tabler-square-check,
				.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item:has(:checked) .radio-icon-container .icon-tabler-circle-check,
				.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item:has(:checked) .radio-icon-container .icon-tabler-square-check,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item:has(:checked) .check-icon-container .icon-tabler-circle-check,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item:has(:checked) .check-icon-container .icon-tabler-square-check,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item:has(:checked) .radio-icon-container .icon-tabler-circle-check,
				.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item:has(:checked) .radio-icon-container .icon-tabler-square-check {
  scale: 1;
}

.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item input[type="checkbox"],
		.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item input[type="radio"],
		.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item input[type="checkbox"],
		.wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item input[type="radio"] {
  display: none;
}

.wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item input[type="checkbox"] + .wpcf7-list-item-label, .wpcf7-checkbox:not(.pct-legal-acceptance) .wpcf7-list-item input[type="radio"] + .wpcf7-list-item-label, .wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item input[type="checkbox"] + .wpcf7-list-item-label, .wpcf7-radio:not(.pct-legal-acceptance) .wpcf7-list-item input[type="radio"] + .wpcf7-list-item-label {
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
}

.input-radio-group .wpcf7-form-control-wrap {
  margin-left: -2rem !important;
}

.input-radio-group .wpcf7-radio {
  position: relative;
  z-index: 5;
  background-color: white;
  padding-left: 2rem;
}

.wpcf7 button,
.wpcf7 input[type="submit"] {
  position: relative;
  border: 0;
  min-width: 160px;
  z-index: 1;
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}

.wpcf7 button:hover, .wpcf7 input[type="submit"]:hover {
  box-shadow: none !important;
}

.wpcf7 button[id="submit"] {
  --submit-working-padding: 0.7ch;
  display: grid !important;
  justify-content: center;
  align-items: center;
}

.wpcf7 button[id="submit"] * {
  grid-area: 1 / 1;
  justify-self: center;
}

.wpcf7 button[id="submit"] .icon,
	.wpcf7 button[id="submit"] svg {
  width: 20px;
  height: 20px;
  display: none;
  animation: form-submit-cog 2s linear infinite;
  animation-play-state: paused;
  transition: opacity 0.3s cubic-bezier(0.2, 1, 0.3, 1);
}

.wpcf7 button[id="submit"].showIcon .icon,
		.wpcf7 button[id="submit"].showIcon svg {
  opacity: 1;
}

.wpcf7 button[id="submit"].disabled {
  display: none !important;
}

@keyframes form-submit-cog {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(1turn);
  }
}

.wpcf7 button[id="submit"].active icon,
	.wpcf7 button[id="submit"].active svg,
	.wpcf7 input[type="submit"].active icon,
	.wpcf7 input[type="submit"].active svg {
  display: block;
  animation-play-state: running;
}

.wpcf7 button[id="submit"].active span, .wpcf7 input[type="submit"].active span {
  opacity: 0;
}

.wpcf7 button[id="submit"].active,
.wpcf7 input[type="submit"].active {
  /*background: transparent;*/
  /* min-width: inherit; */
  /* padding-right: 0 !important;
	padding-left: 0 !important; */
}

.wpcf7 button[id="submit"].active span, .wpcf7 input[type="submit"].active span {
  font-size: 0 !important;
}

.wpcf7 button[id="submit"].active,
.wpcf7 input[type="submit"].active {
  padding-right: var(--padding-y) !important;
  padding-left: var(--padding-y) !important;
  animation: roundIt 0.3s cubic-bezier(0.2, 1, 0.3, 1) 0.3s normal forwards;
}

.wpcf7 button[id="submit"].loader,
.wpcf7 input[type="submit"].loader {
  border-right: 4px solid #fff !important;
  min-width: inherit;
  font-size: 0;
  border-radius: 50% !important;
  width: 50px;
  background: transparent;
  animation: loader 0.4s linear 0s infinite normal forwards;
}

@keyframes loader {
  0% {
    transform: rotateZ(0);
  }

  100% {
    transform: rotateZ(360deg);
  }
}

@keyframes roundIt {
  to {
    /* width: 40px; */
    width: auto;
    min-width: inherit;
  }
}

.wpcf7 .pct-form-pasti {
  display: block;
  opacity: 1;
  margin: auto !important;
  z-index: 1;
}

.wpcf7 .pct-form-pasti > p {
  margin-bottom: 0;
}

@keyframes msg-sent-ok {
  to {
    max-height: 100%;
    padding: 2rem;
  }
}

.wpcf7-form-control-wrap:has(.wpcf7-not-valid-tip) .wpcf7-not-valid-tip {
  display: none;
}

.wpcf7-form-control-wrap:has(.wpcf7-not-valid-tip) input,
	.wpcf7-form-control-wrap:has(.wpcf7-not-valid-tip) select {
  background-color: var(--form-field-not-valid-bg-color) !important;
}

.wpcf7-form-control-wrap:has(.wpcf7-not-valid-tip) svg .bg {
  fill: var(--form-field-not-valid-bg-color);
}

/*!	MULTI CHECKBOX */

.multi-checkbox {
  margin: 0.5em 0;
  background-color: rgba(255, 255, 255, 0.2);
}

.multi-checkbox .wpcf7-list-item .wpcf7-list-item-label {
  font-size: 16px;
}

/*! FORM 2 COLS AUTO FIT (could be 3 or more if wide enough) */

form.wpcf7-form:has(.pct-form-2cols) {
  display: initial;
}

.pct-form-pasti:has(.pct-form-2cols),
.pct-form-pasti.pct-form-2cols {
  display: flex;
  flex-flow: column;
  gap: var(--card-padding);
  max-width: unset;
}

.pct-form-pasti:has(.pct-form-2cols) h3, .pct-form-pasti.pct-form-2cols h3 {
  padding-top: 0;
}

.pct-form-pasti:has(.pct-form-2cols) .legal-content, .pct-form-pasti.pct-form-2cols .legal-content {
  margin-top: 0;
}

.pct-form-2cols > p {
  display: grid;
  grid-auto-rows: auto;
  grid-template-columns: repeat(auto-fit, minmax(340px, auto));
  -moz-column-gap: calc(var(--card-padding) * 0.75);
       column-gap: calc(var(--card-padding) * 0.75);
  row-gap: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.9);
  padding-top: calc(var(--card-padding) * 0.5);
}

.pct-form-2cols > p br {
  display: none;
}

.pct-form-pasti.pct-form-2cols {
  display: grid;
  grid-auto-rows: auto;
  grid-template-columns: repeat(auto-fit, minmax(340px, auto));
  gap: var(--card-padding);
}

.pct-form-pasti.pct-form-2cols > div {
  width: 100%;
}

[data-modal] .error-content {
  display: flex;
  gap: 1ch;
  line-height: 1.2;
  align-items: center;
  /* background: red; */
}

[data-modal] .error-content .icon {
  width: 3ch;
  height: 3ch;
  flex-shrink: 0;
  color: var(--main-color);
}

/* For plugin Cookie Notice: GDPR Cookie Compliance Plugin (CCPA ready) https://es.wordpress.org/plugins/gdpr-cookie-compliance/ */

/* Cookie notice info bar */

/* All buttons on GDPR COOKIE PLUGIN */

#moove_gdpr_cookie_info_bar .mgbutton, .gdpr_lightbox .mgbutton {
  border-radius: var(--def-border-radius) !important;
  box-shadow: none !important;
}

#moove_gdpr_cookie_info_bar .mgbutton.moove-gdpr-infobar-reject-btn,
		#moove_gdpr_cookie_info_bar .mgbutton.moove-gdpr-modal-reject-all,
		.gdpr_lightbox .mgbutton.moove-gdpr-infobar-reject-btn,
		.gdpr_lightbox .mgbutton.moove-gdpr-modal-reject-all {
  background-color: #686868 !important;
}

#moove_gdpr_cookie_info_bar .mgbutton.moove-gdpr-infobar-reject-btn:hover, #moove_gdpr_cookie_info_bar .mgbutton.moove-gdpr-modal-reject-all:hover, .gdpr_lightbox .mgbutton.moove-gdpr-infobar-reject-btn:hover, .gdpr_lightbox .mgbutton.moove-gdpr-modal-reject-all:hover {
  background-color: black !important;
}

#moove_gdpr_cookie_info_bar #strict-necessary-cookies .tab-title, #moove_gdpr_cookie_info_bar #third_party_cookies .tab-title, .gdpr_lightbox #strict-necessary-cookies .tab-title, .gdpr_lightbox #third_party_cookies .tab-title {
  pointer-events: none;
}

#moove_gdpr_cookie_info_bar #strict-necessary-cookies .moove-gdpr-tab-main-content, #moove_gdpr_cookie_info_bar #third_party_cookies .moove-gdpr-tab-main-content, .gdpr_lightbox #strict-necessary-cookies .moove-gdpr-tab-main-content, .gdpr_lightbox #third_party_cookies .moove-gdpr-tab-main-content {
  display: block !important;
}

#moove_gdpr_cookie_info_bar #privacy_overview .tab-title, .gdpr_lightbox #privacy_overview .tab-title {
  font-size: 22px !important;
  font-weight: bold !important;
}

#moove_gdpr_cookie_info_bar #strict-necessary-cookies .tab-title, #moove_gdpr_cookie_info_bar #third_party_cookies .tab-title, .gdpr_lightbox #strict-necessary-cookies .tab-title, .gdpr_lightbox #third_party_cookies .tab-title {
  font-weight: bold !important;
}

#moove_gdpr_cookie_modal {
  --dim: 30px;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close {
  display: flex !important;
  justify-content: center;
  align-items: center;
  top: calc(var(--dim) * -0.5) !important;
  right: calc(var(--dim) * -0.5) !important;
  width: var(--dim) !important;
  height: var(--dim) !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close .gdpr-icon {
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: var(--dim) !important;
  height: var(--dim) !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close .gdpr-icon::before,
				#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close .gdpr-icon::after {
  top: inherit !important;
  height: calc(var(--dim) * 0.45) !important;
  width: 1px !important;
}

#moove_gdpr_cookie_info_bar {
  width: 300px !important;
}

#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-content {
  flex-flow: column !important;
  row-gap: 1.5rem;
}

#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-content .moove-gdpr-button-holder {
  justify-content: center !important;
  flex-direction: column-reverse !important;
  width: 100% !important;
  padding-left: 0 !important;
}

@media only screen and (max-width: 767px) {
  #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-content {
    display: flex !important;
    flex-flow: column !important;
    row-gap: 1rem
  }

  #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-content .mgbutton {
    font-size: inherit !important;
    width: 100% !important;
  }
}

/**
 * THEME CUSTOMIZATION
 *
 * This is for the different landing pages hero-headers / sliders.
  * Any customer / theme customization should go here (leave layout.css alone)
 *
 */

header.entry-header .entry-header-content .glassy-card {
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
  background-color: rgba(255, 255, 255, 0.03);
  border-radius: var(--card-border-radius);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  padding: var(--card-padding);
  border: 1px solid rgba(255, 255, 255, 0.05);
}

/*! VIEW-TRANSITIONS ENABLED */

/* @view-transition {
	navigation: auto;
} */

/*! HEADER */

#masthead {
  position: relative;
  left: 50%;
  z-index: 99999;
  width: 100vw;
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  color: var(--menu-txt-color);
}

#masthead.fixed-header {
  position: fixed;
  left: 50%;
  top: 0px;
  z-index: 99999;
  width: 100%;
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-property: all;
  transition-duration: 150ms;
  transition-duration: 0.25s;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  will-change: auto;
}

[class*="bg-pattern-"]#masthead.fixed-header {
  position: fixed;
}

#masthead.fixed-autohide-header {
  /* background-color: green; */
  position: fixed;
  left: 50%;
  top: 0px;
  z-index: 99999;
  width: 100%;
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  will-change: auto;
}

[class*="bg-pattern-"]#masthead.fixed-autohide-header {
  position: fixed;
}

.menu-item {
  font-family: var(--nav-font-family);
  font-size: var(--nav-text-size);
  /* @apply text-[var(--nav-text-color)] dark:text-[var(--nav-text-color-dark)]; */
  color: var(--nav-text-color);
}

/*! Transparent header styles */

#page:has(.transparent-header) #masthead .main-header-wrap {
  background-color: var(--header-bg-color-transparent);
  color: var(--nav-text-color-transparent);
  border-bottom-color: var(--header-border-color-transparent);
  /* @apply bg-[var(--transparent-header-bg-color)] border-t-[var(--header-border-color)] border-b-[var(--header-border-color)]; */
  /* color: var(--nav-text-color); */
}

#page:has(.transparent-header) #masthead .main-nav-desktop .menu-item {
  color: var(--nav-text-color-transparent);
  /* @apply text-[var(--nav-text-color-scrolled)]; */
}

.sub-menu .menu-item,
.main-menu-mobile .menu-item {
  font-size: var(--submenu-text-size);
  /* Fixed font size for mobile (best for reading and UX) */
  color: var(--submenu-text-color);
}

/*! FIXED HEADER DEFAULT*/

body.fixed-header #page #masthead .above-header-wrap .menu-item a {
  color: var(--nav-text-color-above-header);
  text-decoration-line: none;
}

body.fixed-header #page #masthead .above-header-wrap .menu-item a:is(.dark *) {
  color: var(--nav-text-color-above-header-dark);
}

body.fixed-header #page #masthead .mobile-menu-switcher span {
  background-color: var(--nav-text-color);
}

body.fixed-header #page #masthead .mobile-menu-switcher span:is(.dark *) {
  background-color: var(--nav-text-color-dark);
}

body.fixed-header #page #masthead.scrolledHeader .mobile-menu-switcher span {
  background-color: var(--nav-text-color-scrolled);
}

body.fixed-header #page #masthead.scrolledHeader .mobile-menu-switcher span:is(.dark *) {
  background-color: var(--nav-text-color-scrolled-dark);
}

body.fixed-header #page #masthead.scrolledHeader .above-header-wrap .above-header-content {
  transform: translateY(calc(var(--desktop-above-header-height) * -1.1));
  height: var(--desktop-space-top);
}

body.fixed-header #page #masthead.scrolledHeader .main-header-wrap {
  border-bottom-color: var(--header-border-color-scrolled);
  background-color: var(--header-bg-color-scrolled) !important;
  color: var(--nav-text-color-scrolled);
  /* color: var(--nav-text-color-scrolled); */
  transition: all 0.6s ease;
  background-repeat: no-repeat;
  -webkit-backdrop-filter: blur(7.5px);
          backdrop-filter: blur(7.5px);
}

body.fixed-header #page #masthead.scrolledHeader .main-nav-desktop .menu-item {
  color: var(--nav-text-color-scrolled);
}

body.fixed-header #page #masthead.scrolledHeader .main-nav-desktop .menu-item:is(.dark *) {
  color: var(--nav-text-color-scrolled-dark);
}

body.fixed-header #page:has(.transparent-header) #masthead:not(.scrolledHeader) .mobile-menu-switcher span {
  background-color: var(--nav-text-color-transparent);
}

body.fixed-header #masthead:has(.above-header-wrap).scrolledHeader .main-header-wrap {
  border-top-color: var(--header-border-color-scrolled) !important;
}

body.fixed-header #masthead:has(.above-header-wrap).scrolledHeader .main-header-wrap:is(.dark *) {
  border-top-color: var(--header-border-color-scrolled-dark);
}

.main-header-wrap {
  --mobile-mt: 0;
  margin-top: var(--mobile-mt);
  border-top-color: var(--header-border-color);
  border-bottom-color: var(--header-border-color);
  background-color: var(--header-bg-color);
  color: var(--nav-text-color);
}

.main-header-wrap:is(.dark *) {
  border-top-color: var(--header-border-color-dark);
  border-bottom-color: var(--header-border-color-dark);
  background-color: var(--header-bg-color-dark);
  color: var(--nav-text-color-dark);
}

@media (min-width: 1024px) {
  .main-header-wrap {
    margin-top: 0px;
  }
}

.main-header-wrap {
  -webkit-backdrop-filter: blur(7.5px);
          backdrop-filter: blur(7.5px);
  border-top-width: 1px;
  border-bottom-width: 1px;
}

.main-header-wrap .main-header-content {
  position: relative;
  z-index: 10;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  height: var(--mobile-header-height);
  grid-template-columns: min-content auto;
  align-content: center;
  align-items: center;
}

.card.ponentes .main-header-wrap .main-header-content {
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem;
}

.card.ponentes .main-header-wrap .main-header-content figure {
  /* width: fit-content !important; */
  display: inline-flex;
  width: auto;
}

.card.ponentes .main-header-wrap .main-header-content figure img {
  /* width: 195px; */
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: top;
     object-position: top;
}

@media (min-width: 1024px) {
  .main-header-wrap .main-header-content {
    height: var(--desktop-header-height);
  }
}

.main-header-wrap .logo-brand {
  color: var(--logo-brand-color);
  z-index: 10;
}

/* !FULL WIDTH HEADER */

body.header-width-full .main-header-content,
	body.header-width-full .above-header-content {
  /* --pad-x: var(--def-layout-x-padding); */
  --pad-x: var(--header-x-padding-min);
}

@media only screen and (max-width: 1023px) {
  body.header-width-full .main-header-content,
	body.header-width-full .above-header-content {
    --pad-x: 1rem;
  }
}

body.header-width-full .main-header-content,
	body.header-width-full .above-header-content {
  padding-left: var(--pad-x);
  padding-right: var(--pad-x);
}

/* !HEADER WIDTH LAYOUT CONSTRAINED */

body.header-width-constrained .main-header-content,
	body.header-width-constrained .above-header-content {
  --max-w: clamp(100px, calc(100% - (1 * var(--def-layout-x-padding))), calc(var(--layout-max-width) - (1 * var(--def-layout-x-padding))));
  --pad-x: calc(var(--def-layout-x-padding) * 0.5);
}

@media only screen and (max-width: 1023px) {
  body.header-width-constrained .main-header-content,
	body.header-width-constrained .above-header-content {
    --max-w: 100vw;
    --pad-x: var(--header-x-padding-min);
  }
}

body.header-width-constrained .main-header-content,
	body.header-width-constrained .above-header-content {
  padding-left: var(--pad-x);
  padding-right: var(--pad-x);
  max-width: var(--max-w);
}

/* !HEADER WIDTH CENTERED */

@media only screen and (min-width: 1024px) {
  body.header-width-centered #masthead {
    width: unset;
  }

  body.header-width-centered .main-header-content,
		body.header-width-centered .above-header-content {
    --max-w: clamp(100px, calc(100% - (1 * var(--def-layout-x-padding))), calc(var(--layout-max-width) - (1 * var(--def-layout-x-padding))));
    --pad-x: calc(var(--def-layout-x-padding) * 0.5);
    padding-left: var(--pad-x);
    padding-right: var(--pad-x);
    max-width: var(--max-w);
  }

  body.header-width-centered .main-header-content,
		body.header-width-centered .above-header-wrap {
    display: flex;
    justify-content: center;
  }
}

body.header-width-centered .main-header-content {
  --pad-x: calc(var(--def-layout-x-padding) * 0.5);
}

@media only screen and (max-width: 1023px) {
  body.header-width-centered .main-header-content {
    --pad-x: var(--header-x-padding-min);
  }
}

body.header-width-centered .main-header-content {
  padding-left: var(--pad-x);
  padding-right: var(--pad-x);
}

.main-header-content {
  pointer-events: none;
}

@media only screen and (max-width: 1023px) {
  .above-header-wrap {
    display: none;
  }
}

.above-header-wrap:has(.smaller) li.smaller {
  font-size: 0.95em;
}

.menu-item > .menu-item-nolink {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.menu-item:not(.menu-item-is-shortcode) > .menu-item-nolink {
  cursor: pointer;
}

:root #masthead {
  --hover-bg-color: var(--menu-item-hover-bg-color);
}

:root #masthead.scrolledHeader {
  --hover-bg-color: var(--menu-item-hover-bg-color-scrolled);
}

:root.dark #masthead {
  --hover-bg-color: var(--menu-item-hover-bg-color-dark);
}

:root.dark #masthead.scrolledHeader {
  --hover-bg-color: var(--menu-item-hover-bg-color-scrolled-dark);
}

/*! desktop menu items hover effect  */

#page #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt), #page #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt), #page #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt), #page #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt) {
  display: flex;
  align-items: center;
  padding-top: .5rem;
  padding-bottom: .5rem;
  padding-left: 3px;
  padding-right: 3px;
  --inset-y: 5px;
  --inset-x: -10px;
  --inset-x-with-icon: 0;
  position: relative;
}

#page #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt)::before, #page #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt)::before, #page #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt)::before, #page #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt)::before {
  content: "";
  position: absolute;
  inset: var(--inset-y) var(--inset-x);
  z-index: -1;
  border-radius: var(--menu-item-hover-border-radius);
  background-color: transparent;
  transition: background-color 0.3s ease;
  display: block;
}

#page #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt):has(.icon)::before, #page #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt):has(.icon)::before, #page #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt):has(.icon)::before, #page #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt):has(.icon)::before {
  inset: var(--inset-y) 0 var(--inset-y) var(--inset-x);
}

#page #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt):hover::before, #page #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt):hover::before, #page #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt):hover::before, #page #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt):hover::before {
  background-color: var(--hover-bg-color);
}

#page:has(.transparent-header) #masthead:not(.scrolledHeader) .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt)::before, #page:has(.transparent-header) #masthead:not(.scrolledHeader) .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt)::before, #page:has(.transparent-header) #masthead:not(.scrolledHeader) .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt)::before, #page:has(.transparent-header) #masthead:not(.scrolledHeader) .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt)::before {
  background-color: transparent;
}

#page:has(.transparent-header) #masthead:not(.scrolledHeader) .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt):hover::before, #page:has(.transparent-header) #masthead:not(.scrolledHeader) .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt):hover::before, #page:has(.transparent-header) #masthead:not(.scrolledHeader) .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) a:not(.bt):hover::before, #page:has(.transparent-header) #masthead:not(.scrolledHeader) .above-header-wrap .menu-item:not(.menu-item-is-shortcode):not(.menu-bt) .menu-item-nolink:not(.bt):hover::before {
  background-color: var(--menu-item-hover-bg-color-transparent);
}

#page:has(.transparent-header) #masthead:not(.scrolledHeader) .logo-brand {
  color: var(--logo-brand-color-transparent);
  z-index: 10;
}

.main-nav-desktop {
  display: none;
}

@media (min-width: 1024px) {
  .main-nav-desktop {
    display: flex;
  }
}

.main-nav-desktop {
  pointer-events: all;
}

.main-nav-desktop #primary-menu {
  display: flex;
  align-items: center;
  gap: var(--menu-items-gap);
}

.main-nav-desktop #primary-menu a svg, .main-nav-desktop #primary-menu .menu-item-nolink svg {
  scale: 0.6;
  rotate: 0deg;
  stroke-width: 1.75px !important;
  transition: rotate 0.3s ease;
  /* display: none; */
}

.main-nav-desktop #primary-menu .sub-menu {
  display: none;
}

.main-nav-desktop #primary-menu .menu-item.menu-item-has-children.opened a svg,
			.main-nav-desktop #primary-menu .menu-item.menu-item-has-children.opened .menu-item-nolink svg {
  rotate: 90deg;
}

.main-header-content .logo-brand {
  pointer-events: all;
}

.main-header-content .logo-brand img,
		.main-header-content .logo-brand svg {
  height: auto;
  width: var(--logo-brand-width);
  max-width: unset;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.above-header-wrap .above-header-content {
  display: flex;
  height: var(--desktop-above-header-height);
  align-items: center;
  will-change: auto;
  transition: all 0.3s ease;
}

.above-header-wrap .above-header-content nav .top-nav-container li a[href*="#"] {
  display: none !important;
}

.main-nav-mobile {
  position: relative;
  display: flex;
}

@media (min-width: 1024px) {
  .main-nav-mobile {
    display: none;
  }
}

.main-nav-mobile {
  /* &.nav-opened {
		#primary-menu {
			@apply opacity-100;
			pointer-events: all;
			translate: calc(
					-100% + var(--mobile-switcher-dim) + 2 * var(--mobile-switcher-borderDim)
				)
				0;
		}
	} */
}

.main-nav-mobile .primary-menu-wrapper {
  position: absolute;
  margin-top: var(--mobile-header-height);
  border-radius: var(--min-border-radius);
  background-color: var(--submenu-bg-color);
  padding-top: 1rem;
  padding-bottom: 1rem;
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity));
  opacity: 0;
}

.main-nav-mobile .primary-menu-wrapper:is(.dark *) {
  background-color: var(--submenu-bg-color-dark);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.main-nav-mobile .primary-menu-wrapper {
  border: 1px solid var(--submenu-border-color);
  box-shadow: var(--submenu-shadow);
  transition: all 0.6s cubic-bezier(0.2, 1, 0.3, 1);
  /* border: 1px solid #34343411; */
  pointer-events: none;
  will-change: auto;
  translate: calc(-100% + var(--mobile-switcher-dim) + 2 * var(--mobile-switcher-borderDim)) -32px;
  max-height: calc(100svh - var(--whole-header-height) - 2rem);
  overflow-y: auto;
}

.main-nav-mobile.nav-opened .primary-menu-wrapper {
  opacity: 1;
  pointer-events: all;
  translate: calc(-100% + var(--mobile-switcher-dim) + 2 * var(--mobile-switcher-borderDim)) 0;
}

.main-nav-mobile #primary-menu .menu-item {
  min-width: var(--submenu-min-width);
  max-width: 300px;
  white-space: nowrap;
  text-wrap: nowrap;
  padding-top: .2ch;
  padding-bottom: .2ch;
}

.main-nav-mobile #primary-menu .menu-item > a,
			.main-nav-mobile #primary-menu .menu-item > .menu-item-nolink {
  display: flex;
  align-items: center;
  padding-top: .2rem;
  padding-bottom: .2rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.main-nav-mobile #primary-menu .menu-item > a > svg, .main-nav-mobile #primary-menu .menu-item > .menu-item-nolink > svg {
  scale: 0.6;
  /* rotate: 90deg; */
  stroke-width: 1.75px !important;
  transition: rotate 0.3s ease;
}

.main-nav-mobile #primary-menu .menu-item.menu-bt {
  --inset-y: -2px !important;
  --inset-x: -0px !important;
  --inset-x-with-icon: 0;
}

.main-nav-mobile #primary-menu .menu-item.menu-bt a {
  position: relative;
}

.main-nav-mobile #primary-menu .menu-item.menu-bt a::before {
  content: "";
  position: absolute;
  inset: var(--inset-y) var(--inset-x);
  z-index: -1;
  /* height: 100%;
						width: 100%; */
  border-radius: var(--def-border-radius);
  background-color: transparent;
  transition: background-color 0.3s ease;
  display: flex;
  align-items: center;
}

.main-nav-mobile #primary-menu .menu-item.menu-item-is-shortcode .menu-item-nolink {
  padding-left: 0px;
  padding-right: 0px;
}

.main-nav-mobile #primary-menu .menu-item.menu-item-is-shortcode .menu-item-nolink > * {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}

.main-nav-mobile #primary-menu .menu-item:has(.sub-menu-wrapper) .sub-menu-wrapper {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}

.main-nav-mobile #primary-menu .menu-item:has(.sub-menu-wrapper) .sub-menu-wrapper ul {
  background-color: rgb(30 41 59 / 0.05);
  overflow: hidden;
}

.main-nav-mobile #primary-menu .menu-item:has(.sub-menu-wrapper) .sub-menu-wrapper ul li {
  padding-left: 1rem;
}

.main-nav-mobile #primary-menu .menu-item:has(.sub-menu-wrapper) .sub-menu-wrapper ul li:first-of-type {
  margin-top: 0.7rem;
}

.main-nav-mobile #primary-menu .menu-item:has(.sub-menu-wrapper) .sub-menu-wrapper ul li:last-of-type {
  margin-bottom: 0.7rem;
}

.main-nav-mobile #primary-menu .menu-item:has(.sub-menu-wrapper).showing a > svg,
					.main-nav-mobile #primary-menu .menu-item:has(.sub-menu-wrapper).showing .menu-item-nolink > svg {
  rotate: 90deg;
}

.main-nav-mobile #primary-menu .menu-item:has(.sub-menu-wrapper).showing .sub-menu-wrapper {
  grid-template-rows: 1fr;
}

.menu-item-is-shortcode {
  white-space: normal !important;
}

/* Desktop submenus */

.main-nav-desktop-submenus-wrap {
  --paddTop: calc((var(--desktop-header-height) * 0.5) + 0rem);
  /* --paddSubmenu: var(--def-layout-x-padding); */
  --paddSubmenu: 1rem;
  position: absolute;
  z-index: 0;
  width: 100%;
}

.main-nav-desktop-submenus-wrap .sub-menu-container {
  pointer-events: none;
  position: absolute;
  padding-top: var(--paddTop);
  max-width: calc(100% - (var(--def-layout-x-padding) * 2));
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu {
  position: relative;
  min-width: var(--submenu-min-width);
  overflow: hidden;
  border-radius: var(--min-border-radius);
  background-color: var(--submenu-bg-color);
  padding: var(--paddSubmenu);
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity));
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu:is(.dark *) {
  background-color: var(--submenu-bg-color-dark);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu {
  /* border-width: 1px;
			border-style: solid;
			border-color: var(--submenu-border-color); */
  /* border-width: 3px;
			border-style: solid;
			border-color: red; */
  outline-width: 1px;
  outline-style: solid;
  outline-color: var(--submenu-border-color);
  display: flex;
  flex-flow: column;
  gap: 0.6ch;
  box-shadow: var(--submenu-shadow);
  translate: 0 10%;
  opacity: 0;
  /* scale: 0.8; */
  transform-origin: top;
  transition:
				opacity 0.2s ease-in,
				translate 0.15s ease-in,
				background-color 0.3s ease-in;
  will-change: auto;
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu .menu-item {
  white-space: nowrap;
  text-wrap: nowrap;
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu .menu-item a {
  display: flex;
  position: relative;
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu .menu-item a:not(.wp-element-button)::before {
  --padd: 0.6ch;
  content: "";
  display: block;
  position: absolute;
  pointer-events: none;
  width: calc(100% + var(--padd) * 2);
  height: calc(100% + var(--padd) * 2);
  border-radius: 6px;
  /* inset: calc(var(--padd) * -1); */
  inset: calc(var(--padd) * -1) calc(var(--padd) * -1);
  background-color: transparent;
  z-index: -1;
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu .menu-item a:not(.wp-element-button):hover {
  color: var(--submenu-text-hover-color) !important;
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu .menu-item a:not(.wp-element-button):hover::before {
  /* background-color: red; */
  background-color: var(--submenu-item-hover-bg-color);
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu:has(.megamenu) {
  padding: 0;
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu:has(.megamenu) > .menu-item {
  padding-top: 0px;
  padding-bottom: 0px;
}

.main-nav-desktop-submenus-wrap .sub-menu-container.showing {
  pointer-events: auto;
}

.main-nav-desktop-submenus-wrap .sub-menu-container.showing .sub-menu {
  /* scale: 1 !important; */
  translate: 0;
  opacity: 1;
  transition:
					opacity 0.3s ease,
					translate 0.6s ease;
}

.mobile-menu-switcher {
  --color: var(--nav-text-color);
  /* --color: currentColor; */
  --dim: calc(var(--mobile-switcher-dim) + calc(2 * var(--mobile-switcher-borderDim)));
  /* --w: calc(var(--dim) + calc(2 * var(--borderDim)) + 4px); */
  position: relative;
  width: calc(var(--dim) + 4px);
  height: var(--dim);
  gap: 5px;
  /* width: var(--w);
  height: var(--w); */
  margin: 0;
  rotate: 0deg;
  transition: all 0.5s ease-in-out;
  will-change: auto;
  z-index: 50;
  cursor: pointer;
  vertical-align: middle;
  outline: 0;
  border: var(--mobile-switcher-borderDim) solid transparent;
  /* overflow: hidden; */
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
}

.mobile-menu-switcher span {
  display: block;
  will-change: auto;
  pointer-events: none;
  /* position: absolute; */
  height: 1px;
  width: 100%;
  opacity: 1;
  /* left: 0; */
  rotate: 0deg;
  transition: 0.3s ease-in-out;
}

.mobile-menu-switcher span:nth-child(1) {
  transform-origin: center left;
}

.mobile-menu-switcher span:nth-child(3) {
  transform-origin: center left;
}

#page:has(.transparent-header) .mobile-menu-switcher {
  --color: var(--nav-text-color-transparent);
}

/*! MOBILE MENU */

/* --color: white !important; */

.main-nav-mobile.nav-opened .mobile-menu-switcher span:nth-child(1) {
  rotate: 45deg !important;
}

.main-nav-mobile.nav-opened .mobile-menu-switcher span:nth-child(3) {
  rotate: -45deg !important;
}

.main-nav-mobile.nav-opened .mobile-menu-switcher span:nth-child(2) {
  /* translate: -300% !important; */
  translate: -300% !important;
  opacity: 0 !important;
}

.main-nav-mobile:has(.mmenu-footer) .primary-menu-wrapper {
  padding-bottom: 0;
}

.main-nav-mobile:has(.mmenu-footer) .menu-item:has(.mmenu-footer) {
  padding-bottom: 0 !important;
}

.main-nav-mobile:has(.mmenu-footer) .menu-item:has(.mmenu-footer) .menu-item-nolink {
  padding-bottom: 0 !important;
}

.main-nav-mobile .mmenu-footer {
  padding: 1.5rem;
  margin: 0 !important;
  margin-top: 0.8rem !important;
  /* background: #23303c; */
  /* background: #2e3f4f; */
  background: #23303c;
  width: 100%;
}

.main-nav-mobile .mmenu-footer .svg-bg-pattern {
  background-image: var(--bg-pattern-cross-dark);
  opacity: 0.3;
  -webkit-mask-image: radial-gradient(80% 60% at 80% 80%, black, transparent);
          mask-image: radial-gradient(80% 60% at 80% 80%, black, transparent);
}

.main-nav-mobile .mmenu-footer .wp-block-buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 1.5rem;
}

.main-nav-mobile .mmenu-footer .wp-block-buttons:first-of-type {
  padding-top: 0;
}

.main-nav-mobile .mmenu-footer .wp-block-buttons a {
  min-width: 160px;
  font-size: 0.9rem !important;
}

.main-nav-mobile .mmenu-footer::after {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 10;
  border-top-width: 1px;
  /* border-image-source: linear-gradient(90deg, #2c2238, #40407e 15%, #33223a 48%, #4e375a 80%, #271c2a); */
  /* border-image-source: linear-gradient(90deg, rgb(62 110 100 / 0%), rgb(50 98 88) 15%, rgb(39 178 148 / 45%) 48%, rgb(50 98 88) 80%, rgb(62 110 100 / 0%)); */
  border-image-source: linear-gradient(90deg, rgb(39 178 148 / 0%), rgb(39 178 148 / 45%) 50%, rgb(39 178 148 / 0%));
  border-image-slice: 1;
}

/*! LANGUAGE SWITCHER */

.lang-switcher {
  display: flex;
  --flag-size: 20px;
}

/* opacity: 0; */

/* @media only screen and (max-width: 1023px) {
		display: none;
	} */

.lang-switcher.showing .lang-list {
  opacity: 1;
  pointer-events: all;
  translate: 0 1rem;
}

.lang-switcher .current-lang {
  position: relative;
  cursor: pointer;
}

.lang-switcher .current-lang img {
  pointer-events: none;
}

.lang-switcher .current-lang::before {
  content: "";
  display: block;
  position: absolute;
  width: calc(100% + 1rem);
  height: calc(100% + 1rem);
  inset: calc(-0.5rem);
}

.lang-switcher .current-lang .lang-flag {
  position: relative;
  z-index: 2;
}

.lang-switcher .lang-list {
  --padd: 1rem;
  position: fixed;
  z-index: 9999;
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
  /* padding-top: 2rem; */
  opacity: 0;
  pointer-events: none;
  margin-left: calc(var(--padd) * -1);
  margin-top: 2rem;
  translate: 0 2rem;
  transition:
			opacity 0.2s ease-in,
			translate 0.3s ease-out;
}

.lang-switcher .lang-list ul {
  background-color: var(--submenu-bg-color);
  border: 1px solid var(--submenu-border-color);
  padding: var(--padd);
  border-radius: var(--min-border-radius);
  box-shadow: var(--submenu-shadow);
  display: flex;
  flex-flow: column;
  gap: 0.8rem;
  min-width: 190px;
}

.lang-switcher .lang-list .lang-item {
  font-size: var(--nav-text-size);
  position: relative;
}

.lang-switcher .lang-list .lang-item a {
  color: var(--submenu-text-color) !important;
  display: flex;
  align-items: center;
  gap: 1ch;
  position: relative;
}

.lang-switcher .lang-list .lang-item a * {
  z-index: 5;
}

.lang-switcher .lang-list .lang-item a::before {
  --padd: 0.5ch;
  content: "";
  display: block;
  position: absolute;
  width: calc(100% + var(--padd) * 2);
  height: calc(100% + var(--padd) * 2);
  border-radius: 6px;
  border-top-left-radius: 24px;
  border-bottom-left-radius: 24px;
  inset: calc(var(--padd) * -1);
  background-color: transparent;
  z-index: 1;
}

.lang-switcher .lang-list .lang-item a:hover {
  color: var(--submenu-text-hover-color) !important;
}

.lang-switcher .lang-list .lang-item a:hover::before {
  background-color: var(--submenu-item-hover-bg-color);
}

.lang-switcher .lang-flag {
  overflow: hidden;
  width: var(--flag-size);
  height: var(--flag-size);
  min-width: var(--flag-size);
  border-radius: 50%;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  /* border: 1px solid var(--submenu-text-color); */
}

.lang-switcher .lang-name {
  display: flex;
  flex-shrink: 0;
}

.lang-switcher.horizontal {
  gap: 1rem;
}

.lang-switcher.horizontal .current-lang {
  display: flex;
  flex-flow: row;
  height: -moz-fit-content;
  height: fit-content;
  align-items: center;
}

.lang-switcher.horizontal .current-lang svg.icon {
  scale: 0.6;
  /* rotate: 90deg; */
  stroke-width: 1.75px !important;
}

.lang-switcher.horizontal .current-lang::before {
  display: none;
}

.lang-switcher.horizontal .lang-list {
  position: relative;
  margin: 0;
  translate: 0 0;
  gap: 0;
  flex-flow: row;
  opacity: 0;
}

.lang-switcher.horizontal .lang-list ul {
  padding: 0;
  border: 0;
  box-shadow: none;
  flex-flow: row;
  align-items: center;
  gap: 1.3rem;
}

.lang-switcher.horizontal .lang-list .lang-item a::before {
  border-radius: 14px;
}

.lang-switcher.horizontal .lang-list .lang-item .lang-name {
  display: none;
}

.lang-switcher.horizontal.showing .lang-list {
  pointer-events: all;
  opacity: 1;
}

/*! NAVIGATION STYLES / THEMES */

:root {
  /*? Layout Navigation */
  /* --header-x-padding: var(--def-layout-x-padding); */
  /* --header-x-padding: 2rem; */
  --header-x-padding-min: 2.5rem;
  /*? Brand Logo */
  --logo-brand-color: #315d9e;
  --logo-brand-color-scrolled: unset;
  --logo-brand-color-transparent: white;
  --desktop-logo-brand-width: 200px;
  --mobile-logo-brand-width: 160px;
  /*? Navigation Default Backgrounds */
  --header-bg-color: white;
  --header-bg-color-scrolled: white;
  --header-bg-color-transparent: rgba(255, 255, 255, 0.01);
  --header-border-color: rgba(0, 0, 0, 0.15);
  --header-border-color-scrolled: rgba(0, 0, 0, 0.15);
  --header-border-color-transparent: rgba(255, 255, 255, 0.04);
  --submenu-bg-color: white;
  /*? Navigation Default texts */
  --nav-font-family: var(--def-font-family);
  --nav-text-size: 0.99rem;
  --nav-text-color: rgba(0, 0, 0, 0.75);
  --nav-text-color-scrolled: rgba(0, 0, 0, 0.75);
  --nav-text-color-transparent: white;
  --nav-text-color-above-header: var(--nav-text-color);
  --menu-item-hover-border-radius: var(--button-border-radius);
  --menu-item-hover-bg-color: rgba(0, 0, 0, 0.08);
  --menu-item-hover-bg-color-scrolled: rgba(0, 0, 0, 0.08);
  --menu-item-hover-bg-color-transparent: rgba(255, 255, 255, 0.08);
  /*? NavigationLayout */
  --desktop-space-top: 0rem;
  --menu-items-gap: 1.2rem;
  /*? Submenus styles */
  --submenu-min-width: 280px;
  /* --submenu-shadow: 0px 51px 80px rgba(22, 26, 41, 0.0154121), 0px 15.375px 24.1177px rgba(22, 26, 41, 0.0270905), 0px 6.38599px 10.0172px rgba(22, 26, 41, 0.0409122),
		0px 0.5px 3.62304px rgba(22, 26, 41, 0.07); */
  --submenu-shadow: 0px 51px 80px rgba(41, 56, 70, 0.05), 0px 25.375px 24.1177px rgba(41, 56, 70, 0.1), 0px 20.38599px 10.0172px rgba(41, 56, 70, 0.005), 0px 0.25px 3.62304px rgba(22, 26, 41, 0.07);
  --submenu-bg-color: var(--header-bg-color-scrolled);
  /* --submenu-border-color: rgba(0, 0, 0, 0.075); */
  --submenu-border-color: rgba(0, 0, 0, 0.08);
  /* --submenu-item-hover-bg-color: rgba(0, 0, 0, 0.15); */
  /* --submenu-item-hover-bg-color: hsla(0, 0%, 100%, 1.05); */
  --submenu-item-hover-bg-color: rgba(0, 0, 0, 0.05);
  /* --submenu-text-color: black; */
  --submenu-text-size: var(var(--nav-text-size));
  --submenu-text-color: rgba(0, 0, 0, 0.75);
  --submenu-text-description-color: rgb(from var(var(--submenu-text-color) r g b / 75%));
  --submenu-text-hover-color: black;
  --default-section-vert-padding: clamp(2.5rem, 10vw, 6rem);
  --column-gap: var(--card-padding, var(--default-card-padding));
  --row-gap: 2ch;
}

html,
body {
  position: relative;
  margin-top: 0 !important;
  scroll-behavior: smooth;
  overflow-x: hidden !important;
  transition: background 0.7s ease;
}

html.stop-scrolling, body.stop-scrolling {
  overflow: hidden !important;
}

html,
body {
  background-color: var(--bg-color-theme-light);
}

body {
  font-family: var(--def-font-family);
}

body h1,
	body h2,
	body h3,
	body h4 {
  font-family: var(--def-heading-font-family);
  /* letter-spacing: -0.02ch; */
}

/*! config for programatically change/add a style rule to the body when is child of .temp-body-bg (@html tag / :root) and a --temp-body-bg exists */

:is(:where(.temp-body-bg) body) {
  background: var(--temp-body-bg);
}

:is(:where(.temp-body-bg) body) [data-bgcolor] {
  transition: color 0.7s ease;
  color: var(--temp-body-txt-color);
}

body .is-layout-constrained > :where(.alignleft, .has-text-align-left, .is-content-justification-left) {
  margin-left: unset !important;
}

body .is-layout-constrained > :where(.alignright, .has-text-align-right, .is-content-justification-right) {
  margin-right: unset !important;
}

/*? for lenis smoothscroll, important */

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
  overflow: clip;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

/*! LOADER */

.loader {
  position: fixed !important;
  width: 70px !important;
  inset: 50%;
  height: 50px;
  aspect-ratio: 2;
  border: 10px solid #000;
  box-sizing: border-box;
  background:
		radial-gradient(farthest-side, #fff 98%, #0000) left/10px 10px,
		radial-gradient(farthest-side, #fff 98%, #0000) left/10px 10px,
		radial-gradient(farthest-side, #fff 98%, #0000) center/10px 10px,
		radial-gradient(farthest-side, #fff 98%, #0000) right/10px 10px,
		#000;
  background-repeat: no-repeat;
  filter: blur(4px) contrast(10);
  animation: l14 1s infinite;
}

@keyframes l14 {
  100% {
    background-position: right, left, center, right;
  }
}

/*? Global layout custom styles  and resets */

/*? :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

p:last-child {
  margin-bottom: 0;
}

[data-pctanim]:not(.enlarged-image) {
  opacity: 0;
}

[data-pctanim].enlarged-image {
  transform: unset !important;
}

.block-editor-block-list__block {
  color: black !important;
}

button.lightbox-trigger {
  display: none;
}

.full-width {
  width: 100% !important;
  max-width: unset !important;
  left: calc(50% - 100vw * 0.5);
}

.full-width > svg {
  width: 100%;
  height: auto;
}

figure.full-width {
  position: relative;
  width: 100vw !important;
  max-width: unset !important;
  /* left: 50%; */
  left: calc(50% - 100vw * 0.5) !important;
  padding: var(--def-layout-x-padding) 0;
}

figure.alignfull img,
		figure.alignfull svg {
  width: 100%;
  height: auto;
}

[data-rive] {
  width: 100%;
  aspect-ratio: 1;
}

.wp-block-columns.alignfull {
  width: 100vw !important;
  max-width: unset !important;
}

.full-height {
  min-height: 50%;
}

.full-vh {
  height: 100svh;
}

/* .sub-header {
	margin-bottom: 2ch;
} */

.lh-1 {
  line-height: 1;
}

.text-wrap-default {
  text-wrap: initial !important;
}

.text-wrap-balance {
  text-wrap: balance !important;
}

.section-double-y-padd,
.section-double-vert-padd {
  --double-padd: calc(var(--default-section-vert-padding) * 2);
  padding-top: var(--double-padd) !important;
  padding-bottom: var(--double-padd) !important;
}

.double-top-padd,
.section-double-top-padd {
  --double-padd: calc(var(--default-section-vert-padding) * 2);
  padding-top: var(--double-padd) !important;
}

.double-bottom-padd,
.section-double-bottom-padd {
  --double-padd: calc(var(--default-section-vert-padding) * 2);
  padding-bottom: var(--double-padd) !important;
}

.inline-flex,
.inline-block {
  display: inline-flex !important;
}

.no-pt {
  padding-top: 0px !important;
}

.no-pt:has(.wpcf7) .wpcf7 {
  padding-top: 0 !important;
}

.no-pb {
  margin-bottom: 0px !important;
  padding-bottom: 0px !important;
}

.no-py {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.no-mt {
  margin-top: 0px !important;
}

.no-mb {
  margin-bottom: 0px !important;
}

.no-gap {
  gap: 0rem !important;
}

.margin-b {
  margin-bottom: var(--def-layout-x-padding) !important;
}

.margin-t {
  margin-top: var(--def-layout-x-padding) !important;
}

.margin-b-1ch {
  margin-bottom: 1ch !important;
}

.margin-t-1ch {
  margin-top: 1ch !important;
}

.margin-t-small {
  padding-top: calc(var(--def-layout-x-padding) * 0.7) !important;
}

.padding-b {
  padding-bottom: var(--def-layout-x-padding) !important;
}

.padding-t {
  padding-top: var(--def-layout-x-padding) !important;
}

.border-t {
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-top-color: rgb(0 0 0 / var(--tw-border-opacity));
}

.border-t:is(.dark *) {
  border-top-color: rgb(255 255 255 / 0.5);
}

:has(.is-bg) > * {
  z-index: 1;
}

:has(.is-bg) .is-bg {
  pointer-events: none;
  z-index: 0;
}

.mask-radial-grad {
  /* background: red; */
  -webkit-mask-image: radial-gradient(50% 60% at 70% 55%, black 70%, transparent);
          mask-image: radial-gradient(50% 60% at 70% 55%, black 70%, transparent);
}

.stroke-width-thin:has(svg) * {
  stroke-width: 2;
}

.center-y,
.align-y-center {
  display: flex;
  justify-content: center;
  padding-top: 0;
}

.center {
  text-align: center;
  justify-content: center;
  justify-self: center;
  margin-left: auto !important;
  margin-right: auto !important;
}

.center > * {
  text-align: center;
}

.no-center {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.no-center > * {
  text-align: left !important;
}

.center-y-after-header {
  display: flex;
  justify-content: center;
  padding-top: 0;
  margin-top: var(--whole-header-height);
}

.align-y-bottom {
  align-self: flex-end;
}

.max-reading-width {
  max-width: 50rem !important;
}

.text-wrap-auto {
  text-wrap: auto !important;
}

h1.has-background, h2.has-background, h3.has-background, h4.has-background, h5.has-background, h6.has-background {
  padding: inherit;
}

figure {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
  height: auto !important;
}

.month {
  text-transform: capitalize;
}

.no-bg-color {
  background-color: transparent !important;
}

*:has(> .max-width-readable) {
  flex-wrap: wrap !important;
  align-content: flex-start !important;
}

*:has(> .max-width-readable) .max-width-readable {
  max-width: 690px !important;
}

.pct-2cols {
  /* @apply !grid grid-cols-1 md:grid-cols-2 gap-[var(--card-padding)] gap-y-[calc(var(--card-padding)*3)]; */
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--column-gap);
}

@media (min-width: 768px) {
  .pct-2cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.pct-2cols {
  row-gap: var(--row-gap);
}

.pct-2cols > * {
  width: 100% !important;
}

.pct-2cols.separator {
  --column-gap: 0;
  --separator-color: var(--card-border-color);
  --separator-width: var(--card-border-width);
}

.pct-2cols.separator > *:first-of-type {
  border-right-width: 0px;
  border-right-color: transparent;
  padding-right: 0px;
}

@media (min-width: 768px) {
  .pct-2cols.separator > *:first-of-type {
    border-right-width: 1px;
    border-right-color: var(--separator-color);
    padding-right: var(--card-padding);
  }
}

.pct-2cols.separator > *:first-of-type {
  border-right-width: var(--separator-width);
}

.pct-2cols.separator > *:last-of-type {
  padding-left: 0px;
}

@media (min-width: 768px) {
  .pct-2cols.separator > *:last-of-type {
    padding-left: var(--card-padding);
  }
}

.pct-2cols.no-responsive {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.pct-2cols-nested {
  /*! 2cols at small sapce because is inside anoter narrower container */
  container-type: inline-size;
  container-name: pct-2cols-nested;
}

.pct-2cols-nested > * {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  -moz-column-gap: 2rem !important;
       column-gap: 2rem !important;
}

.pct-2cols-nested > * * {
  align-items: flex-start !important;
}

@container pct-2cols-nested (max-width: 600px) {
  .pct-2cols-nested > * {
    grid-template-columns: 1fr !important;
  }

  .pct-2cols-nested > * > * {
    width: 100% !important;
  }
}

.pct-2cols-63 {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--column-gap);
}

@media (min-width: 768px) {
  .pct-2cols-63 {
    grid-template-columns: 55% 1fr;
  }
}

.pct-2cols-63 > * {
  width: 100% !important;
}

.pct-2cols-60-40 {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--column-gap);
}

@media (min-width: 1024px) {
  .pct-2cols-60-40 {
    grid-template-columns: 60% 1fr;
  }
}

.pct-2cols-60-40 > * {
  width: 100% !important;
}

.pct-2cols-70-30 {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--column-gap);
}

@media (min-width: 1024px) {
  .pct-2cols-70-30 {
    grid-template-columns: 70% 1fr;
  }
}

.pct-2cols-70-30 > * {
  width: 100% !important;
}

.pct-2cols-70-30 {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--column-gap);
}

@media (min-width: 1024px) {
  .pct-2cols-70-30 {
    grid-template-columns: 70% 1fr;
  }
}

.pct-2cols-70-30 > * {
  width: 100% !important;
}

.pct-2cols-45-auto {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--column-gap);
}

@media (min-width: 1024px) {
  .pct-2cols-45-auto {
    grid-template-columns: 45% 1fr;
  }
}

.pct-2cols-45-auto > * {
  width: 100% !important;
}

.pct-2cols-auto-45 {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--column-gap);
}

@media (min-width: 1024px) {
  .pct-2cols-auto-45 {
    grid-template-columns: 55% 1fr;
  }
}

.pct-2cols-auto-45 > * {
  width: 100% !important;
}

.pct-3cols {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--column-gap);
}

@media (min-width: 768px) {
  .pct-3cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .pct-3cols {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.pct-3cols > * {
  width: 100% !important;
}

.big-gap {
  -moz-column-gap: calc(var(--column-gap) * 2);
       column-gap: calc(var(--column-gap) * 2);
}

.small-gap {
  -moz-column-gap: calc(var(--column-gap) * 0.5);
       column-gap: calc(var(--column-gap) * 0.5);
}

@media only screen and (max-width: 768px) {
  .rtl-mobile > *:nth-child(2) {
    grid-row: 1;
  }
}

.max-w-form {
  max-width: calc(var(--form-max-width) * 1.2);
}

.hide-mobile {
  display: none;
}

@media (min-width: 768px) {
  .hide-mobile {
    display: flex;
  }
}

.duotone {
  /* --base: #f7392b; */
  --base: #27b294;
  --foreground: #16006f;
  --bg-blend: multiply;
  --blur: 0px;
  --fg-blend: lighten;
  --contrast: 1.5;
  --opacity: 1;
  background-color: var(--base);
  display: flex;
  flex: 1 1 100%;
  height: 100%;
  overflow: clip;
  position: relative;
}

.duotone::before {
  background-color: var(--foreground);
  content: "";
  height: 100%;
  mix-blend-mode: var(--fg-blend);
  position: absolute;
  inset: 0;
  width: 100%;
  z-index: 1;
}

.duotone img {
  filter: grayscale(100%) contrast(var(--contrast)) blur(var(--blur));
  flex: 1 0 100%;
  height: 100%;
  mix-blend-mode: var(--bg-blend);
  -o-object-fit: cover;
     object-fit: cover;
  opacity: var(--opacity);
  position: relative;
  width: 100%;
}

/*! PAGE/CPT SLIDERS */

#content #main:has(article .entry-content .slider) .slider,
	#content #main:has(article .entry-content .slider) .slider-2cols {
  width: 100vw;
  left: calc(50% - 100vw * 0.5);
  max-width: unset !important;
  min-height: var(--page-header-min-height);
}

#content #main:has(article .entry-content .slider) .slider .is-bg, #content #main:has(article .entry-content .slider) .slider-2cols .is-bg {
  max-width: unset !important;
}

#content #main:has(article .entry-content .slider) .slider + #contenido {
  padding-top: var(--default-section-vert-padding);
}

.slider-2cols {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  align-items: center;
  gap: 0px;
}

@media (min-width: 768px) {
  .slider-2cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.slider-2cols > * {
  width: 100% !important;
}

/*! Auto links line decoration on hover */

:root :where(a:where(:not(.wp-element-button))) {
  text-decoration: none;
}

#content a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(.no-decoration), #footer a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(.no-decoration) {
  padding-bottom: 3px;
}

#content a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(.no-decoration):not(:has(img)), #footer a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(.no-decoration):not(:has(img)) {
  color: var(--link-color);
}

#content a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(.no-decoration):not(:has(img)):is(.dark *), #footer a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(.no-decoration):not(:has(img)):is(.dark *) {
  color: var(--link-color-dark);
}

#content a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(.no-decoration):not(:has(img)), #footer a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(.no-decoration):not(:has(img)) {
  /* color: var(--main-color); */
  --underline-h: 0.2ch;
  text-decoration: none;
  background-image: linear-gradient(currentcolor, currentcolor);
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: 0% var(--underline-h);
  transition: all 0.3s cubic-bezier(0.2, 1, 0.3, 1);
}

#content a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(.no-decoration):not(:has(img)):hover, #footer a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(.no-decoration):not(:has(img)):hover {
  background-size: calc(100% - 0.5ch) var(--underline-h);
  opacity: 0.6;
}

.footer-top-border-grad::after {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 10;
  border-top-width: 1px;
  /* border-image-source: linear-gradient(90deg, #2c2238, #40407e 15%, #33223a 48%, #4e375a 80%, #271c2a); */
  /* border-image-source: linear-gradient(90deg, rgb(62 110 100 / 0%), rgb(50 98 88) 15%, rgb(39 178 148 / 45%) 48%, rgb(50 98 88) 80%, rgb(62 110 100 / 0%)); */
  border-image-source: var(--line-gradient);
  border-image-slice: 1;
}

.top-border-grad::after {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 10;
  border-top-width: 1px;
  border-image-source: var(--line-gradient);
  border-image-slice: 1;
}

.top-border-grad.border-grad-dch::after {
  border-image-source: var(--line-gradient-dch);
}

img {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

/* //! override default block group */

.wp-block-group {
  position: relative;
  /* display: flex; */
  flex-flow: column;
}

body .is-layout-constrained:not(.alignfull) > * {
  max-width: var(--layout-max-width);
  width: 100%;
  /* width: calc(100% - 2 * var(--def-layout-x-padding)); */
}

[data-overlayopacity]::after {
  content: "";
  display: flex;
  position: absolute;
  inset: 0;
  /* background-color: rgba(0, 0, 0, 0.33); */
  background-color: rgba(0, 0, 0, 0.45);
}

/* .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
} */

/*? :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

/*! PAGE TRANSITIONS */

.pct-page-transition {
  position: fixed;
  inset: 0;
  background-color: black;
  z-index: 55;
  opacity: 0;
  pointer-events: none;
  transition: all 0.5s ease-out;
}

.pct-page-transition.is-active {
  opacity: 1;
  pointer-events: all;
}

.pct-page-transition-2 {
  --tw-bg-opacity: 1;
  background-color: rgb(30 41 59 / var(--tw-bg-opacity));
  position: fixed;
  width: 100vw;
  inset: 0;
  z-index: 5;
  translate: -100%;
  pointer-events: none;
  transition: all 0.5s ease-out;
}

.pct-page-transition-2.is-active {
  pointer-events: all;
  translate: 0px;
}

#page:has(.pct-page-transition-2) #content,
	#page:has(.pct-page-transition-2) #footer {
  position: relative;
  z-index: 2;
}

/*! PAGE HEADERS */

#main > article header.entry-header {
  --paddV: calc(var(--def-layout-x-padding) * 2);
  display: flex;
  min-height: var(--page-header-min-height);
  justify-content: center;
  position: relative;
  width: 100vw;
  left: calc(50% - 100vw * 0.5);
  padding-top: var(--whole-header-height);
}

#main > article header.entry-header .entry-header-content {
  display: flex;
  flex-wrap: wrap;
  row-gap: 1rem;
  justify-content: center;
  align-items: center;
}

#main > article header.entry-header .entry-header-content h1.entry-title {
  font-size: clamp(2rem, 8vw, 3rem);
  text-align: center;
}

#main > article header.entry-header .header-default-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: var(--heading-default-grad-bg);
  z-index: -1;
}

#main > article header.entry-header h1 {
  /* @apply text-[var(--heading-color-dark)]; */
  /* @apply text-[var(--heading-color-theme-light)]; */
  /* text-align: center; */
  /* width: fit-content; */
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
  z-index: 5;
}

#main > article header.entry-header .header-subtitle {
  display: flex;
  align-items: center;
  margin-left: 2rem;
  /* padding-left: 2rem; */
  max-width: 700px;
  text-wrap: balance;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
}

/* border-left: 2px solid white; */

#main > article header.entry-header .header-subtitle p {
  color: white;
  /* padding-left: 2rem; */
  margin-left: clamp(1rem, 2vw, 2rem);
  font-size: clamp(1rem, 3vw, 1.4rem);
  margin-bottom: 0;
}

#main > article header.entry-header .header-subtitle .left-border {
  display: block;
  width: 2px;
  height: 100%;
  background-color: white;
  /* margin-right: 2rem; */
  margin-right: 0;
  transform-origin: "bottom";
  scale: 1 0;
}

#main > article header.entry-header .header-subtitle .top-border {
  display: block;
  width: 100%;
  height: 2px;
  background-color: white;
  /* margin-right: 2rem; */
  margin-right: 0;
  transform-origin: "left";
  scale: 0 1;
}

#main > article header.entry-header .header-dark-overlay,
		#main > article header.entry-header .header-dark-overlay-bottom {
  background: var(--dark-overlay-header);
  display: block;
  position: absolute;
  inset: 0;
}

#main > article header.entry-header .header-dark-overlay-bottom {
  background: var(--dark-overlay-from-bottom);
}

/*! SECTION HEADINGS */

.section-heading {
  color: var(--txt-color);
}

.section-heading:is(.dark *) {
  color: var(--txt-color-dark);
}

.section-heading {
  padding-bottom: 2rem;
}

.section-heading .heading-endline {
  font-size: 0;
  display: block;
  width: clamp(200px, 50%, 50%) !important;
  /* background-color: red; */
  margin-top: 2rem;
  border-top: 1px solid currentColor;
  height: 60px;
}

#page {
  /* display: grid;
	grid-template-rows: 1fr auto;
	min-height: 100dvh; */
  /*! this 3 previous lines forces the footer to be at the bottom of the page */
  max-width: var(--layout-max-width);
  margin: auto;
  width: 100%;
  padding: 0 var(--def-layout-x-padding);
  position: relative;
  z-index: 1;
}

#content #primary #main .entry-header + .entry-content:not(:has(.pct-section)) {
  padding: var(--default-section-vert-padding) 0;
}

#content #primary #main .entry-content {
  min-height: calc(100svh - var(--page-header-min-height));
}

#content #primary #main .entry-content section p:last-of-type {
  margin-bottom: 0;
}

body.home header.entry-header, body:has(.home) header.entry-header {
  display: none;
}

body.fixed-header .entry-content > .slider {
  padding-top: var(--whole-header-height);
}

body.fixed-header .entry-content > .slider .full-height {
  min-height: calc(100svh - var(--whole-header-height));
}

body.page-template-page-no-header #main .entry-content > section:not(.slider):not(> header + section):first-of-type {
  padding-top: calc(var(--whole-header-height) + var(--default-section-vert-padding));
  padding-bottom: var(--default-section-vert-padding);
}

.layout-site-width {
  max-width: var(--layout-max-width);
  padding-left: var(--def-layout-x-padding);
  padding-right: var(--def-layout-x-padding);
  width: 100%;
}

/* margin: auto; */

/* margin-right: auto; */

/* margin-left: auto; */

.layout-site-width:has(> .centered) {
  display: flex;
  flex-direction: column;
  align-items: center;
}

section:not(.block-editor-block-list__block) {
  position: relative;
}

section:not(.block-editor-block-list__block).pct-section {
  /* margin-top: var(--default-section-vert-padding);
		margin-bottom: var(--default-section-vert-padding); */
  padding-top: var(--default-section-vert-padding);
  padding-bottom: var(--default-section-vert-padding);
  /* &:last-of-type { */
  /* padding-bottom: 0; */
  /* } */
}

/*! This makes sure .sticky-header-trigger is positioned correctly, don't remove */

/* &:first-of-type {
			padding-top: 0;
		} */

section:not(.block-editor-block-list__block).pct-section > section {
  /* padding: calc(var(--default-section-vert-padding) * 0.5) 0; */
  padding-top: var(--default-section-vert-padding);
  padding-bottom: 0;
}

section:not(.block-editor-block-list__block).is-layout-constrained > *:not(figure) {
  margin-left: unset;
  margin-right: unset;
  width: 100%;
}

section:not(.block-editor-block-list__block).full-width,
	section:not(.block-editor-block-list__block).alignfull {
  width: 100vw !important;
  max-width: unset !important;
  /* display: flex;
		align-items: center; */
  /* left: 50%; */
  left: calc(50% - 100vw * 0.5);
}

/* translate: -50% 0; */

section:not(.block-editor-block-list__block).full-width > *:not(.is-bg), section:not(.block-editor-block-list__block).alignfull > *:not(.is-bg) {
  max-width: calc(var(--layout-max-width) - 2 * var(--def-layout-x-padding));
  margin-right: auto;
  margin-left: auto;
  width: calc(100% - 2 * var(--def-layout-x-padding));
}

section:not(.block-editor-block-list__block).full-width:has(.is-bg.full-vh), section:not(.block-editor-block-list__block).alignfull:has(.is-bg.full-vh) {
  min-height: 100vh;
  overflow: hidden;
}

section:not(.block-editor-block-list__block).full-width > .is-bg, section:not(.block-editor-block-list__block).alignfull > .is-bg {
  max-width: unset;
}

section:not(.block-editor-block-list__block).full-width > .is-bg img, section:not(.block-editor-block-list__block).alignfull > .is-bg img {
  height: 100%;
}

section:not(.block-editor-block-list__block).y-padding {
  padding-top: var(--default-section-vert-padding);
  padding-bottom: var(--default-section-vert-padding);
}

section:not(.block-editor-block-list__block):has(+ .has-overlapper:not(.block-editor-block-list__block)) {
  padding-bottom: var(--section-overlap-y);
}

section:not(.block-editor-block-list__block).has-overlapper:not(.block-editor-block-list__block) {
  padding-top: 0;
  padding-bottom: 0;
}

section:not(.block-editor-block-list__block).has-overlapper:not(.block-editor-block-list__block) .overlapper {
  padding-bottom: 0;
  translate: 0 -50%;
}

section:not(.block-editor-block-list__block).has-overlapper:not(.block-editor-block-list__block) + section {
  margin-top: calc((var(--section-overlap-y) * -0.5) + 3rem);
}

.wp-block-group.is-layout-constrained:not(section) > * {
  margin-left: unset;
  margin-right: unset;
}

/*! ELEMENTS WITH BACKGROUNDS */

.has-bg {
  position: relative;
  overflow: hidden;
  color: white;
}

.has-bg.pct-section {
  padding-top: var(--default-section-vert-padding);
  padding-bottom: var(--default-section-vert-padding);
}

.is-bg {
  /* &:not(.block-editor-block-list__block):has(img) {
		display: none;
	} */
  position: absolute;
  width: 100% !important;
  height: 100% !important;
  top: 0;
  left: 0;
}

/* inset: 0; */

.is-bg img,
	.is-bg svg {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.is-bg.bg-top-right {
  right: 0;
  transform-origin: top right;
}

.is-bg:has(video) > *,
		.is-bg:has(video) video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: unset;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.rounded {
  overflow: hidden;
  border-radius: var(--card-border-radius);
}

body.single-post .post .entry-content, body.single-evento .post .entry-content {
  padding: var(--default-section-vert-padding) 0;
}

body.single-post .post .entry-content h2,
			body.single-post .post .entry-content h3,
			body.single-post .post .entry-content h4,
			body.single-post .post .entry-content h5,
			body.single-post .post .entry-content h6,
			body.single-post .evento .entry-content h2,
			body.single-post .evento .entry-content h3,
			body.single-post .evento .entry-content h4,
			body.single-post .evento .entry-content h5,
			body.single-post .evento .entry-content h6,
			body.single-evento .post .entry-content h2,
			body.single-evento .post .entry-content h3,
			body.single-evento .post .entry-content h4,
			body.single-evento .post .entry-content h5,
			body.single-evento .post .entry-content h6,
			body.single-evento .evento .entry-content h2,
			body.single-evento .evento .entry-content h3,
			body.single-evento .evento .entry-content h4,
			body.single-evento .evento .entry-content h5,
			body.single-evento .evento .entry-content h6 {
  text-wrap: unset;
}

/*! FOOTER */

#footer {
  position: relative;
  overflow: clip;
  width: 100vw;
  /* left: 50%; */
  left: calc(50% - 100vw * 0.5);
  /* translate: -50% 0; */
  color: white;
}

/* @apply bg-gradient-footer; */

#footer:has(.has-overlapper) {
  padding-top: 0;
}

#footer:has(.has-overlapper) .has-overlapper {
  --treshold: 0.65;
}

@media only screen and (max-width: 767px) {
  #footer:has(.has-overlapper) .has-overlapper {
    --treshold: 1;
  }
}

#footer:has(.has-overlapper) .has-overlapper {
  height: calc(var(--section-overlap-y) * var(--treshold));
}

#footer .footer-content {
  padding-top: var(--default-section-vert-padding);
}

/* background-color: var(--footer-bg-color);
	background-image: var(--footer-gradient-dark); */

#footer > * {
  max-width: calc(var(--layout-max-width) - 2 * var(--def-layout-x-padding));
  margin-right: auto;
  margin-left: auto;
  width: calc(100% - 2 * var(--def-layout-x-padding));
}

#footer a {
  color: white;
}

#footer .copyright-container {
  position: relative;
  width: 100vw;
  max-width: unset;
}

#footer .copyright-container .pct-copyright {
  display: flex;
  max-width: calc(var(--layout-max-width) - 2 * var(--def-layout-x-padding));
  margin-right: auto;
  margin-left: auto;
  width: calc(100% - 2 * var(--def-layout-x-padding));
  flex-flow: column;
  gap: 0.5rem;
}

#footer .copyright-container .pct-copyright > * {
  flex: 0 1 auto;
}

#footer .copyright-container {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

/* left: 50%;
	translate: -50% 0; */

#footer .copyright-container > * {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: calc(var(--layout-max-width) - 2 * var(--def-layout-x-padding));
  margin-right: auto;
  margin-left: auto;
}

#footer .copyright-container .pct-copyright .copy ul li,
				#footer .copyright-container .pct-copyright .copy ul a {
  font-size: 0.9rem;
  color: white;
  text-transform: capitalize;
}

#footer .copyright-container .pct-copyright .copy ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  justify-content: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  row-gap: 0.25rem;
}

.pictau-logo .pcticon-pictau-logo .path1::before, .pictau-logo .pcticon-pictau-logo .path2::before, .pictau-logo .pcticon-pictau-logo .path3::before {
  color: white;
}

.pictau-logo:hover .path1::before, .pictau-logo:hover .path2::before, .pictau-logo:hover .path3::before {
  color: var(--def-color);
}

.social-icons {
  display: flex;
  gap: 0.5rem;
}

.social-icons .social-item i {
  font-size: 1.2rem;
  color: white;
}

/*! ORDERED (NUMBER) LIST */

.ordered-list {
  --numSize: 1rem;
  --numberedColor: white;
  --numberedBgColor: #008dff;
  --dim: 2em;
  --padding: 1.2em;
  --connectLineColor: var(--connectedcolor, var(--numberedBgColor));
  padding-top: calc(var(--default-section-vert-padding) * 0.5);
  counter-reset: pct-counter;
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
  gap: calc(var(--dim) * 0.5);
}

.ordered-list > * {
  display: grid;
  grid-template-columns: min-content 1fr;
  align-items: flex-start;
  gap: 1em;
}

.ordered-list > *::before {
  counter-increment: pct-counter;
  content: counter(pct-counter);
  border-radius: 50%;
  background-color: var(--numberedBgColor, red);
  color: var(--numberedColor, currentColor);
  width: var(--dim);
  height: var(--dim);
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: flex-start;
  font-weight: bold;
  font-size: var(--numSize);
  padding: var(--padding);
}

/*! Default unordered list */

.entry-content
	ul:not(.block-editor-block-list__block):not(.components-form-token-field__suggestions-list):not(.wp-block-group-placeholder__variations):not(.no-list):not(.no-tick):not(.splide__pagination) {
  --padd-left: 6ch;
  padding: 0.7ch 0;
  padding-bottom: 4ch;
  list-style: none;
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
  padding-left: var(--padd-left);
}

/* background-color: yellow; */

/* display: grid;
		grid-template-columns: min-content 1fr;
		gap: 1ch; */

.entry-content
	ul:not(.block-editor-block-list__block):not(.components-form-token-field__suggestions-list):not(.wp-block-group-placeholder__variations):not(.no-list):not(.no-tick):not(.splide__pagination) li::before {
  position: absolute;
  /* left: calc(var(--padd-left) - 1.4ch); */
  translate: -1.5ch;
  font-family: "pictauicons";
  content: "\f058";
}

.entry-content
	ul:not(.block-editor-block-list__block):not(.components-form-token-field__suggestions-list):not(.wp-block-group-placeholder__variations):not(.no-list):not(.no-tick):not(.splide__pagination) li ul {
  padding-bottom: 1ch;
  padding-left: calc(var(--padd-left) * 0.5);
}

.entry-content
	ul:not(.block-editor-block-list__block):not(.components-form-token-field__suggestions-list):not(.wp-block-group-placeholder__variations):not(.no-list):not(.no-tick):not(.splide__pagination) li ul li::before {
  content: "\f10b";
  translate: -1ch;
}

.entry-content
	ul:not(.block-editor-block-list__block):not(.components-form-token-field__suggestions-list):not(.wp-block-group-placeholder__variations):not(.no-list):not(.no-tick):not(.splide__pagination).ul-2cols {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: var(--card-padding);
       column-gap: var(--card-padding);
}

@media only screen and (max-width: 680px) {
  .entry-content
	ul:not(.block-editor-block-list__block):not(.components-form-token-field__suggestions-list):not(.wp-block-group-placeholder__variations):not(.no-list):not(.no-tick):not(.splide__pagination).ul-2cols {
    grid-template-columns: 1fr
  }
}

.entry-content
	ul:not(.block-editor-block-list__block):not(.components-form-token-field__suggestions-list):not(.wp-block-group-placeholder__variations):not(.no-list):not(.no-tick):not(.splide__pagination).ul-2cols li:not(:last-of-type) {
  padding-bottom: 1.5ch;
}

.img-shadow {
  filter: drop-shadow(20px 20px 40px rgba(0, 0, 0, 0.25));
}

.img-shadow-small {
  filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.25));
}

/*! SLIDER BACKGROUND FOR SECTION */

*:has(> .slider-bg) {
  overflow: clip;
}

.slider-bg {
  position: absolute;
  top: 0;
  width: 100vw !important;
  height: 100%;
  max-width: unset !important;
  z-index: -1;
}

.slider-bg .swiper-wrapper {
  width: 100vw;
  flex-flow: row;
  gap: 0rem;
}

.slider-bg img {
  -webkit-user-drag: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

/* .slider-cards {
	overflow: hidden;
	aspect-ratio: 2/4;
	width: 100%;
	max-width: 500px !important;
	height: 600px;

	.swiper-wrapper {
		flex-flow: row;

		.swiper-slide {
			display: flex;
			align-items: center;
			justify-content: center;
			border-radius: 18px;
			color: var(--main-color-third);
			background-color: white;
			padding: var(--card-padding);
			cursor: grab;
		}
	}
} */

/*! FAQs styles */

/*
HTML or WP Block STRUCTURE NEEDED
 - DIV/GROUP  							class="pct-faqs" , optional ( class="pct-faqs icon-left" )
		- DIV/GROUP 						class="faq"
				- Paragraph: 				Question text
				- DIV/GROUP 				(answer)
						- DIV/GROUP 		(answer container)
								- Paragraph (answer content)
								- Paragraph (answer content)
								- ...
		- DIV/GROUP 						class="faq"
		- DIV/GROUP 						class="faq"

*/

.pct-faqs {
  opacity: 0;
  transition: opacity 0.3s ease;
  /* --border-radius: var(--def-border-radius); */
  --border-radius: 4px;
  --faqs-sep: 1px;
  --answers-bg: rgba(0, 0, 0, 0.03);
  --answers-bg-dark: rgba(255, 255, 255, 0.1);
  --question-padding: 1rem;
  --question-bg: rgba(255, 255, 255, 0.7);
  display: grid;
  grid-template-columns: 1fr;
  /* background-color: var(--answers-bg); */
  gap: var(--faqs-sep);
  border-radius: var(--border-radius);
  box-shadow:
		0px 1px 3px rgba(0, 0, 0, 0.1),
		0px 6px 12px rgba(0, 0, 0, 0.08);
  max-width: 650px !important;
  background-color: var(--answers-bg);
}

.pct-faqs:is(.dark *) {
  background-color: var(--answers-bg-dark);
}

.pct-faqs .faq {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  overflow: hidden;
}

.pct-faqs .faq .faq-question {
  display: grid;
  grid-template-columns: 1fr min-content;
  gap: var(--question-padding);
  align-items: center;
  background-color: var(--question-bg);
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  padding-right: var(--def-layout-x-padding);
  font-size: 1.1em;
  padding: var(--question-padding) calc(var(--question-padding) * 1.2);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

.pct-faqs .faq .faq-question:is(.dark *) {
  background-color: rgb(255 255 255 / 0.2);
}

/* @apply p-[var(--question-padding)]; */

.pct-faqs .faq .faq-question .faq-status {
  display: grid;
  order: 1;
  justify-content: center;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

.pct-faqs .faq .faq-question .faq-status:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.pct-faqs .faq .faq-question .faq-status .iconClosed,
				.pct-faqs .faq .faq-question .faq-status .iconOpened {
  grid-column: 1/1;
  grid-row: 1/1;
}

.pct-faqs .faq .faq-question .faq-status .iconOpened {
  opacity: 0;
  rotate: 270deg;
  transition:
						rotate 1s cubic-bezier(0.2, 1, 0.3, 1),
						opacity 0.3s ease;
}

.pct-faqs .faq .faq-question .faq-status .iconClosed {
  transition:
						rotate 1s cubic-bezier(0.2, 1, 0.3, 1),
						opacity 0.3s ease;
  opacity: 1;
  rotate: 0deg;
}

.pct-faqs .faq .faq-question p {
  margin-top: 0px;
  margin-bottom: 0px;
  line-height: calc(1ch * 2.4);
}

.pct-faqs .faq > *:nth-child(2) {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}

.pct-faqs .faq > *:nth-child(2) > * {
  overflow: hidden;
  /* padding-left: var(--def-layout-x-padding);
				padding-right: var(--def-layout-x-padding); */
  padding: 0 calc(var(--def-layout-x-padding) * 0.5);
  /* p {
					&:first-of-type {
						margin-top: var(--def-layout-x-padding);
					}
					&:last-of-type {
						margin-bottom: var(--def-layout-x-padding);
					}
				} */
}

.pct-faqs .faq > *:nth-child(2) > * > *:first-child {
  margin-top: calc(var(--def-layout-x-padding) * 0.5);
}

.pct-faqs .faq > *:nth-child(2) > * > *:last-child:not(.card) {
  margin-bottom: calc(var(--def-layout-x-padding) * 0.5) !important;
}

.pct-faqs .faq > *:nth-child(2) > * > *:last-child:not(.card):not(.card) {
  padding-bottom: 0;
}

.pct-faqs .faq > *:nth-child(2) > * > *:last-child.card {
  margin-bottom: var(--def-layout-x-padding) !important;
  background-color: rgb(255 255 255 / 0.7);
}

.pct-faqs .faq > *:nth-child(2) > * > *:last-child.card:is(.dark *) {
  background-color: rgb(255 255 255 / 0.1);
}

.pct-faqs .faq > *:nth-child(2) > * p,
				.pct-faqs .faq > *:nth-child(2) > * li {
  font-size: 1em !important;
}

.pct-faqs .faq > *:nth-child(2) > * ul {
  margin-top: 1rem;
}

.pct-faqs .faq.opened .iconClosed {
  opacity: 0 !important;
  rotate: 270deg !important;
}

.pct-faqs .faq.opened .iconOpened {
  opacity: 1 !important;
  rotate: 0deg !important;
}

.pct-faqs .faq.opened > *:nth-child(2) {
  grid-template-rows: 1fr;
}

.pct-faqs .faq:first-child {
  border-top-left-radius: var(--border-radius);
  border-top-right-radius: var(--border-radius);
  overflow: hidden;
}

.pct-faqs .faq:last-child {
  border-bottom-left-radius: var(--border-radius);
  border-bottom-right-radius: var(--border-radius);
  overflow: hidden;
}

.pct-faqs.icon-left .faq .faq-question {
  grid-template-columns: min-content 1fr;
}

.pct-faqs.icon-left .faq .faq-question .faq-status {
  order: 0;
}

.editor-styles-wrapper .pct-faqs .faq > :nth-child(2) {
  grid-template-rows: 1fr !important;
}

/*! styles for custom pointer mouse used by mouse_pinter.js module */

[data-mouse_pointer] a > * {
  pointer-events: none;
}

.pointer {
  position: fixed;
  display: grid;
  place-content: center;
  opacity: 0;
  z-index: 9999;
  display: none;
  /* &::before {
		content: "";
		background-color: var(--main-color);
		display: block;
		position: absolute;
		inset: 50%;
		width: var(--min-dim);
		height: var(--min-dim);
		translate: -50% -50%;
		z-index: -1;
		border-radius: 999px;
	} */
  /* &.hovering {
		transition: font-size 0.2s ease-in-out;
		background-color: rgba(0, 0, 0, 1);
		color: white;
	} */
}

@media (any-hover: hover) {
  .pointer {
    display: inherit
  }
}

.pointer.hovering {
  /* cursor: inherit; */
}

.pointer.hovering .p-content.hovering {
  scale: 1;
}

/* height: 50px; */

/* display: flex; */

/* scale: 0; */

.pointer .p-content {
  --min-dim: 20px;
  border-radius: 50%;
  min-width: var(--min-dim);
  min-height: var(--min-dim);
  aspect-ratio: 1/1;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.5ch;
  color: black;
  scale: 0;
}

.pointer .p-content .p-content {
  position: absolute;
}

.pointer .p-content {
  background-color: var(--main-color);
  transition:
			background-color 0.5s ease-out,
			color 0.3s ease,
			scale 0.5s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
}

.pointer .p-content.hovering {
  scale: 0;
}

.pointer .p-content.default {
  scale: 1;
}

.pointer.pulse {
  --dot-color: var(--main-color);
  --dot-wave-width: 1px;
}

.pointer.pulse::before {
  display: block;
  display: none;
  content: "";
  position: absolute;
  width: 100%;
  aspect-ratio: 1;
  border: var(--dot-wave-width) solid var(--dot-color);
  border-radius: 9999px;
  /* animation: ping 2s ease-out infinite; */
}

.pointer.pulse::after {
  display: block;
  display: none;
  content: "";
  position: absolute;
  width: 100%;
  aspect-ratio: 1;
  border: var(--dot-wave-width) solid var(--dot-color);
  border-radius: 9999px;
  animation: ping 2s ease-out infinite 0.5s;
}

.pointer.pulse.filled::before,
			.pointer.pulse.filled::after {
  background-color: var(--dot-color);
}

.cursor {
  --size: 30px;
  --scale: 0;
  --bg-color: var(--main-color);
  --bg-color-dark: white;
  --txt-color: black !important;
  display: grid;
  place-content: center;
  /* justify-content: center;
	align-items: center; */
  position: fixed;
  top: 0;
  left: 0;
  height: var(--size);
  width: var(--size);
  color: var(--txt-color);
  background-color: var(--bg-color);
  border-radius: 50%;
  visibility: hidden;
  transform: translate3d(calc(100vw * var(--cursor-x) - var(--size) / 2), calc(100vh * var(--cursor-y) - var(--size) / 2), 0) scale3d(var(--scale), var(--scale), 1);
  pointer-events: none;
  z-index: 100;
  display: none;
}

@media (any-hover: hover) {
  .cursor {
    display: grid
  }
}

.cursor.active {
  visibility: visible;
  --scale: 1;
}

.cursor .content {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--bg-color);
  padding: 1rem;
  aspect-ratio: 1;
  border-radius: 50%;
  text-align: center;
  line-height: 1.6ch;
  scale: 0;
  transition: scale 0.3s ease;
}

.cursor .content span {
  display: inline-flex;
  margin: 0 0.5ch;
}

.cursor.hovering .content {
  scale: 1;
}

.cursor.pulse {
  --dot-color: var(--bg-color);
  --dot-wave-width: 1px;
}

.cursor.pulse .content {
  /* background-color: green; */
  position: relative;
}

.cursor.pulse .content::before {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  aspect-ratio: 1;
  border: var(--dot-wave-width) solid var(--dot-color);
  border-radius: 9999px;
  animation: ping 2s ease-out infinite;
}

.cursor.pulse .content::after {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  aspect-ratio: 1;
  border: var(--dot-wave-width) solid var(--dot-color);
  border-radius: 9999px;
  animation: ping 2s ease-out infinite 0.5s;
}

/*! LANGUAGE SWITCHER FOR POLYLANG: custom shortcode [lang-switcher] when only 2 available languages */

.lang_switcher {
  position: relative;
  border-radius: 4px;
  background-color: rgb(255 255 255 / 0.2);
  padding: 3px;
}

.lang_switcher .switcher-container {
  --lang-gap: 0.2rem;
  --lang-width: 26px;
}

.lang_switcher .switcher-container .lang-list {
  display: grid;
  position: relative;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  gap: var(--lang-gap);
  z-index: 50;
}

.lang_switcher .switcher-container .switch-head {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: var(--lang-width);
  aspect-ratio: 1.2/1;
  z-index: 1;
  background-color: black;
  border-radius: 2px;
  transition: translate 0.3s cubic-bezier(0.2, 1, 0.3, 1);
}

:root:not(.dark) .scrolledHeader .lang_switcher, :root:not(.dark) .main-nav-mobile .lang_switcher {
  background-color: rgb(0 0 0 / 0.1);
}

:root:not(.dark) .scrolledHeader .lang_switcher .switch-head, :root:not(.dark) .main-nav-mobile .lang_switcher .switch-head {
  background-color: white !important;
}

/*! HORIZONTALL SCROLL SECTIONS */

/* height: 100vh; */

[data-scrollhorizontal] .horiz-scroll {
  --items-width: 600px;
  display: flex;
  flex-wrap: nowrap;
  flex-flow: row;
  /* max-width: unset !important; */
  /* width: unset !important; */
  width: var(--items-width) !important;
  margin: unset !important;
}

/* left: 280px; */

[data-scrollhorizontal] .horiz-scroll section {
  flex-shrink: 0;
  /* max-width: 100%; */
  /* max-width: 800px; */
  /* max-width: calc(var(--layout-max-width) - 2 * var(--def-layout-x-padding)) !important; */
  max-width: calc(100vw - 2 * var(--def-layout-x-padding)) !important;
  min-width: 375px;
  /* width: 800px; */
}

.dark-mode-switcher:hover {
  background-color: var(--hover-bg-color);
  border-radius: var(--def-border-radius);
}

.dark-mode-switcher > label {
  display: flex;
  justify-content: center;
  width: 32px;
  aspect-ratio: 1;
}

.dark-mode-switcher > label .icon-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  aspect-ratio: 1;
}

.dark-mode-switcher svg {
  scale: 1 !important;
  width: 100%;
  height: 100%;
}

.main-nav-desktop .dark-mode-switcher {
  margin-left: -10px;
  margin-right: -10px;
}

/*! CUSTOM PICTAU ANIMATIONS with attributes like data-anim..., set initial opacity to 0 */

[data-anim_header],
[data-anim_any] {
  /* visibility: hidden; */
  opacity: 0;
}

[data-scrolloverlapvertical] {
  /* clip-path: border-box; */
  clip-path: padding-box;
}

[data-scrolloverlapvertical] section {
  /* position: relative; */
  /* height: 20vh; */
  display: flex;
  align-items: center;
}

/* padding-top: 0 !important; */

/* background-color: yellowgreen; */

[data-scrolloverlapvertical] section > * {
  display: block;
  /* @apply bg-[var(--bg-card-light)] dark:bg-[var(--bg-card-dark)] border border-[var(--card-border-color-light)] dark:border-[var(--card-border-color-dark)]; */
  background-color: var(--bg-card-light);
}

[data-scrolloverlapvertical] section > *:is(.dark *) {
  background-color: var(--bg-card-dark);
}

[data-scrolloverlapvertical] section > * {
  max-width: unset !important;
  display: block;
  /* min-height: 80vh; */
}

/*! Image shine effect on mouseover */

a:has(.shine):hover .shine:before {
  translate: 100% 0%;
}

a:has(.shine):hover .shine:after {
  translate: 80% -20%;
}

.shine {
  position: relative;
  overflow: clip;
}

.shine:before {
  content: "";
  display: block;
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
  --tw-gradient-from: rgb(255 255 255 / 0.4) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-gradient-to: rgb(255 255 255 / 0.3) var(--tw-gradient-to-position);
  position: absolute;
  transform-origin: center top;
  width: 100%;
  height: 50%;
  rotate: 45deg;
  inset: 0% 0%;
  translate: -100% 100%;
  scale: 2 1;
  z-index: 9;
  transition: all 0.3s ease-out;
}

.shine:after {
  content: "";
  display: block;
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
  --tw-gradient-from: rgb(255 255 255 / 0.6) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-gradient-to: rgb(255 255 255 / 0.3) var(--tw-gradient-to-position);
  position: absolute;
  transform-origin: center;
  width: 100%;
  height: 20%;
  rotate: 45deg;
  inset: 0% 0%;
  translate: -100% 100%;
  scale: 2 1;
  z-index: 19;
  transition: all 0.3s ease-out 0.2s;
}

/*! GRID LOGOS CLIENTES CON FILTRO */

.filtered-grid {
  --item-width: 160px;
  opacity: 0;
  scale: 0.9;
  transition:
		opacity 1s ease,
		scale 1s ease;
}

.filtered-grid .filter-ui {
  /* --hightlight-color:  */
  display: flex;
  flex-flow: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  /* gap: 0.75rem; */
  gap: clamp(0.2rem, 2vw, 0.75rem);
  max-width: 800px !important;
}

.filtered-grid .filter-ui > * {
  display: inline-flex;
  width: -moz-fit-content !important;
  width: fit-content !important;
  padding: 0.3rem 1rem;
  font-size: clamp(0.6rem, 3vw, 0.8rem);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  margin-left: unset !important;
  margin-right: unset !important;
  cursor: pointer;
  border-radius: var(--min-border-radius);
  background-color: rgb(255 255 255 / 0.1);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  transition-property: all;
  transition-duration: 300ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  text-transform: uppercase;
}

.filtered-grid .filter-ui > * * {
  text-transform: uppercase;
}

.filtered-grid .filter-ui > *:hover {
  background-color: var(--main-color);
}

.filtered-grid .filter-ui > * {
  /* border-radius: var(--def-border-radius); */
}

.filtered-grid .filter-ui > *.checked {
  background-color: rgba(39,178,148,0.49);;
}

.filtered-grid .logos-grid {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  width: 100%;
  padding: var(--def-layout-x-padding);
  /* padding-top: calc(var(--def-layout-x-padding) * 0.5); */
  padding-top: var(--def-layout-x-padding);
}

.filtered-grid .logos-grid > * {
  margin-left: unset !important;
  margin-right: unset !important;
  width: var(--item-width);
}

@media only screen and (max-width: 577px) {
  .filtered-grid .logos-grid > * {
    width: 45% !important
  }
}

.filtered-grid .logos-grid figure {
  display: inline-flex;
  position: relative;
  background-color: rgb(100 116 139 / 0.1);
  border-radius: var(--def-border-radius);
  overflow: clip;
  padding: 1rem;
}

.filtered-grid .logos-grid figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 2/1;
  /* object-fit: cover; */
  -o-object-fit: contain;
     object-fit: contain;
}

.filtered-grid .logos-grid.flip-effect .flip-card-container {
  cursor: pointer;
  perspective: 600px;
}

.filtered-grid .logos-grid.flip-effect .flip-card-container .flip-card {
  display: grid;
  transition: transform 1s cubic-bezier(0.2, 1, 0.3, 1);
  transform-style: preserve-3d;
}

.filtered-grid .logos-grid.flip-effect .flip-card-container .flip-card > * {
  grid-area: 1/1;
  backface-visibility: hidden;
  border-radius: var(--def-border-radius);
}

.filtered-grid .logos-grid.flip-effect .flip-card-container .flip-card > *:not(figure) {
  /* @apply bg-slate-500; */
  /* background-color: rgb(21 60 52 / 64%); */
  background-color: rgb(39 178 148 / 19%);
  transform: rotateY(180deg);
  display: flex;
}

.filtered-grid .logos-grid.flip-effect .flip-card-container .flip-card .flip-card-back {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 0.5rem;
  margin-top: 0.5rem;
  gap: clamp(0.2rem, 3vw, 0.5rem);
}

.filtered-grid .logos-grid.flip-effect .flip-card-container .flip-card .flip-card-back > div {
  display: flex;
  gap: 0.5ch;
}

.filtered-grid .logos-grid.flip-effect .flip-card-container .flip-card h3 {
  /* font-size: 1rem; */
  font-size: clamp(0.75rem, 3vw, 0.8rem);
  text-transform: uppercase;
  color: white;
  text-align: center;
}

.filtered-grid .logos-grid.flip-effect .flip-card-container .flip-card span {
  font-size: clamp(0.5rem, 2vw, 0.6rem);
  border-radius: var(--min-border-radius);
  background-color: rgb(0 0 0 / 0.2);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  padding: 3px 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-transform: uppercase;
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
}

.filtered-grid .logos-grid.flip-effect .flip-card-container.is-flipped .flip-card {
  transform: rotateY(180deg);
}

/*! Modal popups */

[data-modalform] {
  opacity: 0;
}

[data-modal] {
  display: grid;
  opacity: 0;
  pointer-events: none;
  width: 100vw !important;
  max-width: unset !important;
  height: 100vh;
  overflow: hidden;
  inset: 0;
  position: fixed;
  /* pointer-events: none; */
  z-index: 999999;
  transition: opacity 0.3s ease 0.3s;
}

/* place-content: center; */

/* max-inline-size: min(90vw, var(--size-content-3));
	max-block-size: min(80vh, 100%); */

[data-modal] > * {
  grid-area: 1/1;
}

[data-modal] p {
  color: var(--txt-color);
}

[data-modal] p:is(.dark *) {
  color: var(--txt-color-dark) !important;
}

[data-modal] .backdrop {
  background: rgba(0, 0, 0, 0.75);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
  width: 100vw !important;
  max-width: unset !important;
  height: 100vh;
  z-index: 1;
}

[data-modal] .icon-close {
  --tw-bg-opacity: 1;
  background-color: rgb(71 85 105 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

[data-modal] .icon-close:hover {
  background-color: var(--main-color);
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

[data-modal] .icon-close {
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  padding: 0.5rem;
  aspect-ratio: 1;
  border-radius: 50%;
  translate: -50% -50%;
}

[data-modal] .icon-close svg {
  width: 18px;
  aspect-ratio: 1;
}

[data-modal] .icon-close svg > * {
  stroke-width: 12;
}

[data-modal] .content-wrapper {
  /* --padding: var(--def-layout-x-padding); */
  --padding: var(--card-padding);
  border-color: rgb(0 0 0 / 0.1);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

[data-modal] .content-wrapper:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(51 65 85 / var(--tw-bg-opacity));
}

[data-modal] .content-wrapper {
  border-width: 1px;
  z-index: 5;
  justify-self: center;
  align-self: center;
  width: calc(100vw - 2 * var(--def-layout-x-padding)) !important;
  max-width: 600px !important;
  /* height: 100%; */
  max-height: 75dvh;
  border-radius: var(--def-border-radius);
  padding: var(--padding) 0;
  opacity: 0;
  translate: 0 30%;
  transition:
			opacity 0.3s ease,
			translate 0.3s ease-in-out;
}

[data-modal] .content-wrapper .content {
  overflow-y: auto;
  max-height: calc(75dvh - 2 * var(--padding));
  /* height: 100%; */
  padding: 0 var(--padding);
  color: var(--heading-color-theme-B);
}

[data-modal] .content-wrapper .content h3,
			[data-modal] .content-wrapper .content h4 {
  padding-top: 0;
  text-align: center;
}

[data-modal] .content-wrapper .content h3,
			[data-modal] .content-wrapper .content h4,
			[data-modal] .content-wrapper .content p {
  color: var(--heading-color-theme-B);
  text-align: center;
}

[data-modal] .content-wrapper.nested {
  max-width: 500px !important;
}

[data-modal].showing {
  /* display: grid; */
  pointer-events: all;
  opacity: 1;
  transition: opacity 0.3s ease;
}

[data-modal].showing .content-wrapper {
  opacity: 1;
  /* pointer-events: all; */
  /* scale: 1; */
  translate: 0 0;
  transition:
				translate 0.6s cubic-bezier(0.2, 1, 0.3, 1),
				opacity 0.35s ease;
}

/*! LANDING WITH SLIDER + SIDEBAR FORM */

.landing-has-slider .slider {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: var(--layout-max-width);
  margin: auto;
  width: 100%;
  padding: 0 var(--def-layout-x-padding);
  padding-top: calc(var(--whole-header-height) + 2 * var(--def-layout-x-padding)) !important;
  padding-bottom: calc(2 * var(--def-layout-x-padding));
  position: relative;
}

.landing-has-slider .slider > *:not(.is-bg) {
  position: relative;
  z-index: 2;
  margin-left: auto !important;
  margin-right: auto !important;
}

.landing-has-slider .slider + * {
  display: grid;
  grid-template-columns: 1fr 450px;
  gap: 3rem;
}

@media only screen and (max-width: 1024px) {
  .landing-has-slider .slider + * {
    grid-template-columns: 1fr
  }
}

/*! FIGURES AUTO COUNTER WITH ANIMATION */

.figures-grid .counter-item {
  display: flex;
  flex-flow: column;
}

.figures-grid .counter-item .pct-counter {
  display: flex;
  flex-flow: row !important;
  border-bottom: 4px solid black;
  --tw-border-opacity: 1;
  border-bottom-color: rgb(0 0 0 / var(--tw-border-opacity));
}

.figures-grid .counter-item .pct-counter:is(.dark *) {
  border-bottom-color: var(--main-color);
}

.figures-grid .counter-item .pct-counter > h2 {
  font-size: clamp(2rem, 10vw, 9rem);
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: calc(var(--def-layout-x-padding) * 0.5);
}

.figures-grid .counter-item .pct-counter .counter-prefix {
  opacity: 0;
  scale: 0;
  padding-right: 6px;
  /* transition: all 0.6s cubic-bezier(0.65, 0.08, 0.1, 1.39); */
  transition: all 0.8s cubic-bezier(0.65, 0.08, 0, 2.8);
}

.figures-grid .counter-item .pct-counter.show-prefix .counter-prefix {
  opacity: 1;
  scale: 1;
}

.figures-grid .counter-item p {
  margin-top: calc(var(--def-layout-x-padding) * 0.5);
  font-size: clamp(1.4em, 4.5vw, 2em);
  line-height: 1.2;
}

/* IMAGE GALLERIES */

.wp-block-gallery.has-nested-images:not(.block-editor-block-list__block) {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  position: relative;
  gap: var(--def-layout-x-padding) !important;
}

@media only screen and (max-width: 768px) {
  .wp-block-gallery.has-nested-images:not(.block-editor-block-list__block) {
    grid-template-columns: 1fr
  }
}

.wp-block-gallery.has-nested-images:not(.block-editor-block-list__block) {
  width: 100vw;
  max-width: unset !important;
  left: calc(50% - 100vw * 0.5);
  padding: calc(var(--default-section-vert-padding) * 0.5) 0;
}

.wp-block-gallery.has-nested-images:not(.block-editor-block-list__block) figure.wp-block-image:not(#individual-image) {
  width: 100%;
}

.wp-block-gallery.has-nested-images:not(.block-editor-block-list__block) figcaption {
  background-color: rgb(0 0 0 / 0.5) !important;
  padding: 0.75rem !important;
}

/*  USING THE FANTASTIC PLUGIN FOR IMAGE GALLERIES: https://es.wordpress.org/plugins/gallery-block-lightbox */

#baguetteBox-slider figure[id*="baguetteBox-figure"] img {
  width: 100vw;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

figure.local-video {
  /* opacity: 0; */
  display: grid;
  width: -moz-fit-content !important;
  width: fit-content !important;
  height: -moz-fit-content !important;
  height: fit-content !important;
  transition: opacity 1s cubic-bezier(0.2, 1, 0.3, 1);
}

figure.local-video video {
  grid-area: 1 / 1;
  /* opacity: 0.2; */
}

figure.local-video.rounded {
  overflow: unset;
}

figure.local-video.rounded video {
  overflow: clip;
  border-radius: var(--def-border-radius);
}

figure.local-video.shadow::before {
  grid-area: 1 / 1;
  content: "";
  /* background-color: red; */
  display: block;
  border-radius: var(--def-border-radius);
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: #cbd5e1;
  --tw-shadow: var(--tw-shadow-colored);
}

figure.local-video.shadow:is(.dark *)::before {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(255 255 255 / 0.6);
  --tw-shadow: var(--tw-shadow-colored);
}

/*! Swiper default styles */

[data-swiper] {
  opacity: 0;
}

/* overflow: clip; */

[data-swiper] .swiper-wrapper {
  max-height: unset !important;
}

[data-swiper] .swiper-slide {
  cursor: grab;
}

[data-swiper] .swiper-slide img {
  width: 100%;
  height: 100%;
  /* height: auto; */
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top left;
     object-position: top left;
  border-radius: calc(var(--def-border-radius) * 2);
  overflow: clip;
}

/*! Dot navigation for single page webs with sections. Requires js module 'navigation_dot.js' */

nav.dot-navigation {
  --item-dim: 2rem;
  --dot-dim: 0.4rem;
  --dot-spacing: 0.1rem;
  --window-padding: calc(var(--def-layout-x-padding) * 0.3);
  --label-color: white;
  display: none;
}

@media (any-hover: hover) {
  nav.dot-navigation {
    display: flex
  }
}

nav.dot-navigation {
  flex-flow: column;
  gap: var(--dot-spacing);
  position: fixed;
  top: 50%;
  translate: 0 -50%;
  width: -moz-fit-content !important;
  width: fit-content !important;
  z-index: 99999;
}

nav.dot-navigation.align-right {
  right: var(--window-padding);
}

nav.dot-navigation.align-right .label {
  translate: calc(-100% - var(--dot-dim));
}

nav.dot-navigation.align-left {
  left: var(--window-padding);
}

nav.dot-navigation.align-left .label {
  translate: calc(var(--item-dim));
}

nav.dot-navigation .nav-item {
  display: grid;
  justify-content: center;
  align-items: center;
  width: var(--item-dim);
  aspect-ratio: 1;
  /* background-color: blue; */
  background-image: none !important;
}

nav.dot-navigation .nav-item::before {
  grid-area: 1 / 1;
  content: "";
  display: block;
  width: var(--dot-dim);
  aspect-ratio: 1;
  border-radius: 50%;
  scale: 1;
  transition: scale 0.3s ease-in-out;
  /* @apply bg-white/15; */
  /* box-shadow: 0px 0px 5px 1px rgb(0 0 0 / 35%); */
  -webkit-backdrop-filter: invert(1);
          backdrop-filter: invert(1);
}

nav.dot-navigation .nav-item .label {
  white-space: pre;
  position: absolute;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  width: -moz-fit-content;
  width: fit-content;
  max-width: unset;
  opacity: 0;
  scale: 0;
  padding: 0.4rem 1rem;
  text-transform: uppercase;
  font-size: 0.8rem;
  background-color: white;
  border-radius: var(--def-border-radius);
  pointer-events: none;
  transition:
				opacity 0.3s ease,
				scale 0.3s ease-out;
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

nav.dot-navigation .nav-item:hover .label {
  opacity: 1;
  scale: 1;
}

nav.dot-navigation .nav-item.showing::before {
  scale: 1.8;
}

/*! lil-gui styles */

.lil-gui.autoPlace {
  right: 5rem;
}

/*! MASKS */

.mask-faded-down {
  -webkit-mask-image: var(--mask-faded-down2);
          mask-image: var(--mask-faded-down2);
}

.mask-faded-down-2 {
  -webkit-mask-image: var(--mask-faded-down3);
          mask-image: var(--mask-faded-down3);
}

/*! PATTERNS SVG BACKGROUNDS */

.is-bg:has([class*="pattern"]).masked {
  -webkit-mask-image: var(--mask-radial-content);
          mask-image: var(--mask-radial-content);
}

/*! SLIDER LOGOS  */

.slider-logos {
  position: relative;
  width: 100% !important;
  max-width: unset !important;
  left: 50%;
  translate: -50%;
  -webkit-mask-image: var(--mask-horiz-gradient);
          mask-image: var(--mask-horiz-gradient);
}

.slider-logos .swiper-wrapper {
  display: flex;
  flex-flow: row;
  gap: 2rem;
  transition-timing-function: linear;
  width: 100%;
  max-width: unset !important;
  height: auto;
  /* @media only screen and (max-width: 700px) {
			gap: 2rem;
		} */
}

.slider-logos .swiper-wrapper .swiper-slide {
  display: flex;
  justify-content: center;
  width: auto;
}

.slider-logos .swiper-wrapper .swiper-slide img {
  height: 35px;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

/*! TESTIMONIALS SPLIDE  */

[data-testimonials] {
  padding-top: 0 !important;
  margin-top: var(--default-section-vert-padding);
}

[data-testimonials] .splide__track {
  -webkit-mask-image: var(--mask-testimonials-gradient);
          mask-image: var(--mask-testimonials-gradient);
  cursor: grab;
  /* overflow: unset !important; */
}

[data-testimonials] .splide__slide {
  --bg-color: 255, 255, 255;
  display: flex;
  justify-content: center;
  height: -moz-fit-content;
  height: fit-content;
  padding: var(--card-padding);
  border: 1px solid rgba(var(--bg-color), 1);
  /* border-radius: var(--card-border-radius); */
  /* background: rgba(var(--bg-color), 0.141); */
  box-shadow:
			5px 5px 20px rgba(var(--bg-color), 0.05),
			5px 5px 20px rgba(var(--bg-color), 0.2);
}

[data-testimonials] .splide__pagination {
  bottom: unset;
  margin-top: 1.2rem;
  gap: 0.5rem;
}

[data-testimonials] .splide__pagination .is-active {
  opacity: 1;
  transform: scale(1.25);
}

/* SVG BACKGROUNDS PATTERNS */

.svg-bg-pattern {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100%;
  max-width: unset !important;
  /* background-image: var(--bg-pattern-cross); */
  background-image: var(--bg-pattern-footer);
  /* mask-image: radial-gradient(80% 60% at 80% 80%, black, transparent); */
  -webkit-mask-image: radial-gradient(50% 30% at 50% 0%, black, transparent);
          mask-image: radial-gradient(50% 30% at 50% 0%, black, transparent);
}

.svg-bg-pattern svg #plus {
  width: 20px;
  height: 20px;
}

.lil-gui.root .title {
  --tw-bg-opacity: 1;
  background-color: rgb(255 0 90 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.toggle-ui {
  --height: 20px;
  --border-width: 1px;
  --thumb-padding: 4px;
  --ui-color-primary: 255, 255, 255;
  --ui-color-secondary: 0, 0, 0;
  --bg-on: 3, 169, 244;
  --bg-off: 0, 0, 0;
  --tr: all 0.3s cubic-bezier(0.2, 1, 0.3, 1);
  --border-radius: calc(var(--height) / 2);
  --thumb-color: rgba(var(--ui-color-primary), 1);
  position: relative;
  display: flex;
  height: var(--height);
  width: calc(var(--height) * 2);
  align-items: center;
  justify-content: center;
}

/* cursor: pointer; */

.toggle-ui input {
  display: none;
}

.toggle-ui label {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border: var(--border-width) solid rgba(var(--ui-color-primary), 0.5);
  width: 100%;
  height: 100%;
  /* height: calc(var(--border-radius) * 2); */
  /* background: linear-gradient(0deg, #121720, #0d1217); */
  background: rgba(var(--bg-off), 0.2);
  border-radius: var(--border-radius);
  cursor: pointer;
  transition: var(--tr);
  overflow: clip;
}

.toggle-ui .thumb {
  display: flex;
  --dim: calc(var(--height) - (2 * var(--thumb-padding)));
  width: var(--dim);
  aspect-ratio: 1;
  background: var(--thumb-color);
  margin: 0 var(--thumb-padding);
  /* border-radius: var(--border-radius); */
  border-radius: 50%;
  transition: var(--tr);
  /* translate: calc((var(--dim) / 2) * 2); */
  translate: calc(var(--border-width) * -1);
}

.toggle-ui .switcher:checked + label,
	.toggle-ui .switcher.checked + label {
  background: rgba(var(--bg-on), 0.1);
}

.toggle-ui .switcher:checked + label .thumb, .toggle-ui .switcher.checked + label .thumb {
  translate: calc(var(--dim) + (var(--thumb-padding) * 2 - var(--border-width)));
}

.step-number {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: red;
  border-radius: 9999px;
  aspect-ratio: 1;
  height: 1.5em;
}

/*! Hide related videos on youtube player */

[data-video_id] .ytp-timely-actions-content {
  display: none !important;
}

/*! Logos slider marquee */

[data-marquee] {
  margin: 2rem 0;
}

[data-marquee] .marquee-slide {
  max-width: initial !important;
}

[data-marquee] .item {
  margin: 0 1rem !important;
  max-width: unset !important;
}

[data-marquee] .item img {
  height: 35px;
  width: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.scroll-down-icon {
  color: white;
  position: absolute;
  /* background: red; */
  bottom: calc(var(--default-section-vert-padding) * 0.15);
  left: 50%;
}

.scroll-down-icon svg {
  translate: -50%;
  scale: 0.75;
}

.scroll-down-icon svg * {
  stroke-width: 3;
}

.scroll-down-icon #scrollwheel {
  /* animation: scroll-down-icon 1.8s infinite; */
  animation: scroll-up-icon 1.8s infinite;
}

/*!
 * OverlayScrollbars
 * Version: 2.3.2
 *
 * Copyright (c) Rene Haas | KingSora.
 * https://github.com/KingSora
 *
 * Released under the MIT license.
 */

.os-size-observer,
.os-size-observer-listener {
  box-sizing: border-box;
  direction: inherit;
  overflow: hidden;
  pointer-events: none;
  scroll-behavior: auto !important;
  visibility: hidden;
}

.os-size-observer,
.os-size-observer-listener,
.os-size-observer-listener-item,
.os-size-observer-listener-item-final {
  left: 0;
  position: absolute;
  top: 0;
  writing-mode: horizontal-tb;
}

.os-size-observer {
  border: inherit;
  bottom: 0;
  box-sizing: inherit;
  contain: strict;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  left: 0;
  margin: -133px;
  padding: inherit;
  right: 0;
  top: 0;
  transform: scale(0.1);
  z-index: -1;
}

.os-size-observer:before {
  box-sizing: inherit;
  content: "";
  flex: none;
  height: 10px;
  padding: 10px;
  width: 10px;
}

.os-size-observer-appear {
  animation: os-size-observer-appear-animation 1ms forwards;
}

.os-size-observer-listener {
  border: inherit;
  box-sizing: border-box;
  flex: auto;
  margin: -133px;
  padding: inherit;
  position: relative;
  transform: scale(10);
}

.os-size-observer-listener.ltr {
  margin-left: 0;
  margin-right: -266px;
}

.os-size-observer-listener.rtl {
  margin-left: -266px;
  margin-right: 0;
}

.os-size-observer-listener:empty:before {
  content: "";
  height: 100%;
  width: 100%;
}

.os-size-observer-listener:empty:before,
.os-size-observer-listener > .os-size-observer-listener-item {
  border: inherit;
  box-sizing: content-box;
  display: block;
  flex: auto;
  padding: inherit;
  position: relative;
}

.os-size-observer-listener-scroll {
  box-sizing: border-box;
  display: flex;
}

.os-size-observer-listener-item {
  bottom: 0;
  direction: ltr;
  flex: none;
  overflow: hidden;
  right: 0;
}

.os-size-observer-listener-item-final {
  transition: none;
}

@keyframes os-size-observer-appear-animation {
  0% {
    cursor: auto;
  }

  to {
    cursor: none;
  }
}

.os-trinsic-observer {
  border: none;
  box-sizing: border-box;
  contain: strict;
  flex: none;
  height: 0;
  margin: 0;
  max-height: 1px;
  max-width: 0;
  overflow: hidden;
  padding: 0;
  position: relative;
  top: calc(100% + 1px);
  z-index: -1;
}

.os-trinsic-observer:not(:empty) {
  height: calc(100% + 1px);
  top: -1px;
}

.os-trinsic-observer:not(:empty) > .os-size-observer {
  height: 1000%;
  min-height: 1px;
  min-width: 1px;
  width: 1000%;
}

.os-environment {
  --os-custom-prop: -1;
  height: 200px;
  opacity: 0;
  overflow: scroll;
  position: fixed;
  scroll-behavior: auto !important;
  visibility: hidden;
  width: 200px;
  z-index: var(--os-custom-prop);
}

.os-environment div {
  height: 200%;
  margin: 10px 0;
  width: 200%;
}

.os-environment.os-environment-flexbox-glue {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  height: auto;
  min-height: 200px;
  min-width: 200px;
  width: auto;
}

.os-environment.os-environment-flexbox-glue div {
  flex: auto;
  height: auto;
  margin: 0;
  max-height: 100%;
  max-width: 100%;
  width: auto;
}

.os-environment.os-environment-flexbox-glue-max {
  max-height: 200px;
}

.os-environment.os-environment-flexbox-glue-max div {
  overflow: visible;
}

.os-environment.os-environment-flexbox-glue-max div:before {
  content: "";
  display: block;
  height: 999px;
  width: 999px;
}

.os-environment,
[data-overlayscrollbars-viewport] {
  -ms-overflow-style: scrollbar !important;
}

.os-scrollbar-hidden.os-environment,
[data-overlayscrollbars-initialize],
[data-overlayscrollbars-viewport~="scrollbarHidden"],
[data-overlayscrollbars~="scrollbarHidden"] {
  scrollbar-width: none !important;
}

.os-scrollbar-hidden.os-environment::-webkit-scrollbar,
.os-scrollbar-hidden.os-environment::-webkit-scrollbar-corner,
[data-overlayscrollbars-initialize]::-webkit-scrollbar,
[data-overlayscrollbars-initialize]::-webkit-scrollbar-corner,
[data-overlayscrollbars-viewport~="scrollbarHidden"]::-webkit-scrollbar,
[data-overlayscrollbars-viewport~="scrollbarHidden"]::-webkit-scrollbar-corner,
[data-overlayscrollbars~="scrollbarHidden"]::-webkit-scrollbar,
[data-overlayscrollbars~="scrollbarHidden"]::-webkit-scrollbar-corner {
  -webkit-appearance: none !important;
  appearance: none !important;
  display: none !important;
  height: 0 !important;
  width: 0 !important;
}

[data-overlayscrollbars-initialize]:not([data-overlayscrollbars]):not(html):not(body) {
  overflow: auto;
}

html.os-scrollbar-hidden,
html.os-scrollbar-hidden > body,
html[data-overlayscrollbars] {
  box-sizing: border-box;
  height: 100%;
  height: auto;
  margin: 0;
  width: 100%;
}

html[data-overlayscrollbars] > body {
  overflow: visible;
}

[data-overlayscrollbars~="host"] {
  position: relative;
}

[data-overlayscrollbars-padding],
[data-overlayscrollbars~="host"] {
  display: flex;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
}

[data-overlayscrollbars-padding],
[data-overlayscrollbars-viewport] {
  border: none;
  box-sizing: inherit;
  flex: auto !important;
  height: auto;
  margin: 0;
  min-width: 0;
  padding: 0;
  position: relative;
  width: 100%;
  z-index: 0;
}

[data-overlayscrollbars-viewport] {
  --os-vaw: 0;
  --os-vah: 0;
}

[data-overlayscrollbars-viewport][data-overlayscrollbars-viewport~="arrange"]:before {
  content: "";
  height: var(--os-vah);
  min-height: 1px;
  min-width: 1px;
  pointer-events: none;
  position: absolute;
  width: var(--os-vaw);
  z-index: -1;
}

[data-overlayscrollbars-padding],
[data-overlayscrollbars-viewport],
[data-overlayscrollbars~="host"],
[data-overlayscrollbars~="viewport"] {
  overflow: hidden;
}

[data-overlayscrollbars-padding~="overflowVisible"],
[data-overlayscrollbars-viewport~="overflowVisible"],
[data-overlayscrollbars~="overflowVisible"] {
  overflow: visible;
}

[data-overlayscrollbars-overflow-x="hidden"] {
  overflow-x: hidden;
}

[data-overlayscrollbars-overflow-x="scroll"] {
  overflow-x: scroll;
}

[data-overlayscrollbars-overflow-x="hidden"] {
  overflow-y: hidden;
}

[data-overlayscrollbars-overflow-y="scroll"] {
  overflow-y: scroll;
}

[data-overlayscrollbars~="scrollbarPressed"],
[data-overlayscrollbars~="scrollbarPressed"] [data-overlayscrollbars-viewport] {
  scroll-behavior: auto !important;
}

[data-overlayscrollbars-content] {
  box-sizing: inherit;
}

[data-overlayscrollbars-contents]:not([data-overlayscrollbars-padding]):not([data-overlayscrollbars-viewport]):not([data-overlayscrollbars-content]) {
  display: contents;
}

[data-overlayscrollbars-grid],
[data-overlayscrollbars-grid] [data-overlayscrollbars-padding] {
  display: grid;
  grid-template: 1fr/1fr;
}

[data-overlayscrollbars-grid] > [data-overlayscrollbars-padding],
[data-overlayscrollbars-grid] > [data-overlayscrollbars-padding] > [data-overlayscrollbars-viewport],
[data-overlayscrollbars-grid] > [data-overlayscrollbars-viewport] {
  height: auto !important;
  width: auto !important;
}

.os-scrollbar {
  contain: size layout;
  contain: size layout style;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  transition:
		opacity 0.15s,
		visibility 0.15s,
		top 0.15s,
		right 0.15s,
		bottom 0.15s,
		left 0.15s;
  visibility: hidden;
}

body > .os-scrollbar {
  position: fixed;
  z-index: 99999;
}

.os-scrollbar-transitionless {
  transition: none;
}

.os-scrollbar-track {
  border: none !important;
  direction: ltr !important;
  padding: 0 !important;
  position: relative;
}

.os-scrollbar-handle {
  position: absolute;
}

.os-scrollbar-handle,
.os-scrollbar-track {
  height: 100%;
  pointer-events: none;
  width: 100%;
}

.os-scrollbar.os-scrollbar-handle-interactive .os-scrollbar-handle,
.os-scrollbar.os-scrollbar-track-interactive .os-scrollbar-track {
  pointer-events: auto;
  touch-action: none;
}

.os-scrollbar-horizontal {
  bottom: 0;
  left: 0;
}

.os-scrollbar-vertical {
  right: 0;
  top: 0;
}

.os-scrollbar-rtl.os-scrollbar-horizontal {
  right: 0;
}

.os-scrollbar-rtl.os-scrollbar-vertical {
  left: 0;
  right: auto;
}

.os-scrollbar-interaction.os-scrollbar-visible,
.os-scrollbar-visible {
  opacity: 1;
  visibility: visible;
}

.os-scrollbar-auto-hide.os-scrollbar-auto-hide-hidden {
  opacity: 0;
  visibility: hidden;
}

.os-scrollbar-unusable,
.os-scrollbar-unusable *,
.os-scrollbar-wheel,
.os-scrollbar-wheel * {
  pointer-events: none !important;
}

.os-scrollbar-unusable .os-scrollbar-handle {
  opacity: 0 !important;
}

.os-scrollbar-horizontal .os-scrollbar-handle {
  bottom: 0;
}

.os-scrollbar-vertical .os-scrollbar-handle {
  right: 0;
}

.os-scrollbar-rtl.os-scrollbar-vertical .os-scrollbar-handle {
  left: 0;
  right: auto;
}

.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless,
.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless.os-scrollbar-rtl {
  left: 0;
  right: 0;
}

.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless,
.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless.os-scrollbar-rtl {
  bottom: 0;
  top: 0;
}

.os-scrollbar {
  --os-size: 0;
  --os-padding-perpendicular: 0;
  --os-padding-axis: 0;
  --os-track-border-radius: 0;
  --os-track-bg: none;
  --os-track-bg-hover: none;
  --os-track-bg-active: none;
  --os-track-border: none;
  --os-track-border-hover: none;
  --os-track-border-active: none;
  --os-handle-border-radius: 0;
  --os-handle-bg: none;
  --os-handle-bg-hover: none;
  --os-handle-bg-active: none;
  --os-handle-border: none;
  --os-handle-border-hover: none;
  --os-handle-border-active: none;
  --os-handle-min-size: 33px;
  --os-handle-max-size: none;
  --os-handle-perpendicular-size: 100%;
  --os-handle-perpendicular-size-hover: 100%;
  --os-handle-perpendicular-size-active: 100%;
  --os-handle-interactive-area-offset: 0;
}

.os-scrollbar .os-scrollbar-track {
  background: var(--os-track-bg);
  border: var(--os-track-border);
  border-radius: var(--os-track-border-radius);
  transition:
		opacity 0.15s,
		background-color 0.15s,
		border-color 0.15s;
}

.os-scrollbar .os-scrollbar-track:hover {
  background: var(--os-track-bg-hover);
  border: var(--os-track-border-hover);
}

.os-scrollbar .os-scrollbar-track:active {
  background: var(--os-track-bg-active);
  border: var(--os-track-border-active);
}

.os-scrollbar .os-scrollbar-handle {
  background: var(--os-handle-bg);
  border: var(--os-handle-border);
  border-radius: var(--os-handle-border-radius);
}

.os-scrollbar .os-scrollbar-handle:before {
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.os-scrollbar .os-scrollbar-handle:hover {
  background: var(--os-handle-bg-hover);
  border: var(--os-handle-border-hover);
}

.os-scrollbar .os-scrollbar-handle:active {
  background: var(--os-handle-bg-active);
  border: var(--os-handle-border-active);
}

.os-scrollbar-horizontal {
  height: var(--os-size);
  padding: var(--os-padding-perpendicular) var(--os-padding-axis);
  right: var(--os-size);
}

.os-scrollbar-horizontal.os-scrollbar-rtl {
  left: var(--os-size);
  right: 0;
}

.os-scrollbar-horizontal .os-scrollbar-handle {
  height: var(--os-handle-perpendicular-size);
  max-width: var(--os-handle-max-size);
  min-width: var(--os-handle-min-size);
  transition:
		opacity 0.15s,
		background-color 0.15s,
		border-color 0.15s,
		height 0.15s;
}

.os-scrollbar-horizontal .os-scrollbar-handle:before {
  bottom: calc(var(--os-padding-perpendicular) * -1);
  top: calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);
}

.os-scrollbar-horizontal:hover .os-scrollbar-handle {
  height: var(--os-handle-perpendicular-size-hover);
}

.os-scrollbar-horizontal:active .os-scrollbar-handle {
  height: var(--os-handle-perpendicular-size-active);
}

.os-scrollbar-vertical {
  bottom: var(--os-size);
  padding: var(--os-padding-axis) var(--os-padding-perpendicular);
  width: var(--os-size);
}

.os-scrollbar-vertical .os-scrollbar-handle {
  max-height: var(--os-handle-max-size);
  min-height: var(--os-handle-min-size);
  transition:
		opacity 0.15s,
		background-color 0.15s,
		border-color 0.15s,
		width 0.15s;
  width: var(--os-handle-perpendicular-size);
}

.os-scrollbar-vertical .os-scrollbar-handle:before {
  left: calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);
  right: calc(var(--os-padding-perpendicular) * -1);
}

.os-scrollbar-vertical.os-scrollbar-rtl .os-scrollbar-handle:before {
  left: calc(var(--os-padding-perpendicular) * -1);
  right: calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);
}

.os-scrollbar-vertical:hover .os-scrollbar-handle {
  width: var(--os-handle-perpendicular-size-hover);
}

.os-scrollbar-vertical:active .os-scrollbar-handle {
  width: var(--os-handle-perpendicular-size-active);
}

.os-theme-none.os-scrollbar,
[data-overlayscrollbars~="updating"] > .os-scrollbar {
  display: none !important;
}

.os-theme-dark,
.os-theme-light {
  --os-size: 10px;
  --os-padding-perpendicular: 2px;
  --os-padding-axis: 2px;
  --os-track-border-radius: 10px;
  --os-handle-interactive-area-offset: 4px;
  --os-handle-border-radius: 10px;
  box-sizing: border-box;
}

.os-theme-dark {
  --os-handle-bg: rgba(0, 0, 0, 0.44);
  --os-handle-bg-hover: rgba(0, 0, 0, 0.55);
  --os-handle-bg-active: rgba(0, 0, 0, 0.66);
}

.os-theme-light {
  --os-handle-bg: hsla(0, 0%, 100%, 0.44);
  --os-handle-bg-hover: hsla(0, 0%, 100%, 0.55);
  --os-handle-bg-active: hsla(0, 0%, 100%, 0.66);
}

.os-no-css-vars.os-theme-dark.os-scrollbar .os-scrollbar-handle,
.os-no-css-vars.os-theme-dark.os-scrollbar .os-scrollbar-track,
.os-no-css-vars.os-theme-light.os-scrollbar .os-scrollbar-handle,
.os-no-css-vars.os-theme-light.os-scrollbar .os-scrollbar-track {
  border-radius: 10px;
}

.os-no-css-vars.os-theme-dark.os-scrollbar-horizontal,
.os-no-css-vars.os-theme-light.os-scrollbar-horizontal {
  height: 10px;
  padding: 2px;
  right: 10px;
}

.os-no-css-vars.os-theme-dark.os-scrollbar-horizontal.os-scrollbar-rtl,
.os-no-css-vars.os-theme-light.os-scrollbar-horizontal.os-scrollbar-rtl {
  left: 10px;
  right: 0;
}

.os-no-css-vars.os-theme-dark.os-scrollbar-horizontal .os-scrollbar-handle,
.os-no-css-vars.os-theme-light.os-scrollbar-horizontal .os-scrollbar-handle {
  max-width: none;
  min-width: 33px;
}

.os-no-css-vars.os-theme-dark.os-scrollbar-horizontal .os-scrollbar-handle:before,
.os-no-css-vars.os-theme-light.os-scrollbar-horizontal .os-scrollbar-handle:before {
  bottom: -2px;
  top: -6px;
}

.os-no-css-vars.os-theme-dark.os-scrollbar-vertical,
.os-no-css-vars.os-theme-light.os-scrollbar-vertical {
  bottom: 10px;
  padding: 2px;
  width: 10px;
}

.os-no-css-vars.os-theme-dark.os-scrollbar-vertical .os-scrollbar-handle,
.os-no-css-vars.os-theme-light.os-scrollbar-vertical .os-scrollbar-handle {
  max-height: none;
  min-height: 33px;
}

.os-no-css-vars.os-theme-dark.os-scrollbar-vertical .os-scrollbar-handle:before,
.os-no-css-vars.os-theme-light.os-scrollbar-vertical .os-scrollbar-handle:before {
  left: -6px;
  right: -2px;
}

.os-no-css-vars.os-theme-dark.os-scrollbar-vertical.os-scrollbar-rtl .os-scrollbar-handle:before,
.os-no-css-vars.os-theme-light.os-scrollbar-vertical.os-scrollbar-rtl .os-scrollbar-handle:before {
  left: -2px;
  right: -6px;
}

.os-no-css-vars.os-theme-dark .os-scrollbar-handle {
  background: rgba(0, 0, 0, 0.44);
}

.os-no-css-vars.os-theme-dark:hover .os-scrollbar-handle {
  background: rgba(0, 0, 0, 0.55);
}

.os-no-css-vars.os-theme-dark:active .os-scrollbar-handle {
  background: rgba(0, 0, 0, 0.66);
}

.os-no-css-vars.os-theme-light .os-scrollbar-handle {
  background: hsla(0, 0%, 100%, 0.44);
}

.os-no-css-vars.os-theme-light:hover .os-scrollbar-handle {
  background: hsla(0, 0%, 100%, 0.55);
}

.os-no-css-vars.os-theme-light:active .os-scrollbar-handle {
  background: hsla(0, 0%, 100%, 0.66);
}

body::-webkit-scrollbar {
  display: none !important;
}

.os-scrollbar .os-scrollbar-handle {
  background: var(--os-handle-bg-hover);
  opacity: 0.4;
  -webkit-backdrop-filter: invert(1) !important;
          backdrop-filter: invert(1) !important;
}

@supports (hanging-punctuation: first) and (font: -apple-system-body) and (-webkit-appearance: none) {
  @media (hover: none) {
    .os-scrollbar .os-scrollbar-handle {
      opacity: 0 !important;
    }
  }
}

/*!! TESTING OLD WAY SETTING SCROLLBARS STYLES */

/*
html,
body {
	scrollbar-gutter: stable;
	width: 100vw;
}

html,
body {
	scrollbar-color: red rgba(255, 0, 0, 0);
}
html::-webkit-scrollbar,
body::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}
html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb {
	background: yellow;
}
html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track {
	background: green !important;
}

html::-webkit-scrollbar-track {
	background: black;
	box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
} */

.splide__container{
  box-sizing:border-box;
  position:relative
}

.splide__list{
  backface-visibility:hidden;
  display:flex;
  height:100%;
  margin:0!important;
  padding:0!important
}

.splide.is-initialized:not(.is-active) .splide__list{
  display:block
}

.splide__pagination{
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  margin:0;
  pointer-events:none
}

.splide__pagination li{
  display:inline-block;
  line-height:1;
  list-style-type:none;
  margin:0;
  pointer-events:auto
}

.splide:not(.is-overflow) .splide__pagination{
  display:none
}

.splide__progress__bar{
  width:0
}

.splide{
  position:relative;
  visibility:hidden
}

.splide.is-initialized,.splide.is-rendered{
  visibility:visible
}

.splide__slide{
  backface-visibility:hidden;
  box-sizing:border-box;
  flex-shrink:0;
  list-style-type:none!important;
  margin:0;
  position:relative
}

.splide__slide img{
  vertical-align:bottom
}

.splide__spinner{
  animation:splide-loading 1s linear infinite;
  border:2px solid #999;
  border-left-color:transparent;
  border-radius:50%;
  bottom:0;
  contain:strict;
  display:inline-block;
  height:20px;
  left:0;
  margin:auto;
  position:absolute;
  right:0;
  top:0;
  width:20px
}

.splide__sr{
  clip:rect(0 0 0 0);
  border:0;
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  width:1px
}

.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{
  display:none
}

.splide__toggle.is-active .splide__toggle__pause{
  display:inline
}

.splide__track{
  overflow:hidden;
  position:relative;
  z-index:0
}

@keyframes splide-loading{
  0%{
    transform:rotate(0)
  }

  to{
    transform:rotate(1turn)
  }
}

.splide__track--draggable{
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-user-select:none;
       user-select:none
}

.splide__track--fade>.splide__list>.splide__slide{
  margin:0!important;
  opacity:0;
  z-index:0
}

.splide__track--fade>.splide__list>.splide__slide.is-active{
  opacity:1;
  z-index:1
}

.splide--rtl{
  direction:rtl
}

.splide__track--ttb>.splide__list{
  display:block
}

.splide__arrow{
  align-items:center;
  background:#ccc;
  border:0;
  border-radius:50%;
  cursor:pointer;
  display:flex;
  height:2em;
  justify-content:center;
  opacity:.7;
  padding:0;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:2em;
  z-index:1
}

.splide__arrow svg{
  fill:#000;
  height:1.2em;
  width:1.2em
}

.splide__arrow:hover:not(:disabled){
  opacity:.9
}

.splide__arrow:disabled{
  opacity:.3
}

.splide__arrow:focus-visible{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide__arrow--prev{
  left:1em
}

.splide__arrow--prev svg{
  transform:scaleX(-1)
}

.splide__arrow--next{
  right:1em
}

.splide.is-focus-in .splide__arrow:focus{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide__pagination{
  bottom:.5em;
  left:0;
  padding:0 1em;
  position:absolute;
  right:0;
  z-index:1
}

.splide__pagination__page{
  background:#ccc;
  border:0;
  border-radius:50%;
  display:inline-block;
  height:8px;
  margin:3px;
  opacity:.7;
  padding:0;
  position:relative;
  transition:transform .2s linear;
  width:8px
}

.splide__pagination__page.is-active{
  background:#fff;
  transform:scale(1.4);
  z-index:1
}

.splide__pagination__page:hover{
  cursor:pointer;
  opacity:.9
}

.splide__pagination__page:focus-visible{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide.is-focus-in .splide__pagination__page:focus{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide__progress__bar{
  background:#ccc;
  height:3px
}

.splide__slide{
  -webkit-tap-highlight-color:rgba(0,0,0,0)
}

.splide__slide:focus{
  outline:0
}

@supports(outline-offset:-3px){
  .splide__slide:focus-visible{
    outline:3px solid #0bf;
    outline-offset:-3px
  }
}

@media screen and (-ms-high-contrast:none){
  .splide__slide:focus-visible{
    border:3px solid #0bf
  }
}

@supports(outline-offset:-3px){
  .splide.is-focus-in .splide__slide:focus{
    outline:3px solid #0bf;
    outline-offset:-3px
  }
}

@media screen and (-ms-high-contrast:none){
  .splide.is-focus-in .splide__slide:focus{
    border:3px solid #0bf
  }

  .splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{
    border-color:#0bf
  }
}

.splide__toggle{
  cursor:pointer
}

.splide__toggle:focus-visible{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide.is-focus-in .splide__toggle:focus{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide__track--nav>.splide__list>.splide__slide{
  border:3px solid transparent;
  cursor:pointer
}

.splide__track--nav>.splide__list>.splide__slide.is-active{
  border:3px solid #000
}

.splide__arrows--rtl .splide__arrow--prev{
  left:auto;
  right:1em
}

.splide__arrows--rtl .splide__arrow--prev svg{
  transform:scaleX(1)
}

.splide__arrows--rtl .splide__arrow--next{
  left:1em;
  right:auto
}

.splide__arrows--rtl .splide__arrow--next svg{
  transform:scaleX(-1)
}

.splide__arrows--ttb .splide__arrow{
  left:50%;
  transform:translate(-50%)
}

.splide__arrows--ttb .splide__arrow--prev{
  top:1em
}

.splide__arrows--ttb .splide__arrow--prev svg{
  transform:rotate(-90deg)
}

.splide__arrows--ttb .splide__arrow--next{
  bottom:1em;
  top:auto
}

.splide__arrows--ttb .splide__arrow--next svg{
  transform:rotate(90deg)
}

.splide__pagination--ttb{
  bottom:0;
  display:flex;
  flex-direction:column;
  left:auto;
  padding:1em 0;
  right:.5em;
  top:0
}

/**
 * THEME CUSTOMIZATION
 *
 * This will be applied after `layout.css`
 * Any customer / theme customization should go here (leave layout.css alone )
 *
 */

/*! CUSTOM THEMES  */

@media only screen and (max-width: 1023px) {
  .main-header-content .logo-brand {
    translate: 0 0.7ch
  }

  .main-header-content .logo-brand #extended {
    display: none;
  }
}

.logo-brand {
  filter: none !important;
}

@media only screen and (max-width: 1270px) {
  .logo-brand svg {
    --logo-brand-width: calc(var(--mobile-logo-brand-width) * 0.9)
  }
}

.slider h1 {
  /* font-family: var(--txt-slider-heading); */
  font-family: var(--def-heading-font-family);
  font-weight: 500;
  /* line-height: 1; */
}

.slider .video-bg {
  filter: saturate(1.3);
}

.theme-color-white {
  background-color: var(--bg-color-theme-white);
}

.theme-color-white:is(.dark *) {
  background-color: var(--bg-color-theme-white-dark);
}

.theme-color-white h1,
	.theme-color-white h2 {
  color: var(--heading-color-theme-white);
}

.theme-color-white h1:is(.dark *),
	.theme-color-white h2:is(.dark *) {
  color: var(--heading-color-theme-white-dark);
}

/*! DEFAULT PAGE HEADER STYLES */

#main > article header.entry-header {
  --paddV: calc(var(--def-layout-x-padding) * 2);
}

#main > article header.entry-header .entry-header-content h1.entry-title {
  font-size: clamp(2rem, 8vw, 3rem);
  text-align: center;
}

#main > article header.entry-header .header-default-bg:has(.webgldots-container) {
  /* z-index: 99; */
  background-color: transparent !important;
}

#main > article header.entry-header .header-default-bg .header-canvas {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

#main > article header.entry-header .header-default-bg .header-canvas .has-webgl {
  width: 80%;
  height: 60%;
  translate: 0 58%;
  opacity: 0.66;
}

/*! ICONS SVG WITH GRADIENT STROKES */

icon[class*="grad-"] {
  display: flex;
  width: 50px !important;
  margin: 0 !important;
  aspect-ratio: 1;
  -webkit-mask-size: contain;
          mask-size: contain;
  margin-bottom: 0.33rem !important;
}

icon[class*="grad-"].grad-1 {
  background-image: var(--icon-gradient-1);
}

icon[class*="grad-"].grad-2 {
  background-image: var(--icon-gradient-2);
}

icon[class*="grad-"].grad-3 {
  background-image: var(--icon-gradient-3);
}

icon[class*="grad-"].grad-4 {
  background-image: var(--icon-gradient-4);
}

icon[class*="grad-"].grad-5 {
  background-image: var(--icon-gradient-5);
}

icon[class*="grad-"].grad-6 {
  background-image: var(--icon-gradient-6);
}

icon[class*="grad-"] {
  -webkit-mask-image: var(--icon-url);
          mask-image: var(--icon-url);
}

/* The icon */

icon[class*="grad-"].icon-automatizacion {
  --icon-url: url("/xen_media/automatizacion-b.svg");
}

icon[class*="grad-"].icon-tiempo-real {
  --icon-url: url("/xen_media/tiempo-real.svg");
}

icon[class*="grad-"].icon-conciliacion {
  --icon-url: url("/xen_media/conciliacion-b.svg");
}

icon[class*="grad-"].icon-nodes {
  --icon-url: url("/xen_media/multi-erp.svg");
}

icon[class*="grad-"].icon-escala {
  --icon-url: url("/xen_media/escalabilidad.svg");
}

icon[class*="grad-"].icon-cloud-lock {
  --icon-url: url("/xen_media/cloud-lock.svg");
}

icon[class*="grad-"].icon-clock-record {
  --icon-url: url("/xen_media/clock-record.svg");
}

icon[class*="grad-"].icon-bell-plus {
  --icon-url: url("/xen_media/bell-plus.svg");
}

icon[class*="grad-"].icon-sort-descending-small-big {
  --icon-url: url("/xen_media/sort-descending-small-big.svg");
}

icon[class*="grad-"].icon-connection {
  --icon-url: url("/xen_media/connection.svg");
}

icon[class*="grad-"].icon-credit-card {
  --icon-url: url("/xen_media/credit-card.svg");
}

icon[class*="grad-"].icon-world-star {
  --icon-url: url("/xen_media/world-star.svg");
}

icon[class*="grad-"].icon-timeline-event-text {
  --icon-url: url("/xen_media/timeline-event-text.svg");
}

icon[class*="grad-"].icon-credit-card-refund {
  --icon-url: url("/xen_media/credit-card-refund.svg");
}

icon[class*="grad-"].icon-chart-column {
  --icon-url: url("/xen_media/chart-column.svg");
}

icon[class*="grad-"].icon-multiple {
  --icon-url: url("/xen_media/multiple.svg");
}

icon[class*="grad-"].icon-list-details {
  --icon-url: url("/xen_media/list-details.svg");
}

icon[class*="grad-"].icon-transfer-in {
  --icon-url: url("/xen_media/transfer-in.svg");
}

icon[class*="grad-"].icon-bell-exclamation {
  --icon-url: url("/xen_media/bell-exclamation.svg");
}

icon[class*="grad-"].icon-bell-ringing {
  --icon-url: url("/xen_media/bell-ringing.svg");
}

icon[class*="grad-"].icon-automation {
  --icon-url: url("/xen_media/automation.svg");
}

icon[class*="grad-"].icon-report {
  --icon-url: url("/xen_media/report.svg");
}

icon[class*="grad-"].icon-a-b-test {
  --icon-url: url("/xen_media/a-b-test.svg");
}

icon[class*="grad-"].icon-rotate-2 {
  --icon-url: url("/xen_media/rotate-2.svg");
}

icon[class*="grad-"].icon-arrows-split-2 {
  --icon-url: url("/xen_media/arrows-split-2.svg");
}

icon[class*="grad-"].icon-cash {
  --icon-url: url("/xen_media/cash.svg");
}

icon[class*="grad-"].icon-layout-dashboard {
  --icon-url: url("/xen_media/layout-dashboard.svg");
}

icon[class*="grad-"].icon-calendar-dollar {
  --icon-url: url("/xen_media/calendar-dollar.svg");
}

icon[class*="grad-"].icon-coins {
  --icon-url: url("/xen_media/coins.svg");
}

icon[class*="grad-"].icon-businessplan {
  --icon-url: url("/xen_media/businessplan.svg");
}

icon[class*="grad-"].icon-text-shield {
  --icon-url: url("/xen_media/text-shield.svg");
}

icon[class*="grad-"].icon-chart-bar {
  --icon-url: url("/xen_media/chart-bar.svg");
}

icon[class*="grad-"].icon-shield-up {
  --icon-url: url("/xen_media/shield-up.svg");
}

icon[class*="grad-"].icon-file-analytics {
  --icon-url: url("/xen_media/file-analytics.svg");
}

icon[class*="grad-"].icon-dashboard {
  --icon-url: url("/xen_media/dashboard.svg");
}

icon[class*="grad-"].icon-clock-cog {
  --icon-url: url("/xen_media/clock-cog.svg");
}

icon[class*="grad-"].icon-chart-covariate {
  --icon-url: url("/xen_media/chart-covariate.svg");
}

icon[class*="grad-"].icon-integration {
  --icon-url: url("/xen_media/integration.svg");
}

icon[class*="grad-"].icon-settings-bolt {
  --icon-url: url("/xen_media/settings-bolt.svg");
}

icon[class*="grad-"].icon-network {
  --icon-url: url("/xen_media/network.svg");
}

icon[class*="grad-"].icon-barcode {
  --icon-url: url("/xen_media/barcode.svg");
}

icon[class*="grad-"].icon-chart-histogram {
  --icon-url: url("/xen_media/chart-histogram.svg");
}

icon[class*="grad-"].icon-total-connection {
  --icon-url: url("/xen_media/total-connection.svg");
}

icon[class*="grad-"].icon-calendar-search {
  --icon-url: url("/xen_media/calendar-search.svg");
}

icon[class*="grad-"].icon-brand-openai {
  --icon-url: url("/xen_media/brand-openai.svg");
}

icon[class*="grad-"].icon-deviation {
  --icon-url: url("/xen_media/deviation.svg");
}

icon[class*="grad-"].icon-robot {
  --icon-url: url("/xen_media/robot.svg");
}

icon[class*="grad-"].icon-up-down {
  --icon-url: url("/xen_media/up-down.svg");
}

icon[class*="grad-"].icon-plug-connected {
  --icon-url: url("/xen_media/plug-connected.svg");
}

icon[class*="grad-"].icon-ajustes {
  --icon-url: url("/xen_media/ajustes.svg");
}

icon[class*="grad-"].icon-users-plus {
  --icon-url: url("/xen_media/users-plus.svg");
}

icon[class*="grad-"].icon-history-toggle {
  --icon-url: url("/xen_media/history-toggle.svg");
}

/*! Header Navigation menu  */

.logo-brand #extended,
	.logo-brand #logo {
  color: rgba(var(--brand-color-rgb), 1);
}

.logo-brand #description {
  color: black;
}

#page:has(.transparent-header) #masthead:not(.scrolledHeader) .logo-brand #description,
				#page:has(.transparent-header) #masthead:not(.scrolledHeader) .logo-brand #extended,
				#page:has(.transparent-header) #masthead:not(.scrolledHeader) .logo-brand #logo {
  color: white;
}

/*! MEGAMENUS CUSTOM STYLES */

.max-width-34em {
  max-width: 34em !important;
}

#masthead .main-nav-desktop-submenus-wrap .sub-menu:has(.megamenu) {
  background: transparent;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu {
  --bg-color-extra: var(--secondary-color);
  --bg-gradient: var(--gradient-footer);
  /* --bg-color-extra: rgb(from var(--main-color) r g b / 9%); */
  overflow: hidden;
  display: flex;
  flex-flow: column;
  /* max-width: min-content; */
  display: grid;
  grid-template-rows: 1fr auto;
}

/* gap: 2rem; */

#masthead .main-nav-desktop-submenus-wrap .megamenu > div {
  display: flex;
  flex-flow: row;
  gap: 1rem;
  background-color: var(--submenu-bg-color);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .grid-item-content {
  display: flex;
  gap: 0.5rem;
  z-index: 5;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .grid-item-content .item-content h2,
					#masthead .main-nav-desktop-submenus-wrap .megamenu .grid-item-content .item-content h3,
					#masthead .main-nav-desktop-submenus-wrap .megamenu .grid-item-content .item-content .title {
  padding-top: 0;
  font-size: var(--nav-text-size);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .grid-item-content .item-content p {
  font-size: calc(var(--nav-text-size) * 0.9);
  color: var(--submenu-text-description-color);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .item-list {
  display: flex;
  flex-flow: column;
  gap: 1rem;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu h2 {
  color: var(--submenu-text-color);
  font-size: clamp(1rem, 5vw, 1.05rem);
  font-weight: 700;
  padding-bottom: 1rem;
  margin-bottom: 0 !important;
  line-height: 1.8ch !important;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu p {
  font-size: 0.8rem;
  font-weight: 400;
  margin-top: 0px;
  margin-bottom: 0px;
  color: rgb(255 255 255 / 0.6);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item {
  --icon-dim: 45px;
  --icon-padd: 0.18rem;
  --inner-radius: calc(var(--min-border-radius) - var(--icon-padd));
  --stroke-width: 12px;
  --base-color: #0077d3;
  white-space: unset;
  text-wrap: unset;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item > a {
  display: flex;
  flex-flow: row;
  align-items: flex-start;
  gap: 1ch;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item > a:not(.wp-element-button)::before {
  z-index: 0;
  --padd: 2ch;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item > a::before {
  border-top-left-radius: calc(var(--min-border-radius) + calc(var(--padd) * 0.2));
  border-bottom-left-radius: calc(var(--min-border-radius) + calc(var(--padd) * 0.2));
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item > a:hover .item-icon svg {
  border-radius: var(--inner-radius);
  padding: var(--icon-padd);
  color: var(--main-color);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item > a:hover::before {
  background-color: var(--submenu-item-hover-bg-color);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item .item-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: var(--icon-dim);
  height: var(--icon-dim);
  border-radius: 90%;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: var(--icon-padd);
  border: 2px solid rgba(255, 255, 255, 0.05);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item .item-icon svg {
  width: calc(var(--icon-dim) - var(--icon-padd) * 4);
  height: calc(var(--icon-dim) - var(--icon-padd) * 4);
  transition: all 0.6s cubic-bezier(0.2, 1, 0.3, 1);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item .item-icon svg * {
  stroke-width: var(--stroke-width);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item .item-icon svg {
  padding: var(--icon-padd);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item .item-content {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item .item-content h3 {
  color: var(--heading-color-theme-light);
  font-size: 0.87rem;
  font-weight: 600;
  line-height: 1.8ch !important;
  margin-top: 0px;
  margin-bottom: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  white-space: nowrap;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-item .item-content:has(.description) {
  max-width: 290px;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .extra {
  --padd: 1.5rem;
  /* background-color: var(--bg-color-extra); */
  /* background-color: rgb(from var(--bg-color-extra) r g b / 30%); */
  --base-color: #0077d3;
  background-color: rgb(from var(--base-color) r g b / 100%);
  background-image: var(--bg-gradient);
  --pattern-dim: 10;
  --pattern-color: var(--bg-secondary);
}

@media only screen and (max-width: 1124px) {
  #masthead .main-nav-desktop-submenus-wrap .megamenu .extra {
    max-width: 250px
  }
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .extra {
  padding: 0;
}

/* justify-content: flex-end; */

#masthead .main-nav-desktop-submenus-wrap .megamenu .extra .is-bg-pattern {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0.3;
  /* background-image: var(--bg-pattern-cross); */
  background-image: var(--bg-pattern-cross-dark);
  -webkit-mask-image: radial-gradient(80% 60% at 80% 80%, black, transparent);
          mask-image: radial-gradient(80% 60% at 80% 80%, black, transparent);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .extra .is-bg-pattern svg #plus {
  width: 20px;
  height: 20px;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .extra .content {
  padding: var(--padd);
  height: 100%;
  /* display: flex;
					flex-flow: column;
					justify-content: flex-end;
					align-items: flex-end; */
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .extra .content h2 {
  color: white;
  font-size: 1.4rem;
  letter-spacing: 0.05ch;
  padding-bottom: 0.5ch;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .extra .content p {
  font-size: 1rem;
  max-width: 38rem;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mmenu-separator {
  display: flex;
  justify-content: flex-start;
  /* background: var(--cta-color); */
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mmenu-separator hr {
  display: flex;
  width: 1px;
  height: 100%;
  /* background-color: var(--nav-text-color); */
  background-color: var(--heading-color-theme-light);
  opacity: 0.075;
  border: 0;
  /* padding: 2rem 0; */
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  row-gap: 1rem;
  padding: var(--card-padding);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container:has(.mega-menu-item .description) {
  row-gap: 2rem;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container .mega-menu-item a::before {
  --padd: 1ch;
  --inset-y: 5px;
  --inset-x: -10px;
}

/*! MEGAMENU BY CATEGORY GROUPS */

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups {
  display: flex;
  flex-flow: row;
  /* display: grid;
					grid-template-columns: repeat(4, 1fr); */
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  padding: var(--card-padding);
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups .category-group {
  display: flex;
  row-gap: 1ch;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups .mega-menu-item {
  --icon-dim: 34px;
  --icon-padd: 0.1ch;
  --inner-radius: calc(var(--min-border-radius) - var(--icon-padd));
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups .mega-menu-item a::before {
  --padd: 1ch;
  --inset-y: 2.5px;
  --inset-x: -5px;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups .category-title {
  text-transform: uppercase;
}

@media only screen and (max-width: 1385px) {
  #masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups {
    display: grid;
    row-gap: 4rem;
    grid-template-columns: repeat(5, auto)
  }

  #masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups .mmenu-separator {
    width: -moz-fit-content;
    width: fit-content;
  }

  #masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups .mmenu-separator:last-of-type {
    display: none;
  }

  #masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups .category-group:last-of-type {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }

  #masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups .category-group:last-of-type > h2,
								#masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups .category-group:last-of-type > h3 {
    grid-column: 1 / -1;
  }

  #masthead .main-nav-desktop-submenus-wrap .megamenu .mega-menu-container.category-groups .category-group:last-of-type {
    grid-column: 1 / -1;
    width: -moz-fit-content;
    width: fit-content;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
}

@media only screen and (min-width: 1385px) {
  @media only screen and (max-height: 796px) {
    #masthead .main-nav-desktop-submenus-wrap .megamenu:has(.category-groups) .extra {
      display: none;
    }
  }
}

@media only screen and (max-width: 1384px) {
  @media only screen and (max-height: 976px) {
    #masthead .main-nav-desktop-submenus-wrap .megamenu:has(.category-groups) .extra {
      display: none;
    }
  }
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .extra {
  max-width: unset;
}

#masthead .main-nav-desktop-submenus-wrap .megamenu .extra .content {
  padding: var(--padd) var(--card-padding) !important;
}

@media only screen and (max-width: 1198px) {
  #masthead .main-nav-desktop .menu-item {
    font-size: clamp(0.3rem, 1vw, 0.85rem)
  }
}

.main-nav-mobile .grid-submenu-mobile {
  display: flex !important;
  width: 100%;
  gap: 0.75rem;
}

.main-nav-mobile .grid-submenu-mobile .sub-menu-mobile-item .grid-item-content {
  display: grid;
  grid-template-columns: min-content auto;
  align-items: center;
  gap: 0.5rem;
}

.main-nav-mobile .grid-submenu-mobile .sub-menu-mobile-item .grid-item-content .item-icon {
  --icon-dim: 22px;
  display: flex;
  align-items: center;
  width: var(--icon-dim);
  height: var(--icon-dim);
  aspect-ratio: 1;
}

.main-nav-mobile .grid-submenu-mobile .sub-menu-mobile-item .grid-item-content .item-title {
  line-height: 1.15;
}

/*! SECTIONS SEPARATIONS - BORDERS */

.pct-section.separation-line {
  --line-dim: 1px;
}

.pct-section.separation-line::before,
	.pct-section.separation-line::after {
  content: "";
  display: block;
  width: 100%;
  min-width: calc(var(--layout-max-width));
  max-width: 80%;
}

@media only screen and (max-width: 1320px) {
  .pct-section.separation-line::before,
	.pct-section.separation-line::after {
    /* width: 50%; */
    max-width: calc(100% - 2 * var(--def-layout-x-padding));
    min-width: unset;
    /* max-width: calc(100% - 2 * var(--def-layout-x-padding)); */
  }
}

.pct-section.separation-line::before,
	.pct-section.separation-line::after {
  margin: auto;
  height: var(--line-dim);
  border-top-width: 2px;
  --tw-border-opacity: 1;
  border-top-color: rgb(0 0 0 / var(--tw-border-opacity));
}

.pct-section.separation-line:is(.dark *)::before,
	.pct-section.separation-line:is(.dark *)::after {
  --tw-border-opacity: 1;
  border-top-color: rgb(255 255 255 / var(--tw-border-opacity));
}

.pct-section.separation-line::before {
  padding-bottom: var(--default-section-vert-padding);
}

.pct-section.separation-line::after {
  margin-top: var(--default-section-vert-padding);
}

.pct-section.separation-line.full-width > * {
  margin-left: auto !important;
  margin-right: auto !important;
}

/*! HOME SLIDER STYLES */

body.home .slider > div:first-of-type figure, body:has(.home) .slider > div:first-of-type figure {
  display: flex;
  align-items: flex-end;
}

@media only screen and (max-width: 767px) {
  body.home .slider .full-height, body:has(.home) .slider .full-height {
    height: auto
  }

  body.home .slider .full-height > div:first-of-type, body:has(.home) .slider .full-height > div:first-of-type {
    /* display: none; */
    padding-bottom: var(--default-section-vert-padding);
  }
}

body.home .slider p, body:has(.home) .slider p {
  font-size: clamp(1rem, 5vw, 1.1rem);
}

/*! BACKGROUNDS GRADIENTS */

.bg-primary {
  background-image: var(--gradient-highlight-primary), var(--gradient-primary) !important;
}

/*! IMAGE FILTERS */

.filter-blue {
  filter: sepia(1) hue-rotate(172deg) saturate(2.5);
}

/*! CUSTOM ICON/IMG SIZES */

.media-size-120 {
  --media-dim: 120px;
}

.media-size-120 figure,
	.media-size-120 img,
	.media-size-120 svg {
  height: var(--media-dim) !important;
  width: var(--media-dim) !important;
  max-width: var(--media-dim) !important;
  max-height: var(--media-dim);
}

/*? DELETE ME SCROLLTRIGGER TESTS */

.spacer {
  display: grid;
  place-items: center;
  height: 100svh;
  background-color: white;
}

.spacer:nth-child(even) {
  /* background-color: red; */
  border: 1px solid slategray;
}

.animated-element {
  width: 300px;
  color: white;
  padding: 20px;
  display: flex;
  flex-direction: column;
  background-color: #1dab74;
  border-radius: 8px;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
  position: relative;
  translate: -100%;
  /* left: -200%; */
}

.blurchars {
  font-size: clamp(3rem, 8vw, 8rem);
  text-align: center;
}

[data-blur_chars="in"] {
  opacity: 0;
}

section.will-pin {
  display: flex;
  padding: 20vh 0;
  /* flex-flow: column;
	justify-content: center;
	height: 100vh; */
}

.test-anim-bg {
  height: 50vh;
  border: 1px solid black;
}

/* :has(> canvas.anim-bg) {
	width: 100%;
	height: 100%;
} */

canvas.anim-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  max-width: unset !important;
  pointer-events: none;
  /* z-index: -1; */
}

/*! SLIDER HOMEPAGE */

.slider.has-custom-bg {
  position: relative;
}

/* color: white; */

.slider.has-custom-bg.theme-color-light {
  background-color: #262827;
}

/* padding-bottom: 3rem; */

@media only screen and (max-width: 1024px) {
  .slider.has-custom-bg .max-width-readable {
    padding-bottom: 0
  }
}

/* h1,
	h2 {
		color: black;
	} */

.slider.has-custom-bg .is-bg.slider-canvas {
  background-color: var(--secondary-color);
}

.slider.has-custom-bg .is-bg.slider-canvas canvas {
  width: 100%;
  height: 100%;
}

.slider.has-custom-bg .scene {
  padding: clamp(0rem, 8vw, 2rem) 0;
  align-items: center;
}

/* background: url("/xen_media/background-grid.png") no-repeat center center; */

.slider.has-custom-bg .scene h1 {
  font-size: clamp(3.2rem, 8vw, 3.5rem);
  /* color: var(--main-color); */
  margin-bottom: 0.5ch;
  line-height: 1em;
  padding: 0.1em 0;
  margin-bottom: 0;
  margin-top: clamp(-0.2rem, -8vw, -1rem) !important;
  /* animation: intro-gradient 2.2s cubic-bezier(0.165, 0.84, 0.44, 1); */
}

.slider.has-custom-bg .scene h2 {
  font-weight: 400;
  font-size: clamp(1.2rem, 8vw, 1.8rem);
  margin-bottom: 0 !important;
  /* color: #5f5f5f; */
}

.slider.has-custom-bg .scene p {
  margin-top: clamp(1rem, 8vw, 2rem);
  /* color: #5f5f5f; */
  font-size: 1.1rem;
}

.slider.has-custom-bg .slider-cover:not(.block-editor-block-list__block) {
  display: block;
  position: absolute;
  /* opacity: 0; */
  inset: 0;
  background-color: var(--secondary-color);
  max-width: unset !important;
  width: 100vw !important;
  height: var(--slider-height);
}

.slider .landing-slider {
  padding: min(var(--default-section-vert-padding), 6rem) 0;
}

.slider:has(card.fecha) card.fecha {
  --color: white;
}

.solution-icon {
  --icon-dim: clamp(40px, 8vw, 70px);
  margin-bottom: calc(var(--icon-dim) * 0.2) !important;
}

.solution-icon svg,
	.solution-icon img {
  width: var(--icon-dim) !important;
  height: var(--icon-dim) !important;
}

:root.dark card.fecha,
	:root.dark .apply-header {
  --color: var(--main-color);
}

.list-icons {
  margin-top: var(--def-layout-x-padding);
  display: flex;
  flex-flow: column;
  gap: 1.5rem;
  container-type: inline-size;
  container-name: li-icons;
}

.list-icons > * {
  display: grid;
  grid-template-columns: max-content 1fr;
  align-items: center;
  gap: 1rem;
  border-radius: var(--def-border-radius);
  background-color: rgb(0 0 0 / 0.05);
  padding: 1rem;
}

.list-icons > *:is(.dark *) {
  background-color: rgb(255 255 255 / 0.1);
}

/* @apply bg-yellow-600/50; */

.list-icons > * figure {
  max-width: unset;
  min-width: 40px;
  align-self: center;
}

.list-icons > * > * {
  justify-content: flex-start;
  text-align: left !important;
  align-items: center;
  font-weight: 400;
}

.list-icons > * h2,
		.list-icons > * h3,
		.list-icons > * h4 {
  padding-top: 0;
  font-size: clamp(1.3rem, 4vw, 1.4rem);
  line-height: 1.25;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

.list-icons > * h2:is(.dark *),
		.list-icons > * h3:is(.dark *),
		.list-icons > * h4:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

/* .pct-section > h2 {
	width: fit-content !important;
} */

[data-scrollhorizontal] .horiz-scroll {
  --items-width: 950px;
  margin-top: var(--def-layout-x-padding) !important;
  gap: 2rem;
  padding-right: var(--def-layout-x-padding);
}

[data-scrollhorizontal] .horiz-scroll section,
		[data-scrollhorizontal] .horiz-scroll .scroll-item {
  display: grid;
  grid-template-columns: 1fr var(--def-layout-x-padding);
}

/* height: 100% !important; */

[data-scrollhorizontal] .horiz-scroll section > div, [data-scrollhorizontal] .horiz-scroll .scroll-item > div {
  display: flex !important;
  height: 100% !important;
  padding: var(--def-layout-x-padding);
  border-radius: var(--def-border-radius);
  background-color: rgb(255 255 255 / 0.1);
}

[data-scrollhorizontal] .horiz-scroll section > div h4, [data-scrollhorizontal] .horiz-scroll .scroll-item > div h4 {
  padding-top: 0;
  font-size: clamp(1.3rem, 5vw, 1.8rem);
  font-weight: bold;
  line-height: 1.1;
  margin-bottom: 1ch;
}

[data-scrollhorizontal] .horiz-scroll section:last-of-type, [data-scrollhorizontal] .horiz-scroll .scroll-item:last-of-type {
  margin-right: var(--def-layout-x-padding);
  /* background-color: red; */
}

[data-scrollhorizontal] .horiz-scroll .card-ordered-num {
  --dim: clamp(0.5rem, 3vw, 2rem);
  --numSize: clamp(1rem, 3vw, 1.5rem);
  --numberedColor: var(--main-color);
  /* --numberedBgColor: linear-gradient(135deg, rgb(48 55 62) 0%, rgb(0 82 64)); */
  --numberedBgColor: linear-gradient(135deg, rgb(0 82 64) 0%, rgb(48 55 62));
  --numberedBorderColor: var(--numberedColor);
  --min-height: 300px;
  display: flex;
  flex-flow: row;
  align-items: center;
  overflow: initial;
  min-height: var(--min-height);
  padding: 0 !important;
  border-top: 0;
  /* @apply border-t-[var(--line-color)]; */
  overflow: hidden;
  padding: var(--card-padding);
  border-radius: 0;
  background-color: unset;
  translate: calc(var(--dim) * -2);
}

[data-scrollhorizontal] .horiz-scroll .card-ordered-num > div {
  display: flex;
  justify-content: center;
  background-color: rgb(255 255 255 / 0.1);
  border-radius: var(--def-border-radius);
  padding: calc(var(--def-layout-x-padding) * 0.5);
  padding-left: calc(var(--dim) * 0.5 + 2ch + calc(var(--def-layout-x-padding) * 0.5));
  height: 100%;
  z-index: 1;
}

[data-scrollhorizontal] .horiz-scroll .card-ordered-num:nth-child(-n + 9)::before {
  content: counter(xx);
}

[data-scrollhorizontal] .horiz-scroll .card-ordered-num::before {
  z-index: 5;
  /* translate: calc(var(--dim) + calc(2ch) * 0.75) 0; */
  translate: 50% 0;
  margin-bottom: 0;
  background: var(--numberedBgColor);
  font-family: var(--def-heading-font-family);
  font-weight: bold;
  /* background-color: var(--main-color); */
  /* position: absolute;
				left: 0; */
}

.pct-faqs.faqs-solution {
  max-width: var(--layout-max-width) !important;
  margin-top: calc(var(--default-section-vert-padding) * 0.75);
}

.pinned-col-right {
  --col-gap: var(--card-padding);
  gap: var(--card-padding);
}

.pinned-col-right .col-pinned {
  padding-left: var(--col-gap);
  border-left-width: 2px;
  border-left-color: var(--border-color);
}

.pinned-col-right .col-pinned:is(.dark *) {
  border-left-color: var(--border-color-dark);
}

@media only screen and (max-width: 768px) {
  .pinned-col-right .col-pinned {
    border-left-width: 0px;
    padding-left: 0;
  }
}

/* border-left: 1px solid red; */

.pinned-col-right .col-pinned .card:first-of-type {
  margin-top: 0;
}

.pinned-col-right .col-pinned .card:not(:last-of-type) {
  margin-bottom: var(--col-gap);
}

.pinned-col-right .col-pinned h3,
		.pinned-col-right .col-pinned h4 {
  padding-top: 0;
}

.pinned-col-right .col-pinned h3 {
  margin-bottom: 0 !important;
}

.pinned-col-right .col-pinned h4 {
  font-size: clamp(1.2rem, 5vw, 2rem);
  font-weight: 500;
}

/*! ORDERED LISTS CUSTOM STYLES */

.ordered-list {
  /* padding-top: calc(var(--def-layout-x-padding) * 0.5); */
  /* --numSize: 1.5rem; */
  /* --numberedColor: var(--heading-color); */
  --numberedColor: var(--main-color-darker);
  --numberedBgColor: var(--main-color);
  --dim: 2rem;
  --padding: 1.5em;
  row-gap: calc(var(--dim) * 1.5);
}

.ordered-list > * {
  align-items: center;
}

.ordered-list > *::before {
  background-color: var(--main-color);
  color: var(--numberedColor);
}

/*! FORM MULTI CHECKBOX */

.wpcf7:has(.multi-checkbox) {
  padding-top: 0;
}

.pct-form-pasti:has(.multi-checkbox) {
  max-width: unset;
}

.multi-checkbox {
  /* --form-field-border-color: var(--main-color-third);
	--form-field-focus-border-color: var(--link-color); */
  padding: calc(var(--def-layout-x-padding) * 0.5);
  border-radius: var(--def-border-radius);
  border-width: 2px;
  border-color: var(--form-field-border-color);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

.multi-checkbox:is(.dark *) {
  border-color: rgb(255 255 255 / 0.2);
  background-color: rgb(255 255 255 / 0.05);
}

.multi-checkbox .group-title {
  display: block;
  font-weight: bold;
  padding-bottom: 1ch;
}

.multi-checkbox br {
  display: none !important;
}

.multi-checkbox > p {
  margin-bottom: 0;
}

.multi-checkbox .wpcf7-form-control-wrap {
  margin: 0 !important;
}

.multi-checkbox .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-checkbox {
  display: flex;
  flex-flow: column;
  align-items: flex-start;
  gap: 0.5ch;
}

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

.multi-checkbox .wpcf7-list-item .wpcf7-list-item-label {
  font-size: 16px;
  line-height: 1.2;
}

/*! Left Pinned right scroller cards with image */

.grid-left-pinned-scroller > div:not(:last-of-type) {
  margin-bottom: var(--default-section-vert-padding);
}

.grid-left-pinned-scroller > div > figure img {
  width: 100%;
}

.grid-left-pinned-scroller > div > .wp-block-group {
  padding: var(--def-layout-x-padding);
}

.grid-left-pinned-scroller > div > .wp-block-group p {
  font-size: 1.2em;
}

.card.dev-languages {
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--card-padding);
  background-color: white;
}

.card.dev-languages > figure {
  width: -moz-fit-content;
  width: fit-content;
}

.copyright-container {
  padding-bottom: calc(var(--default-section-vert-padding) * 0.75) !important;
}

.copyright-container .social-icons {
  justify-content: flex-end;
  gap: 0rem;
  padding-bottom: 0.5rem;
}

.copyright-container .social-icons .social-item {
  padding: 0 0.3rem;
}

.copyright-container .social-icons .social-item i {
  font-size: 1.25rem;
}

#top-menu {
  gap: 1rem;
}

#top-menu .social-icons .social-item i {
  font-size: 0.9rem;
}

#footer {
  background-color: var(--secondary-color);
  background-image: var(--gradient-footer);
  --gap: 3rem;
}

/* @apply bg-gradient-footer; */

/* background: rgb(255, 0, 0); */

/* container-type: inline-size;
		container-name: footer-container; */

#footer .footer-container .footer-content {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: var(--default-section-vert-padding);
  padding-bottom: 0 !important;
}

#footer .footer-container .footer-content .footer-cols-container {
  display: flex;
  gap: var(--gap);
  width: 100%;
  container-name: footer-cols;
  container-type: inline-size;
}

#footer .footer-container .footer-content .footer-cols {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, auto));
  grid-auto-rows: minmax(0px, auto);
  /* grid-auto-flow: column;
				grid-auto-columns: minmax(240px, 1fr); */
  justify-content: center;
  gap: var(--gap);
  row-gap: calc(var(--gap) * 0.5);
}

#footer .footer-container .footer-content .footer-col {
  margin-bottom: 1rem;
}

#footer .footer-container .footer-content .footer-col > h3 {
  /* border-bottom: 1px solid var(--border-color); */
  border-bottom: 1px solid rgb(from var(--border-color) r g b / 75%);
  padding-bottom: 1.5ch;
  margin-bottom: 2ch !important;
}

#footer .footer-container .footer-content .footer-col > h3 ~ *:has(h3) {
  margin-bottom: 1.5ch;
  padding-bottom: 1.5rem;
}

#footer .footer-container .footer-content .footer-col > h3 ~ *:has(h3) h3 {
  font-size: 1rem;
  text-transform: unset !important;
}

#footer .footer-container .footer-content .footer-col > h3 ~ *:has(h3):last-child {
  padding-bottom: 0;
  margin-bottom: 0;
}

#footer .footer-container .footer-content .footer-col:first-of-type {
  grid-row: 1 / span 2;
  /* background: yellow; */
}

#footer .footer-container .footer-content .oficinas {
  display: flex;
  flex-flow: column;
}

#footer .footer-container .footer-content .region-container {
  display: flex;
  flex-flow: column;
  row-gap: calc(var(--gap) * 0.75);
  /* max-width: 800px; */
  max-width: auto;
  width: 100%;
  align-self: center;
  background-color: rgba(255, 255, 255, 0.035);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  border-radius: var(--def-border-radius);
  padding: 2rem;
}

#footer .footer-container .footer-content .region-items {
  display: flex;
  flex-flow: column;
  -moz-column-gap: var(--gap);
       column-gap: var(--gap);
}

#footer .footer-container .footer-content .region-items > *:last-child {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 200px));
  gap: var(--gap);
  row-gap: 0.75rem;
}

#footer .footer-container .footer-content .region-items .location {
  color: rgb(255 255 255 / 0.8) !important;
  margin-bottom: 0.5ch;
}

#footer .footer-container .footer-content .region-items .region-item {
  padding-top: 0.75rem;
}

#footer .footer-container .footer-content h3 {
  padding-top: 0;
  font-size: 1.1rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  text-transform: uppercase;
  font-weight: 500;
}

#footer .footer-container .footer-content a,
			#footer .footer-container .footer-content p {
  font-size: 0.775rem;
  color: rgb(255 255 255 / 0.5) !important;
  letter-spacing: 0.3px;
}

#footer .copyright-container {
  padding-top: calc(var(--default-section-vert-padding) * 1.75);
}

#footer .copyright-container .pct-copyright {
  display: flex;
  flex-flow: row;
  place-content: flex-start space-between !important;
  align-items: flex-start !important;
}

/* justify-content: space-between; */

#footer .copyright-container .pct-copyright .company-logo > * {
  width: var(--logo-brand-width);
  height: auto;
  max-width: unset;
}

#footer .copyright-container .pct-copyright a {
  color: white !important;
}

#footer .copyright-container .copy {
  padding-left: 1rem;
  padding-right: 1rem;
}

#footer .copyright-container .copy li {
  text-align: right;
}

@media only screen and (max-width: 620px) {
  #footer .copyright-container .pct-copyright {
    flex-flow: column;
  }

  #footer .copyright-container .pct-copyright .copy {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    padding-left: 0;
    margin-top: 1rem;
  }

  #footer .copyright-container .pct-copyright .copy li {
    text-align: left;
  }
}

.footer-col.certificates {
  container-type: inline-size;
  container-name: footer-certs;
  /* grid-column-end: span 2;
		height: fit-content;

		display: flex;
		flex-flow: row !important;
		flex-wrap: wrap;
		gap: 1rem;
		figure {
			max-width: 140px;
			height: fit-content !important;
		}

		@container footer-cols (width < 530px) {
			grid-column-end: unset;
		} */
}

.footer-col.certificates h3 + * {
  display: flex;
  gap: 1rem;
}

.footer-col.certificates h3 + * figure {
  max-width: 140px;
  height: -moz-fit-content !important;
  height: fit-content !important;
}

.card-contact h3 {
  padding-top: 0;
}

.card-contact {
  border-radius: var(--def-border-radius);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: var(--card-padding);
  color: var(--txt-color);
  --tw-shadow: 0 0 20px 4px rgba(244,67,54,.25);
  --tw-shadow-colored: 0 0 20px 4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.contact-list li:not(:last-of-type) {
  padding-bottom: 0.5rem;
}

/*! Links with ICONS automatically by href content */

.contact-list a:not(.social-item):not(.pictau-logo) {
  --col-gap: 1ch;
  color: var(--txt-color) !important;
}

.contact-list a:not(.social-item):not(.pictau-logo):hover {
  color: var(--main-color) !important;
}

.contact-list a:not(.social-item):not(.pictau-logo) {
  background: none !important;
  display: flex;
  -moz-column-gap: var(--col-gap);
       column-gap: var(--col-gap);
  width: -moz-fit-content;
  width: fit-content;
}

.contact-list a:not(.social-item):not(.pictau-logo)::before {
  display: flex;
  min-width: 2ch;
  justify-content: center;
  align-items: center;
  color: white;
  background-color: var(--main-color);
  border-radius: 50%;
  aspect-ratio: 1;
  height: -moz-fit-content;
  height: fit-content;
  font-family: "pictauicons";
  font-size: 0.9rem;
}

.contact-list a:not(.social-item):not(.pictau-logo)[href*="mailto:"]::before {
  content: "\f0e0";
}

.contact-list a:not(.social-item):not(.pictau-logo)[href*="tel:"]::before {
  content: "\f095";
}

.contact-list a:not(.social-item):not(.pictau-logo)[href*="/maps/place"]::before {
  content: "\f041";
}

.contact-list a:not(.social-item):not(.pictau-logo)[href*=".com"]::before {
  content: "\f0ac";
}

/*! ORDERED (NUMBER) LIST */

.ordered-list {
  --numSize: 1rem;
  --numberedColor: white;
  --numberedBgColor: var(--main-color);
  --dim: 2em;
  --padding: 1.2em;
  --connectLineColor: var(--connectedcolor, var(--numberedBgColor));
}

/*! CUSTOM RESPONSIVE TABLES */

.pct-table.table-5cols {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  justify-content: center;
  align-items: center;
  gap: 0.2rem;
}

.pct-table.table-5cols .header {
  background-color: var(--main-color);
  color: white;
  font-weight: bold;
}

.pct-table.table-5cols > * {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  height: 100%;
  background-color: white;
  text-align: center;
}

.pct-table-resp {
  --gap: 0.2rem;
  margin: var(--def-layout-x-padding) 0;
}

.pct-table-resp.table-5cols {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: var(--gap);
}

.pct-table-resp.table-5cols .row {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  justify-content: center;
  align-items: center;
  gap: var(--gap);
}

.pct-table-resp.table-5cols .row .data {
  display: flex;
  gap: var(--gap);
  height: 100%;
}

.pct-table-resp.table-5cols .row .data > * {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  height: 100%;
  background-color: white;
  text-align: center;
  margin-bottom: 0;
}

.pct-table-resp.table-5cols .row .data .header {
  background-color: var(--main-color);
  color: white;
  font-weight: bold;
  min-height: 10ch;
}

.pct-table-resp.table-5cols .row .data:first-of-type :not(.header) {
  background: #ffc9cd;
  font-weight: bold;
}

.pct-table-resp.table-5cols .row:not(:first-of-type) .header {
  display: none;
}

@media only screen and (max-width: 768px) {
  .pct-table-resp {
    --gap: 0.5rem
  }

  .pct-table-resp .row {
    grid-template-columns: 1fr !important;
  }

  .pct-table-resp .row:not(:last-of-type) {
    margin-bottom: 3rem;
  }

  .pct-table-resp .row .data {
    gap: 0 !important;
  }

  .pct-table-resp .row .data .header {
    min-height: unset !important;
  }

  .pct-table-resp .row .data:first-of-type :not(.header) {
    background: white !important;
  }

  .pct-table-resp .row:not(:first-of-type) .header {
    display: flex !important;
  }
}

.pct-list-b li {
  font-size: clamp(1.1rem, 5vw, 1.4rem);
}

/*! TILES + CONTAINERS */

.media-container {
  overflow: clip;
  border-radius: var(--def-border-radius);
  background-color: rgb(0 0 0 / 0.75);
  /* backdrop-filter: blur(3px); */
  display: grid;
}

/* place-content: center; */

/* aspect-ratio: 16/9; */

.media-container * {
  grid-area: 1 / 1;
  justify-self: center;
}

.media-container {
  box-shadow: var(--box-shadow-pop);
}

.media-container.video-trigger {
  cursor: pointer;
}

.media-container.video-trigger .has-play-ui {
  scale: 1;
  transition: scale 0.3s ease;
  z-index: 10;
}

.media-container.video-trigger .is-bg {
  z-index: 5;
}

.media-container.video-trigger:hover .has-play-ui {
  scale: 1.25;
}

/* &:has(.is-provider-vimeo) {
			.is-provider-vimeo {
				display: none !important;
			}
		} */

.media-container.video-trigger.is-active .is-bg,
			.media-container.video-trigger.is-active .has-play-ui {
  display: none;
}

.media-container .has-pulsing-dot {
  --dim: 80px;
  --padd: calc(var(--dim) * 0.3);
  --color: var(--highlight-color);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.media-container .has-pulsing-dot * {
  z-index: 5;
}

.media-container .has-pulsing-dot::before,
		.media-container .has-pulsing-dot::after {
  content: "";
  display: block;
  position: absolute;
  width: var(--dim);
  height: var(--dim);
  border-radius: 50%;
  background-color: var(--color);
}

.media-container .has-pulsing-dot::before {
  animation: ping-filled 2s ease-out infinite;
}

.media-container .has-pulsing-dot::after {
  animation: ping-filled 2s ease-out infinite 0.5s;
}

.media-container figure {
  /* display: unset !important; */
  position: relative;
  /* width: fit-content !important;
		height: fit-content !important; */
  justify-self: center;
  align-self: center;
}

.media-container figure.play-ui {
  /* --dim: 160px; */
  display: flex;
  width: var(--dim) !important;
  height: var(--dim) !important;
  background-color: var(--color);
  padding: var(--padd) !important;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
}

.media-container figure.play-ui svg {
  color: white;
  justify-self: center;
  align-self: center;
  /* width: calc(var(--dim) * 1);
				height: calc(var(--dim) * 1); */
  /* background-color: var(--main-color);
 */
}

.media-container figure.is-type-video {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  /* pointer-events: none; */
  display: block !important;
}

.media-container figure.is-type-video > * {
  width: 100%;
  height: 100%;
}

.media-container p {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

/*! HEADERS */

.header-tag {
  display: flex;
  width: -moz-fit-content !important;
  width: fit-content !important;
  /* margin-left: unset !important;
	margin-right: unset !important; */
  margin-bottom: 0.5ch !important;
  background-color: rgb(255 255 255 / 0.45);
  border-radius: var(--button-border-radius);
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 0.5ch 1.5ch;
  font-size: clamp(0.75rem, 2.5vw, 0.9rem);
}

.header-tag + h3 {
  padding-top: 0.3ch;
}

.header-tag.glassy {
  border: 1px solid rgba(255, 255, 255, 0.1);
  background-color: rgb(255 255 255 / 0.1) !important;
  color: white !important;
}

/*! PAGE HEADINGS */

.header-canvas {
  display: flex;
  height: 100%;
}

/* --paddV: calc(var(--def-layout-x-padding) * 0.75); */

/* .header-default-bg {
				background: #15212e;
			} */

#main > article header.entry-header .header-overlay {
  position: absolute;
  display: flex;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: var(--gradient-second-base);
}

#main > article header.entry-header h1 {
  text-shadow: none;
}

.char-grad .char {
  padding-bottom: 0.1ch;
  background-color: #cccccc;
  background-image: linear-gradient(180deg, #ffffff, #ffffff 50%, #ffffff00 67%);
  /* linear-gradient(45deg, #a163f1, #6363f1 22%, #3498ea 40%, #40dfa3 67%, rgba(64, 223, 163, 0)); */
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.slider-logos-container {
  margin-top: 6rem;
}

.slider-logos-container > p {
  text-align: center;
  margin-top: 0rem;
  /* font-size: 0.9rem !important; */
  /* opacity: 0.8;
		text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4); */
}

#destacados .os-window {
  max-width: 90%;
}

.header-marker {
  --height: 10px;
  --long-width: 36px;
  --med-width: 18px;
  width: -moz-fit-content !important;
  width: fit-content !important;
  padding-bottom: 0.7rem;
  display: flex;
  flex-flow: row;
  gap: calc(var(--height) * 0.5);
}

.header-marker > * {
  display: block;
  margin: 0 !important;
  margin: 0px !important;
  height: var(--height);
  background-color: var(--main-color);
}

.header-marker .marker-dot {
  width: var(--height) !important;
  border-radius: 0.75rem;
}

.header-marker .marker-dot-long {
  width: var(--long-width) !important;
  border-radius: 0.75rem;
}

.header-marker .marker-dot-med {
  width: var(--med-width) !important;
  border-radius: 0.75rem;
}

.destacados-grid {
  display: flex;
  gap: clamp(4rem, 16vw, 8rem);
}

@media (min-width: 640px) {
  .destacado-item .os-window {
    max-width: 100% !important;
  }
}

@media (min-width: 768px) {
  .destacado-item .os-window {
    max-width: 90% !important;
  }
}

@media (min-width: 1024px) {
  .destacado-item .os-window {
    max-width: 85% !important;
  }
}

@media only screen and (max-width: 1023px) {
  .destacado-item > *:has(.os-window) {
    order: 2
  }
}

[data-pin].pct-2cols {
  -moz-column-gap: calc(var(--card-padding) * 2) !important;
       column-gap: calc(var(--card-padding) * 2) !important;
}

.mmenu-footer .brand {
  color: white;
  filter: invert(1);
  display: flex;
  justify-content: center;
  margin-bottom: 1.5rem !important;
}

.mmenu-footer .brand img {
  width: 180px;
}

/*! COUNTER AUTOINCREMENT ANIMATION */

.figures-grid {
  gap: 6rem;
}

.counter-item .pct-counter {
  border-bottom-color: rgba(255, 255, 255, 0.3) !important;
  border-bottom-width: 2px !important;
}

.counter-item .pct-counter h2 {
  margin-left: unset !important;
  margin-right: unset !important;
  padding-bottom: 0;
  margin-bottom: 0.7ch !important;
  font-weight: 500 !important;
  font-size: clamp(4rem, 8vw, 5rem) !important;
}

.counter-item p {
  font-size: clamp(1.2rem, 3vw, 1.6rem) !important;
  font-family: var(--def-heading-font-family);
  margin-top: 1.5ch !important;
}

/*! EVENTS UI */

.no-monthly-events-message {
  display: none;
}

.events-ui {
  padding-top: 2rem !important;
}

.events-ui:has(.no-events-found-current-month) {
  display: none;
}

.events-ui:has(.no-events-found-current-month) + .no-monthly-events-message {
  display: flex;
}

.events-ui .step-number {
  background-color: var(--main-color);
}

.events-ui :has(> .step-number) {
  margin-bottom: calc(var(--def-layout-x-padding) * 0.5) !important;
}

/*! Eventos, ocultar categorías sin eventos */

.event .toggle-ui {
  display: none;
}

.event .toggle-ui label {
  pointer-events: none;
}

.events-container {
  /* display: grid;
	grid-template-columns: repeat(2, 1fr); */
  gap: 1rem;
  margin: 2rem 0;
}

.events-container .event-category {
  display: none;
}

.events-container .event-category:has(h3 + .description + .events-grid):not(:has(.category-empty)) {
  display: flex;
}

.events-container .event-category.category-1 {
  --cat-color: 0, 115, 180;
}

.events-container .event-category.category-2 {
  --cat-color: 69, 181, 134;
}

.events-container .event-category.category-3 {
  --cat-color: 253, 163, 78;
}

.events-container .event-category.category-4 {
  --cat-color: 231, 14, 79;
}

.events-container .event-category .description {
  font-size: 0.9rem;
  color: var(--submenu-text-description-color);
}

.events-container .events-grid {
  --grid-gap: 1rem;
  margin-top: 2rem;
  container-type: inline-size;
  container-name: events-grid;
}

/* display: grid;
		grid-template-columns: repeat(3, minmax(130px, 1fr)); */

.events-container .events-grid .container {
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  gap: var(--grid-gap);
}

.events-container .events-grid .event-item {
  flex-basis: calc(50% - var(--grid-gap) * 0.5);
  border-radius: calc(var(--card-border-radius) * 0.75);
  /* height: fit-content; */
  background-color: rgba(var(--cat-color), 0.1);
  border: 1px solid rgba(var(--cat-color), 0.3);
  cursor: pointer;
}

.events-container .events-grid .event-item .container {
  padding: 1rem;
  height: 100%;
}

.events-container .events-grid .event-item:hover {
  background-color: rgba(var(--cat-color), 0.2);
}

.events-container .events-grid .event-item .toggle-ui {
  display: flex;
}

.events-container .events-grid .event-item .toggle-ui .switcher:checked + label {
  background: rgba(var(--cat-color), 0.7);
}

.events-container .events-grid .event-item.expired {
  cursor: initial;
  pointer-events: none;
  opacity: 0.25;
}

.events-container .events-grid .event-item.expired .toggle-ui {
  display: none;
}

.events-container .events-grid .event-item.enrolled {
  background-color: rgba(var(--cat-color), 0.2);
}

@container events-grid (width < 460px) {
  .events-container .events-grid .event-item {
    flex-basis: 100%;
  }
}

.events-container .item-list.expired h3 {
  color: red;
}

.events-container .event {
  display: flex;
  width: 100%;
}

.events-container .event header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.events-container .event .day-number {
  margin-bottom: 0 !important;
}

.events-container .event .day-wn-hour {
  font-size: 0.8rem;
  font-family: var(--def-heading-font-family);
  font-weight: 600;
}

.events-container .event .event-name {
  display: flex;
  font-size: 0.85rem;
  background-color: rgb(0 0 0 / 0.15);
  padding: 0.75rem;
  border-radius: 6px;
  margin-top: auto;
}

.events-container .day-of-week {
  text-transform: capitalize;
}

.step-instruction {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1ch;
  text-align: left;
  line-height: 1.2;
}

.step-instruction .step-number {
  align-self: flex-start;
}

.book-event-form {
  max-width: 600px !important;
}

.book-event-form .wpcf7 {
  padding-top: 0;
}

.book-event-form .wpcf7 .pct-form-pasti .wpcf7-form-control-wrap:first-of-type {
  margin-top: 0 !important;
}

.book-event-form .wpcf7 .pct-form-pasti .confirm-enrolled {
  margin-top: 1rem;
}

/* margin-bottom: 2rem; */

.book-event-form .wpcf7 .pct-form-pasti .confirm-enrolled .enrolled-ui > .container,
				.book-event-form .wpcf7 .pct-form-pasti .confirm-enrolled .no-events-selected-msg {
  margin-top: 0.75rem;
  border-radius: var(--form-field-border-radius);
  background-color: rgb(255 255 255 / 0.05);
  padding: calc(var(--card-padding) * 0.5);
}

.book-event-form .wpcf7 .pct-form-pasti .legal-content {
  margin-top: 1.5rem;
}

.book-event-form .wpcf7 label {
  color: white;
}

.enrolled-ui {
  container-type: inline-size;
  container-name: enrolled-grid;
  margin-top: 0.75rem;
}

.enrolled-ui .container {
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.enrolled-ui .container .event-item {
  flex-basis: 100%;
  border-radius: var(--form-field-border-radius);
  background-color: rgb(0 0 0 / 0.15);
  /* padding: calc(var(--card-padding) * 0.25) calc(var(--card-padding) * 0.5); */
  border-radius: calc(var(--form-field-border-radius) * 0.5);
}

.enrolled-ui .container .event-item .event {
  display: grid;
  grid-template-columns: auto 1fr;
}

/* gap: 1ch; */

.enrolled-ui .container .event-item .event > * {
  display: flex;
  align-items: center;
}

.enrolled-ui .container .event-item .event header {
  padding: calc(var(--card-padding) * 0.25) calc(var(--card-padding) * 0.5);
  justify-content: center;
  background-color: rgb(0 0 0 / 0.15);
  min-width: 95px;
}

.enrolled-ui .container .event-item .event h4,
				.enrolled-ui .container .event-item .event p {
  font-size: 0.8rem;
  margin-bottom: 0 !important;
}

.enrolled-ui .container .event-item .event .day-wn-hour {
  display: none;
}

.enrolled-ui .container .event-item .event .event-name {
  padding: calc(var(--card-padding) * 0.38) calc(var(--card-padding) * 0.25);
}

.enrolled-ui .container {
  margin-top: 0px !important;
}

.enrolled-ui .container:empty {
  display: none;
}

@container enrolled-grid (width < 460px) {
  .enrolled-ui .event-item {
    flex-basis: 100%;
  }
}

.no-events-selected-msg p {
  font-size: 1rem;
}

/*! TESTIMONIALS SLIDER */

[data-testimonials] .splide__slide {
  --bg-color: 10, 70, 90;
  --txt-color: 255, 255, 255;
  padding: var(--card-padding);
  border: 1px solid rgba(var(--bg-color), 1);
  border-radius: var(--card-border-radius);
  /* background: rgba(var(--bg-color), 0.3); */
  box-shadow:
			5px 5px 20px rgba(var(--bg-color), 0.05),
			5px 5px 20px rgba(var(--bg-color), 0.2);
}

[data-testimonials] .splide__slide h2,
		[data-testimonials] .splide__slide h3,
		[data-testimonials] .splide__slide h4 {
  padding-top: 0;
}

@media only screen and (max-width: 520px) {
  [data-testimonials] .splide__slide h2,
			[data-testimonials] .splide__slide h3,
			[data-testimonials] .splide__slide h4 {
    font-size: clamp(1.2rem, 3vw, 1.6rem);
  }

  [data-testimonials] .splide__slide p {
    font-size: clamp(0.88rem, 3vw, 1rem);
  }

  [data-testimonials] .splide__slide p.bigger {
    font-size: clamp(0.98rem, 3vw, 1.2rem);
  }
}

/* .marquee:first-of-type {
	margin-top: 2rem;
} */

.marquee-slide figure img {
  filter: brightness(0) saturate(100%) invert(31%) sepia(82%) saturate(626%) hue-rotate(180deg) brightness(75%) contrast(97%);
}

body.home:has(.intro-mask) .main-nav-desktop {
  transition: all 0.3s ease;
  opacity: 0;
  pointer-events: none;
  /* .lang-switcher {
			display: none;
		} */
}

.slider .intro-mask {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  position: absolute;
  width: 100%;
  height: auto;
  inset: 0;
  margin: 0 !important;
  padding: 0;
  left: 50%;
  translate: -50% 0;
  overflow: hidden;
  max-width: unset !important;
  mix-blend-mode: lighten;
  z-index: 99999;
  pointer-events: none;
}

.slider .intro-mask .masked-card {
  display: flex;
  justify-content: center;
  background-color: rgba(255, 255, 255, 1);
  width: 100vw;
  max-width: unset;
  height: 100%;
  scale: 1;
  will-change: auto;
  /* transform-origin: left center; */
  transform-origin: top left;
  margin-left: unset !important;
  margin-right: unset !important;
}

.slider .intro-mask .masked-card h1 {
  font-family: var(--txt-slider-heading);
  font-weight: 600;
}

.slider .intro-mask .masked-card .content .description {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}

.slider .intro-mask .masked-card .content .description > * {
  overflow: hidden;
}

.slider .intro-mask .masked-card .content .description.show {
  grid-template-rows: 1fr;
}

.slider .intro-mask .masked-card.anim-finished {
  transition: all 0.6s ease;
  background-color: rgb(from white r g b / 3%) !important;
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
}

@media only screen and (max-width: 768px) {
  .slider .intro-mask .masked-card.anim-finished {
    background-color: transparent !important;
    -webkit-backdrop-filter: none;
            backdrop-filter: none
  }
}

.slider .intro-mask .masked-card.anim-finished h1 {
  color: white !important;
}

.slider .intro-mask:has(.anim-finished) {
  mix-blend-mode: unset;
}

.slider .intro-mask h1 {
  text-align: center;
  font-size: clamp(1.8rem, 15vw, 14rem);
  color: black !important;
  line-height: 2ch;
  padding: 1ch;
  font-weight: bold !important;
  width: -moz-fit-content;
  width: fit-content;
}

.slider > *:has(.scene) {
  pointer-events: none;
}

.slider .slider-content {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  width: 100vw !important;
  height: auto !important;
  max-width: unset;
  /* background: red; */
  padding: 2rem;
  /* @media only screen and (max-width: 1023px) {
			transform: translate(0, 0) !important;
			opacity: 1 !important;
			width: 100vw !important;
			height: 100svh !important;
			justify-content: flex-end;
			padding-bottom: 4rem;
		} */
  /* padding-top: 0; */
}

@media only screen and (min-width: 769px) {
  .slider .slider-content {
    width: auto !important;
    padding-left: 0;
    padding-right: 4rem
  }
}

.slider h2 {
  font-size: clamp(2.2rem, 8vw, 2.8rem) !important;
  line-height: 1.8ch;
}

body.home .slider h2 {
  font-weight: 600;
}

/*! SPECIFIC CPT GRID FOR HOME PAGE */

.cards-grid .card-item .card > * figure img {
  scale: 1;
  will-change: auto;
  transition: scale 0.6s cubic-bezier(0.2, 1, 0.3, 1);
}

.cards-grid .card-item:hover .card > * figure img {
  scale: 1.1;
}

/*! SECTION HEADER ON 2 COLS */

.header-2cols {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--card-padding);
  row-gap: calc(var(--card-padding) * 3);
}

@media (min-width: 768px) {
  .header-2cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.header-2cols > * {
  width: 100% !important;
}

.card-navigation {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  row-gap: 2ch;
  /* flex-flow: row nowrap; */
  align-items: center;
  padding-top: 1rem;
}

.card-navigation .wp-block-buttons {
  /* width: unset !important; */
  /* flex-shrink: 0; */
  margin-left: 0 !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
}

.card-navigation > *:last-child {
  margin-right: 0 !important;
}

[id*="arrows-slider"] {
  display: flex;
  flex-flow: row nowrap;
  gap: 1rem;
  width: -moz-fit-content !important;
  width: fit-content !important;
  margin-right: 1rem !important;
}

[data-testimonials].slider-soluciones .splide__slide {
  --bg-color: var(--bg-color-theme-custom);
  /* background: var(--bg-color); */
  /* background: color-mix(in srgb, var(--bg-color), white 55%); */
  border: 1px solid rgba(0, 0, 0, 0.1) !important;
  /* min-height: 466px; */
  /* max-width: 420px !important; */
  /* @apply shadow-lg bg-white/50; */
  /* background-color: white; */
}

a:has(.slider-card-icon) {
  padding: 0 !important;
}

a:has(.slider-card-icon) .slider-card-icon > div {
  transition: all 1s cubic-bezier(0.2, 1, 0.3, 1);
}

a:has(.slider-card-icon):hover .slider-card-icon > div {
  background: color-mix(in srgb, var(--bg-color), white 100%) !important;
  /* background: color-mix(in srgb, var(--bg-color), red 100%) !important; */
}

.slider-card-icon {
  --icon-dim: 2.15rem;
  padding: calc(var(--card-padding) * 0.66) !important;
}

.slider-card-icon > div {
  height: 100%;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}

.slider-card-icon > div > *:has(+ .cta-arrow) {
  margin-bottom: 2rem !important;
}

.slider-card-icon .header {
  display: grid;
  /* grid-template-columns: repeat(2, 1fr); */
  grid-template-columns: auto min-content;
  align-items: flex-start;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  margin-bottom: 0.6rem;
}

.slider-card-icon .header h3,
		.slider-card-icon .header h4 {
  align-self: center;
  margin-bottom: 0 !important;
}

.slider-card-icon .header .icon {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  color: var(--heading-color-theme-custom);
}

.slider-card-icon .header .icon svg {
  width: var(--icon-dim);
  height: var(--icon-dim);
}

.slider-card-icon .header .icon svg * {
  stroke-width: 10px;
}

.slider-card-icon h3 {
  font-size: clamp(1.75rem, 1.678rem + 0.36vw, 2rem);
}

.slider-card-icon .cta-arrow {
  margin-right: 0 !important;
  margin-top: auto !important;
}

body.single-solucion .landing-slider {
  row-gap: 4rem;
}

body.single-solucion [data-webgldots] {
  padding-bottom: 4rem;
}

#tech-list .icon-card-pinned {
  /* .ms-icons {
			display: flex;
			flex-flow: row wrap;
			gap: calc(var(--card-padding) * 0.5);
		} */
}

#tech-list .icon-card-pinned figure {
  --icon-size: clamp(2rem, 5vw, 2.6rem);
  --icon-padding: calc(var(--icon-size) * 0.5);
  background: white;
  border-color: var(--card-border-color);
  border-width: 1px;
  margin-bottom: 0 !important;
}

#tech-list .icon-card-pinned figure.bordered {
  --border-padding: 0.4rem;
  /* background-color: transparent !important; */
  padding: var(--border-padding);
  background-color: rgb(from var(--card-background) r g b / 25%);
  -webkit-backdrop-filter: blur(1.5px);
          backdrop-filter: blur(1.5px);
}

#tech-list .icon-card-pinned figure.bordered > * {
  /* padding: var(--card-padding); */
  padding: var(--icon-padding);
  width: calc(var(--icon-size) * 2);
  height: calc(var(--icon-size) * 2);
  background: var(--card-background, white);
  border-radius: calc(max(var(--card-border-radius) - var(--border-padding), 0.25rem));
  border: var(--card-border-width) solid var(--card-border-color);
}

#tech-list .icon-card-pinned h3 {
  margin-top: calc(var(--card-padding) * 0.5) !important;
}

.ms-icons {
  display: flex;
  flex-flow: row wrap;
  gap: calc(var(--card-padding) * 0.5);
}

.ms-icons > * {
  width: -moz-fit-content !important;
  width: fit-content !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.ms-icon-text-inline {
  --dim: 2rem;
  display: grid;
  grid-template-columns: min-content 1fr;
  gap: 2ch;
  margin-top: 1rem;
}

.ms-icon-text-inline figure {
  padding: 0.5rem;
  height: -moz-fit-content !important;
  height: fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
}

.ms-icon-text-inline figure img,
		.ms-icon-text-inline figure svg {
  width: var(--dim) !important;
  height: var(--dim) !important;
}

figure.bordered {
  --border-radius: var(--card-border-radius);
  --border-padding: 0.4rem;
  /* --border-radius: calc(var(--card-border-radius) - var(--border-padding)); */
  /* background-color: transparent !important; */
  padding: var(--border-padding);
  border-radius: var(--border-radius);
  background-color: rgb(from var(--card-background) r g b / 25%);
  -webkit-backdrop-filter: blur(1.5px);
          backdrop-filter: blur(1.5px);
}

figure.bordered > * {
  /* padding: var(--card-padding); */
  padding: var(--icon-padding);
  width: calc(var(--icon-size) * 2);
  height: calc(var(--icon-size) * 2);
  background: var(--card-background, white);
  border-radius: calc(max(var(--card-border-radius) - var(--border-padding), 0.25rem));
  border: var(--card-border-width) solid var(--card-border-color);
}

.price-table .icon {
  --icon-size: 2.2rem;
  --icon-padding: calc(var(--icon-size) * 0.25);
  color: rgba(var(--brand-color-rgb), 1);
  align-self: flex-start;
}

/* width: fit-content !important;
		aspect-ratio: 1 / 1; */

.price-table .icon > svg,
		.price-table .icon img {
  width: calc(var(--icon-size) + var(--icon-padding) * 2);
  height: calc(var(--icon-size) + var(--icon-padding) * 2);
  padding: var(--icon-padding);
  background-color: rgb(from var(--card-background) r g b / 100%);
  border-radius: 8px;
  border: 1px solid var(--card-border-color);
}

.price-table .icon > svg *, .price-table .icon img * {
  stroke-width: 10;
}

.price-table .header-icon {
  container-type: inline-size;
  container-name: header-icon;
}

.price-table .header-icon > * {
  display: grid;
  grid-template-columns: auto min-content;
  align-items: center;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  margin-bottom: 0.6rem;
}

@container header-icon (width < 295px) {
  .price-table .header-icon > * {
    grid-template-columns: 1fr;
    row-gap: 0.5rem;
  }

  .price-table .header-icon > * figure {
    order: -1;
  }
}

.price-table .icon + h3 {
  margin-top: 1ch !important;
  padding-bottom: 1ch !important;
  margin-bottom: 0 !important;
}

.price-table ul {
  padding-left: calc(2ch + 0.5rem) !important;
  row-gap: 2ch !important;
}

.price-table.ordered-num {
  --row-gap: var(--column-gap);
}

.price-table.ordered-num .card {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.price-table.ordered-num .card > * {
  padding: 0 !important;
}

.price-table.ordered-num .card > * > * {
  padding: var(--card-padding) !important;
}

.price-table.ordered-num .counter {
  --dim: 2.2rem;
  --padd: calc(var(--dim) * 0.5);
  border: 1px solid var(--card-border-color);
  border-radius: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: var(--dim);
  height: var(--dim);
  padding: var(--padd);
  font-weight: 600;
  font-size: 1.1rem;
  background: var(--main-color);
  color: white !important;
}

.price-table.ordered-num .header-icon {
  flex-grow: 1;
}

.price-table.ordered-num .meta-content {
  background-color: rgb(147 197 253 / 0.15);
  padding: calc(var(--card-padding) * 0.5);
  border-radius: calc(var(--card-border-radius) * 0.5);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.price-table.ordered-num h3 {
  font-size: clamp(1.2rem, 3vw, 1.5rem) !important;
}

/*! CUSTOM LOGOS GRID (no filter) */

.logos-grid {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  gap: 2rem !important;
}

.logos-grid figure {
  /* background-color: transparent !important; */
  background-color: white !important;
}

.logos-grid figure img {
  filter: brightness(0) saturate(100%) invert(31%) sepia(82%) saturate(626%) hue-rotate(180deg) brightness(95%) contrast(97%);
  opacity: 1;
}

[data-marquee] .item img {
  height: 40px;
}

/*! SPECIAL CASES: REMOVE FOR THEME BASE  */

body.home h2.wp-block-heading + .blog-section {
  padding-top: calc(var(--default-section-vert-padding) * 0.5);
}

/*! CASOS ÉXITO */

/* CASOS ÉXITO archive page */

.casos-exito .casos-exito-grid {
  display: flex;
  flex-flow: column;
  row-gap: calc(var(--card-padding) * 2);
}

.casos-exito .casos-exito-grid .caso-exito-item figure {
  border-radius: var(--def-border-radius);
  overflow: clip;
}

.casos-exito .casos-exito-grid .caso-exito-item figure img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* CASOS ÉXITO single page */

body.single-caso-exito .caso-exito-item .no-video-img {
  margin-top: var(--card-padding) !important;
}

body.single-caso-exito .caso-exito-item .no-video-img img {
  width: 100%;
  border-radius: var(--def-border-radius);
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 16/9;
  -o-object-position: center;
     object-position: center;
}

body.single-caso-exito .caso-exito-item .media {
  margin-top: var(--card-padding) !important;
}

body.single-caso-exito .caso-exito-item .company-description {
  margin-bottom: calc(var(--def-layout-x-padding) * 0.5);
}

card.company {
  display: flex;
  background: rgba(0, 0, 0, 0.33);
  /* margin: calc(var(--def-layout-x-padding) * 1) 0; */
  margin: var(--card-padding) 0;
  padding: var(--card-padding);
}

card.company > * {
  width: 100%;
  container-name: kpis-grid;
  container-type: inline-size;
}

card.company .company-logo {
  display: flex;
  justify-content: center;
  filter: brightness(0) saturate(100%) invert(31%) sepia(82%) saturate(626%) hue-rotate(180deg) brightness(95%) contrast(97%);
}

card.company .caso-exito-kpis {
  /* display: grid;
		grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); */
  display: flex;
  flex-flow: column;
  row-gap: 1rem;
  margin-top: 2rem;
}

card.company .caso-exito-kpis .kpi {
  --padd: 1rem;
  border-radius: 4px;
  overflow: clip;
  display: flex;
  flex-flow: row nowrap;
  border: 1px solid var(--card-border-color);
}

card.company .caso-exito-kpis .kpi > * {
  padding: var(--padd);
}

card.company .caso-exito-kpis .kpi svg {
  width: 30px;
  height: 30px;
  flex-shrink: 0;
  color: var(--heading-color-theme-light);
}

card.company .caso-exito-kpis .kpi h3 {
  font-size: clamp(1.1rem, 4vw, 1.3rem);
  margin-bottom: 0 !important;
}

card.company .caso-exito-kpis .kpi .header {
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  background-color: rgb(51 65 85 / 0.1);
  /* border-radius: 4px; */
}

card.company .caso-exito-kpis .kpi .header > * {
  margin: 0 !important;
}

card.company .caso-exito-kpis .kpi .header {
  min-width: 187px;
}

card.company .caso-exito-kpis .kpi .kpi-description {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  background-color: rgb(148 163 184 / 0.05);
}

card.company .caso-exito-kpis .kpi .kpi-description > * {
  text-align: center;
}

card.company .caso-exito-kpis .kpi .kpi-description p {
  margin: 0 !important;
}

@container kpis-grid (width <= 540px) {
  card.company .caso-exito-kpis {
    row-gap: 2rem;
  }

  card.company .caso-exito-kpis .kpi {
    flex-flow: column;
  }
}

.caso-exito-keys li {
  font-size: 1.15em;
}

.testimonial {
  /* padding: var(--card-padding); */
  margin-top: var(--card-padding);
  padding-bottom: 2rem;
}

.testimonial quote {
  display: block;
  background-color: rgb(255 255 255 / 0.75);
  padding: var(--card-padding);
  border-radius: var(--def-border-radius);
}

.testimonial quote p,
		.testimonial quote::before,
		.testimonial quote::after {
  font-size: clamp(1.1em, 2vw, 1.6em);
  font-weight: 200;
  font-style: italic;
  display: inline;
}

.testimonial quote::before {
  content: '"';
}

.testimonial quote::after {
  content: '"';
}

.testimonial .signature {
  padding: 1rem 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 2ex;
}

.testimonial .signature > span {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.2em;
  color: rgb(0 0 0 / 0.5);
}

.testimonial .signature > span:is(.dark *) {
  color: rgb(255 255 255 / 0.5);
}

.testimonial .signature > span:last-of-type {
  border-radius: 6px;
  background-color: rgb(51 65 85 / 0.05);
  padding-left: 1ex;
  padding-right: 1ex;
  padding-top: 0.5ex;
  padding-bottom: 0.5ex;
}

.trusted-on-us {
  border-radius: var(--card-border-radius);
  background-color: rgb(30 41 59 / 0.5);
  padding: var(--card-padding);
}

/* @apply pt-0 md:pt-[var(--card-padding)]; */

.trusted-on-us h2,
	.trusted-on-us h3 {
  padding-top: 0;
  text-align: center;
  padding-bottom: clamp(1.4rem, 4vw, 1.8rem);
}

.event-tecnologies {
  border-radius: var(--card-border-radius);
  background-color: rgb(30 41 59 / 0.5) !important;
  padding: var(--card-padding);
}

/* @apply pt-0 md:pt-[var(--card-padding)]; */

.event-tecnologies h2,
	.event-tecnologies h3 {
  padding-top: 0;
  text-align: center;
  padding-bottom: clamp(1.4rem, 4vw, 1.8rem);
}

.event-tecnologies .event-tech-logos {
  display: flex;
  row-gap: 2rem;
  justify-content: center;
  align-items: center;
}

.event-tecnologies .event-tech-logos figure {
  display: flex;
  justify-content: center;
}

.logos-rows {
  display: flex;
  flex-flow: column;
  gap: 2rem;
}

.logos-rows > * {
  border-radius: var(--card-border-radius);
  background-color: rgb(255 255 255 / 0.05);
  padding: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.logos-rows > * img,
		.logos-rows > * svg {
  width: auto;
  height: 60px;
  -o-object-fit: contain;
     object-fit: contain;
}

.contact-card .logo-brand {
  max-width: 320px !important;
  margin: 0 !important;
}

.contact-card .contact-info {
  border-radius: var(--card-border-radius);
  border-width: 1px;
  border-color: rgb(148 163 184 / 0.2);
  background-color: rgb(148 163 184 / 0.05);
  padding: var(--card-padding);
}

.card:has(.hero-image) > * .hero-image.contact-card .contact-info > * {
  border: var(--card-border-width) solid var(--card-border-color);
}

.contact-card .contact-info > * {
  font-size: clamp(1rem, 1vw, 1.2rem);
}

.has-webgl.webgl-dots-left-top:has(.media-container) .webgl-dots {
  translate: 0% -33%;
}

/* Eventos, grid ponentes */

.grid-ponentes {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 1rem;
}

/*! Home Events Card */

.home-event-list {
  display: flex;
  flex-flow: column;
  gap: var(--card-padding);
  align-items: center;
}

.next-event-card {
  display: flex !important;
  flex-flow: row nowrap;
  max-width: 1076px;
}

/* row-gap: var(--card-padding); */

@media only screen and (max-width: 800px) {
  .next-event-card {
    flex-flow: column nowrap;
    max-width: 500px
  }

  .next-event-card .description {
    padding: var(--card-padding) !important;
  }
}

.next-event-card {
  border-radius: var(--card-border-radius);
  overflow: clip;
  background-color: rgb(147 197 253 / 0.1);
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

/* border: 1px solid var(--ui-color); */

/* gap: calc(var(--card-padding) * 0.5); */

.next-event-card * {
  display: flex;
  width: -moz-fit-content !important;
  width: fit-content !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.next-event-card .event-thumb {
  aspect-ratio: 1/1;
}

.next-event-card .hero-img figure {
  width: auto;
  height: 100%;
  aspect-ratio: 1/1;
  max-width: 780px;
}

.next-event-card .description {
  padding: calc(var(--card-padding) * 0.5) var(--card-padding);
}

.next-event-card .description h2,
		.next-event-card .description h3 {
  padding-top: 0;
}

.next-event-card .event-link {
  padding-bottom: 0 !important;
}

body.single-ebook .ebook-cover figure {
  border-radius: var(--def-border-radius);
  overflow: clip;
}

body.single-ebook .ebook-cover figure img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

body.single-ebook #lead-from {
  height: -moz-fit-content;
  height: fit-content;
}

.above-header.header-tag {
  font-size: 1.2em;
}

/* .above-header:not(:has(figure)) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	text-transform: uppercase;

	border: 1px solid white;

	@apply rounded-[999px] px-[1.3rem] py-[6px] border-white text-white mb-2;
} */

/*! Styles for chatbot plugin AI Engine by Meow */

.mwai-timer {
  font-size: 1rem !important;
  margin-right: 0 !important;
}

#mwai-chatbot-default {
  display: none !important;
}

.mwai-window-box .mwai-body {
  overscroll-behavior: contain;
  touch-action: pan-y;
  scrollbar-width: thin;
  max-height: calc(100vh - 160px);
  /* Puedes ajustar */
}

/**
 * Swiper 11.1.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 30, 2024
 */

@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
}

:root{
  --swiper-theme-color:#007aff
}

: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;
  z-index:1;
  display:block
}

.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{
  flex-shrink:0;
  width:100%;
  height:100%;
  position:relative;
  transition-property:transform;
  display:block
}

.swiper-slide-invisible-blank{
  visibility:hidden
}

.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
}

.swiper-3d.swiper-css-mode .swiper-wrapper{
  perspective:1200px
}

.swiper-3d .swiper-wrapper{
  transform-style:preserve-3d
}

.swiper-3d{
  perspective:1200px
}

.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{
  transform-style:preserve-3d
}

.swiper-css-mode>.swiper-wrapper{
  overflow:auto;
  scrollbar-width:none;
  -ms-overflow-style:none
}

.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)
}

.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  pointer-events:none;
  z-index:10
}

.swiper-3d .swiper-slide-shadow{
  background:rgba(0,0,0,.15)
}

.swiper-3d .swiper-slide-shadow-left{
  background-image:linear-gradient(to left,rgba(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,.5),rgba(0,0,0,0))
}

.swiper-3d .swiper-slide-shadow-top{
  background-image:linear-gradient(to top,rgba(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,.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-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .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)
  }
}

.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-button-next,.swiper-button-prev{
  position:absolute;
  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.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{
  opacity:.35;
  cursor:auto;
  pointer-events:none
}

.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{
  opacity:0;
  cursor:auto;
  pointer-events:none
}

.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{
  display:none!important
}

.swiper-button-next svg,.swiper-button-prev svg{
  width:100%;
  height:100%;
  -o-object-fit:contain;
     object-fit:contain;
  transform-origin:center
}

.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev 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
}

.swiper-button-next:after,.swiper-button-prev:after{
  font-family:swiper-icons;
  font-size:var(--swiper-navigation-size);
  text-transform:none!important;
  letter-spacing:0;
  font-variant:initial;
  line-height:1
}

.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'
}

.swiper-pagination{
  position:absolute;
  text-align:center;
  transition:.3s opacity;
  transform:translate3d(0,0,0);
  z-index:10
}

.swiper-pagination.swiper-pagination-hidden{
  opacity:0
}

.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{
  display:none!important
}

.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{
  bottom:var(--swiper-pagination-bottom,8px);
  top:var(--swiper-pagination-top,auto);
  left:0;
  width:100%
}

.swiper-pagination-bullets-dynamic{
  overflow:hidden;
  font-size:0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
  transform:scale(.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(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{
  transform:scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{
  transform:scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{
  transform:scale(.33)
}

.swiper-pagination-bullet{
  width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));
  height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));
  display:inline-block;
  border-radius:var(--swiper-pagination-bullet-border-radius,50%);
  background:var(--swiper-pagination-bullet-inactive-color,#000);
  opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)
}

button.swiper-pagination-bullet{
  border:none;
  margin:0;
  padding:0;
  box-shadow:none;
  -webkit-appearance:none;
  -moz-appearance: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);
  background:var(--swiper-pagination-color,var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{
  right:var(--swiper-pagination-right,8px);
  left:var(--swiper-pagination-left,auto);
  top:50%;
  transform:translate3d(0px,-50%,0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{
  margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;
  display:block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{
  top:50%;
  transform:translateY(-50%);
  width:8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
  display:inline-block;
  transition:.2s transform,.2s 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:.2s transform,.2s left
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
  transition:.2s transform,.2s right
}

.swiper-pagination-fraction{
  color:var(--swiper-pagination-fraction-color,inherit)
}

.swiper-pagination-progressbar{
  background:var(--swiper-pagination-progressbar-bg-color,rgba(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-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{
  width:100%;
  height:var(--swiper-pagination-progressbar-size,4px);
  left:0;
  top:0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{
  width:var(--swiper-pagination-progressbar-size,4px);
  height:100%;
  left:0;
  top:0
}

.swiper-pagination-lock{
  display:none
}

.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,.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-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{
  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,.5));
  border-radius:var(--swiper-scrollbar-border-radius,10px);
  left:0;
  top:0
}

.swiper-scrollbar-cursor-drag{
  cursor:move
}

.swiper-scrollbar-lock{
  display:none
}

.swiper-zoom-container{
  width:100%;
  height:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center
}

.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{
  max-width:100%;
  max-height:100%;
  -o-object-fit:contain;
     object-fit:contain
}

.swiper-slide-zoomed{
  cursor:move;
  touch-action:none
}

.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-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:.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
}

.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,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top{
  z-index:0;
  backface-visibility:hidden
}

.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
}

.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,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top{
  z-index:0;
  backface-visibility:hidden
}

.swiper-creative .swiper-slide{
  backface-visibility:hidden;
  overflow:hidden;
  transition-property:transform,opacity,height
}

.swiper-cards{
  overflow:visible
}

.swiper-cards .swiper-slide{
  transform-origin:center bottom;
  backface-visibility:hidden;
  overflow:hidden
}

:root {
  --main-color: #05a6f0;
  --main-color-rgb: 5, 166, 240;
  --brand-color-rgb: 49, 93, 158;
  --main-color: #0077d3;
  /* --main-color: rgba(0, 255, 218, 1); */
  /* --cta-color: rgba(0, 255, 218, 1); */
  --cta-color: #f60395;
  --highlight-color: #f60395;
  /* --txt-color: #343434; */
  --txt-color: #343434;
  --txt-color-theme-light: var(--txt-color);
  --txt-color-theme-dark: white;
  --txt-color-theme-custom: var(--txt-color);
  /* --link-color: var(--main-color); */
  /* --link-color: var(--cta-color);
	--link-underline-color: var(--cta-color); */
  --link-color: var(--main-color);
  --link-underline-color: var(--main-color);
  /* --heading-color: #293846; */
  --heading-color: #025a9d;
  --heading-color-theme-light: #025a9d;
  --heading-color-theme-dark: white;
  --heading-color-theme-custom: var(--heading-color);
  --bg-color-theme-light: #f7f7f7;
  --bg-color-theme-dark: rgb(11, 65, 110);
  --bg-color-theme-dark: linear-gradient(174deg, rgb(10, 49, 81) 50%, rgb(30, 65, 103) 100%);
  --bg-gradient-theme-dark: linear-gradient(174deg, rgba(21, 33, 46, 1) 0%, rgb(17, 32, 48) 100%);
  --bg-gradient-theme-dark: linear-gradient(174deg, rgba(21, 33, 46, 1) 0%, rgb(30, 65, 103) 100%);
  --bg-color-theme-custom: #e2e6eb;
  --icon-gradient-1: linear-gradient(174deg, rgba(252, 117, 36, 1) 0%, rgba(252, 211, 36, 1) 100%);
  --icon-gradient-2: linear-gradient(174deg, rgba(255, 0, 54, 1) 0%, rgba(255, 0, 209, 1) 100%);
  --icon-gradient-3: linear-gradient(174deg, rgba(0, 67, 255, 1) 0%, rgba(0, 191, 255, 1) 100%);
  --icon-gradient-4: linear-gradient(174deg, rgba(0, 159, 12, 1) 0%, rgba(0, 247, 255, 1) 100%);
  --icon-gradient-5: linear-gradient(174deg, rgba(1, 251, 255, 1) 0%, rgba(224, 1, 255, 1) 100%);
  --icon-gradient-6: linear-gradient(174deg, rgba(106, 255, 1, 1) 0%, rgba(255, 233, 1, 1) 100%);
}

h1,
h2,
h3,
h4 {
  color: var(--heading-color);
}

figure figcaption {
  font-size: 0.8em;
}

/*! THEME COLOR LIGHT */

.theme-color-light {
  --border-color: var(--heading-color-theme-light);
  --border-color-dark: var(--heading-color-theme-light-dark);
  /* .card {
		background-color: white;
	} */
}

.theme-color-light:is(.pct-card, section) {
  background: var(--bg-color-theme-light);
}

.theme-color-light p,
	.theme-color-light ul {
  color: var(--txt-color-theme-light);
}

/* &:has([class*="theme-color-"]) {
		color: var(--txt-color-theme-light);
	} */

.theme-color-light h1,
	.theme-color-light h2,
	.theme-color-light h3,
	.theme-color-light h4 {
  color: var(--heading-color-theme-light);
}

.theme-color-light .card:not(.transparent) {
  --card-background: rgba(255, 255, 255, 1);
}

.theme-color-light .card-icon p {
  color: rgb(255 255 255 / 0.7);
}

.theme-color-light figure figcaption {
  color: rgb(255 255 255 / 0.4);
}

.theme-color-light .wpcf7 span.wpcf7-not-valid-tip::after,
	.theme-color-light .wpcf7-response-output::after {
  filter: none;
}

.theme-color-light .header-tag {
  background: var(--main-color);
  color: white;
  /* border-color: rgba(255, 255, 255, 1); */
}

/*! THEME COLOR DARK */

.theme-color-dark {
  --border-color: var(--heading-color-theme-dark);
  --link-color: var(--main-color);
}

.theme-color-dark:is(.pct-card, section) {
  background: var(--bg-color-theme-dark);
}

.theme-color-dark .header-default-bg {
  background-image: var(--bg-gradient-theme-dark) !important;
  background-color: var(--bg-color-theme-dark) !important;
}

.theme-color-dark h1,
	.theme-color-dark h2,
	.theme-color-dark h3,
	.theme-color-dark h4 {
  color: var(--heading-color-theme-dark);
}

.theme-color-dark h1:is(.dark *),
	.theme-color-dark h2:is(.dark *),
	.theme-color-dark h3:is(.dark *),
	.theme-color-dark h4:is(.dark *) {
  color: var(--heading-color-theme-dark);
}

.theme-color-dark p,
	.theme-color-dark ul {
  color: var(--txt-color-theme-dark);
}

.theme-color-dark p li::before, .theme-color-dark ul li::before {
  opacity: 0.3;
}

.theme-color-dark .wp-element-button,
	.theme-color-dark .menu-bt a,
	.theme-color-dark button#submit {
  --bg-color: var(--main-color);
  --bg-color-hover: var(--highlight-color);
  --bg-color-outline: transparent;
  --button-txt-color: white;
  --button-txt-color-hover: white;
}

.theme-color-dark .wpcf7 span.wpcf7-not-valid-tip::after,
	.theme-color-dark .wpcf7-response-output::after {
  filter: var(--form-error-validation-icon-filter);
}

.theme-color-dark .header-tag {
  background: white;
  color: var(--main-color);
  /* border-color: rgba(255, 255, 255, 1); */
}

.theme-color-dark .card:not(.transparent) {
  --card-border-color: rgba(255, 255, 255, 0.1);
  --card-background: rgba(255, 255, 255, 0.0005);
}

.theme-color-dark .card:not(.transparent).bordered {
  background: rgb(from var(--card-background) r g b / 0.05);
}

.theme-color-dark .card:not(.transparent).bordered > * {
  background: rgb(from var(--card-background) r g b / 0.1);
}

/*! THEME COLOR CUSTOM */

.theme-color-custom {
  --border-color: var(--heading-color-theme-custom);
  --link-color: var(--main-color);
}

.theme-color-custom:is(.pct-card, section) {
  background: var(--bg-color-theme-custom);
}

.theme-color-custom h1,
	.theme-color-custom h2,
	.theme-color-custom h3,
	.theme-color-custom h4 {
  color: var(--heading-color-theme-custom);
}

.theme-color-custom h1:is(.dark *),
	.theme-color-custom h2:is(.dark *),
	.theme-color-custom h3:is(.dark *),
	.theme-color-custom h4:is(.dark *) {
  color: var(--heading-color-theme-custom);
}

.theme-color-custom p,
	.theme-color-custom ul {
  color: var(--txt-color-theme-custom);
}

.theme-color-custom .wp-element-button,
	.theme-color-custom .menu-bt a,
	.theme-color-custom button#submit {
  --bg-color: var(--main-color);
  --bg-color-hover: var(--highlight-color);
  --bg-color-outline: transparent;
  --button-txt-color: white;
  --button-txt-color-hover: white;
}

.theme-color-custom .wpcf7 span.wpcf7-not-valid-tip::after,
	.theme-color-custom .wpcf7-response-output::after {
  filter: var(--form-error-validation-icon-filter);
}

.theme-color-custom .separator {
  --separator-color: rgb(226, 230, 235);
  --separator-width: 2px;
  --separator-color: color-mix(in srgb, var(--heading-color-theme-custom), transparent 70%);
  --separator-color: color-mix(in srgb, black, transparent 90%);
  /* background: var(--separator-color); */
}

.theme-color-custom [id*="arrows-slider"] {
  color: var(--heading-color-theme-custom);
}

.theme-color-custom .cta-arrow {
  --width: 30px;
  /* --bg-color: rgba(255, 255, 255, 0.45); */
  --bg-color: rgba(255, 255, 255, 1);
  --bg-color: color-mix(in srgb, var(--bg-color-theme-custom), white 43%);
  /* --border-color: rgba(0, 0, 0, 0.15); */
  --border-color: rgba(255, 255, 255, 1);
}

.theme-color-custom .header-tag {
  background: rgb(255 255 255 / 0.33);
  border-color: rgba(255, 255, 255, 1);
  color: var(--heading-color-theme-custom);
}

.theme-color-custom .card:not(.transparent) {
  --card-background: rgba(255, 255, 255, 1);
}

[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-light p {
  color: var(--txt-color-theme-light) !important;
}

[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-light h1,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-light h2,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-light h3,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-light h4,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-light ul {
  color: var(--heading-color-theme-light) !important;
}

[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-dark p {
  color: var(--txt-color-theme-dark) !important;
}

[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-dark h1,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-dark h2,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-dark h3,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-dark h4,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-dark ul {
  color: var(--heading-color-theme-dark) !important;
}

[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-custom p {
  color: var(--txt-color-theme-custom) !important;
}

[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-custom h1,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-custom h2,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-custom h3,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-custom h4,
				[class*="theme-color-"]:has([class*="theme-color-"]) [class*="theme-color-"] .theme-color-custom ul {
  color: var(--heading-color-theme-custom) !important;
}

/*
  You need the following blocks structure @ WP editor
    --- Group @class: pct-ul , @variants:
        --- Group (li)
            --- image (svg)
            --- paragraph
*/

.pct-ul {
  --li-icon-dim: 40px;
  --li-gap: 1.5rem;
  --li-icon-color: var(currentColor, var(--main-color));
  display: grid;
  gap: var(--li-gap);
}

.pct-ul > * {
  display: grid;
  grid-template-columns: min-content auto;
  gap: calc(var(--li-gap) * 0.5);
}

.pct-ul > * > * {
  align-items: flex-start;
  margin: 0;
}

.pct-ul > * svg {
  color: var(--li-icon-color);
  width: var(--li-icon-dim);
  height: var(--li-icon-dim);
}

.pct-ul.pct-2cols {
  gap: var(--li-gap);
}

/**
 * Custom styles to immediately follow Tailwind’s `components` layer
 *
 * “Add more opinionated, complex classes like buttons, form controls, alerts,
 * etc; the sort of pre-built components you often see in other frameworks that
 * you might need to override with utility classes.”
 *
 * — from https://tailwindcss.com/docs/plugins#adding-components
 */

/**
* Global classes
*/

:root {
  /* ! SHAPES */
  --def-border-radius: 14px;
  --min-border-radius: 8px;
  --box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.04), 0px 6px 12px rgba(0, 0, 0, 0.02);
  --box-shadow-pop: 0px 51px 78px rgba(17, 7, 53, 0.05), 0px 21.3066px 35.4944px rgba(17, 7, 53, 0.0359427), 0px 11.3915px 18.9418px rgba(17, 7, 53, 0.0298054),
		0px 6.38599px 9.8801px rgba(17, 7, 53, 0.025), 0px 3.39155px 4.58665px rgba(17, 7, 53, 0.0201946), 0px 1.4113px 1.55262px rgba(17, 7, 53, 0.0140573), inset 0px 1px 0px rgba(41, 56, 78, 0.05);
  --navigation-box-shadow: 0px 51px 80px rgba(22, 26, 41, 0.0154121), 0px 15.375px 24.1177px rgba(22, 26, 41, 0.0270905), 0px 6.38599px 10.0172px rgba(22, 26, 41, 0.0409122),
		0px 0.5px 3.62304px rgba(22, 26, 41, 0.07);
  --tw-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --box-shadow-big: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --box-shadow-md: 0 4px 26px -3px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --box-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  /* ! COLORS DEFAULT */
  /* --main-color: #c3ff00; */
  /* --main-color: #1100ff; */
  /* --main-color-darker: #7a9913; */
  --secondary-color: rgba(0, 31, 52, 0.8);
  --secondary-color: rgba(30, 55, 94, 1);
  --body-bg-light: white;
  --body-bg-dark: #051a36;
  --bg-main: white;
  --bg-secondary: #f9fbfa;
  --bg-layer2-dark: #051a36;
  /* --bg-dark: #24262b; */
  --bg-card-dark: #1d2a3d;
  --bg-card-light: white;
  --bg-sec-dark: rgba(255, 255, 255, 0.1);
  /*! DARK OVERLAYS */
  --dark-overlay-header: linear-gradient(160deg, rgba(0, 0, 0, 0.7) 50%, rgba(0, 0, 0, 0) 100%);
  --dark-overlay-from-bottom: linear-gradient(340deg, rgba(0, 0, 0, 0.4) 15%, rgba(0, 0, 0, 0) 100%);
  /*! COLOR THEMES */
  /* --bg-color-theme-A: rgb(0 0 0 / 10%);
	--bg-color-theme-A: #e6ded2; */
  /* --bg-color-theme-A: rgb(210 181 138 / 20%); */
  /* --bg-color-theme-A: rgb(0 0 0 / 5%); */
  /* --bg-color-theme-A: rgb(111 127 17 / 10%); */
  --bg-color-theme-white: white;
  --bg-color-theme-white-dark: rgb(255 255 255 / 10%);
  --heading-color-theme-white: rgb(87 60 20 / 100%);
  --heading-color-theme-white-dark: var(--main-color);
  --txt-color-theme-white: black;
  --txt-color-theme-white-dark: white;
  --bg-color-theme-Blue: #0056c7;
  --bg-color-theme-Blue-dark: #0056c7;
  --heading-color-theme-Blue: white;
  --heading-color-theme-Blue-dark: white;
  --txt-color-theme-Blue: white;
  --txt-color-theme-Blue-dark: white;
  --bg-color-theme-Red: #d92727;
  --bg-color-theme-Red-dark: #d92727;
  --heading-color-theme-Red: white;
  --heading-color-theme-Red-dark: white;
  --txt-color-theme-Red: white;
  --txt-color-theme-Red-dark: white;
  --bg-color-theme-Orange: #e18800;
  --bg-color-theme-Orange-dark: #e18800;
  --heading-color-theme-Orange: white;
  --heading-color-theme-Orange-dark: white;
  --txt-color-theme-Orange: white;
  --txt-color-theme-Orange-dark: white;
  /*! END COLOR THEMES */
  --line-color: var(--heading-color);
  /* --bg-white-semi-transp: hsl(0deg 0% 100% / 69%); */
  /*! GRADIENTS */
  --main-grad: linear-gradient(108deg, #008dff 24%, #00d39a 80%);
  --main-grad-rev: linear-gradient(108deg, #00f6ff 24%, #008dff 80%);
  --grad-2: linear-gradient(108deg, #008dff 70%, #00f6ff 100%);
  --menu-txt-color: var(--main-color-second);
  --scrolled-menu-txt-color: var(--main-color-second);
  --scrollbar-handle-color: rgba(0, 0, 0, 0.3);
  --mmenu-card-color: #f5f9fd;
  --intro-gradient: linear-gradient(45deg, #a163f1, #6363f1 22%, #3498ea 40%, #40dfa3 67%, rgba(64, 223, 163, 0));
  --heading-gradient: linear-gradient(45deg, #2dd9f5, #2d9bf5 25%, #3498ea 40%, #f84ec3 67%, rgba(64, 223, 163, 0));
  /* --mask-horiz-gradient: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 100%); */
  /* --mask-horiz-gradient: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 100%),
		linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 35%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 1) 65%, rgba(0, 0, 0, 0) 100%); */
  --mask-horiz-gradient: radial-gradient(50% 150% at 50% 50%, #fff 70%, transparent 100%);
  --mask-testimonials-gradient: radial-gradient(50% 350% at 50% 50%, #fff 70%, transparent 100%);
  --mask-faded-down: linear-gradient(353deg, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.5011441647597255) 25%, rgba(0, 0, 0, 1) 47%, rgba(0, 0, 0, 1) 100%);
  --mask-faded-down2: linear-gradient(360deg, rgba(0, 0, 0, 0) 7%, rgba(0, 0, 0, 0.5011441647597255) 20%, rgba(0, 0, 0, 0.5956976540616247) 32%, rgba(0, 0, 0, 1) 52%, rgba(0, 0, 0, 1) 100%);
  --mask-faded-down3: linear-gradient(360deg, rgba(0, 0, 0, 0) 7%, rgba(0, 0, 0, 0.2) 20%, rgba(0, 0, 0, 0.4) 32%, rgba(0, 0, 0, 0.6) 40%, rgba(0, 0, 0, 1) 52%, rgba(0, 0, 0, 1) 100%);
  /* --mask-radial-content: radial-gradient(50% 60% at 70% 55%, black 70%, transparent); */
  --mask-radial-content: radial-gradient(80% 50% at 70% 80%, black 70%, transparent);
  --footer-gradient: linear-gradient(
		130deg,
		hsl(0deg 0% 21%) 0%,
		hsl(240deg 2% 21%) 11%,
		hsl(230deg 6% 20%) 22%,
		hsl(233deg 8% 20%) 33%,
		hsl(228deg 10% 20%) 44%,
		hsl(226deg 13% 19%) 56%,
		hsl(228deg 16% 19%) 67%,
		hsl(229deg 18% 18%) 78%,
		hsl(227deg 21% 18%) 89%,
		hsl(229deg 24% 17%) 100%
	);
  --footer-gradient: linear-gradient(to top, rgb(252, 0, 141), rgb(252, 91, 42) 100%);
  --footer-gradient-dark: linear-gradient(
		180deg,
		hsl(0deg 0% 0%) 0%,
		hsl(210deg 100% 1%) 11%,
		hsl(218deg 85% 3%) 22%,
		hsl(214deg 89% 4%) 33%,
		hsl(214deg 84% 5%) 44%,
		hsl(216deg 87% 6%) 56%,
		hsl(216deg 84% 7%) 67%,
		hsl(214deg 86% 8%) 78%,
		hsl(216deg 84% 10%) 89%,
		hsl(215deg 86% 11%) 100%
	);
  --card-gradient: linear-gradient(
		155deg,
		hsl(215deg 86% 8%) 0%,
		hsl(215deg 79% 11%) 11%,
		hsl(215deg 74% 14%) 22%,
		hsl(216deg 66% 16%) 33%,
		hsl(216deg 60% 19%) 44%,
		hsl(217deg 54% 21%) 56%,
		hsl(217deg 46% 24%) 67%,
		hsl(216deg 41% 27%) 78%,
		hsl(216deg 34% 29%) 89%,
		hsl(217deg 28% 32%) 100%
	);
  /* --mmenu-card-color: #f5f9fd; */
  /* ? THEME COLOR SCHEME DEFAULT */
  --gradient-primary: linear-gradient(
		200deg,
		hsl(211deg 100% 88%) 0%,
		hsl(211deg 96% 89%) 22%,
		hsl(212deg 92% 90%) 33%,
		hsl(212deg 87% 91%) 41%,
		hsl(213deg 80% 92%) 48%,
		hsl(214deg 78% 93%) 54%,
		hsl(213deg 69% 94%) 60%,
		hsl(215deg 63% 95%) 66%,
		hsl(219deg 64% 96%) 75%,
		hsl(216deg 56% 96%) 99%
	);
  --gradient-second-base: linear-gradient(
		350deg,
		hsla(207deg, 100%, 0%, 0) 0%,
		hsla(208deg, 94%, 0%, 0) 11%,
		hsla(210deg, 88%, 0%, 0.15) 22%,
		hsla(211deg, 83%, 0%, 0.2) 33%,
		hsla(213deg, 77%, 0%, 0.28) 44%,
		hsla(215deg, 77%, 0%, 0.3) 56%,
		hsla(218deg, 79%, 0%, 0.4) 67%,
		hsla(222deg, 82%, 0%, 0.4) 78%,
		hsla(227deg, 86%, 0%, 0.4) 89%,
		hsla(241deg, 100%, 0%, 0.4) 100%
	);
  --gradient-footer: linear-gradient(
		340deg,
		hsla(207deg, 100%, 0%, 0) 0%,
		hsla(208deg, 94%, 0%, 0) 11%,
		hsla(210deg, 88%, 0%, 0.15) 22%,
		hsla(211deg, 83%, 0%, 0.2) 33%,
		hsla(213deg, 77%, 0%, 0.28) 44%,
		hsla(215deg, 77%, 0%, 0.3) 56%,
		hsla(218deg, 79%, 0%, 0.4) 67%,
		hsla(222deg, 82%, 0%, 0.4) 78%,
		hsla(227deg, 86%, 0%, 0.4) 89%,
		hsla(241deg, 100%, 0%, 0.4) 100%
	);
  /* ? custom secon grad bg */
  --gradient-highlight-primary: radial-gradient(50vw 100% at calc(80% - 5vw) 100%, hsl(25deg 100% 93% / 93%) 25%, hsl(57deg 98% 100% / 0%) 120%);
  --gradient-highlight-second: radial-gradient(50vw 50% at calc(100% - 5vw) 100%, hsla(225, 100%, 50%, 0.23) 25%, hsl(57deg 98% 100% / 0%) 120%);
  --header-default-grad-bg: linear-gradient(
		15deg,
		hsl(207deg 98% 19%) 0%,
		hsl(207deg 98% 22%) 11%,
		hsl(207deg 98% 25%) 22%,
		hsl(207deg 99% 29%) 33%,
		hsl(207deg 99% 33%) 44%,
		hsl(207deg 99% 36%) 56%,
		hsl(207deg 99% 40%) 67%,
		hsl(207deg 99% 43%) 78%,
		hsl(207deg 100% 46%) 89%,
		hsl(207deg 100% 50%) 100%
	);
  --heading-highlight-grad: linear-gradient(
		45deg,
		hsl(76deg 48% 43%) 0%,
		hsl(76deg 52% 44%) 11%,
		hsl(76deg 55% 45%) 22%,
		hsl(76deg 59% 46%) 33%,
		hsl(76deg 63% 47%) 44%,
		hsl(76deg 67% 48%) 56%,
		hsl(76deg 72% 49%) 67%,
		hsl(75deg 77% 49%) 78%,
		hsl(75deg 85% 49%) 89%,
		hsl(74deg 100% 47%) 100%
	);
  --footer-bg-color: transparent;
  --ui-color: #eaeaea;
  --ui-color-subdarker: #ccc;
  --ui-color-darker: #767676;
  /* ! DIMENSIONS CONSTANTS */
  --layout-max-width: 1500px;
  --wp--style--global--content-size: var(--layout-max-width);
  /*! override WP default value */
  --def-layout-x-padding: clamp(1rem, 5.5vw, 8rem);
  --mobile-switcher-dim: 13px;
  --mobile-switcher-borderDim: 6px;
  --mobile-header-height: 45px;
  --desktop-header-height: 60px;
  --desktop-above-header-height: 0px;
  /*! SECTIONS OVERLAP */
  /* * Animated border tiles */
  /* --bright-color: #3ac47e; */
  /* --bright-color: red; */
  /* --border-color: #b2c6d7; */
}

:root:has(.above-header-wrap) {
  --desktop-above-header-height: 46px;
}

:root {
  --mobile-above-header-height: 0px;
  --whole-header-height: calc(var(--desktop-header-height) + var(--desktop-above-header-height) + var(--desktop-space-top));
}

/* --whole-header-height: calc(var(--desktop-header-height) + var(--desktop-above-header-height)); */

@media only screen and (max-width: 1024px) {
  :root {
    --whole-header-height: calc(var(--mobile-header-height) + var(--mobile-above-header-height));
  }
}

:root {
  --mobile-breakpoint: 1023px;
  --header-min-height: 250px;
}

/* --default-section-vert-padding: clamp(4.5rem, 10vw, 6rem); */

@media only screen and (max-width: 921px) {
  :root {
    --header-min-height: 200px;
  }
}

@media only screen and (max-width: 544px) {
  :root {
    --header-min-height: 160px;
  }
}

:root {
  --desktop-submenu-width: 260px;
  --header-sub-line-height: 4px;
  --svg-default-h: 80px;
  --svg-default-w: 80px;
  --form-max-width: 320px;
  --logo-brand-width: var(--desktop-logo-brand-width);
}

/* --sticky-header-trigger-height: 350px; */

/* ! LOGO HEADER DIMENSIONS */

@media only screen and (max-width: 1023px) {
  :root {
    --logo-brand-width: var(--mobile-logo-brand-width);
  }
}

:root {
  --logo-brand-height: auto;
  --mm-width: 360px;
  --mm-nav-header-height: calc(1ch * 4.8);
  --page-header-min-height: 250px;
  --page-header-blog-min-height: 550px;
  --content-max-width: 1240px;
  --border-def: 1px solid var(--ui-color);
  --border-def-dark: 1px solid white;
  --scroll-handler-bg: red;
  --slider-min-height-base: 500px;
}

/* ! MOBILE MENU DIMENSIONS */

/* ! SINGLE PAGE HEADER */

/* ! scroller handler settings for "overlayscrollbars" module */

/* ! SLIDER DIMENSIONS */

@media only screen and (max-width: 980px) {
  :root {
    --slider-min-height-base: 1px;
  }
}

:root {
  --slider-min-height: clamp(460px, var(--slider-min-height-base) + 10vw, 890px);
  --slider-height: 100svh;
  --section-overlap-y: 200px;
  --anim-border-width: 2px;
  --anim-border-radius: var(--def-border-radius);
  --bright-color: white;
}

body {
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

/*! THEMES  */

.theme-default {
  --color-header: var(--heading-color);
  --color-content: var(--txt-color);
}

.theme-dark-2 {
  /* --color-header: var(--main-color); */
  --color-header: white;
  --color-content: rgba(255, 255, 255, 0.75);
}

/*
.theme-second {
	--color-primary: #991b1b;
	--color-secondary: #fecaca;
}

.theme-third {
	--color-primary: #166534;
	--color-secondary: #bbf7d0;
} */

/**
 * This injects Tailwind's utility classes and any utility classes registered
 * by plugins, then adds custom utility classes.
 */

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

.visible {
  visibility: visible;
}

.collapse {
  visibility: collapse;
}

.fixed {
  position: fixed;
}

.relative {
  position: relative;
}

.sticky {
  position: sticky;
}

.isolate {
  isolation: isolate;
}

.mx-\[auto\] {
  margin-left: auto;
  margin-right: auto;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.mt-0 {
  margin-top: 0px;
}

.mt-\[2rem\] {
  margin-top: 2rem;
}

.block {
  display: block;
}

.inline {
  display: inline;
}

.flex {
  display: flex;
}

.table {
  display: table;
}

.grid {
  display: grid;
}

.list-item {
  display: list-item;
}

.hidden {
  display: none;
}

.size-full {
  width: 100%;
  height: 100%;
}

.w-\[100\%\] {
  width: 100%;
}

.min-w-\[300px\] {
  min-width: 300px;
}

.max-w-\[650px\] {
  max-width: 650px;
}

.max-w-none {
  max-width: none;
}

.border-collapse {
  border-collapse: collapse;
}

.cursor-pointer {
  cursor: pointer;
}

.flex-col {
  flex-direction: column;
}

.items-center {
  align-items: center;
}

.justify-end {
  justify-content: flex-end;
}

.justify-center {
  justify-content: center;
}

.gap-\[var\(--menu-items-gap\)\] {
  gap: var(--menu-items-gap);
}

.border {
  border-width: 1px;
}

.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.py-\[3rem\] {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.pt-\[\.5rem\] {
  padding-top: .5rem;
}

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

.align-top {
  vertical-align: top;
}

.text-\[1\.7rem\] {
  font-size: 1.7rem;
}

.uppercase {
  text-transform: uppercase;
}

.text-\[var\(--main-color\)\] {
  color: var(--main-color);
}

.text-slate-800 {
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity));
}

.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.grayscale {
  --tw-grayscale: grayscale(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.invert {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.content-none {
  --tw-content: none;
  content: var(--tw-content);
}

/**
 * Custom styles to immediately follow Tailwind’s `utilities` layer
 *
 * Add your own utility classes to this theme. Complex utility classes should
 * be added using Tailwind’s plugin system:
 *
 * https://tailwindcss.com/docs/plugins#adding-utilities
 */

.dark\:block:is(.dark *) {
  display: block;
}

.dark\:hidden:is(.dark *) {
  display: none;
}

.dark\:text-\[var\(--main-color\)\]:is(.dark *) {
  color: var(--main-color);
}
