@charset "UTF-8";
/*! 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;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

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

/* Text-level semantics
   ========================================================================== */
/**
 * 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;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

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

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

/**
 * Add the correct font 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;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

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

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

/**
 * 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;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * 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;
  /* 1 */
  padding: 0;
  /* 2 */
}

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

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

/**
 * Remove the inner padding 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;
  /* 1 */
  font: inherit;
  /* 2 */
}

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

*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Nunito sans */
/* Fuente para titulos y encabezados */
@font-face {
  font-family: "NunitoSans";
  font-style: normal;
  font-weight: 300;
  src: local("NunitoSans Light"), local("NunitoSans-Light"), url("../fonts/Nunito/NunitoSans-Light.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "NunitoSans";
  font-style: normal;
  font-weight: 400;
  src: local("NunitoSans Regular"), local("NunitoSans-Regular"), url("../fonts/Nunito/NunitoSans-Regular.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "NunitoSans";
  font-style: normal;
  font-weight: 700;
  src: local("NunitoSans Bold"), local("NunitoSans-Bold"), url("../fonts/Nunito/NunitoSans-Bold.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "NunitoSans";
  font-style: normal;
  font-weight: 900;
  src: local("NunitoSans Black"), local("NunitoSans-Black"), url("../fonts/Nunito/NunitoSans-Black.ttf") format("truetype");
  font-display: swap;
}
/* Montserrat */
/* Fuente para textos */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 300;
  src: local("Montserrat Light"), local("Montserrat-Light"), url("../fonts/Montserrat/Montserrat-Light.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  src: local("Montserrat Regular"), local("Montserrat-Regular"), url("../fonts/Montserrat/Montserrat-Regular.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  src: local("Montserrat Bold"), local("Montserrat-Bold"), url("../fonts/Montserrat/Montserrat-Bold.ttf") format("truetype");
  font-display: swap;
}
:root {
  --color-primary: #116ACC;
  --color-primary-light: #5897db;
  --color-primary-dark: #0c4a8f;
  --color-secondary-1: #182233;
  --color-secondary-2: #B3CEE2;
  --color-secondary-3: #D9DDE7;
  --color-secondary-4: #F93232;
  --color-black: #000000;
  --color-gray-1: #1F2937;
  --color-gray-2: #374151;
  --color-gray-3: #4B5563;
  --color-gray-4: #6B7280;
  --color-gray-5: #9CA3AF;
  --color-gray-6: #D1D5DB;
  --color-gray-7: #F3F4F6;
  --color-white: #FFFFFF;
  --color-text: #000000;
  --color-info: #669eff;
  --color-success: #76CA66;
  --color-warning: #FBC756;
  --color-error: #F93232;
}

:root {
  --font-family-heading: NunitoSans, sans-serif;
  --font-family-menu: NunitoSans, sans-serif;
  --font-family-text: Montserrat, sans-serif;
  --font-family-button: NunitoSans, sans-serif;
  --font-size-h1: 3.5rem;
  --font-size-h2: 3rem;
  --font-size-h3: 2rem;
  --font-size-h4: 1.5rem;
  --font-size-h5: 1.125rem;
  --font-size-text: 1.125rem;
  --font-size-text-small: 1rem;
  --font-size-text-small-2: 0.875rem;
  --font-line_height: 1.2;
  --font-line_height-big: 1.4;
}

body {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  line-height: 1.4;
  color: #000000;
  font-size: 1.125rem;
}

.h5, h5, .h4, h4, .h3, h3, .h2, h2, .h1, h1 {
  font-family: "NunitoSans", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
}

h1 {
  font-size: var(--font-size-h1);
}

.h1 {
  font-size: var(--font-size-h1);
}

h2 {
  font-size: var(--font-size-h2);
}

.h2 {
  font-size: var(--font-size-h2);
}

h3 {
  font-size: var(--font-size-h3);
}

.h3 {
  font-size: var(--font-size-h3);
}

h4 {
  font-size: var(--font-size-h4);
}

.h4 {
  font-size: var(--font-size-h4);
}

h5 {
  font-size: var(--font-size-h5);
}

.h5 {
  font-size: var(--font-size-h5);
}

img {
  max-width: 100%;
}

a {
  text-decoration: none;
}
a:hover, a:focus {
  text-decoration: none;
}

input[type=text], input[type=password], input[type=email], input[type=tel], input[type=number], input[type=search] {
  min-height: 44px;
  width: 100%;
  padding: 10px 10px 10px 16px;
  position: relative;
  border: 1px solid #6B7280;
  border-radius: 8px;
  color: #000000;
}
input[type=text]::placeholder, input[type=password]::placeholder, input[type=email]::placeholder, input[type=tel]::placeholder, input[type=number]::placeholder, input[type=search]::placeholder {
  color: #9CA3AF;
}
input[type=text]:focus, input[type=password]:focus, input[type=email]:focus, input[type=tel]:focus, input[type=number]:focus, input[type=search]:focus {
  outline: none;
  border-color: #116ACC;
  box-shadow: 0 0 0.4em rgba(17, 106, 204, 0.5);
}
input[type=checkbox] {
  --checkbox-size: 18px;
  position: relative;
  width: var(--checkbox-size);
  height: var(--checkbox-size);
  visibility: hidden;
}
input[type=checkbox]::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--checkbox-size);
  height: var(--checkbox-size);
  background-color: #FFFFFF;
  border: 1px solid #9CA3AF;
  border-radius: 4px;
  visibility: visible;
}
input[type=checkbox]:checked::before {
  background-color: #116ACC;
  border-color: #116ACC;
  background-image: url(../../assets/img/icons/checkbox-check.svg);
  background-repeat: no-repeat;
  background-size: 75%;
  background-position: center;
}

label {
  margin-bottom: 10px;
  margin: 5px;
  color: #6B7280;
  display: block;
}

select {
  min-height: 44px;
  width: 100%;
  padding: 10px 10px 10px 16px;
  position: relative;
  border: 1px solid #6B7280;
  border-radius: 8px;
  color: #000000;
}
select::placeholder {
  color: #9CA3AF;
}
select:focus {
  outline: none;
  border-color: #116ACC;
  box-shadow: 0 0 0.4em rgba(17, 106, 204, 0.5);
}

#svg__symbols {
  display: none;
  width: 0;
  height: 0;
}

/*--------------------------------------------------------------
# Media Queries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Remove hover efects
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Box full align center
--------------------------------------------------------------*/
.container {
  max-width: 1200px;
  margin: 0 auto;
}
@media (max-width: 1230px) {
  .container {
    margin: 0 15px;
  }
}

.grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-gap: 15px;
}

.grid-1 {
  grid-column: span 1;
}

.grid-2 {
  grid-column: span 2;
}

.grid-3 {
  grid-column: span 3;
}

.grid-4 {
  grid-column: span 4;
}

.grid-5 {
  grid-column: span 5;
}

.grid-6 {
  grid-column: span 6;
}

.grid-7 {
  grid-column: span 7;
}

.grid-8 {
  grid-column: span 8;
}

.grid-9 {
  grid-column: span 9;
}

.grid-10 {
  grid-column: span 10;
}

.grid-11 {
  grid-column: span 11;
}

.grid-12 {
  grid-column: span 12;
}

@media (min-width: 576px) {
  .grid-xs-1 {
    grid-column: span 1;
  }

  .grid-xs-2 {
    grid-column: span 2;
  }

  .grid-xs-3 {
    grid-column: span 3;
  }

  .grid-xs-4 {
    grid-column: span 4;
  }

  .grid-xs-5 {
    grid-column: span 5;
  }

  .grid-xs-6 {
    grid-column: span 6;
  }

  .grid-xs-7 {
    grid-column: span 7;
  }

  .grid-xs-8 {
    grid-column: span 8;
  }

  .grid-xs-9 {
    grid-column: span 9;
  }

  .grid-xs-10 {
    grid-column: span 10;
  }

  .grid-xs-11 {
    grid-column: span 11;
  }

  .grid-xs-12 {
    grid-column: span 12;
  }
}
@media (min-width: 768px) {
  .grid-sm-1 {
    grid-column: span 1;
  }

  .grid-sm-2 {
    grid-column: span 2;
  }

  .grid-sm-3 {
    grid-column: span 3;
  }

  .grid-sm-4 {
    grid-column: span 4;
  }

  .grid-sm-5 {
    grid-column: span 5;
  }

  .grid-sm-6 {
    grid-column: span 6;
  }

  .grid-sm-7 {
    grid-column: span 7;
  }

  .grid-sm-8 {
    grid-column: span 8;
  }

  .grid-sm-9 {
    grid-column: span 9;
  }

  .grid-sm-10 {
    grid-column: span 10;
  }

  .grid-sm-11 {
    grid-column: span 11;
  }

  .grid-sm-12 {
    grid-column: span 12;
  }
}
@media (min-width: 992px) {
  .grid-md-1 {
    grid-column: span 1;
  }

  .grid-md-2 {
    grid-column: span 2;
  }

  .grid-md-3 {
    grid-column: span 3;
  }

  .grid-md-4 {
    grid-column: span 4;
  }

  .grid-md-5 {
    grid-column: span 5;
  }

  .grid-md-6 {
    grid-column: span 6;
  }

  .grid-md-7 {
    grid-column: span 7;
  }

  .grid-md-8 {
    grid-column: span 8;
  }

  .grid-md-9 {
    grid-column: span 9;
  }

  .grid-md-10 {
    grid-column: span 10;
  }

  .grid-md-11 {
    grid-column: span 11;
  }

  .grid-md-12 {
    grid-column: span 12;
  }
}
@media (min-width: 1200px) {
  .grid-lg-1 {
    grid-column: span 1;
  }

  .grid-lg-2 {
    grid-column: span 2;
  }

  .grid-lg-3 {
    grid-column: span 3;
  }

  .grid-lg-4 {
    grid-column: span 4;
  }

  .grid-lg-5 {
    grid-column: span 5;
  }

  .grid-lg-6 {
    grid-column: span 6;
  }

  .grid-lg-7 {
    grid-column: span 7;
  }

  .grid-lg-8 {
    grid-column: span 8;
  }

  .grid-lg-9 {
    grid-column: span 9;
  }

  .grid-lg-10 {
    grid-column: span 10;
  }

  .grid-lg-11 {
    grid-column: span 11;
  }

  .grid-lg-12 {
    grid-column: span 12;
  }
}
@media (min-width: 1400px) {
  .grid-xl-1 {
    grid-column: span 1;
  }

  .grid-xl-2 {
    grid-column: span 2;
  }

  .grid-xl-3 {
    grid-column: span 3;
  }

  .grid-xl-4 {
    grid-column: span 4;
  }

  .grid-xl-5 {
    grid-column: span 5;
  }

  .grid-xl-6 {
    grid-column: span 6;
  }

  .grid-xl-7 {
    grid-column: span 7;
  }

  .grid-xl-8 {
    grid-column: span 8;
  }

  .grid-xl-9 {
    grid-column: span 9;
  }

  .grid-xl-10 {
    grid-column: span 10;
  }

  .grid-xl-11 {
    grid-column: span 11;
  }

  .grid-xl-12 {
    grid-column: span 12;
  }
}
.ui-list {
  padding: 0;
  margin: 0;
  list-style: none;
}
.ui-list--horizontal {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
}

.title__option {
  margin-bottom: 20px;
}

.centered-section {
  display: flex;
  align-items: center;
  justify-content: center;
}

.button {
  border: none;
  display: inline-block;
  font-size: 18px;
  line-height: 24px;
  font-family: "NunitoSans", sans-serif;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  border-radius: 8px;
  padding: 0.6em 1.25em;
  color: #116ACC;
  cursor: pointer;
}
@media (max-width: 768px) {
  .button {
    padding: 0.4em 0.75em;
  }
}
.button--lg {
  padding: 0.9em 1.65em;
}
.button--sm {
  padding: 0.25em 0.95em;
}
.button:hover {
  text-decoration: underline;
}
.button--primary {
  background-color: #116ACC;
  color: #FFFFFF;
}
.button--primary:hover {
  text-decoration: none;
  background-color: #115eb3;
}
.button--primary.button--outline {
  background-color: #FFFFFF;
  color: #116ACC;
  border: 2px solid currentColor;
}
.button--primary.button--outline:hover {
  background-color: rgba(17, 106, 204, 0.1);
}
.button--secondary-1 {
  background-color: #182233;
  color: #FFFFFF;
}
.button--secondary-1:hover {
  text-decoration: none;
  background-color: #18191a;
}
.button--secondary-1.button--outline {
  background-color: #FFFFFF;
  color: #182233;
  border: 2px solid currentColor;
}
.button--secondary-1.button--outline:hover {
  background-color: rgba(24, 34, 51, 0.1);
}
.button--secondary-2 {
  background-color: #B3CEE2;
  color: #FFFFFF;
}
.button--secondary-2:hover {
  text-decoration: none;
  background-color: #b3bfc9;
}
.button--secondary-2.button--outline {
  background-color: #FFFFFF;
  color: #B3CEE2;
  border: 2px solid currentColor;
}
.button--secondary-2.button--outline:hover {
  background-color: rgba(179, 206, 226, 0.1);
}
.button--secondary-3 {
  background-color: #D9DDE7;
  color: #FFFFFF;
}
.button--secondary-3:hover {
  text-decoration: none;
  background-color: #d0d0d0;
}
.button--secondary-3.button--outline {
  background-color: #FFFFFF;
  color: #D9DDE7;
  border: 2px solid currentColor;
}
.button--secondary-3.button--outline:hover {
  background-color: rgba(217, 221, 231, 0.1);
}
.button--secondary-4 {
  background-color: #F93232;
  color: #FFFFFF;
}
.button--secondary-4:hover {
  text-decoration: none;
  background-color: #e03232;
}
.button--secondary-4.button--outline {
  background-color: #FFFFFF;
  color: #F93232;
  border: 2px solid currentColor;
}
.button--secondary-4.button--outline:hover {
  background-color: rgba(249, 50, 50, 0.1);
}
.button--info {
  background-color: #669eff;
  color: #FFFFFF;
}
.button--info:hover {
  text-decoration: none;
  background-color: #6695e6;
}
.button--info.button--outline {
  background-color: #FFFFFF;
  color: #669eff;
  border: 2px solid currentColor;
}
.button--info.button--outline:hover {
  background-color: rgba(102, 158, 255, 0.1);
}
.button--success {
  background-color: #76CA66;
  color: #FFFFFF;
}
.button--success:hover {
  text-decoration: none;
  background-color: #72b166;
}
.button--success.button--outline {
  background-color: #FFFFFF;
  color: #76CA66;
  border: 2px solid currentColor;
}
.button--success.button--outline:hover {
  background-color: rgba(118, 202, 102, 0.1);
}
.button--warning {
  background-color: #FBC756;
  color: #FFFFFF;
}
.button--warning:hover {
  text-decoration: none;
  background-color: #e2b656;
}
.button--warning.button--outline {
  background-color: #FFFFFF;
  color: #FBC756;
  border: 2px solid currentColor;
}
.button--warning.button--outline:hover {
  background-color: rgba(251, 199, 86, 0.1);
}
.button--error {
  background-color: #F93232;
  color: #FFFFFF;
}
.button--error:hover {
  text-decoration: none;
  background-color: #e03232;
}
.button--error.button--outline {
  background-color: #FFFFFF;
  color: #F93232;
  border: 2px solid currentColor;
}
.button--error.button--outline:hover {
  background-color: rgba(249, 50, 50, 0.1);
}
.button--full-width {
  width: 100%;
  display: block;
}
.button--disabled {
  background-color: #9CA3AF;
  pointer-events: none;
  color: #4B5563;
}
.button--disabled.button--outline {
  background-color: #FFFFFF;
  color: #9CA3AF;
  border: 2px solid currentColor;
}
.button__icon {
  fill: currentColor;
  width: 1em;
  height: 1em;
}
.button > div {
  display: flex;
  align-items: center;
  gap: 10px;
}
.button * {
  pointer-events: none;
}
.button.hide {
  display: none;
}

.input__group {
  position: relative;
}
.input__group .button {
  padding: 0.6em 1em;
}
.input__message {
  font-size: 1rem;
  display: none;
  padding-left: 30px;
  position: relative;
}
.input__message::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  top: 0;
  left: 0;
}
.input[type=text].input--error, .input[type=password].input--error, .input[type=email].input--error, .input[type=tel].input--error, .input[type=number].input--error {
  border-color: #F93232;
}
.input[type=text].input--error:focus, .input[type=password].input--error:focus, .input[type=email].input--error:focus, .input[type=tel].input--error:focus, .input[type=number].input--error:focus {
  border-color: #F93232;
  box-shadow: 0 0 0.4em rgba(249, 50, 50, 0.5);
}
.input[type=text].input--error ~ .input__message, .input[type=password].input--error ~ .input__message, .input[type=email].input--error ~ .input__message, .input[type=tel].input--error ~ .input__message, .input[type=number].input--error ~ .input__message {
  color: #F93232;
  display: block;
}
.input[type=text].input--error ~ .input__message::before, .input[type=password].input--error ~ .input__message::before, .input[type=email].input--error ~ .input__message::before, .input[type=tel].input--error ~ .input__message::before, .input[type=number].input--error ~ .input__message::before {
  background-image: url("../../assets/img/icons/error.svg");
}
.input[type=text].input--success, .input[type=password].input--success, .input[type=email].input--success, .input[type=tel].input--success, .input[type=number].input--success {
  border-color: #76CA66;
}
.input[type=text].input--success:focus, .input[type=password].input--success:focus, .input[type=email].input--success:focus, .input[type=tel].input--success:focus, .input[type=number].input--success:focus {
  border-color: #76CA66;
  box-shadow: 0 0 0.4em rgba(118, 202, 102, 0.5);
}
.input[type=text].input--success ~ .input__message, .input[type=password].input--success ~ .input__message, .input[type=email].input--success ~ .input__message, .input[type=tel].input--success ~ .input__message, .input[type=number].input--success ~ .input__message {
  color: #76CA66;
  display: block;
}
.input[type=text].input--success ~ .input__message::before, .input[type=password].input--success ~ .input__message::before, .input[type=email].input--success ~ .input__message::before, .input[type=tel].input--success ~ .input__message::before, .input[type=number].input--success ~ .input__message::before {
  background-image: url("../../assets/img/icons/success.svg");
}

.checkbox__group {
  position: relative;
}
.checkbox__group label {
  display: flex;
  align-items: center;
}
.checkbox__group span {
  margin-left: 10px;
}
.checkbox__group--disabled {
  pointer-events: none;
}
.checkbox__group--disabled input::before {
  opacity: 0.5;
}
.checkbox__group--disabled input:checked::before {
  opacity: 1;
  background-color: #9CA3AF;
  border-color: #9CA3AF;
}
.checkbox__group--disabled span {
  opacity: 0.5;
}

.select__group {
  position: relative;
}
.select__message {
  font-size: 1rem;
  display: none;
  padding-left: 30px;
  position: relative;
}
.select__message::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  top: 0;
  left: 0;
}
.select--error {
  border-color: #F93232;
}
.select--error:focus {
  border-color: #F93232;
  box-shadow: 0 0 0.4em rgba(249, 50, 50, 0.5);
}
.select--error ~ .select__message {
  color: #F93232;
  display: block;
}
.select--error ~ .select__message::before {
  background-image: url("../../assets/img/icons/error.svg");
}
.select--success {
  border-color: #76CA66;
}
.select--success:focus {
  border-color: #76CA66;
  box-shadow: 0 0 0.4em rgba(118, 202, 102, 0.5);
}
.select--success ~ .select__message {
  color: #76CA66;
  display: block;
}
.select--success ~ .select__message::before {
  background-image: url("../../assets/img/icons/success.svg");
}

.textarea {
  min-height: 44px;
  width: 100%;
  padding: 10px 10px 10px 16px;
  position: relative;
  border: 1px solid #6B7280;
  border-radius: 8px;
  color: #000000;
  display: block;
}
.textarea__message {
  font-size: 1rem;
  display: none;
  padding-left: 30px;
  position: relative;
}
.textarea__message::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  top: 0;
  left: 0;
}
.textarea::placeholder {
  color: #9CA3AF;
}
.textarea:focus {
  outline: none;
  border-color: #116ACC;
  box-shadow: 0 0 0.4em rgba(17, 106, 204, 0.5);
}
.textarea--error {
  border-color: #F93232;
}
.textarea--error:focus {
  border-color: #F93232;
  box-shadow: 0 0 0.4em rgba(249, 50, 50, 0.5);
}
.textarea--error ~ .textarea__message {
  color: #F93232;
  display: block;
}
.textarea--error ~ .textarea__message::before {
  background-image: url("../../assets/img/icons/error.svg");
}
.textarea--success {
  border-color: #76CA66;
}
.textarea--success:focus {
  border-color: #76CA66;
  box-shadow: 0 0 0.4em rgba(118, 202, 102, 0.5);
}
.textarea--success ~ .textarea__message {
  color: #76CA66;
  display: block;
}
.textarea--success ~ .textarea__message::before {
  background-image: url("../../assets/img/icons/success.svg");
}

.icon {
  cursor: pointer;
  display: block;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
.icon--md {
  --size: 40px;
  width: var(--size);
  min-width: var(--size);
  height: var(--size);
  min-height: var(--size);
}
.icon-dropdown-arrow {
  background-image: url("../img/icons/dropdown-arrow.svg");
}
.icon-dropdown-arrow.icon-hover {
  transition: 0.3s;
}
.icon-dropdown-arrow.icon-hover:hover {
  background-image: url("../img/icons/dropdown-arrow-hover.svg");
}

.add__button {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}
.add__button * {
  pointer-events: none;
}
.add__button--primary {
  color: #116ACC;
}
.add__button--primary:hover {
  text-decoration: none;
  color: #115299;
}
.add__button--secondary-1 {
  color: #182233;
}
.add__button--secondary-1:hover {
  text-decoration: none;
  color: #161616;
}
.add__button--secondary-2 {
  color: #B3CEE2;
}
.add__button--secondary-2:hover {
  text-decoration: none;
  color: #b0b0b0;
}
.add__button--secondary-3 {
  color: #D9DDE7;
}
.add__button--secondary-3:hover {
  text-decoration: none;
  color: #bebebe;
}
.add__button--secondary-4 {
  color: #F93232;
}
.add__button--secondary-4:hover {
  text-decoration: none;
  color: #c63232;
}
.add__button--info {
  color: #669eff;
}
.add__button--info:hover {
  text-decoration: none;
  color: #668bcc;
}
.add__button--success {
  color: #76CA66;
}
.add__button--success:hover {
  text-decoration: none;
  color: #6e9766;
}
.add__button--warning {
  color: #FBC756;
}
.add__button--warning:hover {
  text-decoration: none;
  color: #c8a456;
}
.add__button--error {
  color: #F93232;
}
.add__button--error:hover {
  text-decoration: none;
  color: #c63232;
}

.form {
  background-color: #FFF;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  padding: 2rem 1.5rem;
  border-radius: 8px;
  width: 100%;
  max-width: 500px;
}
@media (max-width: 480px) {
  .form {
    padding: 1.5em 1em;
  }
}
.form__logo {
  margin-bottom: 1em;
}
.form__logo svg, .form__logo img {
  max-height: 150px;
}
.form__logo--full-width {
  width: 100%;
  display: block;
}
.form__logo--center {
  text-align: center;
}
.form .input__group, .form .select__group {
  margin-bottom: 1em;
}
.form .checkbox__group {
  margin-bottom: 0.5em;
}
.form__link {
  margin-bottom: 1em;
  color: #116ACC;
}
.form__link--block {
  display: block;
}
.form__title {
  margin-bottom: 1em;
}
.form > p:last-of-type {
  margin-bottom: 0;
}
.form > p .form__link {
  margin-bottom: 0;
}

.back__action {
  display: flex;
  align-items: center;
  margin-bottom: 25px;
  cursor: pointer;
  gap: 1em;
}
.back__action__container {
  display: flex;
  align-items: center;
  gap: 10px;
}
.back__action__container:hover .back__action__icon__container {
  background-color: rgba(17, 106, 204, 0.1);
}
.back__action__icon {
  width: 1em;
  height: 1em;
  fill: currentColor;
}
.back__action__icon__container {
  color: #116ACC;
  padding: 0.5em;
  border: 2px solid currentColor;
  display: flex;
  border-radius: 50%;
}
.back__action__icon__container--small {
  padding: 0.25em;
}
.back__action__title {
  color: #000000;
  font-weight: 400;
}

.list__item {
  border: 2px solid #9CA3AF;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  border-radius: 10px;
  padding: 1em 2em;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1em;
}
@media (max-width: 768px) {
  .list__item {
    padding: 1em;
  }
}
.list__item.marked {
  background-color: #F3F4F6;
  outline: 4px solid #76CA66;
}
.list__data .list__title {
  margin-bottom: 0;
}
.list__data span {
  font-size: 0.875rem;
  margin-left: 5px;
  color: #6B7280;
}
.list__client {
  font-size: 1rem;
  margin: 0.75em 0;
}
.list__cta {
  display: flex;
  align-items: center;
  gap: 1em;
}
.list__cta__item {
  display: flex;
  align-items: center;
  gap: 10px;
}
.list__cta__item span {
  text-decoration: underline;
  color: #116ACC;
}
.list__cta__item .icon {
  width: 1.25em;
  height: 1.25em;
}
.list__cta__item.disabled {
  pointer-events: none;
}
.list__cta__item.disabled span {
  text-decoration: none;
  color: #000000;
}
.list__action {
  display: flex;
  align-items: center;
  gap: 1em;
}
@media (max-width: 768px) {
  .list__action {
    gap: 10px;
  }
}
.list__more {
  display: flex;
  align-items: center;
  position: relative;
  gap: 5px;
  cursor: pointer;
}
.list__more.active .list__more__container {
  display: block;
}
.list__more span, .list__more .icon {
  pointer-events: none;
}
.list__more .icon {
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
}
.list__more:hover .icon, .list__more.active .icon {
  background-color: #F3F4F6;
}
.list__more__container {
  display: none;
  position: absolute;
  z-index: 1;
  right: -5px;
  top: calc(100% + 1em);
  background-color: #FFFFFF;
  border: 1px solid #D1D5DB;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  min-width: 260px;
  border-radius: 8px;
}
.list__more__link {
  padding: 0.5em 1em;
  display: block;
  color: #000000;
}
.list__more__link:hover {
  background-color: #F3F4F6;
}
.list__more__link.hide {
  display: none;
}
.list__img {
  border-radius: 8px;
  border: 1px solid #D1D5DB;
  width: 100%;
  height: 120px;
  object-fit: contain;
}

@media (max-width: 480px) {
  .route__list .list__item {
    flex-direction: column;
    align-items: flex-start;
    gap: 1em;
  }
}
@media (max-width: 768px) {
  .route__list .list__cta {
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
  }
}
@media (max-width: 768px) {
  .route__list .list__action {
    flex-direction: column;
  }
}
@media (max-width: 480px) {
  .route__list .list__action {
    flex-direction: row;
    width: 100%;
  }
}
@media (max-width: 480px) {
  .route__list .list__more {
    margin-left: auto;
  }
}
@media (max-width: 480px) {
  .route__list .list__more span {
    display: none;
  }
}
@media (max-width: 480px) {
  .route__list .list__more__container {
    min-width: max-content;
  }
}

@media (max-width: 600px) {
  .client__list .list__item {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (max-width: 768px) {
  .client__list .list__data {
    min-width: 265px;
  }
}
@media (max-width: 768px) {
  .client__list .list__action {
    flex-wrap: wrap;
  }
}

@media (max-width: 600px) {
  .familia__list .list__item {
    display: grid;
  }
}
@media (max-width: 600px) {
  .familia__list .list__data {
    grid-column: 2;
  }
}
@media (max-width: 600px) {
  .familia__list .list__action {
    grid-column: span 2;
  }
}

.flexible_heading {
  display: flex;
  align-items: center;
  margin-bottom: 25px;
}

.pagination {
  border-top: 2px solid #F3F4F6;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.pagination__page {
  display: flex;
}
.pagination__page__item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5em 0;
  min-width: 43px;
  width: 43px;
  max-height: 38px;
  border: 1px solid #D1D5DB;
  border-left: none;
  cursor: pointer;
  color: #6B7280;
  font-size: 1rem;
  font-weight: 700;
}
.pagination__page__item:hover {
  background-color: #F3F4F6;
}
.pagination__page__item:first-of-type {
  border-left: 1px solid #D1D5DB;
  border-radius: 8px 0 0 8px;
}
.pagination__page__item:first-of-type[class*=disable] {
  opacity: 0.5;
}
.pagination__page__item:last-of-type {
  border-radius: 0 8px 8px 0;
}
.pagination__page__item:last-of-type[class*=disable] {
  opacity: 0.5;
}
.pagination__page__item--active {
  color: #116ACC;
  border-color: #116ACC;
  border-left: 1px solid;
  background-color: rgba(17, 106, 204, 0.2);
  pointer-events: none;
}
.pagination__page__item--disable {
  pointer-events: none;
}
.pagination__icon {
  width: 0.8em;
  height: 0.8em;
}

.family__product__management {
  display: flex;
  gap: 30px;
}
.family__product__management__box {
  flex: 1;
  border: 2px solid #6B7280;
  border-radius: 8px;
  padding: 15px;
}
.family__product__management__box p {
  margin-top: 0;
}
.family__product__management__box .flexible_heading {
  margin-bottom: 1em;
}
.family__product__management__box .box__list {
  min-height: 250px;
  max-height: 250px;
  overflow-y: auto;
  border: 1px solid #9CA3AF;
  border-radius: 8px;
  margin-bottom: 15px;
}
.family__product__management__box .box__list p {
  margin: 0;
}
.family__product__management__box .box__list__item {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 5px 10px;
  cursor: pointer;
}
.family__product__management__box .box__list__item__img {
  width: 40px;
  height: 50px;
  object-fit: contain;
  display: block;
}
.family__product__management__box .box__list__item__img__wrapper {
  border: 1px solid #9CA3AF;
  border-radius: 8px;
}
.family__product__management__box .box__list__item:hover, .family__product__management__box .box__list__item.active {
  background-color: rgba(17, 106, 204, 0.1);
}
.family__product__management__control {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 15px;
}

.form-screen {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F3F4F6;
}

.header {
  --header-height: 100px;
  min-height: var(--header-height);
  background-color: #FFFFFF;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}
.header + .container {
  margin-top: 25px;
}
.header__container {
  min-height: var(--header-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header__logo {
  max-height: 90px;
}
.header__logo__img {
  max-height: inherit;
}
.header__toggle {
  position: relative;
  width: 40px;
  height: 40px;
  z-index: 1;
  cursor: pointer;
  color: #000000;
}
.header__toggle::before, .header__toggle::after {
  content: "";
  position: absolute;
  width: 30px;
  height: 2px;
  background-color: currentColor;
  border-radius: 4px;
  top: 50%;
  left: 50%;
  transition: 0.15s;
}
.header__toggle::before {
  transform: translate(-50%, -50%);
  box-shadow: 0 -8px 0 currentColor;
}
.header__toggle::after {
  transform: translate(-50%, 7px);
}
.header__toggle.active::before {
  transform: translate(-50%, -50%) rotate(-45deg);
  box-shadow: 0 0 0 transparent;
}
.header__toggle.active::after {
  transform: translate(-50%, -2px) rotate(45deg);
}
.header__nav {
  display: flex;
  flex-direction: column;
  position: fixed;
  right: 0;
  top: var(--header-height);
  z-index: 10;
  width: 100%;
  max-width: 360px;
  min-height: calc(100% - var(--header-height));
  background-color: #FFFFFF;
  border-top: 2px solid #D1D5DB;
  box-shadow: -4px 6px 6px -1px rgba(0, 0, 0, 0.1), -2px 0px 4px -1px rgba(0, 0, 0, 0.06);
  transform: translateX(100%);
  transition: transform 0.15s ease;
}
.header__nav.active {
  transform: translateX(0);
}
.header__menu {
  padding: 0;
  margin: 0;
  list-style: none;
}
.header__menu__item--dropdown.active .header__sub-menu {
  max-height: 300px;
}
.header__menu__item.active > .header__link {
  background-color: rgba(17, 106, 204, 0.2);
  color: #116ACC;
  border-left: 2px solid #116ACC;
}
.header__menu__item.active > .header__link .icon {
  transform: rotate(-180deg);
  background-position: left;
}
.header__link {
  display: flex;
  align-items: center;
  min-height: 45px;
  padding: 0 15px;
  color: #000000;
  border-left: 2px solid transparent;
  font-family: "NunitoSans", sans-serif;
  font-weight: 700;
}
.header__link__icon {
  max-height: 24px;
  max-width: 24px;
  margin-right: 15px;
  fill: currentColor;
}
.header__link .icon {
  transition: transform 0.15s;
}
.header__link .icon__container {
  margin-left: auto;
  width: 100px;
  display: flex;
  justify-content: flex-end;
}
.header__link:hover {
  background-color: rgba(17, 106, 204, 0.2);
  color: #116ACC;
  border-left: 2px solid #116ACC;
}
.header__link--singout {
  width: 100%;
  border: 2px solid transparent;
  background-color: transparent;
  cursor: pointer;
}
.header__link--singout .header__link__icon {
  fill: #F93232;
}
.header__link--singout:hover {
  background-color: rgba(209, 213, 219, 0.2);
  color: #F93232;
  border-left: 2px solid #F93232;
}
.header__singout {
  margin-top: auto;
  margin-bottom: 2em;
}
.header__sub-menu {
  list-style: none;
  max-height: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  transition: max-height 0.15s;
}
.header__sub-menu .header__link {
  padding-left: 55px;
}

.route__title {
  margin-bottom: 1rem;
}
.route__container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 20px;
  margin-bottom: 40px;
}
.route__item {
  padding: 1em 2em;
  border-radius: 8px;
  border: 1px solid #D1D5DB;
  display: block;
  text-align: center;
  color: #000000;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.product_list_wrapper {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(232px, 1fr));
  gap: 10px;
  margin-bottom: 1em;
}
@media (max-width: 768px) {
  .product_list_wrapper {
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  }
}
@media screen and (min-width: 1240px) {
  .product_list_wrapper tr:nth-of-type(5n+1) .list__more__container {
    left: -5px;
  }
}
@media screen and (min-width: 992px) {
  .product_list_wrapper tr:nth-of-type(4n+1) .list__more__container {
    left: -5px;
  }
}
@media screen and (min-width: 768px) {
  .product_list_wrapper tr:nth-of-type(3n+1) .list__more__container {
    left: -5px;
  }
}
@media screen and (min-width: 620px) {
  .product_list_wrapper tr:nth-of-type(4n+1) .list__more__container {
    left: -5px;
  }
}
@media screen and (min-width: 470px) {
  .product_list_wrapper tr:nth-of-type(3n+1) .list__more__container {
    left: -5px;
  }
}
@media screen and (min-width: 320px) {
  .product_list_wrapper tr:nth-of-type(2n+1) .list__more__container {
    left: -5px;
  }
}
@media screen and (min-width: 300px) {
  .product_list_wrapper tr .list__more__container {
    left: -5px;
  }
}
.product_list .list__item {
  padding: 1em;
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: initial;
  gap: 10px;
  cursor: pointer;
}
@media (max-width: 768px) {
  .product_list .list__item {
    padding: 0.5em;
  }
}
.product_list .list__item .list__more > span {
  font-size: 0.875rem;
  text-decoration: underline;
}
.product_list .list__item .list__more .icon {
  width: 1.2em;
  height: 1.2em;
}
.product_list .list__item .list__more__container {
  min-width: max-content;
  top: calc(100% + 0.5em);
}
.product_list .list__title {
  margin: 0;
  font-weight: 700;
  font-size: 1rem;
  height: 23px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}
.product_list #product_list_length {
  display: none;
}
.product_list #product_list_filter {
  float: left;
  margin-bottom: 1em;
  width: 100%;
  max-width: 410px;
}
.product_list #product_list_filter label {
  margin: 0;
  display: initial;
}
.product_list #product_list_filter label input {
  min-height: 44px;
  max-width: 410px;
  width: 100%;
  padding: 10px 10px 10px 16px;
  position: relative;
  border: 1px solid #6B7280;
  border-radius: 8px;
  color: #000000;
}
.product_list thead {
  display: none;
}
.product_list tr, .product_list td {
  padding: 0 !important;
  border: none !important;
  background-color: transparent !important;
  width: 100%;
  display: block;
}

.product__data {
  display: flex;
  gap: 30px;
}
@media (max-width: 576px) {
  .product__data {
    flex-direction: column;
  }
}
.product__data__item {
  flex: 1;
}
.product__data__item--img {
  max-width: 50%;
}
@media (max-width: 576px) {
  .product__data__item--img {
    max-width: 100%;
  }
}
.product__data__item--info > div {
  margin-bottom: 1em;
}
.product__data__price {
  display: flex;
  gap: 30px;
}
.product__data p {
  margin: 0;
}
.product__data .title_heading {
  color: #9CA3AF;
  font-size: 1rem;
}
.product__data .swiper {
  width: 100%;
  max-width: 100%;
  padding: 5px;
  --swiper-navigation-size: 28px;
}
.product__data .swiper-slide {
  max-width: 104px;
  max-height: 100px;
}
.product__image {
  max-width: 100%;
  min-height: 80px;
  border: 1px solid #D1D5DB;
  object-fit: contain;
  display: block;
  border-radius: 8px;
  cursor: pointer;
  aspect-ratio: 1/1;
}
.product__image--main {
  min-width: 100%;
  min-height: 300px;
  pointer-events: none;
}
.product__image__wrapper {
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
@media (max-width: 768px) {
  .product__title {
    display: flex;
    flex-direction: column;
    gap: 5px;
  }
}
@media (max-width: 576px) {
  .product_main_data {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
  }
}
@media (max-width: 576px) {
  .product_main_data a {
    margin-left: 0 !important;
    order: -1;
  }
}

.drop_zone {
  padding: 15px;
  width: 100%;
  max-width: 650px;
  margin: 0 auto;
  height: 150px;
  background-color: #F3F4F6;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: 5px dashed #D1D5DB;
  cursor: pointer;
}
.drop_zone_text {
  pointer-events: none;
}
.drop_zone-active {
  border: 5px dashed #F3F4F6;
  background-color: #D1D5DB;
}

.drop_file {
  display: flex;
  flex-wrap: wrap;
  column-gap: 10px;
}
.drop_file_img {
  width: 60px;
  height: 60px;
  display: block;
  margin-bottom: 1em;
  border-radius: 8px;
  border: 1px solid #F3F4F6;
}
.drop_file_img.active {
  border: 1px solid #116ACC;
  outline: 1px solid #5897db;
}
.drop_file_item {
  position: relative;
}
.drop_file_item .button__icon {
  position: absolute;
  top: -10px;
  right: -10px;
  background-color: #F93232;
  fill: #FFF;
  border-radius: 50%;
  padding: 2.5px;
  width: 2em;
  height: 2em;
  cursor: pointer;
}
.drop_file_item .button__icon * {
  pointer-events: none;
}

.client__list #client__list_length {
  display: none;
}
.client__list #client__list_filter {
  float: left;
  margin-bottom: 1em;
  width: 100%;
  max-width: 410px;
}
.client__list #client__list_filter label {
  margin: 0;
  display: initial;
}
.client__list #client__list_filter label input {
  min-height: 44px;
  max-width: 410px;
  width: 100%;
  padding: 10px 10px 10px 16px;
  position: relative;
  border: 1px solid #6B7280;
  border-radius: 8px;
  color: #000000;
}
.client__list thead {
  display: none;
}
.client__list tr, .client__list td {
  padding: 0 !important;
  border: none !important;
  background-color: transparent !important;
  width: 100%;
  display: block;
}

.cart__list {
  border: 2px solid #9CA3AF;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  border-radius: 10px;
  padding: 1em 2em;
}
.cart__list__item {
  display: flex;
  align-items: flex-start;
  gap: 25px;
  border: 2px solid #9CA3AF;
  border-radius: 10px;
  padding: 1em 1em;
}
.cart__list__item .img {
  max-width: 65px;
  max-height: 65px;
  border: 1px solid #D1D5DB;
  border-radius: 4px;
  display: block;
  object-fit: contain;
}
.cart__list__item .data {
  text-align: center;
}
.cart__list__item .data--title {
  text-align: left;
}
.cart__list__item .data p {
  font-weight: 700;
}
.cart__list__item .data p, .cart__list__item .data input {
  margin: 0;
  margin-top: 0.25rem;
}
.cart__list__item .data .heading {
  font-weight: 400;
  min-width: 100%;
  margin: 0;
  font-size: 1rem;
  color: #6B7280;
}
.cart__list__item .data input {
  max-width: 60px;
  padding: 5px;
  min-height: 35px;
}
.cart__list__item .action {
  align-self: center;
}
.cart__list__footer {
  margin-top: 15px;
  display: flex;
  justify-content: center;
  gap: 40px;
}
@media (max-width: 576px) {
  .cart__list__footer {
    gap: 20px;
    flex-direction: column;
  }
}
@media (max-width: 576px) {
  .cart__list__footer .button {
    text-align: left;
  }
}

.cart__list {
  margin-bottom: 1.5rem;
}
@media (max-width: 576px) {
  .cart__list {
    padding: 1em;
  }
}
.cart__list__wrapper {
  display: flex;
  flex-direction: column;
  gap: 15px;
  max-height: 550px;
  overflow: auto;
}

.cart_list_wrapper_products_container {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.rebuy {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: #fff;
  z-index: 5;
  padding: 1em;
  overflow-y: auto;
  overscroll-behavior-y: contain;
}
@media (max-width: 1230px) {
  .rebuy .container {
    margin-left: 0;
    margin-right: 0;
  }
}
@media (max-width: 576px) {
  .rebuy__header .h3 {
    font-size: 1.25em;
  }
}
.rebuy > * {
  width: 100%;
}
.rebuy h2 {
  font-weight: 400;
}
.rebuy .list__item.selected {
  background-color: #F3F4F6;
}
.rebuy .list__item .button--action img {
  max-width: 35px;
}
@media (max-width: 576px) {
  .rebuy .list__item .button--action img {
    max-width: 28px;
  }
}
.rebuy .list__item .button--action--wrapper {
  gap: 20px;
}
@media (max-width: 768px) {
  .rebuy .list__item .button--action--wrapper {
    gap: 10px;
  }
}
.rebuy .button--add {
  align-self: center;
  width: initial;
}

.newbuy .product_list_wrapper {
  overflow: auto;
}
.newbuy .product_list.families .product_list_wrapper {
  max-height: 400px;
}
.newbuy .product_list.products .product_list_wrapper {
  max-height: 800px;
}
@media (max-width: 768px) {
  .newbuy .product_list.products .product_list_wrapper {
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  }
}

.product__show {
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.2);
  width: 100%;
  height: 100%;
}
.product__show__wrapper {
  position: absolute;
  top: 20vh;
  right: 20px;
  background: #fff;
  max-width: 650px;
  border: 2px solid #000000;
  border-radius: 10px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  padding: 1em;
  max-height: calc(100vh - 22vh);
  overflow-y: auto;
}
@media (max-width: 768px) {
  .product__show__wrapper {
    top: 0;
    right: 0;
    max-width: 100%;
    width: 100%;
    min-height: 100%;
    border-radius: 0;
  }
}
.product__show__loading {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 1;
  border-radius: 10px;
}
.product__show__loading.show {
  display: flex;
}

@media (max-width: 992px) {
  .cart__list__wrapper .cart__list__item {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 10px;
  }
}
@media (max-width: 768px) {
  .cart__list__wrapper .cart__list__item {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 576px) {
  .cart__list__wrapper .cart__list__item {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 992px) {
  .cart__list__wrapper .cart__list__item .data {
    text-align: left;
  }
}
@media (max-width: 992px) {
  .cart__list__wrapper .cart__list__item .data--title {
    grid-column: span 2;
  }
}
@media (max-width: 576px) {
  .cart__list__wrapper .cart__list__item .action {
    grid-row: 1;
    grid-column: 2;
  }
}

.min-h-screen {
  min-height: 100vh;
}

.ajust-h-screen {
  min-height: calc(100vh - 100px);
}

.flex {
  display: flex;
}

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

.hide {
  display: none;
}

.swal2-styled.swal2-confirm {
  padding: 0;
  background: transparent;
}
.swal2-styled.swal2-confirm a, .swal2-styled.swal2-confirm input, .swal2-styled.swal2-confirm button, .swal2-styled.swal2-confirm span {
  padding: 0.625em 1.1em;
  color: #FFF;
  text-decoration: none;
  border: none;
  display: inline-block;
  background: inherit;
  border-radius: inherit;
  cursor: pointer;
}
.swal2-styled.swal2-confirm span {
  pointer-events: none;
}

.swal2-html-container * {
  margin: 0.5em 0;
}
.swal2-html-container .list-title {
  text-decoration: underline;
}
.swal2-html-container ul {
  list-style: none;
  padding: 0;
}

/**
  - Este sistema está ideado para utilizar BEM (http://getbem.com/).
  - Los nombres de las variables se plantea de esta forma:
    > Las palabras que se compongan con más de 1 una palabra irá unida con "_".

    # Variables globales:
    {tipo de propiedad}-[{parte a la que ataca}]-[{...descripción}]
    Ejemplos:
      + font-size-h1, font-size-text, font-line_height, color-background-primary, color-primary,
        color-text, color-text-danger, ...

    # Variables locales:
    {nombre del elemento}-{propiedad implicada}
    Ejemplos:
      + header-min_height, main-screen-color, ...
**/
/* ======================================================================= *\
  Se aplican estilos para resetear y aplicar estilos de forma muy global,
  sin centrarse en nada en concreto.
\* ======================================================================= */
/* ======================================================================= *\
  Se generan las variables. También podemos almacenar variables para
  usarlas en otros procesos.
\* ======================================================================= */
/* ======================================================================= *\
  Se aplican estilos a elementos muy genéricos. A etiquetas HTML,
  no a clases por lo general.
\* ======================================================================= */
/* ======================================================================= *\
  Se aplican para generar functiones y mixings que ayuden a no repetir
  código y a aplicar funcionalidades más rápido.
\* ======================================================================= */
/* ======================================================================= *\
  Se aplican para generar clases muy reutilizables que añaden patrones de
  estructura (estilos de layout), pero sin añadir decoración.
\* ======================================================================= */
/* ======================================================================= *\
  Se aplican para generar las partes más pequeñas de nuestro diseño. Son
  partes reconocibles pero indivisibles que siempre necesitan de más
  contexto para tener sentido.
\* ======================================================================= */
/* ======================================================================= *\
  Cuando juntamos dos o más átomos creamos una molécula. Son elementos que
  ya tienen un sentido por si solos, aunque no son totalmente independientes.
\* ======================================================================= */
/* ======================================================================= *\
  Son elementos independientes, que si sacamos de una página y lo ponemos
  en otra seguirá teniendo sentido. Suelen ser una composición de varias
  moléculas.
\* ======================================================================= */
/* ======================================================================= *\
  Son clases que podemos utilizar para sobreescribir estilos sin necesidad de
  aplicarlos de forma separada. Son clases muy específicas, tanto que
  hasta podemos aplicar !important.
\* ======================================================================= */
/* ======================================================================= *\
  Son para sobreescribir posibles conflictos de librerías de terceros.
\* ======================================================================= */

/*# sourceMappingURL=style.css.map */
