body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
*[tabindex]:focus-visible,
input[type="file"]:focus-visible {
  outline: 0.125rem solid #4d65ff;
  outline-offset: 0.125rem;
}
.w-richtext > :not(div):first-child, .w-richtext > div:first-child > :first-child {
  margin-top: 0 !important;
}
.w-richtext>:last-child, .w-richtext ol li:last-child, .w-richtext ul li:last-child {
  margin-bottom: 0 !important;
}
.pointer-events-off {
  pointer-events: none;
}
.pointer-events-on {
  pointer-events: auto;
}
.div-square::after {
  content: "";
  display: block;
  padding-bottom: 100%;
}
.container-medium,.container-small, .container-large {
  margin-right: auto !important;
  margin-left: auto !important;
}
.text-style-3lines {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.text-style-2lines {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.text-style-1line {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.display-inlineflex {
  display: inline-flex;
}
.hide {
  display: none !important;
}
@media screen and (max-width: 991px), 
  @media screen and (max-width: 767px), 
  @media screen and (max-width: 479px){
    .hide, .hide-tablet{
      display: none !important;
    }
}
@media screen and (max-width: 767px)
  .hide-mobile-landscape{
    display: none !important;
}
}
@media screen and (max-width: 479px)
  .hide-mobile{
    display: none !important;
}
}
.margin-0 {
  margin: 0rem !important;
}
.padding-0 {
  padding: 0rem !important;
}
.spacing-clean {
  padding: 0rem !important;
  margin: 0rem !important;
}
.margin-top {
  margin-right: 0rem !important;
  margin-bottom: 0rem !important;
  margin-left: 0rem !important;
}
.padding-top {
  padding-right: 0rem !important;
  padding-bottom: 0rem !important;
  padding-left: 0rem !important;
}
.margin-right {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
  margin-left: 0rem !important;
}
.padding-right {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important;
  padding-left: 0rem !important;
}
.margin-bottom {
  margin-top: 0rem !important;
  margin-right: 0rem !important;
  margin-left: 0rem !important;
}
.padding-bottom {
  padding-top: 0rem !important;
  padding-right: 0rem !important;
  padding-left: 0rem !important;
}
.margin-left {
  margin-top: 0rem !important;
  margin-right: 0rem !important;
  margin-bottom: 0rem !important;
}
.padding-left {
  padding-top: 0rem !important;
  padding-right: 0rem !important;
  padding-bottom: 0rem !important;
}
.margin-horizontal {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
}
.padding-horizontal {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important;
}
.margin-vertical {
  margin-right: 0rem !important;
  margin-left: 0rem !important;
}
.padding-vertical {
  padding-right: 0rem !important;
  padding-left: 0rem !important;
}
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
::selection {
  color: #fff; background: #515FBC;
}
.form__input {
  caret-color: #515FBC;
}
ul {
  list-style-image: url("assets/img/ul-ico.svg");
}
.hide {
  display: none;
}
.hidden {
  display: none;
}
@property --angle{
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}
.animated-button::after, .animated-button::before{
  content: '';
  position: absolute;
  height: 100%;
  width: 100%;
  background-image: conic-gradient(from var(--angle), transparent 50%, #917aff);
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: -1;
  padding: 1px;
  border-radius: 999px;
  animation: 3s spin linear infinite;
}
.animated-button::before{
  filter: blur(1.5rem);
  opacity: 0.5;
}
@keyframes spin{
  from{
    --angle: 0deg;
  }
  to{
    --angle: 360deg;
  }
}
@property --angleScreen{
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}
@property --angleScreenTwo{
  syntax: "<angle>";
  initial-value: 360deg;
  inherits: false;
}
.animated-screen::after, .animated-screen::before{
  content: '';
  position: absolute;
  height: 100%;
  width: 100%;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: -1;
  padding: 1px;
  border-radius: 40px;
}
.animated-screen::after{
  background-image: conic-gradient(from var(--angleScreen), transparent 95%, #cab7ff);
  animation: 9s spinScreen linear infinite;
}
.animated-screen::before{
  background-image: conic-gradient(from var(--angleScreenTwo), #cab7ff, transparent 5%);
  animation: 9s spinScreenTwo linear infinite;
}
@keyframes spinScreen{
  from{
    --angleScreen: 0deg;
  }
  to{
    --angleScreen: 360deg;
  }
}
@keyframes spinScreenTwo{
  from{
    --angleScreenTwo: 360deg;
  }
  to{
    --angleScreenTwo: 0deg;
  }
}
@media screen and (max-width: 991px) {
}
@media screen and (max-width: 767px) {
  .animated-screen::after, .animated-screen::before{
    border-radius: 24px;
  }
}
@media screen and (max-width: 478px) {
}
.w-editor h1,
.w-editor h2,
.w-editor h3,
.w-editor h4,
.w-editor h5,
.w-editor h6 {
  background-image: none;
  background-clip: border-box;
  color: inherit; /* Uses parent’s text color */
  text-fill-color: initial; /* Ensure text is filled */
  -webkit-text-fill-color: initial;
}
#formulariobajo {
  position: relative;
  color: #fff;
  overflow: hidden;
}
#formulariobajo .indicator {
  position: absolute;
  top: 42%;
  right: 22%;
  width: 10px;
  height: 10px;
  background: #555;
  border-radius: 50%;
}
#formulariobajo.valid .indicator {
  background: #0f0;
  box-shadow: 0 0 5px #0f0, 0 0 10px #0f0, 0 0 20px #0f0, 0 0 40px #0f0;
}

#formulariobajo.invalid .indicator {
  background: #f00;
  box-shadow: 0 0 5px #f00, 0 0 10px #f00, 0 0 20px #f00, 0 0 40px #f00;
}
.modalproceso {
    display: none;
    position: fixed;
    z-index: 1027;
    padding-top: 100px;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    overflow: auto;
}
.modal-content{
    background-color:#fefefe;
    margin:auto;
    padding:20px;
    border:1px solid #888;
    width:80%;
    border-radius: 10px;
}
.modal-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem 1rem;
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.modal-header .btn-close {
    padding: calc(1rem * 0.5) calc(1rem * 0.5);
    margin: calc(-0.5 * 1rem) calc(-0.5 * 1rem) calc(-0.5 * 1rem) auto;
}
.modal-title {
    margin-bottom: 0;
    line-height: 1.5;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin: auto;
}
.modal-body {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 1rem;
    color: #000;
}
.modal-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: calc(1rem - 0.5rem * 0.5);
    background-color: var(--ct-modal-footer-bg);
    border-top: 1px solid #dee2e6;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}
.modal-footer > * {
    margin: calc(0.5rem * 0.5);
}
