/*!
Theme Name: PICTAU VertiGO!
Theme URI: https://pictau.com
Author: Oscar Rey Tajes
Author URI: https://www.pictau.com
Description: Pictau theme with tw
Version: 0.2.0
Tested up to: 6.2
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.
 */

/* outfit-regular - latin */

@font-face {
  font-display: swap;

  font-family: "Outfit";

  font-style: normal;

  font-weight: 400;

  src: url("./fonts/outfit-v15-latin-regular.woff2") format("woff2");
}

/* outfit-700 - latin */

@font-face {
  font-display: swap;

  font-family: "Outfit";

  font-style: normal;

  font-weight: 700;

  src: url("./fonts/outfit-v15-latin-700.woff2") format("woff2");
}

/* outfit-900 - latin */

@font-face {
  font-display: swap;

  font-family: "Outfit";

  font-style: normal;

  font-weight: 900;

  src: url("./fonts/outfit-v15-latin-900.woff2") format("woff2");
}

/*! DEFAULT PICTAU ICONS */

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

  font-display: optional;

  src: url("./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.
 */

/*! tailwindcss v3.4.0 | 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 */
  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,
[type='button'],
[type='reset'],
[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] {
  display: none;
}

*, ::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:  ;
}

::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:  ;
}

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

/* image_mask_animated: hide before JS applies clip-path to prevent flash of unmasked image */

[data-animask] {
  visibility: hidden;
}

@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;
  }
}

/*! KEN BURNS FOR IMAGE BLOCK */

.ken-burns {
  --zoom-scale: 1.25;
  --zoom-duration: 40s;
  --zoom-ease: ease-in-out;
  --zoom-origin-x: 30%;
  --zoom-origin-y: 70%;
  overflow: clip;
}

.ken-burns img {
  transform-origin: var(--zoom-origin-x) var(--zoom-origin-y);
  animation: zoom-pulse var(--zoom-duration) var(--zoom-ease) infinite;
}

@keyframes zoom-pulse {
  0%,
	100% {
    scale: 1;
  }

  50% {
    scale: var(--zoom-scale);
  }
}

/*! stickysection: scroll-driven sticky animation */

[data-stickysection] {
  position: relative;
  opacity: 0;
  transition: opacity 0.3s ease;
}

[data-stickysection].is-ready {
  opacity: 1;
}

:has(> .sticky-scene) {
  overflow: clip;
}

.sticky-scene {
  position: sticky;
  top: 0;
  height: 100vh;
  width: 100%;
  /* overflow: hidden; */
}

[data-stickysection] .is-layer {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  will-change: transform, opacity;
  /* Per-layer scroll & animation control (override via inline style or [data-st-index] rule).
	   Timing — --st-size: slot weight (flex-grow); --st-in/out: transition fraction; --st-gap-after: blank scroll.
	   Animation values (numeric, unitless) — passed directly to GSAP:
	   --st-initial-scale/opacity: hidden start state. --st-in/out-scale/opacity: transition targets.
	   Easing — GSAP ease string; supports any GSAP ease e.g. power3.in, back.out(1.7), none. */
  --st-in: 0.5;
  --st-out: 0.5;
  --st-initial-scale: 0.92;
  --st-initial-opacity: 0;
  --st-in-scale: 1;
  --st-in-opacity: 1;
  --st-out-scale: 0.95;
  --st-out-opacity: 0;
  --st-in-ease: power1.out;
  --st-out-ease: power1.inOut;
}

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

:root {
  --line-grad-color-rgb: 0 119 211;
  --line-grad-color-rgb: 214 214 214;
  --horiz-line-gradient: linear-gradient(
		90deg,
		rgb(var(--line-grad-color-rgb) / 0%),
		rgb(var(--line-grad-color-rgb) / 23%) 20%,
		rgb(var(--line-grad-color-rgb) / 45%) 50%,
		rgb(var(--line-grad-color-rgb) / 23%) 80%,
		rgb(var(--line-grad-color-rgb) / 0%)
	);
  /*! 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-light: url('data:image/svg+xml,<svg version="1.1" id="rect" xmlns="http://www.w3.org/2000/svg" width="15" height="15" x="0px" y="0px" viewBox="0 0 30 30" enable-background="new 0 0 30 30" xml:space="preserve"><circle fill="%23626262" cx="3.5" cy="3.5" r="2"/></svg>');
  /* --pepe: #626262; */
  --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%)
	);
  --dark-overlay-from-bottom-slider: linear-gradient(350deg, rgba(0, 0, 0, 1) 15%, rgba(0, 0, 0, 0) 100%);
  /* --dark-overlay-from-bottom-slider: linear-gradient(350deg, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 100%); */
  --dark-overlay-from-bottom-for-text: linear-gradient(0deg, rgba(0, 0, 0, 0.33) 5%, rgba(0, 0, 0, 0) 100%);
}

: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);
  pointer-events: none;
}

[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); */
  /* background-image: var(--bg-pattern-cross);
		background-image: var(--bg-pattern-dot-square); */
  background-image: var(--bg-pattern-dot-light);
}

[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); */

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

body.single-post h2,
	body.single-post h3 {
  text-transform: initial;
  line-height: 1.4;
}

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

:is(:where(.dark) .cat-filter) {
  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));
}

:is(:where(.dark) .cat-filter .cat-filter--grid > *) {
  --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));
}

:is(:where(.dark) .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 > * {
  /* 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));
}

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

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 #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 {
  position: relative;
}

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);
  padding-bottom: 0 !important;
}

@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 .featured-posts, body.single-post .featured-posts, body.archive .featured-posts, body.home .featured-posts {
  margin-bottom: var(--gap-default);
}

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) {
  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: 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;
  color: var(--link-color) !important;
}

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 * {
  color: var(--link-color) !important;
}

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: 18 / 9;
  -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;
  margin-bottom: 1.5ch;
}

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: var(--def-border-radius);
  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;
  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%);
}

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);
  color: var(--link-color) !important;
}

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 * {
  color: var(--link-color) !important;
}

@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 !important;
    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 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: calc(var(--max-w) + (2 * var(--def-layout-x-padding)));
}

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-align: left;
  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;
}

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;
  color: rgb(51 65 85 / 0.5);
}

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

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

/* This header never has a background image (category archives), so the
			   global page-header h1 forced-white color from layout.css doesn't apply here. */

body.archive.category #main > article > .entry-header h1 {
  color: var(--heading-color) !important;
}

:is(:where(.dark) body.archive.category #main > article > .entry-header h1) {
  color: var(--heading-color-dark) !important;
}

body.archive.category #main > article > .entry-header h1 {
  text-shadow: none;
}

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

body.archive.category #main > article > .entry-header .entry-header-content .goback-link {
  width: -moz-fit-content;
  width: fit-content;
}

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

body.archive.category .pct-section.category-entries {
  padding-top: 0 !important;
}

section:has(> .related-posts)::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;
}

/*! Archive page webinars on demand */

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-webinar, body.archive.post-type-archive-ebook article.card-webinar {
  border-radius: var(--card-border-radius);
  overflow: hidden;
  /* padding: var(--card-padding); */
  /* container-type: inline-size;
  	container-name: pctcard; */
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

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

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

body.archive.post-type-archive-webinar-ondemand article.card-webinar a:hover .read-more svg, body.archive.post-type-archive-ebook article.card-webinar 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-webinar:last-child, body.archive.post-type-archive-ebook article.card-webinar:last-child {
  margin-bottom: 0 !important;
}

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

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

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

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

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

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

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

body.archive.post-type-archive-webinar-ondemand article.card-webinar .category, body.archive.post-type-archive-ebook article.card-webinar .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);
}

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

body.archive.post-type-archive-webinar-ondemand article.card-webinar .read-more figure, body.archive.post-type-archive-ebook article.card-webinar .read-more figure {
  margin-top: var(--def-layout-x-padding) !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: 3ch;
  display: flex;
  justify-content: center;
  font-size: clamp(1rem, 5vw, 1.4rem);
  margin-top: var(--default-section-vert-padding);
}

.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 {
  /* flex-basis: var(--item-dim); */
  display: grid;
  position: relative;
  justify-content: center;
  align-items: center;
  /* aspect-ratio: 1; */
  /* min-width: var(--item-dim); */
  background-image: none !important;
}

.navigation.pagination .nav-links .nav-item > .item-content {
  grid-area: 1 / 1;
  display: grid;
  justify-content: center;
  align-items: center;
  justify-self: center;
  /* min-width: var(--item-dim); */
  width: calc(var(--item-dim));
  aspect-ratio: 1;
  z-index: 5;
  background: var(--main-color);
  border-radius: 50%;
  background-image: none !important;
  color: var(--main-color-darker);
  --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;
}

.navigation.pagination .nav-links .nav-item > .item-content:hover {
  background-color: var(--main-color);
}

.navigation.pagination .nav-links .nav-item > .item-content {
  scale: 1;
  transition: all 0.3s ease;
}

.navigation.pagination .nav-links .nav-item > .item-content.bt-link:hover {
  scale: 1.1;
}

.navigation.pagination .nav-links .nav-item.current .item-content {
  background-color: rgb(15 23 42 / 0.05);
  color: rgb(0 0 0 / 0.2) !important;
}

:is(:where(.dark) .navigation.pagination .nav-links .nav-item.current .item-content) {
  background-color: rgb(255 255 255 / 0.1);
}

/*! 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);
  color: white;
}

.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;
  aspect-ratio: 1;
  border-radius: 999px;
  padding: var(--padd);
  background: var(--main-color);
  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(--cta-color);
}

/*! GRID MUESTRAS DE COLOR --> REEMPLAZANDO SHORTCODES DE DIVI EN ENTRADAS */

body.single-post .color-swatch-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1.5rem;
  margin: 2rem 0;
}

@media only screen and (max-width: 768px) {
  body.single-post .color-swatch-grid {
    grid-template-columns: repeat(2, 1fr)
  }
}

body.single-post .color-swatch-grid .color-swatch-item {
  text-align: center;
}

body.single-post .color-swatch-grid .color-swatch-item img {
  width: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  margin-bottom: 0.75rem;
  border-radius: 0.25rem;
}

body.single-post .color-swatch-grid .color-swatch-item .swatch-label {
  font-size: 0.875rem;
  margin: 0;
  line-height: 1.3;
  color: color-mix(in srgb, var(--text-color), transparent 40%);
}

body.single-post .color-swatch-grid .color-swatch-item .swatch-name {
  font-weight: bold;
  font-size: 0.875rem;
  margin: 0;
  margin-top: 0.25rem;
}

/*! [blog_section] shortcode wrapper, when placed on the site's front page */

body.home .blog-section {
  padding-top: calc(var(--default-section-vert-padding) * 0.5) !important;
}

body.home .blog-section,
	body.home .blog-section > .pct-section {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

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

.wp-element-button,
button#submit {
  scale: 1;
  background-color: var(--main-color);
  letter-spacing: 0px;
  /* text-transform: capitalize; */
  border-radius: var(--button-border-radius);
  padding-top: 0.7ch;
  padding-bottom: 0.7ch;
  padding-left: 2.5ch;
  padding-right: 2.5ch;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  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,
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);
}

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

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

figure.local-video.wp-element-button::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);
}

:is(:where(.dark) figure.local-video.wp-element-button)::before,:is(:where(.dark) figure
button.local-video#submit)::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,
button#submit: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,
button#submit {
  font-size: clamp(1.1rem, 4vw, 1.3rem);
  /* text-transform: uppercase; */
  will-change: auto;
  transition: all 0.3s cubic-bezier(0.2, 1, 0.3, 1);
}

.wp-element-button:hover, button#submit:hover {
  scale: 1.1;
  /* color: white; */
  background-color: var(--cta-color);
}

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

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

.outline .wp-element-button {
  background-color: transparent;
  border: 2px solid var(--main-color);
  color: var(--main-color) !important;
}

.outline .wp-element-button:hover {
  border-color: var(--cta-color);
  background-color: var(--cta-color);
  color: black !important;
}

.menu-bt a {
  width: -moz-fit-content;
  width: fit-content;
  margin-left: 1.5rem;
  padding: 0.2rem 1rem;
}

/* &::before {
			@apply !bg-[var(--main-color)] hover:!bg-slate-900 hover:!text-white;
		} */

.menu-bt a:hover {
  color: white;
}

.menu-bt a:hover::before {
  --tw-bg-opacity: 1 !important;
  background-color: rgb(51 65 85 / var(--tw-bg-opacity)) !important;
}

/* @apply hover:text-black; */

.menu-bt a::before {
  border-radius: var(--def-border-radius);
  background-color: var(--menu-item-hover-bg-color) !important;
  padding-top: .5rem;
  padding-bottom: .5rem;
  padding-left: 3px;
  padding-right: 3px;
}

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

.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 {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.above-header-wrap .menu-bt a:hover {
  --tw-text-opacity: 1 !important;
  color: rgb(30 41 59 / var(--tw-text-opacity)) !important;
}

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

.main-header-wrap .main-nav-desktop .menu-bt a, .main-header-wrap .main-nav-mobile .menu-bt a {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.main-header-wrap .main-nav-desktop .menu-bt a::before, .main-header-wrap .main-nav-mobile .menu-bt a::before {
  background-color: var(--main-color) !important;
}

.main-header-wrap .main-nav-desktop .menu-bt a:hover::before, .main-header-wrap .main-nav-mobile .menu-bt a:hover::before {
  background-color: var(--cta-color) !important;
}

a.bt-inline {
  display: inline-flex;
  align-items: center;
  background-color: var(--main-color);
  color: white !important;
  background-image: none !important;
  margin-top: 0.25ch;
  margin-bottom: 0.25ch;
  border-radius: var(--button-border-radius);
  padding-top: 0.01ch !important;
  padding-bottom: 0.01ch !important;
  padding-left: 0.9ch;
  padding-right: 0.9ch;
}

a.bt-inline::before {
  display: none;
}

/* !ALL CARDS STYLES AND LAYOUTS */

/*  @ CSS classes for variants
    @ transparent       Card background transparent
    @ shadow            Box shadow
    @ only-media        Just contains an img full cover
    @ media-left       Icon/img on the left
    @ media-img         No icon, sprite img full-width / full-height
    @ 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

*/

.card {
  border-radius: var(--card-border-radius);
  overflow: hidden;
  padding: var(--card-padding);
  container-type: inline-size;
  container-name: pctcard;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

.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.bg-dark {
  color: white !important;
}

.card.v-align-center {
  align-self: center;
}

/*? variants */

.card.border {
  border-width: 2px;
  border-color: rgb(87 60 20 / 0.3);
}

:is(:where(.dark) .card.border) {
  border-color: rgb(255 255 255 / 0.3);
}

.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);
}

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

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

.card.stretch-h-full {
  width: calc(100vw * 0.5) !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;
}

/* container-type: inline-size en .card crea "style containment" (contain: style).
   Safari sí aplica el aislamiento de contadores que exige esa contención: el
   counter-reset del ancestro (:has) no puede atravesar el límite de cada .card,
   así que counter(card-counter) siempre da 0 ahí ("00" en todas las tarjetas).
   Chromium/Firefox no implementan aún ese aislamiento, por eso cuentan bien.
   Se desactiva la contención solo en esta variante para que el contador funcione
   también en Safari. */

.card.heading-numbered {
  container-type: normal;
  container-name: none;
}

:has(> .card.heading-numbered) {
  counter-reset: card-counter;
}

:has(> .card.heading-numbered) .heading-numbered {
  counter-increment: card-counter;
}

:has(> .card.heading-numbered) .heading-numbered h2::before, :has(> .card.heading-numbered) .heading-numbered h3::before {
  content: counter(card-counter);
  display: inline-block;
  width: 2.5ch;
  font-weight: bold;
  color: var(--main-color);
}

:has(> .card.heading-numbered) .heading-numbered:nth-child(-n + 9) h2::before, :has(> .card.heading-numbered) .heading-numbered:nth-child(-n + 9) h3::before {
  content: "0" counter(card-counter);
}

/* @container pctcard (width < 440px) {
	div:first-child {
		flex-flow: column !important;
	}
}
*/

/* @container pctcard (width < 640px) {
	div:first-child {
		&:first-child:has(img) {
			display: grid;
			grid-template-columns: 1fr !important;

			figure {
				padding-bottom: 0;
			}

			> *:last-child:not(:first-child) {
				padding-left: var(--card-padding) !important;
				padding-top: var(--card-padding);
				display: flex;
				align-items: center;
				justify-content: center;
			}
			flex-flow: column !important;
		}
	}
} */

/*! CARD OVERLAP TO RIGHT WHEN IN COLUMN LAYOUT */

.card.overlap-right-col {
  --y-offset: calc(var(--card-padding) * 1.5);
  /* translate: calc(var(--card-padding) * 3) calc(var(--card-padding) * 1); */
  width: calc(150% + var(--card-padding) * 3) !important;
  translate: 0 var(--y-offset);
  margin-bottom: calc(var(--y-offset) * 0.5) !important;
  z-index: 99;
}

@media only screen and (max-width: 767px) {
  .card.overlap-right-col {
    width: 100% !important;
    translate: unset;
    z-index: inherit
  }
}

/*! CARD OVERLAP TO LEFT WHEN IN COLUMN LAYOUT */

.card.overlap-left-col {
  translate: calc(var(--card-padding) * -3) calc(var(--card-padding) * 1);
  z-index: 99;
}

@media only screen and (max-width: 767px) {
  .card.overlap-left-col {
    translate: unset;
    z-index: inherit
  }
}

/*! CARDS AREA OVERLAP ANIMATION HOME */

.pct-section.cards-overlap {
  margin-bottom: var(--default-section-vert-padding);
}

/* section:has(> .card-area-overlap) {
	@apply shadow-2xl !pt-0;
} */

[data-scrolloverlapvertical] > *:nth-child(odd) .card-area-overlap.glass > div {
  order: 2;
  overflow: hidden;
  border-top-right-radius: var(--def-border-radius);
  border-bottom-right-radius: var(--def-border-radius);
}

.card-area-overlap.glass {
  background: var(--footer-gradient);
  /* @apply shadow-2xl shadow-slate-700/30 dark:shadow-2xl dark:shadow-green-300/30; */
  display: grid !important;
  grid-template-columns: 1fr 1fr;
}

@media only screen and (max-width: 768px) {
  .card-area-overlap.glass {
    grid-template-columns: 1fr
  }

  .card-area-overlap.glass > div {
    order: 2;
  }

  .card-area-overlap.glass::after {
    aspect-ratio: 1.8/1;
  }
}

.card-area-overlap.glass {
  border-radius: var(--def-border-radius);
  overflow: hidden;
}

.card-area-overlap.glass > figure {
  position: absolute;
  inset: 0;
}

.card-area-overlap.glass > figure img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.card-area-overlap.glass::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 768px) {
  .card-area-overlap.glass {
    grid-template-columns: 1fr
  }

  .card-area-overlap.glass figure {
    position: relative;
  }

  .card-area-overlap.glass figure img {
    width: 100%;
    height: auto;
  }

  .card-area-overlap.glass::after {
    display: none;
  }
}

/* &.content-right {
		> div {
			order: 2;
		}
	} */

.card-area-overlap.glass > div {
  color: white;
  padding: calc(var(--def-layout-x-padding) * 1.5);
  background-color: rgba(255, 255, 255, 0.01);
  background-color: rgba(0, 0, 0, 0.3);
  -webkit-backdrop-filter: blur(40.5px);
          backdrop-filter: blur(40.5px);
}

.card-area-overlap.glass > div h3 {
  font-size: clamp(2.2rem, 7vw, 4rem);
  color: white;
}

.card-area-overlap.glass h3 {
  padding-top: 0 !important;
  /* padding-bottom: 2rem;
		color: white; */
}

@media only screen and (max-width: 950px) {
  .card-area-overlap.glass h3 {
    font-size: clamp(2rem, 5vw, 2.5rem) !important
  }
}

.card-area-overlap.glass p:not(.subheader) {
  font-size: 1.1em;
}

@media only screen and (max-width: 525px) {
  .card-area-overlap.glass p {
    font-size: 1rem;
  }
}

.card-area-overlap.glass p {
  color: white;
  font-weight: 300;
}

/*! Cards with ordered numbers */

.ordered-counter {
  --numSize: 1.5rem;
  /* --numberedColor: var(--heading-color); */
  --numberedColor: white;
  --numberedBgColor: var(--main-color);
  --numberedBorderColor: var(--numberedColor);
  --numberedBorderSize: 4px;
  --dim: 2rem;
  --padding: 1.5em;
  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);
}

:is(:where(.dark) .card-ordered-num) {
  border-top-color: rgb(255 255 255 / 0.5);
}

.card-ordered-num {
  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);
}

/* &:first-of-type {
		padding-top: 0.5em;
	} */

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

/* h3 {
		text-wrap: pretty;
	} */

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

.card-ordered-num::before {
  content: counter(xx);
  counter-increment: xx;
  border-radius: 50%;
  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);
  box-shadow:
			0px 1px 3px rgba(0, 0, 0, 0.1),
			0px 6px 12px rgba(0, 0, 0, 0.08);
}

.base-card {
  border-radius: var(--card-border-radius);
  overflow: hidden;
  padding: var(--def-layout-x-padding);
}

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

.base-card h2,
	.base-card h3,
	.base-card h4 {
  margin-top: 0;
}

.base-card .wp-block-button {
  margin-top: var(--def-layout-x-padding) !important;
}

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

.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));
}

:is(:where(.dark) .address-card > *:last-child) {
  --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 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));
}

:is(:where(.dark) .card.agenda .sesion:not(:last-of-type)) {
  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);
}

:is(:where(.dark) .card.agenda .sesion .ponentes .ponente) {
  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;
}

@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;
}

.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));
}

:is(:where(.dark) .card.cta) {
  --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);
  -webkit-clip-path: polygon(100% 0%, 100% 100%, 0% 100%);
          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));
}

:is(:where(.dark) .card.cta h2),:is(:where(.dark) 
	.card.cta h3) {
  --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;
}

/*! COOKIES POLICY TABLE */

.cookies-table-wrap {
  overflow-x: auto;
  margin: 1.5rem 0;
}

.cookies-table-wrap table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.875rem;
  line-height: 1.5;
}

.cookies-table-wrap table thead tr {
  background-color: var(--main-color);
  color: white;
}

.cookies-table-wrap table thead tr th {
  padding: 0.75rem 1rem;
  text-align: left;
  font-weight: 600;
  white-space: nowrap;
}

.cookies-table-wrap table tbody tr {
  border-bottom: 1px solid var(--gray-200, #e5e7eb);
}

.cookies-table-wrap table tbody tr:nth-child(even) {
  background-color: var(--gray-50, #f9fafb);
}

.cookies-table-wrap table tbody tr td {
  padding: 0.65rem 1rem;
  vertical-align: top;
}

.cookies-table-wrap table tbody tr td code {
  font-family: ui-monospace, monospace;
  font-size: 0.8em;
  background: var(--gray-100, #f3f4f6);
  padding: 0.1em 0.4em;
  border-radius: 0.25rem;
  white-space: nowrap;
}

.dark .cookies-table-wrap table tbody tr {
  border-color: var(--gray-700, #374151);
}

.dark .cookies-table-wrap table tbody tr:nth-child(even) {
  background-color: var(--gray-800, #1f2937);
}

.dark .cookies-table-wrap table tbody tr td code {
  background: var(--gray-700, #374151);
  color: var(--gray-200, #e5e7eb);
}

:root {
  --def-font-family: "Outfit", Helvetica, Arial, sans-serif;
  --def-heading-font-family: "Outfit", Helvetica, Arial, sans-serif;
  --txt-slider-heading: "Outfit", Helvetica, Arial, sans-serif;
}

body {
  color: var(--txt-color);
}

:is(:where(.dark) body) {
  color: var(--txt-color-dark);
}

body {
  font-size: 1rem;
}

h1,
h2,
h3,
h4,
h5 {
  font-weight: 700;
  font-family: var(--def-heading-font-family);
}

h1,
h2,
h3 {
  letter-spacing: -0.02ch;
  line-height: 2.2ex;
  margin-left: 0;
  margin-right: 0;
  /* &:not([data-anim_any]) {
		text-wrap: balance;
	} */
}

h3 {
  letter-spacing: -0.01ch;
}

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

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

h1 {
  font-size: clamp(2.7rem, 8vw, 4em);
}

h1.smaller {
  font-size: clamp(2.6rem, 5vw, 3rem);
}

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

:is(:where(.dark) h2) {
  color: var(--heading-color-dark);
}

h2 {
  font-size: clamp(2.2rem, 8vw, 3.5rem);
}

h2.bigger {
  font-size: clamp(2.7rem, 8vw, 7rem);
  /* font-weight: 900; */
}

h2.thin {
  font-weight: 400;
}

/* 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;
  margin-bottom: .5ch !important;
  color: var(--heading-color);
}

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

h3 {
  font-size: clamp(1.6rem, 5vw, 2.5rem);
}

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

h4 {
  margin-top: 0px !important;
  margin-bottom: .5ch !important;
  color: var(--heading-color);
  font-size: clamp(1.2rem, 5vw, 1.6rem);
}

.subheader {
  font-size: clamp(1.3rem, 4vw, 1.6rem);
  line-height: 1.3;
}

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

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

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

p.bigger {
  font-size: clamp(1.2rem, 4vw, 1.4rem);
}

p {
  color: currentColor;
}

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

body .is-layout-constrained > :where(.alignleft, .has-text-align-left, ) {
  margin-left: unset !important;
}

body .is-layout-constrained > :where(.alignright, .has-text-align-right, ) {
  margin-right: unset !important;
}

/*! Headings custom styles */

/* Highlight header */

/* &:has(em) {
		display: contents;
	} */

h1 em, h2 em, h3 em {
  font-style: normal;
  /* text-transform: uppercase; */
  color: var(--main-color);
}

/* -webkit-text-fill-color: transparent;
		-webkit-background-clip: text;
		background-clip: text;
		background-image: var(--heading-highlight-grad); */

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

h1 em strong, h2 em strong, h3 em strong {
  font-weight: 700;
  color: var(--cta-color);
}

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

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: 1.77ch;
}

h1 .char, h2 .char, h3 .char {
  /* display: inline-flex !important; */
}

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

/*! 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 {
  display: block;
  opacity: 1;
  animation-play-state: running;
}

.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 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: var(--submit-working-padding) !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 {
    /*font-size: 0 !important;*/
    width: 40px;
    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);
}

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

:is(:where(.dark) .multi-checkbox) {
  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;
}

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

:root {
  --submenu-bg-color: white;
  --submenu-border-color: rgba(0, 0, 0, 0.08);
  --min-border-radius: 8px;
  --submenu-text-color: rgba(0, 0, 0, 0.75);
  --submenu-text-hover-color: var(--submenu-text-color);
  --submenu-item-hover-bg-color: rgba(0, 0, 0, 0.05);
}

/*! 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 a {
  text-decoration: none !important;
}

/* !ONLY FOR NORMAL FIXED HEADER */

body.fixed-header #masthead > div {
  padding-top: var(--desktop-space-top);
}

body.fixed-header #masthead.scrolledHeader {
  color: var(--scrolled-menu-txt-color);
}

body.fixed-header #masthead.scrolledHeader .mobile-menu-switcher span {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}

:is(:where(.dark) body.fixed-header #masthead.scrolledHeader .mobile-menu-switcher span) {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

body.fixed-header #masthead.scrolledHeader .above-header-wrap .above-header-content {
  transform: translateY(calc(var(--desktop-above-header-height) * -1.1));
  height: calc(var(--def-layout-x-padding) * 0.5);
}

body.fixed-header #masthead.scrolledHeader .main-header-wrap {
  border-color: rgb(0 0 0 / 0.1);
  background-color: var(--header-scrolled-color) !important;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

:is(:where(.dark) body.fixed-header #masthead.scrolledHeader .main-header-wrap) {
  border-color: rgb(255 255 255 / 0.25);
  background-color: var(--header-scrolled-color-dark) !important;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

body.fixed-header #masthead.scrolledHeader .main-header-wrap {
  background-repeat: no-repeat;
  -webkit-backdrop-filter: blur(7.5px);
          backdrop-filter: blur(7.5px);
}

body.fixed-header #masthead.scrolledHeader .main-header-wrap .logo-brand {
  filter: none;
  /* filter: none; */
}

/*! Only pages with an element marked .transparent-header (e.g. the home hero) start with a see-through header. */

body.fixed-header #page:has(.transparent-header) #masthead:not(.scrolledHeader) .above-header-wrap .menu-item a {
  color: white;
}

body.fixed-header #page:has(.transparent-header) #masthead:not(.scrolledHeader) .mobile-menu-switcher span {
  background: white;
}

.main-header-wrap {
  --mobile-mt: 0;
  /* --border-color: hsla(0, 0%, 100%, 0.8); */
  --border-color: transparent;
  margin-top: var(--mobile-mt);
}

@media (min-width: 1024px) {
  .main-header-wrap {
    margin-top: 0px;
  }
}

.main-header-wrap {
  -webkit-backdrop-filter: blur(7.5px);
          backdrop-filter: blur(7.5px);
  background-color: var(--header-scrolled-color);
}

:is(:where(.dark) .main-header-wrap) {
  background-color: var(--header-scrolled-color-dark);
}

.main-header-wrap {
  border-top-color: var(--border-color);
  border-bottom-color: var(--border-color);
  border-top-width: 1px;
  border-bottom-width: 1px;
}

/* border-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 {
  /* .color3 {
			* {
				fill: #000000;
			}
		} */
}

.main-header-wrap .logo-brand .color1 * {
  fill: #343434;
}

.main-header-wrap .logo-brand .color2 * {
  fill: #ff6700;
}

.main-header-wrap .logo-brand {
  z-index: 10;
}

/*! Only pages with an element marked .transparent-header (e.g. the home hero) start with a see-through header. */

#page:has(.transparent-header) #masthead:not(.scrolledHeader) .main-header-wrap {
  color: white;
  background-color: var(--transparent-header-bg-color-light);
}

#page:has(.transparent-header) #masthead:not(.scrolledHeader) .main-header-wrap .logo-brand {
  filter: contrast(0) brightness(100);
  /* white */
}

body.header-width-full .main-header-content,
	body.header-width-full .above-header-content {
  --pad-x: var(--def-layout-x-padding);
  padding-left: var(--pad-x);
  padding-right: var(--pad-x);
}

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);
  padding-left: var(--pad-x);
  padding-right: var(--pad-x);
}

@media (min-width: 1024px) {
  body.header-width-constrained .main-header-content,
	body.header-width-constrained .above-header-content {
    padding-right: .5rem;
  }
}

body.header-width-constrained .main-header-content,
	body.header-width-constrained .above-header-content {
  max-width: var(--max-w);
}

@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);
  padding-left: var(--pad-x);
  padding-right: var(--pad-x);
}

.main-header-content {
  pointer-events: none;
}

.above-header-wrap:has(.menu-bt) li.menu-bt {
  padding-left: 0.7rem;
}

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

#masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode) a:not(.bt), #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode) .menu-item-nolink:not(.bt), #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode) a:not(.bt), #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode) .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;
}

#masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode) a:not(.bt)::before, #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode) .menu-item-nolink:not(.bt)::before, #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode) a:not(.bt)::before, #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode) .menu-item-nolink:not(.bt)::before {
  content: "";
  position: absolute;
  inset: var(--inset-y) var(--inset-x);
  z-index: -1;
  border-radius: var(--def-border-radius);
  background-color: transparent;
  transition: background-color 0.3s ease;
  display: block;
}

#masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode) a:not(.bt):has(.icon)::before, #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode) .menu-item-nolink:not(.bt):has(.icon)::before, #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode) a:not(.bt):has(.icon)::before, #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode) .menu-item-nolink:not(.bt):has(.icon)::before {
  inset: var(--inset-y) 0 var(--inset-y) var(--inset-x);
}

#masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode) a:not(.bt):hover::before, #masthead .main-header-wrap .main-nav-desktop .menu-item:not(.menu-item-is-shortcode) .menu-item-nolink:not(.bt):hover::before, #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode) a:not(.bt):hover::before, #masthead .above-header-wrap .menu-item:not(.menu-item-is-shortcode) .menu-item-nolink:not(.bt):hover::before {
  background-color: var(--hover-bg-color);
}

.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: 1.2rem;
}

.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;
}

.logo-brand {
  pointer-events: all;
}

.logo-brand img,
	.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(--def-border-radius);
  border-color: rgb(0 0 0 / 0.1);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding-top: 1rem;
  padding-bottom: 1rem;
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity));
  opacity: 0;
  --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);
}

:is(:where(.dark) .main-nav-mobile .primary-menu-wrapper) {
  border-color: rgb(255 255 255 / 0.3);
  --tw-bg-opacity: 1;
  background-color: rgb(5 26 54 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.main-nav-mobile .primary-menu-wrapper {
  transition: all 0.6s cubic-bezier(0.2, 1, 0.3, 1);
  /* border: 1px solid #34343411; */
  border-width: 1px;
  pointer-events: none;
  will-change: auto;
  translate: calc(-100% + var(--mobile-switcher-dim) + 2 * var(--mobile-switcher-borderDim)) -32px;
  max-height: calc(100dvh - 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: 280px;
  max-width: 300px;
  white-space: nowrap;
  text-wrap: nowrap;
  padding-top: .2ch;
  padding-bottom: .2ch;
}

/* &:not(.menu-item-is-shortcode) {
				> a,
				> .menu-item-nolink {
					@apply hover:text-[var(--main-color)];
				}
			} */

.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: 2rem;
  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 {
  border: 1px solid #34343411;
  position: relative;
  border-radius: var(--def-border-radius);
  border-color: rgb(0 0 0 / 0.1);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: var(--paddSubmenu);
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity));
  --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);
}

:is(:where(.dark) .main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu) {
  border-color: rgb(255 255 255 / 0.3);
  background-color: var(--bg-layer2-dark);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu {
  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;
  padding-top: .4ch;
  padding-bottom: .4ch;
}

.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu .menu-item a:hover,
				.main-nav-desktop-submenus-wrap .sub-menu-container .sub-menu .menu-item button:hover {
  color: var(--main-color);
}

.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(--menu-txt-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%;
  background: var(--color);
  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;
}

body.scrolledHeader .mobile-menu-switcher {
  --color: var(--scrolled-menu-txt-color);
}

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

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

.main-nav-desktop .menu-item-nolink:has(.lang-switcher) {
  margin-left: 1rem;
}

html {
  position: relative;
  margin-top: 0 !important;
  scroll-behavior: smooth;
  overflow-x: hidden !important;
  transition: background 0.7s ease;
}

html.stop-scrolling {
  overflow: hidden !important;
}

body {
  position: relative;
  margin-top: 0 !important;
  scroll-behavior: smooth;
  overflow-x: clip;
  transition: background 0.7s ease;
}

body.stop-scrolling {
  overflow: hidden !important;
}

body {
  font-family: var(--def-font-family);
  background-color: var(--bg-light);
}

:is(:where(.dark) body) {
  background-color: var(--bg-dark);
}

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

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

.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 */

/*? :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

[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;
}

figure.full-height-col {
  position: absolute;
  height: 100% !important;
  width: 100% !important;
}

figure.full-height-col img,
	figure.full-height-col svg {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media only screen and (max-width: 767px) {
  figure.full-height-col {
    position: relative
  }

  figure.full-height-col img,
		figure.full-height-col svg {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
  }
}

.wp-block-columns.alignfull {
  width: 100vw !important;
  max-width: unset !important;
}

.display-none {
  display: none !important;
}

.full-height {
  height: 100%;
}

.full-vh {
  height: 100dvh;
}

.bg-dark {
  color: white !important;
}

.no-pt {
  padding-top: 0px !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-y {
  margin-block: var(--def-layout-x-padding);
}

.padding-b {
  padding-bottom: var(--def-layout-x-padding) !important;
}

.padding-t {
  padding-top: var(--def-layout-x-padding) !important;
}

.padding-y {
  padding-block: var(--def-layout-x-padding);
}

.border-t {
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-top-color: rgb(0 0 0 / var(--tw-border-opacity));
}

:is(:where(.dark) .border-t) {
  border-top-color: rgb(255 255 255 / 0.5);
}

body.home .hide-on-home {
  display: none !important;
}

.stroke-width-thin:has(svg) * {
  stroke-width: 2;
}

.center-y {
  display: flex;
  justify-content: center;
  padding-top: 0;
}

.center {
  text-align: center;
  justify-content: center;
}

.center > * {
  text-align: center;
}

.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;
}

.hide-on-mobile {
  display: none;
}

@media (min-width: 1024px) {
  .hide-on-mobile {
    display: block;
  }
}

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

.pct-2cols {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--card-padding);
}

@media (min-width: 768px) {
  .pct-2cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.pct-2cols > * {
  width: 100% !important;
}

.pct-2cols.double-gap {
  --gap: calc(var(--card-padding) * 2);
}

@media (min-width: 768px) {
  .pct-2cols.double-gap {
    gap: var(--gap);
  }
}

.pct-2cols-63 {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--card-padding);
}

@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(--card-padding);
}

@media (min-width: 1024px) {
  .pct-2cols-60-40 {
    grid-template-columns: 60% 1fr;
  }
}

.pct-2cols-60-40 > * {
  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;
}

.pct-3cols-2-plus-1 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--card-padding);
}

@media only screen and (max-width: 1230px) {
  .pct-3cols-2-plus-1 {
    /* background-color: red; */
    grid-template-columns: repeat(2, 1fr)
  }

  .pct-3cols-2-plus-1 > *:nth-child(3) {
    grid-column: span 2;
  }
}

@media only screen and (max-width: 767px) {
  .pct-3cols-2-plus-1 {
    grid-template-columns: 1fr
  }

  .pct-3cols-2-plus-1 > *:nth-child(3) {
    grid-column: span 1;
  }
}

.pct-4cols {
  display: grid;
  gap: var(--card-padding);
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}

@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);
}

/*! 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;
  background-color: #343434;
  overflow: clip;
}

#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;
}

.pct-3cols {
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--card-padding);
}

@media (min-width: 768px) {
  .pct-3cols {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.pct-3cols > * {
  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), #footer a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item) {
  padding-bottom: 3px;
}

#content a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(:has(img)), #footer a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(:has(img)) {
  color: var(--link-color);
}

:is(:where(.dark) #content a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(:has(img))),:is(:where(.dark)  #footer a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(:has(img))) {
  color: var(--link-color-dark);
}

#content a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(:has(img)), #footer a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):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(:has(img)):hover, #footer a:not(.menu-item):not(.bt-link):not(.wp-element-button):not(.pictau-logo):not(.nav-item):not(:has(img)):hover {
  background-size: calc(100% - 0.5ch) var(--underline-h);
  opacity: 0.6;
}

a.inline {
  display: inline-flex !important;
}

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.25);
}

body .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;
}

body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull))



.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);
  align-items: flex-end;
  justify-content: center;
  padding-top: var(--paddV);
  padding-bottom: var(--paddV);
  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;
}

#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)]; */
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  /* text-align: center; */
  width: -moz-fit-content;
  width: fit-content;
  flex-shrink: 0;
  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: pretty;
  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.area {
  align-items: center;
}

#main > article > header.entry-header.area .entry-header-content {
  /* max-width: calc(var(--layout-max-width) * 0.75); */
  max-width: var(--layout-max-width);
  padding: 0 var(--def-layout-x-padding);
  /* row-gap: clamp(1rem, 8vw, 4rem); */
  /* row-gap: clamp(1rem, 8vw, 4rem); */
  justify-content: center;
}

#main > article > header.entry-header.area .entry-header-content h1 {
  /* width: 100%; */
  text-align: center;
  text-wrap: pretty;
}

#main > article > header.entry-header.area .entry-header-content .header-subtitle {
  flex-basis: 80% !important;
  flex-wrap: nowrap;
  margin-left: 0;
  padding-top: clamp(0.5rem, 5vw, 2rem);
  /* p {
						padding-top: 1rem;
						margin-left: 0;
					} */
}

@media only screen and (max-width: 540px) {
  #main > article > header.entry-header.area .entry-header-content .header-subtitle {
    padding-top: 1rem
  }
}

#main > article > header.entry-header.area .entry-header-content .header-subtitle,
				#main > article > header.entry-header.area .entry-header-content .cta {
  flex-basis: 100%;
  display: flex;
  justify-content: center;
}

#main > article > header.entry-header .header-dark-overlay,
		#main > article > header.entry-header .header-dark-overlay-bottom {
  background: linear-gradient(160deg, rgba(0, 0, 0, 0.7) 50%, rgba(0, 0, 0, 0) 100%);
  display: block;
  position: absolute;
  inset: 0;
}

#main > article > header.entry-header .header-dark-overlay-bottom {
  background: linear-gradient(340deg, rgba(0, 0, 0, 0.4) 15%, rgba(0, 0, 0, 0) 100%);
}

/* .header-cover-loading {
			background: linear-gradient(
				160deg,
				rgba(0, 0, 0, 1) 50%,
				rgba(0, 0, 0, 1) 100%
			);
			display: block;
			position: absolute;
			inset: 0;
		} */

#main > article > header.entry-header.no-bg-img {
  min-height: unset;
}

#main > article > header.entry-header.no-bg-img .entry-header-content {
  padding-top: var(--whole-header-height);
}

/*! SECTION HEADINGS */

.section-heading {
  color: var(--txt-color);
}

:is(:where(.dark) .section-heading) {
  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 {
  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-header + .entry-content {
  min-height: calc(100dvh - var(--page-header-min-height));
}

body.home header.entry-header, body:has(.home) header.entry-header {
  display: none;
}

body.fixed-header .slider {
  padding-top: var(--whole-header-height);
}

body.fixed-header .slider .full-height {
  height: calc(100svh - var(--whole-header-height));
}

/* body.home,
body:has(.home) {
	.slider {
		@apply pt-[var(--whole-header-height)];
	}
} */

.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-top: var(--default-section-vert-padding);
}

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: 100dvh;
  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).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 !important;
  margin-right: unset !important;
}

/*! ELEMENTS WITH SLIDER BACKGROUNDS */

section:has(.slider-bg) {
  color: white;
}

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

.is-bg.darken::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: var(--dark-overlay-from-bottom-for-text);
}

.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;
  width: 100vw;
  /* left: 50%; */
  left: calc(50% - 100vw * 0.5);
  /* translate: -50% 0; */
  padding-top: var(--default-section-vert-padding);
  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));
}

/* 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;
  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: var(--main-color);
  --dim: 2em;
  --padding: 1.2em;
  --connectLineColor: var(--connectedcolor, var(--numberedBgColor));
  counter-reset: pct-counter;
  display: flex;
  flex-flow: column;
  gap: calc(var(--dim) * 0.5);
  padding-top: 2rem;
}

.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);
}

.theme-color-A .ordered-list {
  --numSize: 1rem;
  --numberedColor: var(--main-color);
  --numberedBgColor: white;
  --dim: 2em;
  --padding: 1.2em;
  --connectLineColor: var(--connectedcolor, var(--numberedBgColor));
}

/*! 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) {
  --padd-left: calc(var(--def-layout-x-padding) + 1ch);
  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) 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) 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) 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).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).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).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;
}

.slider-cards .swiper-wrapper {
  flex-flow: row;
}

.slider-cards .swiper-wrapper .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);
}

:is(:where(.dark) .pct-faqs) {
  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));
}

:is(:where(.dark) .pct-faqs .faq .faq-question) {
  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));
}

:is(:where(.dark) .pct-faqs .faq .faq-question .faq-status) {
  --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);
  /* 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: var(--def-layout-x-padding);
}

.pct-faqs .faq > *:nth-child(2) > * > *:last-child:not(.card) {
  margin-bottom: var(--def-layout-x-padding) !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);
}

:is(:where(.dark) .pct-faqs .faq > *:nth-child(2) > * > *:last-child.card) {
  background-color: rgb(255 255 255 / 0.1);
}

.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;
}

/* display: grid;
		position: relative;
		grid-template-columns: repeat(2, 1fr);
		align-items: center;
		gap: var(--lang-gap); */

.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:has(.lang-code:nth-of-type(1) a:hover) .switch-head {
  translate: 0%;
}

.lang_switcher .switcher-container:has(.lang-code:nth-of-type(2) a:hover) .switch-head {
  translate: calc(100% + var(--lang-gap));
}

.lang_switcher .switcher-container:has(.lang-code.current:nth-of-type(1)) .switch-head {
  translate: 0%;
}

.lang_switcher .switcher-container:has(.lang-code.current:nth-of-type(2)) .switch-head {
  translate: calc(100% + var(--lang-gap));
}

.lang_switcher .switcher-container .lang-code {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lang_switcher .switcher-container .lang-code.current a {
  pointer-events: none;
  cursor: none;
}

.lang_switcher .switcher-container .lang-code a {
  height: var(--lang-width);
  aspect-ratio: 1.2/1;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: center;
}

.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 {
  display: flex;
  flex-wrap: nowrap;
  flex-flow: row;
  /* max-width: unset !important; */
  /* width: unset !important; */
  width: 600px !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; */
  -webkit-clip-path: padding-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);
}

:is(:where(.dark) [data-scrolloverlapvertical] section > *) {
  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: 190px;
  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, 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;
}

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

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

:is(:where(.dark) .filtered-grid .filter-ui > *) {
  --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));
}

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

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

.filtered-grid .filter-ui > *.checked {
  background-color: var(--main-color);
}

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

:is(:where(.dark) .filtered-grid .filter-ui > *.checked) {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

.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);
}

.filtered-grid .logos-grid > * {
  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;
  background-color: white;
  border-radius: var(--def-border-radius);
  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 {
  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 .flip-card-back {
  --tw-bg-opacity: 1;
  background-color: rgb(100 116 139 / var(--tw-bg-opacity));
  transform: rotateY(180deg);
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 0.5rem;
}

.filtered-grid .logos-grid.flip-effect .flip-card-container .flip-card .flip-card-back > *:last-child {
  margin-top: 0.5rem;
  display: flex;
  gap: clamp(0.2rem, 3vw, 0.5rem);
}

.filtered-grid .logos-grid.flip-effect .flip-card-container .flip-card h3 {
  /* font-size: 1rem; */
  font-size: clamp(0.75rem, 3vw, 1rem);
  text-transform: uppercase;
  color: white;
  text-align: center;
}

.filtered-grid .logos-grid.flip-effect .flip-card-container .flip-card span {
  font-size: clamp(0.6rem, 3vw, 0.8rem);
  border-radius: var(--def-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-modal] {
  display: grid;
  opacity: 0;
  pointer-events: none;
  width: 100vw !important;
  max-width: unset !important;
  height: 100dvh;
  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);
}

:is(:where(.dark) [data-modal] p) {
  color: var(--txt-color-dark) !important;
}

[data-modal] .backdrop {
  background: rgba(0, 0, 0, 0.45);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
  width: 100vw !important;
  max-width: unset !important;
  height: 100dvh;
  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);
  border-color: rgb(0 0 0 / 0.1);
  background-color: var(--bg-light);
}

:is(:where(.dark) [data-modal] .content-wrapper) {
  border-color: rgb(255 255 255 / 0.3);
  background-color: var(--bg-layer2-dark);
}

[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);
  /* padding-bottom: var(--padding); */
  /* height: 350px; */
  /* :has(.is-bg) {
				position: sticky;
				figure,
				img,
				svg {
					color: rgb(0 0 0 / 5%);
					z-index: 0;
					translate: -15%;
					rotate: 15deg;
				}

				figure ~ * {
					position: relative;
					z-index: 1;
				}
			} */
}

[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 {
  text-align: center;
}

[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));
}

:is(:where(.dark) .figures-grid .counter-item .pct-counter) {
  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) !important;
}

.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);
}

:is(:where(.dark) figure.local-video.shadow)::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;
}

@supports (hanging-punctuation: first) and (font: -apple-system-body) and (-webkit-appearance: none) {
  @media (hover: none) {
    nav.dot-navigation {
      display: none !important;
    }
  }
}

section.pct-section:has(> .sticky-scene) {
  padding-block: 0 !important;
}

section.pct-section:has(> .sticky-scene) .sticky-scene .is-bg {
  max-width: unset !important;
  width: 100vw !important;
  /* inset: 0 !important; */
  left: 50%;
  translate: -50% 0 !important;
  /* translate: calc(var(--def-layout-x-padding) * -1) 0 !important; */
}

/*! TESTIMONIALS SPLIDE  */

[data-testimonials] {
  padding-top: 0 !important;
  margin-top: var(--default-section-vert-padding);
}

[data-testimonials]:has(.splide__pagination) {
  margin-bottom: 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);
}

[data-testimonials] .splide__track {
  -webkit-mask-image: var(--mask-horiz-gradient);
          mask-image: var(--mask-horiz-gradient);
}

[data-testimonials] .splide__pagination {
  flex-flow: row !important;
  list-style: none;
}

[data-testimonials] .splide__pagination [role="presentation"]::before {
  display: none;
}

[data-testimonials] .splide__pagination [role="presentation"] [role="tab"].is-active {
  background: black;
}

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

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

/*! HOME — SECCIÓN TRANSICIÓN ¿QUÉ ES VERTIGO?
    Clases: pct-section full-width no-py section-que-es theme-color-A
    Columna izq: .has-bg .que-es-col-left + .is-bg (foto) + texto
    Columna der: .que-es-col-right (2 fotos apiladas)
    Decorativo: .pulsing-dot (posicionado absoluto en la unión de columnas)
    Nota: theme-color-A maneja los colores de headings y texto. Solo se
    sobreescribe el color de <em> para el acento naranja (var(--main-color)).
*/

/* El grupo de columnas ocupa el 100% sin restricción de max-width del padre full-width */

.section-que-es > .wp-block-group:first-child {
  max-width: 100% !important;
  width: 100% !important;
  gap: 0 !important;
  align-items: stretch;
}

/* Columna izquierda: foto de fondo + texto en la parte inferior */

.section-que-es .que-es-col-left {
  min-height: 85vh;
  display: flex !important;
  flex-direction: column;
  justify-content: flex-end;
  padding: var(--default-section-vert-padding) var(--def-layout-x-padding) !important;
}

.section-que-es .que-es-col-left::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
				155deg,
				transparent 0%,
				rgba(0, 0, 0, 0.2) 40%,
				rgba(0, 0, 0, 0.72) 100%
			);
  z-index: 1;
  pointer-events: none;
}

.section-que-es .que-es-col-left > *:not(.is-bg) {
  position: relative;
  z-index: 2;
}

.section-que-es .que-es-col-left h2 {
  font-size: clamp(2.8rem, 5.5vw, 4.5rem);
  line-height: 1.05;
  letter-spacing: -0.02em;
  margin-bottom: 1rem;
}

.section-que-es .que-es-col-left p {
  font-size: clamp(1rem, 1.8vw, 1.3rem);
  font-weight: 300;
  opacity: 0.88;
  max-width: 38ch;
}

/* Acento naranja en <em> dentro del h2 — sobreescribe theme-color-A */

.section-que-es .que-es-col-left h2 em {
  color: var(--main-color);
  font-style: normal;
}

/* Columna derecha: 2 fotos apiladas en filas iguales */

.section-que-es .que-es-col-right {
  display: grid !important;
  grid-template-rows: 1fr 1fr;
}

.section-que-es .que-es-col-right .wp-block-image {
  overflow: hidden;
  margin: 0 !important;
}

.section-que-es .que-es-col-right .wp-block-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

/* Pulsing dot en la unión de las dos columnas */

.section-que-es > .pulsing-dot {
  --dot-dim: 52px;
  position: absolute !important;
  left: 60%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  max-width: unset !important;
  width: var(--dot-dim) !important;
  margin: 0 !important;
}

@media (max-width: 1024px) {
  .section-que-es > .pulsing-dot {
    display: none
  }
}

.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  */

/* body.home {
	.slider .slider-cover:not(.block-editor-block-list__block) {
	}
} */

:root {
  --heading-color: var(--heading-color-theme-A) !important;
}

.slider h1 {
  font-family: var(--txt-slider-heading);
  font-weight: 700;
  line-height: 1;
}

.theme-color-A {
  --border-color: var(--heading-color-theme-A);
  --border-color-dark: var(--heading-color-theme-A-dark);
  /* background: var(--bg-color-theme-A); */
}

.theme-color-A *:not(textarea):not(a strong):not(em):not(em *) {
  color: var(--txt-color-theme-A);
}

.theme-color-A h1,
	.theme-color-A h2,
	.theme-color-A h3,
	.theme-color-A h4 {
  color: var(--heading-color-theme-A);
}

:is(:where(.dark) .theme-color-A h1),:is(:where(.dark) 
	.theme-color-A h2),:is(:where(.dark) 
	.theme-color-A h3),:is(:where(.dark) 
	.theme-color-A h4) {
  color: var(--heading-color-theme-A-dark);
}

.theme-color-A a {
  color: white !important;
}

.theme-color-A a.bt-inline {
  background-color: white;
  color: var(--main-color) !important;
}

.theme-color-B {
  --border-color: var(--heading-color-theme-B);
  --border-color-dark: var(--heading-color-theme-B-dark);
  background-color: var(--bg-color-theme-B);
}

:is(:where(.dark) .theme-color-B) {
  background-color: var(--bg-color-theme-B-dark);
}

.theme-color-B h1,
	.theme-color-B h2,
	.theme-color-B h3,
	.theme-color-B h4 {
  color: var(--heading-color-theme-B) !important;
}

:is(:where(.dark) .theme-color-B h1),:is(:where(.dark) 
	.theme-color-B h2),:is(:where(.dark) 
	.theme-color-B h3),:is(:where(.dark) 
	.theme-color-B h4) {
  color: var(--heading-color-theme-B-dark);
}

.theme-color-B p {
  color: var(--txt-color-theme-B) !important;
}

:is(:where(.dark) .theme-color-B p) {
  color: var(--txt-color-theme-B-dark);
}

.theme-color-white {
  background-color: var(--bg-color-theme-white);
}

:is(:where(.dark) .theme-color-white) {
  background-color: var(--bg-color-theme-white-dark);
}

.theme-color-white h1,
	.theme-color-white h2 {
  color: var(--heading-color-theme-white);
}

:is(:where(.dark) .theme-color-white h1),:is(:where(.dark) 
	.theme-color-white h2) {
  color: var(--heading-color-theme-white-dark);
}

#masthead .main-nav-desktop .menu-item a, #masthead .main-nav-mobile .menu-item a {
  text-transform: uppercase;
  font-size: 0.9rem;
}

@media only screen and (max-width: 1074px) {
  #masthead .main-nav-desktop .menu-item a {
    font-size: clamp(0.8rem, 5vw, 0.8rem)
  }
}

#masthead .main-nav-mobile .menu-bt {
  margin-top: 1rem;
}

.theme-color-green {
  --border-color: var(--heading-color-theme-green);
  background: var(--bg-color-theme-green);
  /* background: var(--bg-color-theme-A); */
}

.theme-color-green *:not(textarea):not(a strong):not(em):not(em *) {
  color: var(--txt-color-theme-green);
}

.theme-color-green h1,
	.theme-color-green h2,
	.theme-color-green h3,
	.theme-color-green h4 {
  color: var(--heading-color-theme-green);
}

:is(:where(.dark) .theme-color-green h1),:is(:where(.dark) 
	.theme-color-green h2),:is(:where(.dark) 
	.theme-color-green h3),:is(:where(.dark) 
	.theme-color-green h4) {
  color: var(--heading-color-theme-green-dark);
}

.theme-color-green a {
  color: white !important;
}

.theme-color-green a.bt-inline {
  background-color: white;
  color: var(--main-color) !important;
}

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

:is(:where(.dark) .pct-section.separation-line)::before,:is(:where(.dark) 
	.pct-section.separation-line)::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;
}

.main-nav-mobile .mega-menu-content {
  display: flex !important;
  width: 100%;
}

.main-nav-mobile .mega-menu-content .pct-tile-area-logo {
  height: 26px;
}

/*! 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;
  padding-top: 3rem;
}

@media (min-width: 768px) {
  body.home .slider > div:first-of-type figure, body:has(.home) .slider > div:first-of-type figure {
    padding-top: 0px;
  }
}

body.home .slider p, body:has(.home) .slider p {
  font-size: clamp(1rem, 5vw, 1.1rem);
}

body.home .slider.anim-intro-triggered .slider-cover, body:has(.home) .slider.anim-intro-triggered .slider-cover {
  background-color: white !important;
  animation: flash 2s ease-out 1;
}

body.home .slider .is-bg.darken-bottom::after, body:has(.home) .slider .is-bg.darken-bottom::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--dark-overlay-from-bottom-for-text);
}

@keyframes flash {
  0% {
    opacity: 0;
  }

  10% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

/*! 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: 100dvh;
  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%; */
}

h2 {
  margin: 0;
  padding: 0;
}

.test {
  display: flex;
  /* flex-wrap: wrap; */
  flex-flow: row;
}

.test figure {
  display: inline-flex;
}

.heading-falling-down {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
  /* height: 100vh; */
  position: relative;
  display: grid;
  place-content: center;
  /* background-color: indigo; */
  margin-top: 6rem;
  /* img {
		position: absolute;
		z-index: -1;
		aspect-ratio: 1/1;
		object-fit: cover;
		width: 250px;

		&:nth-of-type(1) {
			top: 20%;
			left: 10%;
		}
		&:nth-of-type(2) {
			top: 10%;
			left: 30%;
		}
		&:nth-of-type(3) {
			top: 18%;
			left: 55%;
		}
		&:nth-of-type(4) {
			top: 25%;
			left: 80%;
			z-index: 1;
		}
	} */
}

.heading-falling-down:has(figure) {
  display: flex;
  /* flex-wrap: nowrap; */
  flex-flow: row;
}

/* align-items: center; */

.heading-falling-down:has(figure) figure {
  --tw-brightness: brightness(0);
  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);
}

:is(:where(.dark) .heading-falling-down:has(figure) figure) {
  --tw-brightness: brightness(1);
  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);
}

.heading-falling-down:has(figure) figure {
  display: inline-flex;
  /* display: inline-flex; */
  /* width: fit-content; */
  /* height: auto;
			max-width: unset !important;
			img {
				object-fit: unset !important;
			} */
  /* width: auto; */
}

.heading-falling-down:has(figure) figure img {
  -o-object-fit: unset !important;
     object-fit: unset !important;
}

.heading-falling-down h2 {
  /* font-family: "Bebas Neue", Helvetica, Arial, sans-serif; */
  /* @apply text-[#110b34] dark:text-white; */
  font-kerning: none;
  /* user-select: none; */
  letter-spacing: clamp(0.1rem, 3vw, 1rem);
  font-size: clamp(2rem, 10vw, 12rem) !important;
  /* color: #110b34; */
  /* color: transparent; */
  /* -webkit-text-stroke: 3px white; */
}

.div1,
.div3 {
  height: 50vh;
}

.div1 {
  background-color: pink;
}

.div2 {
  background-color: salmon;
}

@media only screen and (max-width: 767px) {
  .div2.pct-2cols {
    grid-template-columns: 1fr
  }
}

.square {
  width: 180px;
  height: 20vh;
  background-color: blue;
  z-index: 50;
  /* transition: all 1s ease; */
}

/* .square2 {
	margin-top: 100px;
	width: 200px;
	height: 100vh;
	background-color: fuchsia;
} */

.red {
  background-color: red;
}

/* [data-split_text] .line {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
} */

.pointerXX {
  opacity: 0;
  background-color: yellow;
  border-radius: 50%;
  aspect-ratio: 1/1;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1ch;
}

.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 VIDEO BACKGROUND */

.slider.has-video-bg {
  position: relative;
  color: white;
}

.slider.has-video-bg h1 {
  font-size: clamp(3.4rem, 10vw, 7rem);
  color: white;
  text-align: center;
  margin-bottom: 0.5ch;
  opacity: 0;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
}

.slider.has-video-bg p {
  text-align: center;
}

.slider.has-video-bg p.description {
  font-size: clamp(1.2rem, 3vw, 1.6rem);
  font-weight: 500;
}

.slider.has-video-bg .slider-cover:not(.block-editor-block-list__block) {
  display: block;
  position: absolute;
  /* opacity: 0; */
  inset: 0;
  background-color: black;
  max-width: unset !important;
  width: 100vw !important;
  height: 100dvh;
}

@media only screen and (max-width: px) {
}

.slider.has-video-bg .scene {
  justify-content: flex-end;
  padding-bottom: clamp(1rem, 3vw, 3rem);
}

.pulsing-dot {
  --dot-color: var(--main-color);
  --dot-dim: 40px;
  --dot-wave-width: 1px;
  --dot-wave-distance: 1.5;
  --dot-padding: 0.5rem;
  position: relative;
  z-index: 3;
  display: grid;
  place-content: center;
  width: var(--dot-dim) !important;
  height: var(--dot-dim) !important;
  aspect-ratio: 1 / 1;
  max-width: unset !important;
  /* background-color: currentColor; */
  background-color: var(--dot-color);
  border-radius: 9999px;
}

.pulsing-dot > * {
  padding: 0 !important;
  margin: 0 !important;
  grid-area: 1 / 1;
  line-height: 1;
}

.pulsing-dot::before {
  content: "";
  position: absolute;
  inset: 0;
  border: var(--dot-wave-width) solid var(--dot-color);
  background-color: transparent;
  border-radius: 9999px;
  animation: dot-wave 2s ease-out infinite;
}

.pulsing-dot::after {
  content: "";
  position: absolute;
  inset: 0;
  border: var(--dot-wave-width) solid var(--dot-color);
  border-radius: 9999px;
  animation: dot-wave 2s ease-out infinite 0.5s;
}

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

@keyframes dot-wave {
  75%,
	100% {
    scale: calc(var(--dot-wave-distance, 1) * 3);
    opacity: 0;
  }

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

  100% {
    scale: calc(var(--dot-wave-distance, 1) * 7);
    opacity: 0;
  }
}

/*! FICHA DE ÁREA  */

:is(:where(.temp-body-bg) .solutions-grid) h2 {
  color: var(--color-header);
  /* color: white; */
}

:is(:where(.temp-body-bg) .solutions-grid) p {
  color: var(--color-content);
}

.area-intro > :first-child figure {
  display: flex;
  justify-content: center;
}

.area-intro svg {
  width: 100%;
  max-height: 300px;
  opacity: 0.4;
}

.animated-grid {
  --padding: calc(var(--card-padding) * 0.5);
  display: grid;
  /* grid-template-columns: repeat(4, 1fr); */
  grid-template-columns: repeat(auto-fit, minmax(290px, auto));
  gap: calc(var(--def-border-radius) * 5.5);
}

.animated-grid a:has(.grid-tile) {
  pointer-events: none !important;
  border-radius: var(--def-border-radius);
  overflow: clip;
  padding-bottom: 0 !important;
}

@media (any-hover: hover) {
  .animated-grid a:has(.grid-tile) {
    pointer-events: all !important;
  }

  .animated-grid a:has(.grid-tile) .grid-content img {
    scale: 1;
  }

  .animated-grid a:has(.grid-tile):hover .grid-content img {
    scale: 1.3;
  }

  .animated-grid a:has(.grid-tile) > * {
    pointer-events: none;
  }
}

.animated-grid .grid-tile {
  /* background-color: #505050; */
  display: flex;
  height: 100%;
  --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));
}

:is(:where(.dark) .animated-grid .grid-tile) {
  --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));
}

/* border-radius: var(--def-border-radius);
		overflow: clip; */

/* color: white; */

.animated-grid .grid-tile .grid-content {
  height: 100%;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}

.animated-grid .grid-tile .grid-content > div:first-of-type figure {
  width: 100%;
  aspect-ratio: 1.6/0.9;
  overflow: clip;
  background: var(--card-gradient);
}

.animated-grid .grid-tile .grid-content > div:first-of-type img {
  transition: all 1s cubic-bezier(0.2, 1, 0.3, 1);
  /* padding: 0.3rem; */
  -o-object-fit: cover;
     object-fit: cover;
}

.animated-grid .grid-tile .grid-content > div:first-of-type > div:last-of-type {
  padding: var(--padding);
}

.animated-grid .grid-tile .grid-content > div:last-of-type {
  padding: var(--padding);
}

.animated-grid .grid-tile .grid-content h3 {
  padding-top: 0;
  font-size: clamp(1.3rem, 5vw, 2rem);
}

.animated-grid .grid-tile .grid-content .wp-block-buttons {
  margin-top: 0;
  padding-top: 0 !important;
}

.animated-grid .grid-tile .grid-content .wp-block-buttons .wp-element-button {
  pointer-events: all;
  font-size: 1rem;
}

@media (any-hover: hover) {
  .animated-grid .grid-tile .grid-content .wp-block-buttons {
    display: none;
  }
}

.wpcf7 {
  padding-top: calc(var(--def-layout-x-padding) * 0.5);
}

/*! SINGLE POSTS STYLES */

body.single-post .post .entry-content {
  padding: var(--default-section-vert-padding) 0;
}

body.single-webinar-ondemand .entry-header-content:has(.above-header), body.single-ebook .entry-header-content:has(.above-header) {
  display: flex;
  flex-flow: column;
}

body.single-webinar-ondemand .above-header, body.single-ebook .above-header {
  z-index: 5;
}

body.single-webinar-ondemand .above-header figure, body.single-ebook .above-header figure {
  max-width: 150px;
}

body.single-webinar-ondemand .above-header:not(:has(figure)), body.single-ebook .above-header:not(:has(figure)) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  text-transform: uppercase;
  border: 1px solid white;
  margin-bottom: 0.5rem;
  border-radius: 999px;
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity));
  padding-left: 1.3rem;
  padding-right: 1.3rem;
  padding-top: 6px;
  padding-bottom: 6px;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

body.single-webinar-ondemand .pct-2cols.has-webinar-request-form > *:first-child, body.single-ebook .pct-2cols.has-webinar-request-form > *:first-child {
  grid-row: 1 / 3;
}

body.single-webinar-ondemand .pct-2cols.has-webinar-request-form > *:nth-child(2) h3, body.single-ebook .pct-2cols.has-webinar-request-form > *:nth-child(2) h3 {
  padding-top: 0;
}

body.single-webinar-ondemand .restricted-video, body.single-ebook .restricted-video {
  padding-top: calc(var(--default-section-vert-padding) * 0.5);
}

/*! DATE FOR EVENT CPT */

card.fecha {
  --padding-x: 1rem;
  --padding-y: 1rem;
  --color: black;
  --border-size: 6px;
  font-size: 1.5rem !important;
  border-width: var(--border-size);
  border-color: var(--color);
  color: var(--color);
  display: grid;
  grid-template-columns: 1fr;
  max-width: -moz-fit-content !important;
  max-width: fit-content !important;
  height: -moz-fit-content;
  height: fit-content;
}

/* width: fit-content !important; */

/* border: 2px solid white; */

/* padding: var(--padding-y); */

card.fecha .short-date {
  display: flex;
  flex-flow: column;
  padding: var(--padding-y) 0;
}

card.fecha .short-date > * {
  line-height: 1;
  display: flex;
  justify-content: center;
  line-height: center;
  padding: 0 var(--padding-x);
}

card.fecha .short-date .dia {
  /* font-size: clamp(1.6em, 8vw, 3em); */
  font-size: clamp(2em, 8vw, 3em);
  font-weight: bold;
}

card.fecha .short-date .mes {
  text-transform: uppercase;
  font-weight: bold;
  font-size: clamp(1.2em, 6vw, 1.6em);
}

card.fecha .short-date .year {
  margin-top: var(--padding-y);
  border-top: var(--border-size) solid var(--color);
  padding-top: var(--padding-y);
  font-weight: bold;
  font-size: clamp(1em, 6vw, 1.3em);
  /* font-size: 1.3em; */
}

card.fecha.show-hours {
  grid-template-columns: 33% 1fr;
  max-width: 600px !important;
}

card.fecha.show-hours .extended-date {
  padding: var(--padding-y) var(--padding-x);
  border-left: var(--border-size) solid var(--color);
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}

card.fecha.show-hours .extended-date > * {
  line-height: 1;
}

card.fecha.show-hours .extended-date .location {
  display: flex;
  text-align: center;
  text-wrap: balance;
  text-transform: uppercase;
  font-weight: 600;
  font-size: clamp(1.4em, 7vw, 1em);
  letter-spacing: 0px;
  padding-bottom: 0.5rem;
}

.slider:has(card.fecha) card.fecha {
  --color: white;
}

:root.dark card.fecha,
	:root.dark .apply-header {
  --color: var(--main-color);
}

/*! EVENT LANDING STYLES */

body.single-evento #content #contenido h2 {
  font-size: clamp(2rem, 5vw, 4rem);
}

.event-landing-apply {
  --color: black;
  --border-size: 6px;
  --padding-x: 1rem;
  --padding-y: 1rem;
  padding-bottom: var(--def-layout-x-padding);
}

/* background: indianred; */

/* margin-bottom: 1rem; */

/* figure {
				img {
					max-height: 60px;
				}
			} */

.event-landing-apply .content .apply-header .apply-header-description {
  display: flex;
  justify-content: center;
  align-items: center;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

:is(:where(.dark) .event-landing-apply .content .apply-header .apply-header-description) {
  background-color: rgb(255 255 255 / 0.1);
}

.event-landing-apply .content .apply-header .apply-header-description {
  border: var(--border-size) solid var(--color);
  border-bottom-width: 0;
  font-weight: bold;
  font-size: clamp(1.2em, 6vw, 1.6em);
  padding: var(--padding-y) var(--padding-x);
}

.event-landing-apply .content .apply-header:has(.has-logo) {
  margin-bottom: var(--padding-y);
}

.event-landing-apply .content .apply-header:has(.has-logo) .apply-header-description {
  padding: 0;
  border-color: var(--color);
  background-color: transparent;
}

:is(:where(.dark) .event-landing-apply .content .apply-header:has(.has-logo) .apply-header-description) {
  border-color: rgb(255 255 255 / var(--tw-border-opacity)) !important;
  --tw-border-opacity: 1;
  border-bottom-color: rgb(255 255 255 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

.event-landing-apply .content .apply-header:has(.has-logo) .apply-header-description {
  border: unset !important;
}

.event-landing-apply .content .apply-header:has(.has-logo) .apply-header-description figure {
  width: 100%;
  padding: 1rem;
}

.event-landing-apply .content .apply-header:has(.has-logo) .apply-header-description.is-webinar {
  background-color: transparent;
}

:is(:where(.dark) .event-landing-apply .content .apply-header:has(.has-logo) .apply-header-description.is-webinar) {
  background-color: transparent;
}

.event-landing-apply .content .apply-header:has(.has-logo) .apply-header-description.is-webinar figure {
  --tw-brightness: brightness(0);
  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);
}

:is(:where(.dark) .event-landing-apply .content .apply-header:has(.has-logo) .apply-header-description.is-webinar figure) {
  --tw-brightness: brightness(1);
  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);
}

.event-landing-apply .content card {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

:is(:where(.dark) .event-landing-apply .content card) {
  background-color: rgb(255 255 255 / 0.1);
}

.event-landing-apply .content .address,
		.event-landing-apply .content .precio {
  display: flex;
  flex-flow: column;
  align-items: center;
  border-width: var(--border-size);
  border-top: 0;
  border-color: var(--color);
}

:is(:where(.dark) .event-landing-apply .content .address),:is(:where(.dark) 
		.event-landing-apply .content .precio) {
  border-color: var(--main-color);
}

.event-landing-apply .content .address,
		.event-landing-apply .content .precio {
  padding: var(--padding-y) var(--padding-x);
}

.event-landing-apply .content .address strong, .event-landing-apply .content .precio strong {
  text-transform: uppercase;
}

.event-landing-apply .content .address p, .event-landing-apply .content .precio p {
  text-align: center;
}

.event-landing-apply .content .address p:first-of-type, .event-landing-apply .content .precio p:first-of-type {
  margin-bottom: 0.5rem;
}

.event-landing-apply .content .address p:last-of-type, .event-landing-apply .content .precio p:last-of-type {
  margin-bottom: 0;
}

.event-landing-apply .content .precio {
  border: 0 !important;
  background: transparent;
}

.event-landing-apply .content .wp-block-buttons {
  padding-top: 0.5rem;
}

.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;
}

:is(:where(.dark) .list-icons > *) {
  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));
}

:is(:where(.dark) .list-icons > * h2),:is(:where(.dark) 
		.list-icons > * h3),:is(:where(.dark) 
		.list-icons > * h4) {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

@container li-icons (width < 460px) {
  .li-item {
    grid-template-columns: 1fr;
  }
}

/* .pct-section > h2 {
	width: fit-content !important;
} */

/*! SLIDERS STYLES (SWIPER) */

.slider-webinars {
  width: 100vw !important;
  max-width: unset !important;
  height: auto;
}

.slider-webinars .swiper-slide img {
  width: 100% !important;
}

.slider-webinars .swiper-slide a {
  /* pointer-events: none; */
  cursor: grab;
}

.slider-webinars .swiper-slide.swiper-slide-active a {
  pointer-events: all;
  cursor: pointer;
}

/*! Cifras Mercanza */

.cifras {
  margin-bottom: clamp(4rem, 15vw, 6rem);
}

/*! Horizontal scroll QlikAcademy @ home */

.qlikacademy {
  --padding-x: 4rem;
}

.qlikacademy .qlikacademy-logo {
  padding: 2rem var(--padding-x);
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}

:is(:where(.dark) .qlikacademy .qlikacademy-logo) {
  background-color: rgb(255 255 255 / 0.2);
}

.qlikacademy .sub-logo {
  padding-top: calc(var(--def-layout-x-padding) * 0.5);
  padding-left: var(--padding-x);
  font-size: 1.5em;
}

[data-scrollhorizontal] .horiz-scroll {
  margin-top: var(--def-layout-x-padding) !important;
  gap: 2rem;
  padding-right: var(--def-layout-x-padding);
}

[data-scrollhorizontal] .horiz-scroll section {
  display: grid;
  grid-template-columns: 1fr var(--def-layout-x-padding);
}

/* height: 100% !important; */

[data-scrollhorizontal] .horiz-scroll section > div {
  display: flex !important;
  height: 100% !important;
  padding: var(--def-layout-x-padding);
  border-radius: var(--def-border-radius);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

:is(:where(.dark) [data-scrollhorizontal] .horiz-scroll section > div) {
  background-color: rgb(255 255 255 / 0.2);
}

[data-scrollhorizontal] .horiz-scroll section > div h4 {
  padding-top: 0;
  font-size: clamp(1.3rem, 5vw, 1.8rem);
  font-weight: bold;
  line-height: 1.1;
  margin-bottom: 1ch;
}

@media only screen and (max-width: px) {
}

[data-scrollhorizontal] .horiz-scroll section:last-of-type {
  margin-right: var(--def-layout-x-padding);
  /* background-color: red; */
}

.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);
}

:is(:where(.dark) .pinned-col-right .col-pinned) {
  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;
}

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

:is(:where(.dark) .multi-checkbox) {
  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;
}

[data-swiper] .swiper-slide {
  border-radius: calc(var(--def-border-radius) * 2);
  overflow: clip;
}

[data-swiper] .swiper-slide img {
  border-radius: unset !important;
  overflow: auto;
}

[data-swiper] .swiper-slide:has(svg) {
  display: grid;
  grid-template-columns: 1fr;
}

[data-swiper] .swiper-slide:has(svg) > * img {
  translate: 0 -2px;
}

.social-icons .social-item {
  padding: 0 0.3rem;
}

.social-icons .social-item i {
  font-size: 0.9rem;
}

#top-menu .social-icons .social-item i {
  font-size: 0.9rem;
}

/* @apply bg-gradient-footer; */

/* background: rgb(255, 0, 0); */

#footer .footer-container .pct-section {
  padding-bottom: 0;
  padding-top: 0;
}

#footer .footer-container .pct-section::before {
  content: "";
  display: flex;
  width: 100%;
  height: 50%;
  position: absolute;
  top: 50%;
  /* @apply bg-gradient-footer; */
  background-image: linear-gradient(to top, black, #343434 100%);
}

#footer .company-logo svg {
  max-width: 400px;
}

body.home .sections .pct-section#documentos {
  margin-bottom: calc((var(--default-section-vert-padding) + 50px) * -2);
}

#footer .copyright-container {
  padding-top: 3rem;
  /* margin-top: 3rem; */
  /* @apply bg-gradient-footer-3; */
  background: black;
}

#footer .copyright-container .pct-copyright > * {
  width: initial;
}

#footer .copyright-container .pct-copyright .company-logo svg {
  max-width: 300px;
}

#footer .copyright-container .pct-copyright .copy .copy-year {
  display: flex;
  flex-flow: row;
  justify-content: center;
  gap: 1ch;
}

#footer .copyright-container .pct-copyright .copy .copy-year > * {
  display: contents;
  width: initial;
}

#footer .copyright-container .pct-copyright .copy .copy-legal {
  display: flex;
  flex-flow: row;
  gap: 1ch;
  margin-bottom: 1rem;
}

#footer .copyright-container .pct-copyright .copy .copy-legal > * {
  display: contents;
  width: initial;
}

#footer .copyright-container .pct-copyright .copy .copy-legal > *:not(:last-of-type)::after {
  content: "|";
  padding: 0 0ch;
}

#footer .copyright-container .pct-copyright a {
  color: white !important;
}

#footer .copyright-container .copy {
  padding-left: 1rem;
  padding-right: 1rem;
}

.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";
}

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

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

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

[data-stickysection] .is-layer {
  overflow: clip;
}

[data-stickysection] .is-layer em {
  display: contents !important;
}

[data-stickysection] .is-layer h2 {
  margin-block: 0 !important;
}

[data-stickysection] .is-layer[data-st-index="1"] {
  /* Timing */
  --st-size: 2;
  --st-in: 0;
  --st-out: 0.5;
  /* --st-gap-after: 0.2; */
  /* Estado inicial (capa oculta antes de entrar) */
  --st-initial-scale: 1;
  --st-initial-opacity: 0;
  /* Fade-in */
  --st-in-scale: 1;
  --st-in-opacity: 1;
  --st-in-ease: power1.out;
  /* Fade-out */
  --st-out-scale: 4;
  /* ← zoom-out grande */
  --st-out-opacity: 0;
  --st-out-ease: power3.in;
}

[data-stickysection] .is-layer[data-st-index="2"] {
  --st-size: 1;
  --st-in: 0.1;
  /* entra rápido */
  --st-out: 0.2;
  /* sale rápido */
  /* 80% del slot en hold */
  /* Fade-in */
  --st-initial-scale: 0.7;
  --st-in-scale: 1;
  /* Fade-out */
  --st-out-scale: 2;
  /* ← zoom-out grande */
  --st-out-opacity: 0;
  --st-out-ease: power3.in;
}

[data-stickysection].sticky-que-es .is-layer[data-st-index="1"] {
  inset: unset;
  padding-top: var(--default-section-vert-padding);
}

[data-stickysection].sticky-valores {
}

.flex-min-content-start {
  display: flex;
  flex-flow: row;
  gap: var(--card-padding);
  align-items: center;
}

.flex-min-content-start *:first-child {
  flex: 0 0 auto;
}

@media only screen and (max-width: 525px) {
  .flex-min-content-start {
    flex-flow: column;
    align-items: center
  }
}

.card-valena-comillas {
  background-color: #000000;
  --comillas-height: 80px;
  /* border-radius: 0 !important; */
}

.card-valena-comillas > figure.comillas {
  position: relative;
  height: calc(var(--card-padding) * 1.5) !important;
  margin-top: calc(var(--card-padding) * -1) !important;
  width: calc(100% + var(--card-padding) * 2);
  margin-left: calc(var(--card-padding) * -1) !important;
  background: var(--main-color);
  margin-bottom: var(--comillas-height) !important;
}

.card-valena-comillas > figure.comillas svg {
  position: absolute;
  left: var(--card-padding);
  bottom: 10px;
  width: var(--comillas-height);
  height: var(--comillas-height);
  color: var(--main-color);
  transform-origin: top left;
  translate: 0 100%;
}

.card-valena-comillas h3 {
  margin-bottom: 0 !important;
}

.card.heading-numbered h2,
	.card.heading-numbered h3 {
  display: flex;
  flex-flow: column;
  row-gap: 1ch;
}

.card.top-decoration {
  /* --decoration-color: red; */
  --decoration-height: 6px;
  --card-border-radius: 4px;
}

.card.top-decoration::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--decoration-height);
  /* height: var(--card-border-radius); */
  background-color: var(--decoration-color, var(--main-color));
}

.grid-min-first {
  display: grid;
  grid-template-columns: min-content 1fr;
  gap: 2ch;
  row-gap: 2.5ch;
}

.grid-min-first h2,
	.grid-min-first h3,
	.grid-min-first h4 {
  margin-bottom: 0 !important;
}

[data-stickysection] .sticky-scene .pulsing-dot {
  --dot-color: white;
  position: absolute;
  z-index: 0;
  opacity: 0.9;
  top: 100%;
  left: 90%;
}

[data-stickysection] .sticky-scene .pulsing-dot:nth-of-type(1) {
  --dot-dim: 3rem;
  --dot-wave-width: 2px;
  top: 100%;
  left: 90%;
}

[data-stickysection] .sticky-scene .pulsing-dot:nth-of-type(2) {
  --dot-color: white;
  --dot-dim: 6rem;
  --dot-wave-width: 3px;
  top: 50%;
  left: 70%;
}

[data-stickysection] .sticky-scene .pulsing-dot:nth-of-type(3) {
  bottom: -100%;
  right: calc(0% - 25%);
  --dot-color: white;
  --dot-dim: 12rem;
  --dot-wave-width: 6px;
}

.form-wrapper {
  max-width: 500px !important;
  justify-self: center;
}

.font-weight-500 {
  font-weight: 500 !important;
}

#eventos {
  min-height: 100svh;
  justify-content: center;
  display: flex;
}

.pct-section.section-content {
  min-height: 100svh !important;
  display: flex;
  align-items: center;
  justify-content: center;
}

/*! HIDE SOCIAL ICONS UNTIL READY FROM CUSTOMER */

/* .social-icons {
	display: none;
} */

/**
 * 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: 1.5rem;
  --button-border-radius: var(--def-border-radius);
  --box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.04), 0px 6px 12px rgba(0, 0, 0, 0.02);
  --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: rgb(196, 228, 86); */
  /* --main-color: #c3ff00; */
  --main-color: #ff6700;
  --secondary-color: #43a87c;
  --main-color-darker: #7a9913;
  --bg-light: hsl(36, 50%, 96%);
  --bg-dark: rgb(3, 18, 39);
  --bg-layer2-dark: #051a36;
  /* --bg-dark: #24262b; */
  --bg-card-dark: #1d2a3d;
  --bg-card-light: white;
  --bg-sec-dark: rgba(255, 255, 255, 0.1);
  /*! 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-A: hsl(36, 50%, 96%);
  --heading-color-theme-A: hsl(0, 0%, 20%);
  --txt-color-theme-A: var(--heading-color-theme-A);
  --bg-color-theme-B: hsl(0, 0%, 20%);
  --heading-color-theme-B: white;
  --txt-color-theme-B: white;
  --bg-color-theme-green: hsl(154, 43%, 46%);
  --heading-color-theme-green: hsl(240, 37%, 12%);
  --txt-color-theme-green: hsl(240, 36%, 17%);
  --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 */
  --card-border-color-light: rgba(85, 60, 27, 0.5);
  --card-border-color-dark: rgb(255, 255, 255, 0.15);
  /* --card-border-color-dark: rgb(196, 228, 86, 0.5); */
  --cta-color: var(--secondary-color);
  /* --cta-color: #c3ff00; */
  /* --cta-color: var(--main-color); */
  --cta-color-dark: var(--main-color);
  --link-underline-color: var(--cta-color);
  --link-color: var(--main-color);
  --link-color-dark: var(--link-color);
  --txt-color: hsl(0deg 0% 19%);
  --txt-color: #343434;
  --txt-color-dark: white;
  --line-color: var(--heading-color);
  --line-color-dark: var(--heading-color-dark);
  /* --highlightColor: var(--main-color); */
  --highlightColor: var(--cta-color);
  --bg-white-semi-transp: hsl(0deg 0% 100% / 69%);
  --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;
  --dark-overlay-from-bottom-slider: linear-gradient(350deg, rgba(0, 0, 0, 1) 15%, rgba(0, 0, 0, 0) 100%);
  /* --dark-overlay-from-bottom-slider: linear-gradient(350deg, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 100%); */
  --dark-overlay-from-bottom-for-text: linear-gradient(0deg, rgba(0, 0, 0, 0.4) 5%, rgba(0, 0, 0, 0) 100%);
  --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(
		125deg,
		hsl(207deg 100% 58%) 0%,
		hsl(208deg 94% 57%) 11%,
		hsl(210deg 88% 55%) 22%,
		hsl(211deg 83% 53%) 33%,
		hsl(213deg 77% 51%) 44%,
		hsl(215deg 77% 49%) 56%,
		hsl(218deg 79% 46%) 67%,
		hsl(222deg 82% 44%) 78%,
		hsl(227deg 86% 41%) 89%,
		hsl(241deg 100% 36%) 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%
	);
  --header-scrolled-color: hsla(0, 0%, 100%, 1);
  --header-scrolled-border-color: var(--main-color-second);
  --header-scrolled-color-dark: rgba(0, 0, 0, 0.45);
  --header-scrolled-border-color-dark: var(--main-color-second);
  /* --heading-highlight-grad: linear-gradient(
		45deg,
		hsl(76deg 48% 43%) 0%,
		hsl(73deg 52% 44%) 11%,
		hsl(70deg 55% 45%) 22%,
		hsl(68deg 59% 46%) 33%,
		hsl(65deg 63% 47%) 44%,
		hsl(63deg 67% 48%) 56%,
		hsl(61deg 72% 48%) 67%,
		hsl(58deg 79% 49%) 78%,
		hsl(57deg 87% 50%) 89%,
		hsl(55deg 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%
	);
  --heading-highlight-grad-dark: linear-gradient(
		140deg,
		hsl(0deg 0% 100%) 0%,
		hsl(223deg 100% 95%) 40%,
		hsl(223deg 100% 90%) 56%,
		hsl(223deg 100% 85%) 67%,
		hsl(223deg 100% 80%) 76%,
		hsl(223deg 100% 75%) 82%,
		hsl(223deg 100% 71%) 88%,
		hsl(223deg 100% 66%) 93%,
		hsl(223deg 100% 61%) 97%,
		hsl(223deg 100% 56%) 100%
	);
  --heading-default-grad-mz: var(--footer-gradient);
  --heading-default-grad-bg: linear-gradient(
		270deg,
		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-default-grad-bg: linear-gradient(to top, var(--main-color), rgb(193, 63, 24) 100%);
  /* ? THEME COLOR SCHEME RED */
  --header-red-grad-bg: linear-gradient(
		0deg,
		hsl(0deg 100% 33%) 0%,
		hsl(8deg 98% 35%) 24%,
		hsl(13deg 96% 38%) 62%,
		hsl(16deg 94% 40%) 78%,
		hsl(18deg 91% 43%) 87%,
		hsl(20deg 88% 45%) 93%,
		hsl(22deg 85% 48%) 96%,
		hsl(23deg 85% 51%) 99%,
		hsl(25deg 92% 54%) 100%,
		hsl(26deg 100% 56%) 100%
	);
  --heading-red-grad-bg: linear-gradient(
		270deg,
		hsl(0deg 100% 33%) 0%,
		hsl(8deg 98% 35%) 24%,
		hsl(13deg 96% 38%) 62%,
		hsl(16deg 94% 40%) 78%,
		hsl(18deg 91% 43%) 87%,
		hsl(20deg 88% 45%) 93%,
		hsl(22deg 85% 48%) 96%,
		hsl(23deg 85% 51%) 99%,
		hsl(25deg 92% 54%) 100%,
		hsl(26deg 100% 56%) 100%
	);
  --header-scrolled-color-red: #a80000;
  --header-scrolled-border-color-red: #650707;
  /* --button-color-red: #b51f03; */
  --button-color-red: #b82403;
  --cta-color-red: var(--main-color);
  /* ? THEME COLOR SCHEME GREEEN */
  --header-green-grad-bg: linear-gradient(
		15deg,
		hsl(124deg 100% 25%) 0%,
		hsl(130deg 100% 26%) 9%,
		hsl(137deg 100% 28%) 25%,
		hsl(143deg 100% 29%) 40%,
		hsl(150deg 100% 31%) 52%,
		hsl(157deg 100% 32%) 63%,
		hsl(163deg 100% 34%) 73%,
		hsl(170deg 100% 35%) 83%,
		hsl(176deg 100% 36%) 91%,
		hsl(183deg 100% 38%) 100%
	);
  --header-scrolled-color-green: #008008;
  --header-scrolled-border-color-green: #035610;
  --grad-bg: linear-gradient(117deg, var(--main-color) 50%, var(--secondary-color));
  /* ? DEFINED BG COLOR LIST */
  --bgcolor-dark-1: #191308;
  --bgcolor-dark-2: #5b5bf1;
  --bgcolor-dark-3: #454b66;
  --bgcolor-dark-4: #2d0605;
  --bgcolor-dark-5: #4c0827;
  /* ? green custom secon grad bg */
  --header-custom-grad-bg-green: radial-gradient(50vw 100% at calc(110% - 5vw) 100%, hsl(114deg 98% 65% / 80%) 25%, hsl(57deg 98% 100% / 0%) 120%);
  /* ? yellow custom secon grad bg */
  --header-custom-grad-bg-yellow: radial-gradient(50vw 100% at calc(110% - 5vw) 100%, hsl(56deg 100% 56% / 80%) 25%, hsl(9deg 98% 36% / 0%) 120%);
  --header-custom-grad-bg-orange: radial-gradient(50vw 100% at calc(110% - 5vw) 100%, hsl(35deg 100% 56% / 80%) 25%, hsl(9deg 98% 36% / 0%) 120%);
  --header-custom-grad-bg: none;
  /* --transparent-header-bg-color: rgba(0,0,0,0.16); */
  --transparent-header-bg-color: rgba(255, 255, 255, 0.08);
  --transparent-header-bg-color-light: rgba(255, 255, 255, 0);
  --menu-item-hover-bg-color: rgba(255, 255, 255, 0.18);
  --menu-item-hover-bg-color-scrolled: rgba(0, 0, 0, 0.1);
  --menu-item-hover-bg-color-dark: rgba(255, 255, 255, 0.18);
  --menu-item-hover-bg-color-scrolled-dark: rgba(255, 255, 255, 0.18);
  /* --footer-bg-color: #363636; */
  --footer-bg-color: transparent;
  --ui-color: #eaeaea;
  --ui-color-subdarker: #ccc;
  --ui-color-darker: #767676;
  --second-color: #7f93c8;
  --third-color: #a8d4ff;
  --section-color: #fbf8f9;
  /* ! FONTS & TYPOGRAPHY */
  /* --def-font-family: "Outfit", Helvetica, Arial, sans-serif;
	--def-heading-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;
  /* ! DIMENSIONS CONSTANTS */
  --layout-max-width: 1280px;
  --def-layout-x-padding: clamp(1.3rem, 3vw, 2rem);
  --card-padding: clamp(2rem, 5vw, 3rem);
  --card-border-radius: var(--def-border-radius);
  --card-media-left-img-width: 33%;
  --card-icon-dim: 60px;
  --mobile-switcher-dim: 13px;
  --mobile-switcher-borderDim: 6px;
  --desktop-space-top: 1rem;
  /*! SECTIONS OVERLAP */
  /* * Animated border tiles */
  /* --bright-color: #3ac47e; */
  /* --bright-color: red; */
  /* --border-color: #b2c6d7; */
}

:root:has(.above-header-wrap) {
  --desktop-space-top: 0px;
}

:root {
  --mobile-header-height: 45px;
  --desktop-header-height: 60px;
  --desktop-above-header-height: 0px;
}

: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;
  --default-section-vert-padding: clamp(4.5rem, 10vw, 6rem);
  --header-min-height: 250px;
}

@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;
  --desktop-logo-brand-width: 140px;
  --mobile-logo-brand-width: 100px;
  --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: 100dvh;
  --section-overlap-y: 200px;
  --anim-border-width: 2px;
  --anim-border-radius: var(--def-border-radius);
  --bright-color: white;
  --border-color: #c1cdd5;
  --mask-horiz-gradient: radial-gradient(50% 250% at 50% 50%, #fff 70%, transparent 100%);
}

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

.static {
  position: static;
}

.fixed {
  position: fixed;
}

.absolute {
  position: absolute;
}

.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;
}

.grid {
  display: grid;
}

.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;
}

.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-\[1\.2rem\] {
  gap: 1.2rem;
}

.border {
  border-width: 1px;
}

.py-\[3rem\] {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.pt-\[\.5rem\] {
  padding-top: .5rem;
}

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

.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));
}

.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
 */

:is(:where(.dark) .dark\:block) {
  display: block;
}

:is(:where(.dark) .dark\:hidden) {
  display: none;
}

:is(:where(.dark) .dark\:text-\[var\(--main-color\)\]) {
  color: var(--main-color);
}
