/*!
Theme Name: HDC
Theme URI: https://sumun.net
Author: Sumun
Author URI: https://sumun.net
Description: HDC Full Site Editing Theme
Version: 1.0.0
Tested up to: 8.2
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: HDC
Tags: full site editing, sass, 

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

*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
  scroll-behavior: smooth;
  scrollbar-gutter: stable;
  scroll-padding-top: 7.75rem;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

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

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
  min-height: 100vh;
  overflow-x: hidden;
}

body.no-scroll {
  overflow-y: hidden;
  -ms-overflow-style: none; /* IE and Edge */
}

body.no-scroll::-webkit-scrollbar {
  display: none;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
@media (max-width:781px) {

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

@media (min-width:782px) and (max-width:991px) {

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

@media (min-width:992px) and (max-width:1439px) {

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

@media (min-width:1440px) {

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

.grid-columns-1 {
  display: grid;
  gap: var(--wp--custom--layout--block-gap);
  grid-template-columns: repeat(1, 1fr);
}

@media (max-width:991px) {

  .grid-columns-1 {
    grid-template-columns: 1fr;
  }
}

.grid-columns-2 {
  display: grid;
  gap: var(--wp--custom--layout--block-gap);
  grid-template-columns: repeat(2, 1fr);
}

@media (max-width:991px) {

  .grid-columns-2 {
    grid-template-columns: 1fr;
  }
}

.grid-columns-3 {
  display: grid;
  gap: var(--wp--custom--layout--block-gap);
  grid-template-columns: repeat(3, 1fr);
}

@media (max-width:991px) {

  .grid-columns-3 {
    grid-template-columns: 1fr;
  }
}

.grid-columns-4 {
  display: grid;
  gap: var(--wp--custom--layout--block-gap);
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width:991px) {

  .grid-columns-4 {
    grid-template-columns: 1fr;
  }
}

.grid-columns-5 {
  display: grid;
  gap: var(--wp--custom--layout--block-gap);
  grid-template-columns: repeat(5, 1fr);
}

@media (max-width:991px) {

  .grid-columns-5 {
    grid-template-columns: 1fr;
  }
}

.grid-columns-6 {
  display: grid;
  gap: var(--wp--custom--layout--block-gap);
  grid-template-columns: repeat(6, 1fr);
}

@media (max-width:991px) {

  .grid-columns-6 {
    grid-template-columns: 1fr;
  }
}

.grid-columns-7 {
  display: grid;
  gap: var(--wp--custom--layout--block-gap);
  grid-template-columns: repeat(7, 1fr);
}

@media (max-width:991px) {

  .grid-columns-7 {
    grid-template-columns: 1fr;
  }
}

.grid-columns-8 {
  display: grid;
  gap: var(--wp--custom--layout--block-gap);
  grid-template-columns: repeat(8, 1fr);
}

@media (max-width:991px) {

  .grid-columns-8 {
    grid-template-columns: 1fr;
  }
}

.grid-columns-9 {
  display: grid;
  gap: var(--wp--custom--layout--block-gap);
  grid-template-columns: repeat(9, 1fr);
}

@media (max-width:991px) {

  .grid-columns-9 {
    grid-template-columns: 1fr;
  }
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
.wp-block-post-title a {
  text-decoration: none;
}

[class*="has-heading-"][class*="-font-size"] {
  font-family: var(--wp--preset--font-family--font-heading);
  line-height: var(--wp--custom--line-height--tiny);
}

mark {
  background-color: transparent;
}

.has-font-heading-font-family {
  font-variant-numeric: lining-nums;
}

.components-resizable-box__container.block-library-spacer__resize-container {
  background-color: var(--wp--preset--color--primary-30);
}

.components-resizable-box__container.block-library-spacer__resize-container::before {
  content: attr(data-spaceheight);
  position: absolute;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%);
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
:where(.wp-block-group.has-background) {
  padding: var(--wp--custom--layout--block-gap);
}

@media (min-width:992px) {

  body {
    --wp--style--root--padding-right: 2.5rem;
    --wp--style--root--padding-left: 2.5rem;
  }
}

body .is-layout-flow > .wp-block-image.alignright {
  margin-inline-start: 0;
}

body .is-layout-flow > .wp-block-image.alignleft {
  margin-inline-end: 0;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  border-radius: var(--wp--custom--border-radius--md);
  border: 0;
  color: var(--wp--preset--color--foreground);
  background-color: var(--wp--preset--color--neutral-white);
  line-height: 1;
  padding: 12px var(--wp--preset--spacing--10);
  width: 100%;
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="url"]::placeholder,
input[type="password"]::placeholder,
input[type="search"]::placeholder,
input[type="number"]::placeholder,
input[type="tel"]::placeholder,
input[type="range"]::placeholder,
input[type="date"]::placeholder,
input[type="month"]::placeholder,
input[type="week"]::placeholder,
input[type="time"]::placeholder,
input[type="datetime"]::placeholder,
input[type="datetime-local"]::placeholder,
input[type="color"]::placeholder,
textarea::placeholder {
  color: inherit;
  opacity: 1; /* Firefox */
  font-style: italic;
}

input[type="text"]::-ms-input-placeholder,
input[type="email"]::-ms-input-placeholder,
input[type="url"]::-ms-input-placeholder,
input[type="password"]::-ms-input-placeholder,
input[type="search"]::-ms-input-placeholder,
input[type="number"]::-ms-input-placeholder,
input[type="tel"]::-ms-input-placeholder,
input[type="range"]::-ms-input-placeholder,
input[type="date"]::-ms-input-placeholder,
input[type="month"]::-ms-input-placeholder,
input[type="week"]::-ms-input-placeholder,
input[type="time"]::-ms-input-placeholder,
input[type="datetime"]::-ms-input-placeholder,
input[type="datetime-local"]::-ms-input-placeholder,
input[type="color"]::-ms-input-placeholder,
textarea::-ms-input-placeholder { /* Edge 12 -18 */
  color: inherit;
}

select {
  border-radius: var(--wp--custom--border-radius--md);
  border: 2px solid;
  padding: 7px var(--wp--preset--spacing--10) !important;
}

textarea {
  width: 100%;
}

button[type="submit"], input[type="submit"] {
  background-color: transparent;
  color: inherit;
  border: 1px solid;
  border-radius: var(--wp--custom--border-radius--md);
  font-weight: 700;
  padding: calc(0.5rem + 4px) 1.5em;
  cursor: pointer;
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
.wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}

.wpcf7 label {
  font-size: var(--wp--preset--font-size--small);
}

.wpcf7 .wpcf7-acceptance a {
  color: inherit;
}

.wpcf7 .wpcf7-form-control.wpcf7-file {
  max-width: 100%;
}

.wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}

#donation-form .wpcf7-list-item {
  margin: 0;
  width: 100%;
}

#donation-form .wpcf7-form-control {
  display: flex;
  gap: var(--wp--custom--layout--block-gap);
  margin: 1rem 0;
}

#donation-form .wpcf7-form-control.wpcf7-radio {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

@media (max-width:991px) {

  #donation-form .wpcf7-form-control.wpcf7-radio {
    grid-template-columns: repeat(2, 1fr);
  }
}

#donation-form input[type="radio"] {
  display: none;
}

#donation-form input[type="radio"] + .wpcf7-list-item-label {
  padding: 1rem;
  margin-bottom: 0;
  border: 1px solid;
  border-radius: var(--wp--custom--border-radius--sm);
  display: flex;
  align-items: center;
  justify-content: center;
}

#donation-form input[type="radio"] + .wpcf7-list-item-label:hover {
  cursor: pointer;
}

#donation-form input[type="radio"]:checked + .wpcf7-list-item-label {
  background-color: var(--wp--preset--color--background);
  color: var(--wp--preset--color--foreground);
  font-weight: 600;
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
a.stretched-link, .stretched-link > a {
  position: initial !important;
}

a.stretched-link::after, .stretched-link > a::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

@media (max-width:991px) {

  .column-reverse-mobile {
    flex-direction: column-reverse;
    display: flex;
  }
}

@media (max-width:991px) {

  .column-direction-mobile {
    flex-direction: column;
  }
}

.mt-0 {
  margin-block-start: 0;
}

.mt-1 {
  margin-block-start: var(--wp--preset--spacing--10);
  margin-top: var(--wp--preset--spacing--10);
}

.mt-2 {
  margin-block-start: var(--wp--preset--spacing--20);
  margin-top: var(--wp--preset--spacing--20);
}

.mb-1 {
  margin-block-end: var(--wp--preset--spacing--10);
}

.d-z-index-2 {
  z-index: 2;
  position: relative;
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
.wp-block-buttons .wp-block-button:not([class*="-with-arrow"]) .wp-block-button__link {
  transition: transform 0.3s ease;
}

.wp-block-buttons .wp-block-button:not([class*="-with-arrow"]) .wp-block-button__link:hover {
  transform: scale(1.1);
}

.wp-block-button.is-style-with-arrow .wp-block-button__link,
.wp-block-button.is-style-outline-with-arrow .wp-block-button__link,
.wp-block-read-more.is-style-outline-with-arrow {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  color: inherit;
  gap: 0.5rem;
  transition: 0.3s ease;
}

.wp-block-button.is-style-with-arrow .wp-block-button__link:hover,
.wp-block-button.is-style-outline-with-arrow .wp-block-button__link:hover,
.wp-block-read-more.is-style-outline-with-arrow:hover {
  gap: 1rem;
}

.wp-block-button.is-style-with-arrow .wp-block-button__link::after,
.wp-block-button.is-style-outline-with-arrow .wp-block-button__link::after,
.wp-block-read-more.is-style-outline-with-arrow::after {
  content: "";
  display: inline-block;
  width: 32px;
  height: 24px;
  margin-left: 0.5rem;
  background-color: currentcolor; /* Esto asegura que el color del SVG coincida con el color del texto */
  mask-image: url(./assets/icons/icon-arrow-btn.svg);
  mask-size: cover;
  mask-repeat: no-repeat;
  transition: padding-left 0.3s ease;
}

.wp-block-button.is-style-outline .wp-block-button__link {
  padding: calc(0.5rem - 2px) 2rem;
}

.wp-block-button.is-style-outline-with-arrow .wp-block-button__link {
  background-color: transparent;
  border-color: currentcolor;
  border-width: 1px;
  border-style: solid;
  color: currentcolor;
  padding: calc(0.5rem - 2px) 2rem !important;
}

.wp-block-read-more.is-style-outline-with-arrow {
  justify-content: center;
  border: 1px solid;
  padding: calc(0.5rem - 2px) 1rem !important;
  text-transform: uppercase;
  border-radius: var(--wp--custom--border-radius--sm);
}

button.modal-close {
  justify-content: center;
  display: flex;
  border: 1px solid;
  padding: calc(0.5rem - 2px) 1rem !important;
  text-transform: uppercase;
  border-radius: var(--wp--custom--border-radius--sm);
  color: var(--wp--preset--color--background);
  background-color: transparent;
  margin-left: auto;
  margin-bottom: var(--wp--preset--spacing--30);
}

.taxonomy-category a, .taxonomy-sector a {
  text-decoration: none;
  border-radius: var(--wp--custom--border-radius--rounded);
  padding: 0.125rem 0.5rem;
  color: var(--wp--preset--color--neutral-white);
  transition: transform 0.3s ease;
  background-color: var(--wp--preset--color--secondary);
  letter-spacing: 1px;
}

.taxonomy-category a::after, .taxonomy-sector a::after {
  content: none;
}

.taxonomy-category a:hover, .taxonomy-sector a:hover {
  transform: scale(1.1);
}

.category-benefactores .taxonomy-category a, .category-benefactores .taxonomy-sector a {
  background-color: var(--wp--preset--color--primary);
}

.category-trabajadores .taxonomy-category a, .category-trabajadores .taxonomy-sector a {
  background-color: var(--wp--preset--color--primary-30);
}

.category-voluntarios .taxonomy-category a, .category-voluntarios .taxonomy-sector a {
  background-color: var(--wp--preset--color--secondary-30);
}

.wp-block-cb-carousel.slick-dotted.slick-slider {
  margin-bottom: 1.5rem;
}

.wp-block-cb-carousel .slick-next, .wp-block-cb-carousel .slick-prev {
  top: calc(100% - 0.75rem);
  width: 2.5rem;
  height: 2.5rem;
  z-index: 2;
}

.wp-block-cb-carousel .slick-next::before, .wp-block-cb-carousel .slick-prev::before {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border: 1px solid var(--wp--preset--color--primary);
  border-radius: var(--wp--custom--border-radius--rounded);
}

.wp-block-cb-carousel .slick-prev {
  left: 1rem;
}

.wp-block-cb-carousel .slick-prev::before {
  content: url(./assets/icons/carousel-arrow-left.svg);
}

.wp-block-cb-carousel .slick-next {
  right: 1rem;
}

.wp-block-cb-carousel .slick-next::before {
  content: url(./assets/icons/carousel-arrow-right.svg);
}

.wp-block-cb-carousel .slick-dots {
  background-color: var(--wp--preset--color--background);
  bottom: -1.5rem;
  padding: 1rem 4.5rem;
  display: flex;
  justify-content: center;
}

.wp-block-cb-carousel .slick-dots li {
  width: 100%;
  height: 2.5rem;
}

.wp-block-cb-carousel .slick-dots li button {
  max-width: 72px;
  height: 2.5rem;
}

.wp-block-cb-carousel .slick-dots li button::before {
  content: "";
  width: 100%;
  height: 2px;
  line-height: 1;
  background-color: var(--wp--preset--color--primary);
  top: 50%;
}

.wp-block-cover.is-style-cover-contain-background .wp-block-cover__image-background {
  object-fit: contain;
}

details {
  overflow: hidden;
}

details .wp-block-details--content {
  max-block-size: 0;
  transition: max-block-size 1s ease-in-out, content-visibility 1s ease-in-out allow-discrete;
}

details summary {
  font-weight: 700;
}

details summary::-webkit-details-marker {
  display: none;
}

details[open] .wp-block-details--content {
  max-block-size: 100vh;
}

details[open] > summary::before {
  transform: rotate(90deg);
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
.is-style-group-horizontal-scroll {
  padding: var(--wp--preset--spacing--10);
  display: flex;
  flex-wrap: nowrap;
  margin: 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  transition: all 0.2s;
  will-change: transform;
}

.is-style-group-horizontal-scroll::-webkit-scrollbar {
  display: none;
}

.is-style-group-horizontal-scroll.active {
  cursor: grabbing;
  cursor: -webkit-grabbing;
  user-select: none;
}

.is-style-group-horizontal-scroll > .wp-block-group, .is-style-group-horizontal-scroll > .wc-block-product, .is-style-group-horizontal-scroll > .wp-block-image, .is-style-group-horizontal-scroll > .wp-block-post {
  flex: 0 0 auto !important;
  width: 360px;
  margin-block-start: 0;
}

@media (max-width:480px) {

  .is-style-group-horizontal-scroll > .wp-block-group, .is-style-group-horizontal-scroll > .wc-block-product, .is-style-group-horizontal-scroll > .wp-block-image, .is-style-group-horizontal-scroll > .wp-block-post {
    max-width: 242px;
  }
}

.is-style-group-horizontal-scroll.wp-block-post-template {
  gap: var(--wp--custom--layout--block-gap);
}

@media (max-width:781px) {

  .wp-block-group.is-layout-grid {
    grid-template-columns: 1fr;
  }
}

.wp-block-video video {
  border-radius: var(--wp--custom--border-radius--md);
}

ol.has-background, ul.has-background {
  padding: 0;
}

ul.is-style-separator-list,
ul.is-style-arrow-separator-list,
ul.is-style-arrow-mini-separator-list,
ul.is-style-check-separator-list {
  padding: 0;
  list-style: none;
}

ul.is-style-separator-list li,
ul.is-style-arrow-separator-list li,
ul.is-style-arrow-mini-separator-list li,
ul.is-style-check-separator-list li {
  border-bottom: 1px solid var(--wp--preset--color--neutral-30);
  padding: var(--wp--preset--spacing--10) 0;
}

ul.is-style-separator-list li a,
ul.is-style-arrow-separator-list li a,
ul.is-style-arrow-mini-separator-list li a,
ul.is-style-check-separator-list li a {
  text-decoration: none;
  width: 100%;
  transition: padding-left 0.2s ease-in;
}

ul.is-style-separator-list li a:hover,
ul.is-style-arrow-separator-list li a:hover,
ul.is-style-arrow-mini-separator-list li a:hover,
ul.is-style-check-separator-list li a:hover {
  cursor: pointer;
  padding-left: var(--wp--preset--spacing--10);
}

ul.is-style-arrow-list,
ul.is-style-check-list,
ul.is-style-arrow-separator-list,
ul.is-style-arrow-mini-separator-list,
ul.is-style-check-separator-list {
  list-style: none;
  position: relative;
  padding: 0;
}

ul.is-style-arrow-list li,
ul.is-style-check-list li,
ul.is-style-arrow-separator-list li,
ul.is-style-arrow-mini-separator-list li,
ul.is-style-check-separator-list li {
  position: relative;
  padding: 0 0 var(--wp--preset--spacing--10) var(--wp--preset--spacing--40);
}

ul.is-style-arrow-list li img,
ul.is-style-check-list li img,
ul.is-style-arrow-separator-list li img,
ul.is-style-arrow-mini-separator-list li img,
ul.is-style-check-separator-list li img {
  margin: 0 var(--wp--preset--spacing--10);
}

ul.is-style-arrow-list li::before,
ul.is-style-check-list li::before,
ul.is-style-arrow-separator-list li::before,
ul.is-style-arrow-mini-separator-list li::before,
ul.is-style-check-separator-list li::before {
  content: url(assets/icons/arrow-list.svg);
  position: absolute;
  top: 6px;
  left: 0;
}

ul.is-style-arrow-list a,
ul.is-style-check-list a,
ul.is-style-arrow-separator-list a,
ul.is-style-arrow-mini-separator-list a,
ul.is-style-check-separator-list a {
  transition: padding-left 0.3s ease;
  text-decoration: none;
}

ul.is-style-arrow-list a:hover,
ul.is-style-check-list a:hover,
ul.is-style-arrow-separator-list a:hover,
ul.is-style-arrow-mini-separator-list a:hover,
ul.is-style-check-separator-list a:hover {
  padding-left: var(--wp--preset--spacing--10);
  transition: padding-left 0.3s ease;
}

ul.is-style-arrow-separator-list li {
  padding: var(--wp--preset--spacing--10) 0 var(--wp--preset--spacing--10) var(--wp--preset--spacing--40);
}

ul.is-style-arrow-separator-list li::before {
  top: calc(var(--wp--preset--spacing--10) + 6px);
}

ul.is-style-arrow-mini-separator-list li:not(:first-child) {
  padding: var(--wp--preset--spacing--10) 0 var(--wp--preset--spacing--10) var(--wp--preset--spacing--40);
}

ul.is-style-arrow-mini-separator-list li::before {
  content: url(assets/icons/arrow-right-mini.svg);
  top: auto;
  left: 0;
}

ul.is-style-check-separator-list li::before,
ul.is-style-check-list li::before {
  content: url(assets/icons/check.svg);
  top: auto;
  left: 0;
}

/****
	* Author: Lex From Techies Reviews
	* Link: https://youtube.com/@techiesreviews
*****/

/** optional fix, remove if not needed*/
.infinite-scroll figure {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.hide-overflow {
  overflow: hidden;
}

.infinite-scroll {

  /**** Settings */
  --marquee-duration: 20s; /*##ms, ##s*/
  --marquee-gap: var(--wp--preset--spacing--xl); /* can be any spacing */
  user-select: none; /* none, auto*/

  /* end */
  overflow: hidden;
  max-width: 100%;
  gap: var(--marquee-gap, var(--wp--style--block-gap, 1em));
  --marquee-play-state: running; /*running, paused*/
  --marquee-direction: normal; /*normal, reverse, alternate, alternate-reverse*/
  --marquee-timeline: auto;
  --marquee-timing: linear;
  --marquee-iteration: infinite;
  --marquee-mode: none;
  --marquee-animation: marquee-horizontal;
  --marque-translate: translateX(0);
}

@media (prefers-reduced-motion) {

  .infinite-scroll {
    --marquee-duration: 500s;
  }
}

.infinite-scroll.is-faded {
  mask-image: linear-gradient(to left, rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 20%, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%);
}

.infinite-scroll.is-reversed {
  --marquee-direction: reverse;
}

.infinite-scroll.is-rotated {
  transform: rotate(2.5deg);
  max-width: 110%;
  margin-left: -5%;
}

.infinite-scroll.is-slower > * {
  animation-duration: calc(var(--marquee-duration) * 2);
}

.infinite-scroll.is-faster > * {
  animation-duration: calc(var(--marquee-duration) / 2);
}

.infinite-scroll.on-hover-paused:hover {
  --marquee-play-state: paused; /*running, paused*/
}

.infinite-scroll > * {
  animation-name: var(--marquee-animation);
  animation-duration: var(--marquee-duration);
  animation-timing-function: var(--marquee-timing);
  animation-iteration-count: var(--marquee-iteration);
  animation-direction: var(--marquee-direction);
  animation-play-state: var(--marquee-play-state);
  animation-fill-mode: var(--marquee-mode);
  animation-timeline: var(--marquee-timeline);
  flex-shrink: 0;
  position: relative;
  transform: var(--marquee-translate);
}

.infinite-scroll > * > * {
  flex-shrink: 0;
}

/* add horizontal*/
@keyframes marquee-horizontal {

  to {
    transform: translateX(calc(-100% - var(--marquee-gap, var(--wp--style--block-gap, 1em))));
  }
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
.wp-block-media-text.has-border-color img {
  border-radius: var(--wp--custom--border-radius--md) 0 0 var(--wp--custom--border-radius--md);
}

@media (max-width:991px) {

  .wp-block-media-text.has-border-color img {
    border-radius: var(--wp--custom--border-radius--md) var(--wp--custom--border-radius--md) 0 0;
  }
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
dialog {

  /*   Open state of the dialog  */

  /*   Closed state of the dialog   */
  opacity: 0;
  transition: opacity 0.5s ease-out, overlay 0.5s ease-out allow-discrete, display 0.5s ease-out allow-discrete;

  /* Equivalent to
  transition: all 0.7s allow-discrete; */
}

dialog[open] {
  opacity: 1;
}

dialog[open]::backdrop {
  background-color: rgba(49, 46, 58, 0.95);
}

dialog::backdrop {
  background-color: rgba(49, 46, 58, 0);
  transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete, background-color 0.5s;
}

dialog.modal {
  background-color: transparent;
  border: 0;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: var(--wp--custom--layout--wide);
  width: 100%;
}

dialog.modal .modal-content {
  max-width: var(--wp--custom--layout--wide);
  color: var(--wp--preset--color--neutral-white);
}

@starting-style {

  dialog[open] {
    opacity: 0;
    transform: scaleY(0);
  }
}

@starting-style {

  dialog[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}

#post-modal .modal-content {
  display: grid;
  grid-template-columns: 33% 1fr;
  gap: var(--wp--preset--spacing--80);
}

@media (max-width:991px) {

  #post-modal .modal-content {
    grid-template-columns: 1fr;
  }
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
.wp-block-query-pagination {
  margin-block-start: var(--wp--preset--spacing--70);
}

.wp-block-query-pagination .wp-block-query-pagination-numbers {
  display: flex;
  gap: var(--wp--preset--spacing--10);
}

.wp-block-query-pagination .wp-block-query-pagination-numbers .page-numbers {
  color: var(--wp--preset--color--foreground);
  text-decoration: none;
  border-radius: var(--wp--custom--border-radius--sm);
  border: 1px solid;
  width: var(--wp--preset--spacing--60);
  height: var(--wp--preset--spacing--40);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  transition: background-color 0.2s ease-in-out, color 0.2s;
}

.wp-block-query-pagination .wp-block-query-pagination-numbers .page-numbers.current {
  background-color: var(--wp--preset--color--neutral-100);
  color: var(--wp--preset--color--neutral-white);
}

.wp-block-query-pagination .wp-block-query-pagination-numbers .page-numbers:hover {
  background-color: var(--wp--preset--color--neutral-100);
  color: var(--wp--preset--color--neutral-white);
}

.wp-block-query-pagination .wp-block-query-pagination-next, .wp-block-query-pagination .wp-block-query-pagination-previous {
  color: var(--wp--preset--color--neutral-white);
  text-decoration: none;
  background-color: var(--wp--preset--color--neutral-100);
  border-radius: var(--wp--custom--border-radius--sm);
  border: 1px solid;
  display: flex;
  height: var(--wp--preset--spacing--40);
  justify-content: center;
  align-items: center;
  padding: 0 var(--wp--preset--spacing--20);
  transition: background-color 0.2s ease-in-out, color 0.2s;
}

.wp-block-query-pagination .wp-block-query-pagination-next:hover, .wp-block-query-pagination .wp-block-query-pagination-previous:hover {
  background-color: var(--wp--preset--color--neutral-white);
  color: var(--wp--preset--color--neutral-100);
}

[popover] {
  transition: opacity 0.2s, transform 0.2s, display 0.2s allow-discrete;
  opacity: 0;
  transform: translateY(3rem);
}

[popover]:popover-open {
  opacity: 1;
  transform: none;
}

@starting-style {

  [popover]:popover-open {
    opacity: 0;
    transform: translateY(-1rem);
  }
}

button.wp-block-popover--button[popovertarget] {
  border: 0;
  background-color: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--background);
  font-size: 32px;
  line-height: 1;
  height: 2rem;
  width: 2rem;
}

button.wp-block-popover--button[popovertarget]:hover {
  cursor: pointer;
}

.wp-block-popover--content {
  inset: auto;
  background-color: var(--wp--preset--color--secondary-10);
  border: 0;
  top: anchor(bottom);
  left: anchor(left);
  max-width: 300px;
  margin-top: 0 !important;
  padding: 0 1rem;
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
.wp-block-query .wp-block-post-template.columns-3 {
  gap: 0;
}

.wp-block-query .wp-block-post-template.columns-3 li.wp-block-post {
  margin-bottom: var(--wp--preset--spacing--40);
}

@media (min-width:992px) {

  .wp-block-query .wp-block-post-template.columns-3 li.wp-block-post {
    padding: 0 1.5rem;
  }

  .wp-block-query .wp-block-post-template.columns-3 li.wp-block-post:nth-child(3n+1), .wp-block-query .wp-block-post-template.columns-3 li.wp-block-post:nth-child(3n+2) {
    border-right: 1px solid var(--wp--preset--color--neutral-100);
  }

  .wp-block-query .wp-block-post-template.columns-3 li.wp-block-post:nth-child(3n) {
    border-right: none;
  }
}

@media (max-width:991px) {

  .wp-block-query .wp-block-post-template.columns-3 li.wp-block-post {
    border-bottom: 1px solid var(--wp--preset--color--neutral-100);
  }
}

.wp-block-query li.wp-block-post {
  position: relative;
}

.wp-block-query li.wp-block-post a {
  text-decoration: none;
}

.wp-block-search__inside-wrapper {
  border-radius: var(--wp--custom--border-radius--md);
  padding: 0;
}

.wp-block-search__inside-wrapper input[type="search"] {
  border: 0;
  padding: 7px var(--wp--preset--spacing--10);
}

:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) {
  border: 2px solid;
}

.has-white-color :where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__button.wp-element-button, .has-background-color :where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__button.wp-element-button {
  background-color: var(--wp--preset--color--white);
  padding: calc(0.5rem + 4px);
}

.has-white-color :where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__button svg, .has-background-color :where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__button svg {
  fill: var(--wp--preset--color--secondary);
}

.wp-block-separator {
  border-bottom: 1px solid;
}

/*--------------------------------------------------------------
# Pages
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
#masthead {
  position: fixed;
  z-index: 2;
  width: 100%;
  top: 0;
  background-color: var(--wp--preset--color--background);
}

@media (max-width:991px) {

  #masthead > .wp-block-group {
    flex-direction: column;
    transition: gap 0.3s ease-in-out;
  }

  #masthead .wp-block-site-logo {
    width: 70%;
    margin: 0 auto;
    transition: width 0.5s ease-in-out;
  }

  .scrolled #masthead .wp-block-site-logo {
    width: 50%;
  }

  .scrolled #masthead > .wp-block-group {
    gap: 1rem;
  }
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
@media (max-width:991px) {

  #hero {
    padding-top: 11.5rem !important;
  }
}

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

main {
  view-transition-name: mainanimation;
}

::view-transition-old(mainanimation) {
  animation: bodyAnimation 0.5s linear forwards;
}

::view-transition-new(mainanimation) {
  animation: bodyAnimation 0.6s linear reverse;
}

@keyframes bodyAnimation {

  0% {
    opacity: 1;
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    transform: translateY(50px);
  }
}

.masonry-grid {
  gap: var(--wp--custom--layout--block-gap);
  column-count: 1;
}

@media (min-width:782px) {

  .masonry-grid {
    column-count: 2;
  }
}

@media (min-width:992px) {

  .masonry-grid {
    column-count: 3;
  }
}

.masonry-item {
  background: var(--wp--preset--color--secondary);
  cursor: pointer;
  border-radius: var(--wp--custom--border-radius--md);
  position: relative;
  text-align: center;
  color: var(--wp--preset--color--neutral-white);
  align-content: center;
  break-inside: avoid;
  margin-bottom: var(--wp--custom--layout--block-gap);
}

.masonry-item .author-tag {
  display: flex;
  align-items: center;
  gap: var(--wp--custom--layout--padding);
  padding: var(--wp--custom--layout--padding);
  color: var(--wp--preset--color--foreground);
  position: absolute;
  top: 0;
}

.masonry-item .author-tag img {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  object-fit: cover;
  display: block;
  aspect-ratio: 1/1;
}

.masonry-item .author-tag span.author-name {
  background-color: var(--wp--preset--color--neutral-white);
  border-radius: var(--wp--custom--border-radius--rounded);
  letter-spacing: 1px;
  font-size: 0.875rem;
  text-transform: uppercase;
  height: 2rem;
  padding: 0.5rem 1rem;
  line-height: 1;
}

.masonry-item img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
  border-radius: var(--wp--custom--border-radius--md);
  aspect-ratio: 1/1;
}

.masonry-item .masonry-item--icon {
  padding-top: var(--wp--preset--spacing--40);
}

.masonry-item.is-format-audio {
  background: var(--wp--preset--color--primary);
  height: 17rem;
}

.masonry-item.is-format-quote {
  height: 32rem;
}

.masonry-item.is-format-video video {
  width: 100%;
  display: block;
  border-radius: var(--wp--custom--border-radius--md);
}

.masonry-item .vertical-image img, .masonry-item .vertical-image video {
  aspect-ratio: 9/16;
  object-fit: cover;
}

.masonry-item .horizontal-image img {
  aspect-ratio: 16/9;
}

#video-wall {
  overflow: hidden;
}

@media (max-width:781px) {

  #video-wall .wp-block-cover {
    min-height: 360px !important;
    aspect-ratio: 16/9 !important;
    border-bottom: 1px solid var(--wp--preset--color--neutral-100);
    color: var(--wp--preset--color--neutral-white);
  }

  #video-wall .wp-block-cover .wp-block-cover__inner-container > .wp-block-group {
    min-height: 100% !important;
  }
}

@media (min-width:992px) {

  #video-wall .wp-block-cover {
    border-right: 1px solid var(--wp--preset--color--neutral-100);
  }

  #video-wall .wp-block-cover:last-child {
    border-right: none;
  }

  #video-wall .wp-block-cover .wp-block-cover__video-background,
  #video-wall .wp-block-cover .wp-block-cover__background,
  #video-wall .wp-block-cover .wp-block-safe-svg-svg-icon {
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
  }

  #video-wall .wp-block-cover .wp-block-safe-svg-svg-icon {
    opacity: 0;
    scale: 0.9;
    transition: scale 0.3s ease-in-out;
  }

  #video-wall .wp-block-cover:hover {
    color: var(--wp--preset--color--neutral-white);
  }

  #video-wall .wp-block-cover:hover .wp-block-cover__video-background,
  #video-wall .wp-block-cover:hover .wp-block-safe-svg-svg-icon {
    opacity: 1;
  }

  #video-wall .wp-block-cover:hover .wp-block-cover__background {
    opacity: 0.6;
  }

  #video-wall .wp-block-cover:hover .wp-block-safe-svg-svg-icon {
    scale: 1;
  }
}

.box-link {
  text-decoration: none;
}

.box-link p {
  color: var(--wp--preset--color--foreground);
  transition: transform 0.5s ease-in-out, color 0.3s ease-in-out;
}

.box-link:hover p {
  color: var(--wp--preset--color--primary);
  transform: scale(1.05);
}

.box-link p.has-display-font-size {
  margin: 0;
}

@media (max-width:991px) {

  .info-empleo--wrap {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
  }

  .info-empleo--wrap > .wp-block-group {
    padding-right: 0 !important;
    border: 0 !important;
  }
}

/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
.filter-by .wp-block-categories-list {
  list-style: none;
  display: flex;
  gap: var(--wp--preset--spacing--10);
  margin: 0;
  padding: 0;
}

@media (max-width:991px) {

  .filter-by .wp-block-categories-list {
    flex-direction: column;
    flex-basis: 100%;
    gap: 1rem;
    max-height: 50dvh;
    opacity: 1;
    transition: 0.5s ease-in-out;
  }
}

.filter-by .wp-block-categories-list a {
  text-decoration: none;
  border-radius: var(--wp--custom--border-radius--rounded);
  padding: 0.5rem 1rem;
  color: var(--wp--preset--color--neutral-white);
  transition: transform 0.3s ease;
  background-color: var(--wp--preset--color--secondary);
  letter-spacing: 2px;
}

.filter-by .wp-block-categories-list a::after {
  content: none;
}

.filter-by .wp-block-categories-list a:hover {
  transform: scale(1.1);
}

.filter-by .wp-block-categories-list .cat-item-1 a {
  background-color: var(--wp--preset--color--primary-30);
}

.filter-by .wp-block-categories-list .cat-item-4 a {
  background-color: var(--wp--preset--color--primary);
}

.filter-by .wp-block-categories-list .cat-item-6 a {
  background-color: var(--wp--preset--color--secondary-30);
}

@media (max-width:991px) {

  .filter-by.filter-by--is-open .wp-block-categories-list {
    max-height: 0;
    opacity: 0;
    transition: 0.5s ease-in-out;
    margin-bottom: var(--wp--preset--spacing--40);
  }

  .filter-by.filter-by--is-open .toggle-filter-by img {
    transform: rotate(90deg);
    transition: 0.5s ease-in-out;
  }
}

.wp-block-latest-posts__list > li {
  display: flex;
  flex-direction: column-reverse;
  gap: 0.5rem;
  margin-bottom: var(--wp--preset--spacing--20);
}

#colophon ul.footer-nav {
  gap: var(--wp--preset--spacing--10);
  width: 100%;
}

#colophon ul.footer-nav .wp-block-navigation-item.wp-block-navigation-link {
  width: 100%;
  border-bottom: 1px solid var(--wp--preset--color--background);
  padding-bottom: var(--wp--preset--spacing--10);
}

#colophon ul.footer-nav .wp-block-navigation-item.wp-block-navigation-link .wp-block-navigation-item__content {
  transition: padding-left 0.5s ease-in-out;
  width: 100%;
}

#colophon ul.footer-nav .wp-block-navigation-item.wp-block-navigation-link:hover .wp-block-navigation-item__content {
  padding-left: var(--wp--preset--spacing--10);
}
