.material_icon {
    position: relative
}

.material_icon:after,
.material_icon:before {
    font-family: Material Symbols Outlined;
    font-weight: 200;
    position: absolute
}

.icon_date:after {
    content: "";
    font-size: 1.5rem;
    color: #056c89;
    right: 12px;
    top: 28px
}

.icon_clean {
    padding-left: 24px
}

.icon_clean:after {
    content: "";
    font-size: 1.5rem;
    left: -6px;
    top: -3px
}

.icon_search {
    padding-left: 24px
}

.icon_search:after {
    content: "";
    font-size: 1.5rem;
    left: -6px;
    top: -3px
}

.icon_back {
    padding-left: 24px
}

.icon_back:after {
    content: "";
    font-size: 1.25rem;
    left: 0
}

.icon_forward {
    padding-right: 24px
}

.icon_forward:before {
    content: "";
    font-size: 1.25rem;
    right: 14px
}

.icon_download {
    padding-right: 24px
}

.icon_download:before {
    content: "";
    font-size: 1.25rem;
    right: 0;
    top: -2px
}

.icon_trash {
    padding-right: 24px
}

.icon_trash:before {
    content: "";
    font-size: 1.5rem;
    right: -4px;
    top: -4px
}

.icon_task:before {
    content: "";
    font-size: 1.25rem;
    right: 0;
    top: -2px
}

.icon_cancel:before {
    content: "";
    font-size: 1.25rem;
    right: 0;
    top: -2px
}

.icon_arrowdown:before {
    content: "";
    font-size: 1.25rem;
    right: 0;
    top: -2px
}

.icon_close:before {
    content: "";
    font-size: 1.5rem;
    font-weight: 400;
    left: 0;
    top: -3px
}

.icon_check:before {
    content: "";
    font-size: 1.5rem;
    font-weight: 400;
    left: 0;
    top: -3px
}

.icon_logout {
    padding-right: 24px
}

.icon_logout:before {
    content: "";
    font-size: 1.5rem;
    font-weight: 400;
    right: -6px;
    top: -3px
}

.icon_visibility {
    padding-left: 24px
}

.icon_visibility:after {
    content: "";
    font-size: 1.5rem;
    left: -8px;
    top: -3px
}

.icon_edit {
    padding-left: 24px
}

.icon_edit:after {
    content: "";
    font-size: 1.5rem;
    left: -8px;
    top: -3px
}

.icon_delete {
    padding-left: 24px
}

.icon_delete:after {
    content: "";
    font-size: 1.5rem;
    left: -8px;
    top: -3px
}

* {
    box-sizing: border-box
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],
template {
    display: none
}

a {
    background: transparent
}

a:active,
a:hover {
    outline: 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b,
strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

mark {
    background: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 40px
}

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0
}

pre {
    overflow: auto
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled],
html input[disabled] {
    cursor: default
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal
}

input[type=checkbox],
input[type=radio] {
    box-sizing: border-box;
    padding: 0
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    height: auto
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: 700
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,
th {
    padding: 0
}

.material-symbols-outlined {
    font-weight: 200
}

body {
    font-family: Nunito, sans-serif;
    font-size: 1rem
}

body.modal-open {
    overflow: hidden
}

a {
    text-decoration: none;
    color: #023653
}

a:hover,
a:focus,
a:active {
    color: #434547
}

a:focus-visible,
button:focus-visible {
    outline: 3px solid #81BECC
}

ul {
    list-style: none;
    margin: 0;
    padding: 0
}

.img-responsive {
    width: 100%;
    height: auto;
    display: block
}

.img-responsive-2 {
    width: 60%;
    height: auto;
    display: block;
    margin: auto
}

.d-grid {
    display: grid
}

.d-flex {
    display: flex
}

.flex-column {
    display: flex;
    flex-direction: column
}

.text_center {
    text-align: center
}

.hidden {
    display: none !important
}

.msgTxt {
    color: #0a0e14;
    font-size: 16px;
    margin: 16px 0
}

.textOk {
    color: #056c89;
    font-size: 16px
}

.accordion .menu__title {
    border-bottom: 1px solid #000;
    padding-bottom: 12px
}

.accordion_trigger {
    border: none;
    background: transparent;
    padding: 0;
    text-align: left;
    width: 100%;
    position: relative
}

.accordion_trigger:before {
    transition: all .15s ease-in-out;
    font-family: Material Symbols Outlined;
    position: absolute;
    content: "";
    font-size: 1.5rem;
    font-weight: 200;
    right: 0
}

.accordion [aria-expanded=true]:before {
    transition: all .15s ease-in-out;
    transform: rotate(180deg)
}

.advanced__search__toggle {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 5px;
    color: #056c89;
    padding: 4px 0
}

.advanced__search .filters {
    border-top: solid 1px #81BECC;
    padding-bottom: 40px
}

.advanced__search .filters__fields {
    margin: 24px 0
}

.advanced__search .filters__fields .row1 {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px
}

@media screen and (min-width: 768px) {
    .advanced__search .filters__fields .row1 {
        margin-bottom: 24px;
        gap: 24px
    }
}

@media screen and (max-width: 1079px) {
    .advanced__search .filters__fields .row1 {
        flex-wrap: wrap
    }
}

.advanced__search .filters__fields .row2 {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 24px;
    flex-wrap: wrap
}

@media screen and (min-width: 1080px) {
    .advanced__search .filters__fields .row2 {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 24px
    }
}

.advanced__search .filters__field {
    width: 100%
}

.advanced__search .filters__field label {
    display: block;
    margin-bottom: 4px
}

@media screen and (min-width: 480px) {

    .advanced__search .filters__field--state,
    .advanced__search .filters__field--phase {
        width: calc(50% - 12px)
    }
}

@media screen and (min-width: 740px) {
    .advanced__search .filters__field.combobox-datepicker {
        width: calc(50% - 12px)
    }
}

@media screen and (min-width: 768px) {

    .advanced__search .filters__field--title,
    .advanced__search .filters__field--department {
        width: calc(50% - 12px)
    }

    .advanced__search .filters__field--kind,
    .advanced__search .filters__field--state,
    .advanced__search .filters__field--phase,
    .advanced__search .filters__field--type {
        width: calc(33% - 12px)
    }

    .advanced__search .filters__field.combobox-datepicker {
        width: calc(50% - 12px)
    }
}

@media screen and (min-width: 1080px) {

    .advanced__search .filters__field--kind,
    .advanced__search .filters__field--type,
    .advanced__search .filters__field--state,
    .advanced__search .filters__field--phase {
        width: 100%
    }

    .advanced__search .filters__field--phase .combo-option {
        padding-right: 0
    }

    .advanced__search .filters__field.combobox-datepicker {
        width: 100%
    }
}

.advanced__search .filters__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-top: 24px;
    gap: 16px
}

.advanced__search .filters__actions__arrow {
    margin-right: 5px
}

@media screen and (max-width: 360px) {
    .advanced__search .filters__actions {
        flex-wrap: wrap
    }

    .advanced__search .filters__actions [role=button] {
        width: 100%
    }
}

.advanced__search .combo.open .combo-menu .combo-option:first-child {
    display: none
}

.advanced__search .combo-input {
    overflow: hidden
}

.breadcrumbs {
    padding: 24px 0
}

.breadcrumbs__ul,
.breadcrumbs li {
    display: flex;
    align-items: center
}

.breadcrumbs__prev {
    padding-right: 24px;
    margin-right: 8px
}

.breadcrumbs__prev:before {
    font-size: 1rem;
    right: 0
}

.breadcrumbs__prev a {
    color: #0a0e14;
    font-weight: 700
}

@media screen and (max-width: 599px) {
    .breadcrumbs {
        display: none
    }
}

.goback_link {
    display: flex;
    align-items: center;
    color: #0a0e14;
    font-size: .75rem;
    font-weight: 700;
    padding: 24px 0
}

.goback_link .icon_back {
    padding-left: 16px
}

.goback_link .icon_back:after {
    font-size: .875rem;
    font-weight: 400
}

@media screen and (min-width: 600px) {
    .goback_link {
        display: none
    }
}

.primary_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    transition: all .15s ease-in-out;
    background: #056c89;
    color: #fff;
    border: 2px solid transparent;
    outline: none
}

.primary_button:hover {
    background: #fff;
    color: #056c89;
    border-color: #056c89
}

.primary_button:focus,
.primary_button:focus-visible {
    background: #056c89;
    color: #fff;
    border-color: transparent;
    border: 2px solid;
    outline: 3px solid #983700
}

.primary_button:active {
    background: #023653;
    color: #fff;
    outline: none
}

.secondary_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    transition: all .15s ease-in-out;
    background: #983700;
    color: #fff;
    border: 2px solid transparent;
    outline: none
}

.secondary_button:hover {
    background: #fff;
    color: #983700;
    border-color: #983700
}

.secondary_button:focus,
.secondary_button:focus-visible {
    background: #983700;
    color: #fff;
    border-color: transparent;
    border: 2px solid;
    outline: 3px solid #056C89
}

.secondary_button:active {
    background: #6c2700;
    color: #fff;
    outline: none
}

.primary_outline {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    transition: all .15s ease-in-out;
    background: #fff;
    color: #056c89;
    border: 2px solid #056C89;
    outline: none
}

.primary_outline:hover {
    background: #056c89;
    color: #fff
}

.primary_outline:focus {
    background: #fff;
    color: #056c89;
    box-shadow: 0 0 0 2px #056c89 inset;
    border: 2px solid transparent;
    outline: 3px solid #983700
}

.primary_outline:active {
    background: #023653;
    color: #fff;
    outline: none
}

.secondary_outline {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    transition: all .15s ease-in-out;
    background: #fff;
    color: #983700;
    border: 2px solid #983700;
    outline: none
}

.secondary_outline:hover {
    background: #983700;
    color: #fff
}

.secondary_outline:focus {
    background: #fff;
    color: #983700;
    box-shadow: 0 0 0 2px #983700 inset;
    border: 2px solid transparent;
    outline: 3px solid #056C89
}

.secondary_outline:active {
    background: #6c2700;
    color: #fff;
    outline: none
}

.light_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    white-space: nowrap;
    background: #fff;
    border: 1px solid #056C89;
    color: #056c89;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px
}

.circle_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    white-space: nowrap;
    transition: all .15s ease-in-out;
    background: #056c89;
    color: #fff;
    border: 2px solid transparent;
    outline: none;
    height: 40px;
    width: 40px;
    padding: 0
}

.circle_button:hover {
    background: #fff;
    color: #056c89;
    border-color: #056c89
}

.circle_button:focus,
.circle_button:focus-visible {
    background: #056c89;
    color: #fff;
    border-color: transparent;
    border: 2px solid;
    outline: 3px solid #983700
}

.circle_button:active {
    background: #023653;
    color: #fff;
    outline: none
}

.back_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    transition: all .15s ease-in-out;
    background: #056c89;
    color: #fff;
    border: 2px solid transparent;
    outline: none;
    position: relative
}

.back_button:hover {
    background: #fff;
    color: #056c89;
    border-color: #056c89
}

.back_button:focus,
.back_button:focus-visible {
    background: #056c89;
    color: #fff;
    border-color: transparent;
    border: 2px solid;
    outline: 3px solid #983700
}

.back_button:active {
    background: #023653;
    color: #fff;
    outline: none
}

.back_button__text {
    font-size: .875rem
}

.back_button_light {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    transition: all .15s ease-in-out;
    background: #fff;
    color: #fff;
    border: 2px solid transparent;
    outline: none;
    border: 1px solid #056C89;
    color: #056c89
}

.back_button_light:hover {
    background: #fff;
    color: #fff;
    border-color: #fff
}

.back_button_light:focus,
.back_button_light:focus-visible {
    background: #fff;
    color: #fff;
    border-color: transparent;
    border: 2px solid;
    outline: 3px solid #983700
}

.back_button_light:active {
    background: #056c89;
    color: #fff;
    outline: none
}

.back_button_light__text {
    font-size: .875rem;
    padding-left: 18px
}

.forward_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    transition: all .15s ease-in-out;
    background: #056c89;
    color: #fff;
    border: 2px solid transparent;
    outline: none;
    position: relative
}

.forward_button:hover {
    background: #fff;
    color: #056c89;
    border-color: #056c89
}

.forward_button:focus,
.forward_button:focus-visible {
    background: #056c89;
    color: #fff;
    border-color: transparent;
    border: 2px solid;
    outline: 3px solid #983700
}

.forward_button:active {
    background: #023653;
    color: #fff;
    outline: none
}

.forward_button__text {
    font-size: .875rem;
    padding-right: 18px
}

.download_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    position: relative
}

.download_button__text {
    font-size: .875rem;
    padding-right: 18px
}

.ham_button {
    border: 0;
    background: transparent;
    display: flex
}

.ham_button .material-icons {
    font-size: 2.375rem
}

.listall_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    transition: all .15s ease-in-out;
    background: #056c89;
    color: #fff;
    border: 2px solid transparent;
    outline: none
}

.listall_btn:hover {
    background: #fff;
    color: #056c89;
    border-color: #056c89
}

.listall_btn:focus,
.listall_btn:focus-visible {
    background: #056c89;
    color: #fff;
    border-color: transparent;
    border: 2px solid;
    outline: 3px solid #983700
}

.listall_btn:active {
    background: #023653;
    color: #fff;
    outline: none
}

.close_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap
}

button[disabled] {
    background: #878b8f;
    color: #434547;
    border-color: #878b8f
}

button[disabled]:hover {
    background: #878b8f;
    color: #434547;
    border-color: #878b8f;
    outline: none
}

.calendar {
    background: #f9fafb;
    border-radius: 8px;
    padding: 24px;
    width: 366px;
    height: 290px
}

.calendar__navigation {
    display: flex;
    justify-content: space-between
}

.calendar__navigation__btn {
    display: flex;
    align-items: center;
    color: #64676a;
    font-size: .875rem;
    gap: 15px;
    background: transparent;
    border: none
}

.calendar__navigation__btn .material-icons {
    font-size: .875rem
}

.calendar table {
    width: 100%;
    border-collapse: collapse
}

.calendar th,
.calendar td {
    text-align: center
}

.calendar td .today,
.day_btn {
    text-align: center;
    margin: 0 auto
}

.calendar th {
    color: #056c89;
    font-weight: 400;
    padding: 18px 4px 8px
}

.calendar td {
    color: #393939;
    font-weight: 700;
    padding: 4px
}

.calendar .navigation {
    margin-bottom: 20px
}

.calendar .day_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #983700;
    border-radius: 50%;
    background: transparent;
    height: 30px;
    width: 30px
}

.calendar .day_btn:focus {
    outline-color: #983700
}

.calendar .day_btn:active {
    background: #983700;
    color: #fff
}

.calendar .selected .day_btn {
    background: #ff7425;
    border: none;
    color: #393939
}

.calendar .today {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #983700;
    color: #fff;
    height: 30px;
    width: 30px
}

.calendar #current_month {
    text-transform: capitalize
}

.card {
    background: #fff
}

.card__img {
    max-width: 360px;
    width: 100%;
    height: 220px
}

.card__img img {
    border-top-right-radius: 20px;
    border: solid 1px #C3E4E9;
    border-bottom: none;
    height: 100%;
    object-fit: cover
}

.card__title {
    color: #023653;
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 24px;
    padding: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: ellipsis
}

.card__minister {
    color: #0a0e14;
    font-size: 1rem;
    font-weight: 400;
    margin: 0 0 8px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis
}

.card__content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-grow: 1;
    border: solid 1px #C3E4E9;
    border-top: none;
    border-bottom-left-radius: 20px;
    color: #056c89;
    padding: 16px
}

.card__content__btn {
    border-top: solid 1px #C3E4E9;
    margin-top: 24px;
    padding-top: 16px
}

.card__content__btn .forward_button {
    display: flex;
    align-items: center;
    font-size: .875rem;
    width: fit-content;
    padding: 0 24px
}

.card__info {
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    justify-content: space-between
}

.card__info__date {
    gap: 32px;
    font-size: .875rem;
    margin-bottom: 16px;
    flex-wrap: wrap
}

.card__info__date .datebox {
    color: #056c89;
    gap: 8px
}

.card__info__date .datebox__format {
    color: #0a0e14
}

.card__info__actual {
    display: flex;
    align-items: center;
    font-size: .875rem;
    gap: 12px;
    flex-wrap: wrap
}

.card__info__actual .phase {
    color: #056c89
}

.card__info__actual .phase__number {
    color: #0a0e14;
    font-weight: 700
}

.card__info__actual .state {
    display: flex;
    align-items: center;
    gap: 4px
}

.card__info__actual .state__text {
    color: #0a0e14
}

.card__info__actual .state .material-symbols-outlined {
    font-size: 18px;
    font-weight: 400
}

@media screen and (max-width: 650px) {
    .card {
        max-width: 360px;
        margin: 0 auto;
        width: 100%
    }
}

.view_list {
    grid-template-columns: 1fr
}

.view_list .card {
    flex-direction: row
}

@media screen and (max-width: 650px) {
    .view_list .card {
        display: grid
    }
}

.view_list .card__img {
    height: 230px
}

@media screen and (max-width: 980px) {
    .view_list .card__img {
        height: auto;
        max-height: 340px;
        max-width: 280px;
        min-width: 280px
    }
}

.view_list .card__img img {
    border-top-right-radius: 0;
    border-bottom-left-radius: 20px;
    border-bottom: solid 1px #C3E4E9;
    border-right: none;
    height: 100%;
    object-fit: cover
}

.view_list .card__title {
    -webkit-line-clamp: 2;
    margin: 0
}

.view_list .card__minister {
    margin: 0 0 8px;
    -webkit-line-clamp: 1
}

.view_list .card__content {
    flex-grow: 1;
    border: solid 1px #C3E4E9;
    border-left: none;
    border-bottom-left-radius: 0;
    border-top-right-radius: 20px;
    padding: 24px
}

.view_list .card__content__bottom {
    display: flex;
    align-items: flex-end
}

@media screen and (max-width: 980px) {
    .view_list .card__content__bottom {
        flex-direction: column;
        align-items: flex-start
    }
}

.view_list .card__content__btn {
    flex-grow: 1;
    justify-content: flex-end;
    padding: 24px 0 0
}

@media screen and (max-width: 980px) {
    .view_list .card__content__btn {
        justify-content: flex-start;
        padding: 24px 0 0;
        width: 100%
    }
}

.view_list .card__info__date {
    grid-template-columns: repeat(2, 1fr);
    margin: 16px 0
}

.view_list .card__info__actual {
    display: flex;
    align-items: center
}

.clave {
    padding: 40px 0
}

@media screen and (min-width: 769px) {
    .clave {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 10vw
    }
}

@media screen and (min-width: 980px) {
    .clave {
        gap: 120px
    }
}

.clave__box {
    border: solid 1px #056C89;
    border-radius: 0 20px;
    margin: 0 auto 32px;
    padding: 40px 16px;
    width: 282px
}

.clave__img {
    margin-bottom: 48px
}

.clave__txt {
    border-bottom: solid 1px #C3E4E9;
    color: #0a0e14;
    margin: 0 0 16px;
    padding: 24px 0
}

.clave__util {
    flex-grow: 1;
    padding-top: 8px
}

.clave__util__ul {
    list-style-type: disc;
    margin-left: 24px
}

.clave__util__li {
    color: #983700;
    font-size: 1.125rem;
    line-height: 1;
    margin: 16px 0 0
}

.clave__util__title {
    color: #983700;
    font-size: 1.125rem;
    margin: 0
}

.clave__util__txt {
    color: #0a0e14;
    font-size: 1rem;
    margin: 8px 0 0
}

.clave .primary_button,
.clave .secondary_button {
    font-size: .875rem;
    justify-content: flex-start;
    margin: 0 auto;
    min-width: 105px;
    padding: 0 32px 0 16px;
    width: fit-content
}

.clave .primary_button:before,
.clave .secondary_button:before {
    right: 8px;
    font-weight: 400;
    top: 5px
}

.clave .secondary_button {
    margin: 24px auto 0
}

@media screen and (min-width: 769px) {
    .clave .secondary_button {
        margin: 24px 0 0
    }
}

.combo {
    position: relative;
    width: 100%
}

.combo-input {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    background: transparent;
    border-radius: 30px;
    border: solid 1px #235577;
    box-sizing: border-box;
    color: #056c89;
    font-size: 16px;
    font-weight: 400;
    height: 40px;
    line-height: 38px;
    outline: none;
    padding-left: 12px;
    padding-right: 24px;
    position: relative;
    text-align: left !important;
    -webkit-user-select: none;
    user-select: none;
    white-space: nowrap;
    background-color: #f7f7f8;
    cursor: pointer;
    display: block;
    font-size: 1em;
    text-align: left;
    width: 100%
}

.combo-input::placeholder {
    color: #056c89;
    font-size: 1rem
}

.combo-input:focus,
.combo-input:focus-visible {
    background: #fff;
    color: #0a0e14;
    border-color: transparent;
    outline: 3px solid #983700
}

.combo-input:active,
.combo-input:focus,
.combo-input:focus-visible {
    background: #fff;
    color: #0a0e14;
    border-color: transparent;
    outline: 3px solid #983700
}

.combo-label {
    color: #056c89;
    display: block;
    margin-bottom: 4px
}

.combo-menu {
    margin-top: 2px;
    background-color: #fff;
    border-radius: 10px;
    border: none;
    box-shadow: 4px 4px 20px #0000001a;
    cursor: pointer;
    position: absolute;
    top: 100%;
    left: 0;
    display: none;
    max-height: 210px;
    overflow-y: auto;
    width: 100%;
    z-index: 100;
    padding-top: 8px;
    min-width: 150px
}

.combo-option {
    cursor: pointer;
    font-weight: 400;
    line-height: 1.5;
    outline: none;
    padding-left: 18px;
    padding-right: 32px;
    padding-bottom: 8px;
    text-align: left;
    transition: all .2s
}

.combo-option:hover,
.combo-option:focus {
    background-color: #fff;
    font-weight: 700
}

.combo-option:hover:after,
.combo-option:focus:after {
    background-color: #fff
}

.combo-option.option-current {
    background-color: #fff;
    font-weight: 700
}

.combo:after {
    display: flex;
    align-items: center;
    justify-content: center;
    content: "";
    font-family: Material Symbols Outlined;
    font-size: 2rem;
    color: #056c89;
    height: 12px;
    pointer-events: none;
    position: absolute;
    right: 1px;
    top: 4px;
    transition: all .15s ease-in-out;
    width: 12px;
    background-color: #f7f7f8;
    border-radius: 14px;
    padding: 10px
}

.combo.open:after {
    transform: rotate(-180deg)
}

.combo.open .combo-menu {
    display: block
}

.datecombo {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-width: 290px
}

.datecombo__card {
    display: grid;
    text-align: center;
    padding: 0 24px
}

.datecombo__card:first-child {
    position: relative
}

.datecombo__card:first-child:after {
    content: "";
    position: absolute;
    height: 60px;
    width: 1px;
    background: #ff7425;
    right: 0;
    top: 50%;
    margin-top: -30px
}

.datecombo__label {
    color: #983700;
    font-size: .875rem;
    font-weight: 300
}

.datecombo__day {
    color: #0a0e14;
    font-size: 3rem;
    font-weight: 700
}

.datecombo__month {
    color: #023653;
    font-weight: 400;
    font-size: 1rem
}

.datecombo__hour {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #056c89;
    font-weight: 400;
    font-size: 1rem
}

.combobox-datepicker {
    position: relative
}

.combobox-datepicker label {
    display: block
}

.combobox-datepicker .dialog {
    position: absolute;
    clear: both;
    background-color: #f9fafb;
    border-radius: 5px;
    padding: 12px;
    min-height: 290px
}

@media screen and (min-width: 1080px) {
    .combobox-datepicker .dialog {
        margin-right: -150px;
        right: 50%
    }
}

.combobox-datepicker .header {
    display: flex;
    align-items: center;
    background: #f9fafb;
    justify-content: center;
    padding: 8px 0
}

.combobox-datepicker .month-year {
    flex-grow: 1;
    font-size: 1rem
}

.combobox-datepicker .dates {
    width: 300px;
    border-collapse: separate;
    padding: 0 12px
}

.combobox-datepicker .month-year {
    display: inline-block;
    text-align: center
}

.combobox-datepicker table {
    border: none
}

.combobox-datepicker table th,
.combobox-datepicker table td {
    text-align: center;
    padding: 8px 0
}

.combobox-datepicker table th {
    color: #056c89;
    font-weight: 400
}

.combobox-datepicker table td {
    border: none;
    border-radius: 50%;
    cursor: pointer
}

.combobox-datepicker table td:focus,
.combobox-datepicker table td:focus-visible {
    outline: 2px solid #983700
}

.combobox-datepicker table td.disabled {
    cursor: auto;
    outline: none
}

.combobox-datepicker .material-symbols-outlined {
    font-size: 1.75rem
}

.combobox-datepicker .datepicker-input,
.combobox-datepicker .datepicker-input:focus,
.combobox-datepicker .datepicker-input:focus-visible {
    background: #f7f7f8 url("data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='Icon'%3e%3cpath%20id='Icon_2'%20d='M8.6%207.67288H9.34667C9.44933%207.67288%209.53333%207.75683%209.53333%207.85943V9.35177C9.53333%209.45436%209.44933%209.53831%209.34667%209.53831H8.6C8.08667%209.53831%207.66667%209.11859%207.66667%208.6056C7.66667%208.09261%208.08667%207.67288%208.6%207.67288ZM11.4%207.67288H12.1467C12.2493%207.67288%2012.3333%207.75683%2012.3333%207.85943V9.35177C12.3333%209.45436%2012.2493%209.53831%2012.1467%209.53831H11.4C10.8867%209.53831%2010.4667%209.11859%2010.4667%208.6056C10.4667%208.09261%2010.8867%207.67288%2011.4%207.67288ZM14.2%207.67288H14.9467C15.0493%207.67288%2015.1333%207.75683%2015.1333%207.85943V9.35177C15.1333%209.45436%2015.0493%209.53831%2014.9467%209.53831H14.2C13.6867%209.53831%2013.2667%209.11859%2013.2667%208.6056C13.2667%208.09261%2013.6867%207.67288%2014.2%207.67288ZM5.8%2013.2692H6.54667C6.64933%2013.2692%206.73333%2013.3531%206.73333%2013.4557V14.948C6.73333%2015.0506%206.64933%2015.1346%206.54667%2015.1346H5.8C5.28667%2015.1346%204.86667%2014.7149%204.86667%2014.2019C4.86667%2013.6889%205.28667%2013.2692%205.8%2013.2692ZM8.6%2013.2692H9.34667C9.44933%2013.2692%209.53333%2013.3531%209.53333%2013.4557V14.948C9.53333%2015.0506%209.44933%2015.1346%209.34667%2015.1346H8.6C8.08667%2015.1346%207.66667%2014.7149%207.66667%2014.2019C7.66667%2013.6889%208.08667%2013.2692%208.6%2013.2692ZM11.4%2013.2692H12.1467C12.2493%2013.2692%2012.3333%2013.3531%2012.3333%2013.4557V14.948C12.3333%2015.0506%2012.2493%2015.1346%2012.1467%2015.1346H11.4C10.8867%2015.1346%2010.4667%2014.7149%2010.4667%2014.2019C10.4667%2013.6889%2010.8867%2013.2692%2011.4%2013.2692ZM8.6%2010.471H9.34667C9.44933%2010.471%209.53333%2010.555%209.53333%2010.6576V12.1499C9.53333%2012.2525%209.44933%2012.3364%209.34667%2012.3364H8.6C8.08667%2012.3364%207.66667%2011.9167%207.66667%2011.4037C7.66667%2010.8907%208.08667%2010.471%208.6%2010.471ZM11.4%2010.471H12.1467C12.2493%2010.471%2012.3333%2010.555%2012.3333%2010.6576V12.1499C12.3333%2012.2525%2012.2493%2012.3364%2012.1467%2012.3364H11.4C10.8867%2012.3364%2010.4667%2011.9167%2010.4667%2011.4037C10.4667%2010.8907%2010.8867%2010.471%2011.4%2010.471ZM14.2%2010.471H14.9467C15.0493%2010.471%2015.1333%2010.555%2015.1333%2010.6576V12.1499C15.1333%2012.2525%2015.0493%2012.3364%2014.9467%2012.3364H14.2C13.6867%2012.3364%2013.2667%2011.9167%2013.2667%2011.4037C13.2667%2010.8907%2013.6867%2010.471%2014.2%2010.471ZM5.8%2010.471H6.54667C6.64933%2010.471%206.73333%2010.555%206.73333%2010.6576V12.1499C6.73333%2012.2525%206.64933%2012.3364%206.54667%2012.3364H5.8C5.28667%2012.3364%204.86667%2011.9167%204.86667%2011.4037C4.86667%2010.8907%205.28667%2010.471%205.8%2010.471ZM3.93333%203.00933C3.42%203.00933%203%203.42905%203%203.94204V16.0673C3%2016.5803%203.42%2017%203.93333%2017H16.8133C16.916%2017%2017%2016.9161%2017%2016.8135V3.18654C17%203.08394%2016.916%203%2016.8133%203H3.93333V3.00933ZM15.88%2016.0673H4.86667C4.35333%2016.0673%203.93333%2015.6476%203.93333%2015.1346V6.74017C3.93333%206.22718%204.35333%205.80746%204.86667%205.80746H15.88C15.9827%205.80746%2016.0667%205.89141%2016.0667%205.994V15.8807C16.0667%2015.9833%2015.9827%2016.0673%2015.88%2016.0673Z'%20fill='%23235577'/%3e%3c/g%3e%3c/svg%3e") no-repeat;
    background-position: right 12px center;
    cursor: pointer
}

.combobox-datepicker .tooltip__error {
    position: absolute;
    display: none;
    z-index: 1;
    top: 70px;
    left: 0;
    min-width: 200px;
    color: #c54727;
    text-align: left;
    font-size: .875rem;
    transition: opacity .3s
}

.combobox-datepicker .input_error+span {
    display: block
}

.hero {
    display: flex;
    gap: 24px;
    padding-bottom: 24px
}

@media screen and (max-width: 768px) {
    .hero {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 48px
    }
}

@media screen and (max-width: 600px) {
    .hero {
        gap: 0;
        grid-template-columns: 1fr
    }
}

.hero__img {
    width: 100%;
    min-height: 300px;
    max-height: 400px
}

@media screen and (min-width: 701px) {
    .hero__img {
        max-width: 440px
    }
}

.hero__img img {
    border-top-right-radius: 20px;
    border-bottom-left-radius: 20px;
    height: 100%;
    object-fit: cover
}

.hero__info {
    display: grid;
    align-content: space-between;
    border-bottom: solid 1px #81BECC;
    padding: 24px 0;
    flex-grow: 1
}

.hero__title {
    color: #023653;
    font: 2rem Nunito, sans-serif;
    font-weight: 700;
    line-height: 137%;
    margin: 0
}

@media screen and (max-width: 768px) {
    .hero__title {
        font-size: 1.625rem
    }
}

.hero__subtitle {
    color: #0a0e14;
    font: 1.125rem Nunito, sans-serif;
    font-weight: 700;
    margin: 16px 0
}

@media screen and (max-width: 440px) {
    .hero__phases {
        display: flex;
        align-items: center;
        margin-bottom: 16px
    }
}

.hero__phases__trace {
    display: flex;
    align-items: center;
    margin-bottom: 8px
}

@media screen and (max-width: 440px) {
    .hero__phases__trace {
        margin-bottom: 0
    }
}

.hero__phases__trace .trace {
    box-sizing: content-box;
    border: solid 2px #983700;
    border-radius: 50%;
    height: 18px;
    margin-right: 18px;
    position: relative;
    width: 18px
}

.hero__phases__trace .trace:after {
    content: "";
    background: #983700;
    height: 2px;
    left: 20px;
    position: absolute;
    width: 20px;
    text-indent: 0;
    top: 7px
}

.hero__phases__trace .trace--active {
    background: #fff;
    border: solid 3px #983700
}

.hero__phases__trace .trace--active:before {
    content: "";
    background: #983700;
    border-radius: 50%;
    position: absolute;
    left: 2px;
    top: 2px;
    width: 14px;
    height: 14px
}

.hero__phases__trace .trace--disable {
    background: #878b8f;
    border: solid 2px #878B8F
}

.hero__phases__trace .trace--disable:after {
    background: #878b8f
}

.hero__phases__trace .trace--finished {
    background: #983700
}

.hero__phases__trace .trace--pending {
    background: #fff;
    border: solid 2px #983700
}

.hero__phases__trace .trace:last-child:after {
    display: none
}

@media screen and (min-width: 800px) {
    .hero__bottom {
        display: flex;
        align-items: center;
        flex-wrap: wrap
    }
}

.hero__state {
    display: flex;
    align-items: center;
    margin: 8px 16px 0 0
}

.hero__state .material-symbols-outlined {
    color: #056c89;
    font-weight: 400
}

.hero__tipo {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 8px 0 0
}

.switch input[role=switch] {
    height: 26px;
    width: 56px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 100px;
    background: #878b8f;
    padding: 3px;
    position: relative;
    top: 3px
}

.switch input[role=switch]:before {
    content: "";
    pointer-events: none;
    position: absolute;
    height: 20px;
    width: 20px;
    border-radius: 100%;
    background: transparent
}

.switch input[role=switch]:after {
    content: "";
    position: absolute;
    z-index: 2;
    height: 20px;
    width: 20px;
    border-radius: 100%;
    background: #fff
}

.switch input[role=switch]:checked {
    background: #056c89
}

.switch input[role=switch]:checked:after {
    content: "";
    position: absolute;
    z-index: 2;
    height: 20px;
    width: 20px;
    border-radius: 100%;
    border: none;
    background: #fff;
    margin-left: 30px;
    transition: all .15s ease-in-out
}

.switch input[role=switch]:hover {
    cursor: pointer
}

.logged__user {
    display: flex;
    align-items: center;
    border: 1px solid #0A0E14;
    border-radius: 20px;
    gap: 4px;
    padding: 6px 10px 6px 16px !important
}

.logged__user .menu__item {
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 160px
}

@media screen and (min-width: 768px) {
    .logged__user .menu__item {
        max-width: 124px
    }
}

@media screen and (min-width: 810px) {
    .logged__user .menu__item {
        max-width: 160px
    }
}

#menu_mobile {
    display: none
}

#menu_mobile.menu_mobile_show {
    display: block
}

.overlay {
    background: #fff;
    display: flex;
    flex-direction: column;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1000;
    top: 0;
    left: 0;
    padding: 18px 32px
}

.overlay__header {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 8px 0;
    border-bottom: solid 1px #DFDFDF
}

.overlay__nav {
    flex-grow: 1;
    padding-top: 64px
}

.overlay__nav .top_nav .menu {
    flex-direction: column;
    align-items: flex-start
}

.overlay__footer {
    border-top: solid 1px #056C89;
    margin: 0 16px
}

.overlay__languages {
    display: flex;
    padding: 20px 0;
    width: fit-content
}

.overlay__languages .combo-input {
    background: transparent;
    border: none;
    padding-right: 40px
}

.overlay__languages .combo:after {
    background-color: transparent;
    right: 0
}

.overlay__back_button {
    display: flex;
    align-items: center;
    gap: 16px;
    border-top: solid 1px #056C89;
    border-bottom: solid 1px #056C89;
    padding: 20px 0;
    white-space: nowrap
}

.overlay__sede {
    margin: 20px auto;
    width: 160px
}

.mobile__item {
    border-bottom: 1px solid #81BECC;
    display: flex;
    align-items: flex-start
}

.mobile__item .collapsed {
    display: none
}

.mobile__item .toggle_button {
    padding: 8px;
    height: auto;
    top: 8px
}

.mobile__item .toggle_button .material-symbols-outlined {
    font-weight: 400;
    font-size: 1.25rem
}

.mobile__item.expanded {
    background: #f9fafb
}

.mobile__item.expanded .mobile__info__cell:first-child,
.mobile__item.expanded [role=cell]:first-child {
    border-bottom: 1px solid #81BECC
}

.mobile__item.expanded .collapsed {
    display: block
}

.mobile__item.expanded .material-symbols-outlined {
    transform: rotate(90deg)
}

.mobile__info {
    flex-grow: 1
}

.mobile__info__cell,
.mobile__info [role=cell] {
    border-bottom: 1px solid #81BECC;
    padding: 12px
}

.mobile__info__cell:last-child,
.mobile__info [role=cell]:last-child {
    border-bottom: none
}

.mobile__info__cell:first-child,
.mobile__info [role=cell]:first-child {
    border-bottom: none
}

.mobile__info__label {
    font: 1.125rem Nunito, sans-serif;
    font-weight: 700;
    margin: 0
}

#modal-suscription {
    display: none
}

#modal-suscription.modal_show {
    display: block
}

.modal {
    display: none
}

.modal.modal_show {
    display: block
}

.modal_box {
    background: #fff;
    display: flex;
    flex-direction: column;
    position: fixed;
    width: 100%;
    height: calc(100% - 172px);
    z-index: 99;
    top: 172px;
    left: 0;
    justify-content: center
}

@media screen and (max-width: 980px) {
    .modal_box {
        height: calc(100% - 17vw);
        top: 17vw
    }
}

@media screen and (max-width: 768px) {
    .modal_box {
        height: calc(100% - 76px);
        top: 76px
    }
}

@media screen and (min-width: 768px) {
    .modal_box {
        background: #2119154d
    }
}

.modal_content {
    background: #fff;
    max-width: 935px;
    margin: 0 auto;
    width: 100%
}

@media screen and (max-width: 767px) {
    .modal_content {
        height: 100%
    }
}

.modal_header {
    display: flex;
    justify-content: flex-end;
    padding: 8px 0
}

.modal_body {
    display: flex
}

@media screen and (max-width: 767px) {
    .modal_body {
        flex-direction: column;
        align-items: center;
        padding-top: 0
    }
}

@media screen and (min-width: 768px) {
    .modal_body {
        margin: 0 24px;
        gap: 24px
    }
}

@media screen and (min-width: 900px) {
    .modal_body {
        margin: 0 48px;
        gap: 64px
    }
}

.modal_icon {
    flex-grow: 1;
    max-width: 73px
}

.modal_dialog {
    max-width: 650px
}

@media screen and (max-width: 767px) {
    .modal_dialog {
        max-width: 360px;
        padding: 24px 16px 0
    }
}

.modal_title {
    color: #023653;
    font-size: 1.75rem;
    font-weight: 700;
    margin: 0
}

@media screen and (max-width: 767px) {
    .modal_title {
        font-size: 1.5rem
    }
}

.modal_text {
    color: #0a0e14;
    font-size: 1.125rem;
    font-weight: 700;
    margin: 24px 0 0
}

@media screen and (max-width: 767px) {
    .modal_text {
        font-size: 1rem
    }
}

.modal_footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin: 48px 0
}

.modal_footer .primary_button,
.modal_footer .primary_outline {
    padding-left: 12px;
    padding-right: 12px
}

.modal_footer .primary_button .icon_check,
.modal_footer .primary_button .icon_close,
.modal_footer .primary_outline .icon_check,
.modal_footer .primary_outline .icon_close {
    padding: 0 12px 0 32px
}

.modal .show-text {
    display: block
}

.modal .hide-text {
    display: none
}

.pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 1rem
}

@media screen and (max-width: 768px) {
    .pagination {
        justify-content: center
    }
}

.pagination__pages {
    display: flex;
    align-items: center;
    color: #983700
}

.pagination__link {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #983700;
    height: 40px;
    width: 40px
}

.pagination__link.active {
    background: #983700;
    color: #fff
}

.pagination__btn {
    display: flex;
    align-items: center;
    gap: 15px;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: #983700
}

@media screen and (max-width: 768px) {
    .pagination__results {
        display: none
    }
}

.pagination__nav {
    display: flex;
    align-items: center
}

.pagination #paginationPages .pagination__link {
    background: transparent;
    border: none
}

.pagination #paginationPages .pagination__link.active,
.pagination #paginationPages .pagination__link.active:hover {
    background: #983700;
    color: #fff
}

.pagination #paginationPages .pagination__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #983700;
    height: 40px;
    width: 40px
}

.pagination button[disabled] {
    background: transparent
}

.pagination[hidden] {
    display: none
}

.quiz {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    border-bottom: solid 1px #81BECC;
    color: #023653;
    padding: 24px;
    gap: 8px
}

.quiz__text strong {
    font-weight: 600
}

.quiz__text span {
    font-size: .875rem;
    display: block;
    margin-top: 8px
}

.quiz__button {
    font-weight: 600;
    font-size: .875rem;
    margin: 0;
    padding: 0
}

.quiz__button .icon_forward {
    display: flex;
    align-items: center;
    padding: 0 32px 0 12px
}

.quiz__button .icon_forward:before {
    right: 8px
}

.resourses .documents {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px
}

.resourses .documents__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: solid 1px #81BECC;
    color: #023653;
    padding: 16px 24px
}

.resourses .documents__name {
    font-weight: 600
}

.resourses .documents__type {
    font-size: .875rem;
    margin-top: 8px
}

.resourses .documents__download {
    font-weight: 600;
    font-size: .875rem;
    margin: 0;
    padding: 0
}

.resourses .documents__download .icon_forward {
    display: flex;
    align-items: center;
    padding: 0 32px 0 12px
}

.resourses .documents__download .icon_forward:before {
    right: 8px
}

@media screen and (max-width: 460px) {
    .resourses .documents {
        grid-template-columns: 1fr
    }
}

.resourses .news {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    padding-bottom: 24px
}

.resourses .news__item {
    border-bottom: solid 1px #81BECC;
    color: #023653;
    padding: 16px 24px
}

.resourses .news__title {
    font-weight: 600;
    margin: 0
}

.resourses .news__info {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px
}

.resourses .news__button {
    display: flex;
    justify-content: flex-end;
    margin-top: 24px;
    margin-bottom: 24px
}

.resourses .news__button .primary_button {
    max-width: fit-content
}

@media screen and (max-width: 460px) {
    .resourses .news {
        grid-template-columns: 1fr
    }
}

.scrolltop {
    display: none;
    position: fixed;
    bottom: 40px;
    right: 40px;
    z-index: 1000
}

.scrolltop__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f9fafb;
    border-radius: 50%;
    border: solid 1px #056C89;
    color: #056c89;
    height: 40px;
    width: 40px
}

.scrolltop__show {
    display: block
}

.main__search {
    margin-top: 64px
}

@media screen and (max-width: 768px) {
    .main__search {
        margin-top: 40px
    }
}

.main__search__wrapper {
    margin: 0 4%
}

@media screen and (max-width: 360px) {
    .main__search__wrapper {
        margin: 0
    }
}

.main__search__box {
    position: relative;
    height: 48px;
    width: 100%
}

.main__search__box .circle_button {
    position: absolute;
    right: 4px;
    top: 4px
}

.main__search__box label {
    position: absolute
}

.main__search__field {
    border: 1px solid #434547;
    color: #056c89;
    width: 100%;
    border-radius: 50px;
    padding: 12px 80px 12px 24px;
    box-sizing: border-box;
    position: absolute
}

@media screen and (max-width: 768px) {
    .main__search__field {
        padding: 12px 80px 12px 12px
    }
}

.main__search__field::placeholder {
    color: #434547;
    font-size: .875rem
}

.main__search__field:focus,
.main__search__field:focus-visible {
    background: #fff;
    color: #0a0e14;
    border-color: transparent;
    outline: 3px solid #983700
}

.main__search .close_button {
    border-radius: 50%;
    display: none;
    height: 36px;
    padding: 0 6px;
    position: absolute;
    right: 50px;
    top: 6px
}

.main__search .close_button.showMark {
    display: flex
}

.menu__social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px
}

.sortable {
    width: 100%
}

.sortable th {
    background: #023653;
    color: #fff;
    font: 1.125rem Nunito, sans-serif;
    font-weight: 700;
    line-height: 1;
    padding: 16px 8px;
    text-align: left
}

@media screen and (min-width: 950px) {
    .sortable th {
        padding: 16px
    }
}

@media screen and (min-width: 1171px) {
    .sortable th {
        padding: 16px 8px
    }
}

.sortable th:first-child {
    border-radius: 10px 0 0
}

.sortable th:last-child {
    border-radius: 0 10px 0 0
}

.sortable td {
    border-bottom: solid 1px #81BECC;
    padding: 12px;
    vertical-align: top
}

.sortable .sort_btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: transparent;
    border: none;
    width: 100%
}

.sortable .material-symbols-outlined {
    font-size: 2rem
}

.sortable [aria-sort=descending] .material-symbols-outlined {
    transform: rotate(180deg)
}

.sortable .text_ellipsis {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    margin: 0;
    max-width: 300px;
    overflow: hidden;
    text-overflow: ellipsis
}

@media screen and (min-width: 710px) {
    .sortable .text_ellipsis {
        max-width: 130px
    }
}

@media screen and (min-width: 920px) {
    .sortable .text_ellipsis {
        max-width: 300px
    }
}

@media screen and (min-width: 1171px) {
    .sortable .text_ellipsis {
        max-width: 250px
    }
}

@media screen and (min-width: 1210px) {
    .sortable .text_ellipsis {
        max-width: 300px
    }
}

.sortable .link_event .text_ellipsis {
    max-width: 125px
}

.toggle_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    position: relative
}

.toggle_button__text {
    color: #023653;
    font-size: .875rem;
    padding-left: 12px
}

.arrowdown {
    padding-left: 24px
}

.arrowdown:before {
    transition: all .15s ease-in-out;
    font-family: Material Symbols Outlined;
    position: absolute;
    content: "";
    font-size: 2.375rem;
    left: 0
}

.arrowdown.rotate_arrow:before {
    transform: rotate(180deg)
}

.toggle_hidden {
    display: none;
    overflow: hidden
}

.toggle_active {
    transition: all .15s ease-in-out;
    animation-name: slide-in;
    animation-duration: .2s;
    display: block;
    height: auto
}

@keyframes slide-in {
    0% {
        height: 0;
        opacity: 0
    }

    to {
        height: auto;
        opacity: 1
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.tooltip {
    position: relative;
    display: inline-block
}

.tooltip__text {
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    margin-left: -70px;
    visibility: hidden;
    width: 140px;
    background-color: #f7f7f8;
    color: #023653;
    text-align: center;
    border-radius: 4px;
    padding: 4px;
    opacity: 0;
    transition: opacity .3s
}

@media screen and (max-width: 600px) {
    .tooltip__text {
        left: 0;
        margin-left: -15px
    }
}

.tooltip:hover .tooltip__text,
.tooltip:focus .tooltip__text,
.tooltip:focus-visible .tooltip__text {
    visibility: visible;
    opacity: 1
}

.footer {
    background: #dfdfdf;
    margin-top: 64px;
    padding-top: 54px
}

@media screen and (max-width: 599px) {
    .footer {
        padding-top: 40px
    }
}

.footer__wrapper {
    margin: 0 auto;
    max-width: 1440px;
    padding-left: 24px;
    padding-right: 24px
}

@media screen and (max-width: 768px) {
    .footer__wrapper {
        padding-left: 16px;
        padding-right: 16px
    }
}

.footer__useful {
    display: grid;
    align-items: center;
    padding-bottom: 48px;
    gap: 24px;
    grid-template-columns: 1fr auto 1fr
}

@media screen and (max-width: 768px) {
    .footer__useful {
        grid-template-columns: 1fr
    }
}

@media screen and (max-width: 599px) {
    .footer__useful {
        padding-bottom: 40px
    }
}

.footer__useful__text {
    font-weight: 700;
    text-align: center
}

.footer__useful__text.self-start {
    justify-self: flex-start
}

@media screen and (max-width: 768px) {
    .footer__useful__text.self-start {
        justify-self: center
    }
}

.footer__useful__text.self-end {
    justify-self: flex-end
}

@media screen and (max-width: 768px) {
    .footer__useful__text.self-end {
        justify-self: center
    }
}

.footer__useful__buttons {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px
}

.footer__useful__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: solid 1px #0A0E14;
    border-radius: 30px;
    font-weight: 700;
    padding: 12px 0;
    width: 86px
}

.footer__logos {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 64px;
    margin: 8px 0 24px
}

@media screen and (max-width: 768px) {
    .footer__logos {
        flex-direction: column;
        gap: 24px
    }
}

@media screen and (max-width: 599px) {
    .footer__logos {
        align-items: center;
        padding-top: 24px
    }
}

.footer__logos--portal {
    max-width: 205px
}

.footer__logos--gobierno {
    max-width: 292px
}

.footer__copy {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    color: #0a0e14;
    font-size: 1rem;
    font-weight: 700;
    padding: 24px 0
}

@media screen and (max-width: 480px) {
    .footer__copy {
        flex-direction: column
    }
}

@media screen and (min-width: 481px) {
    .footer__copy__text {
        padding-right: 16px;
        margin-right: 16px;
        position: relative
    }
}

.footer__copy__text:after {
    content: "";
    position: absolute;
    width: 2px;
    height: 16px;
    background: #0a0e14;
    right: 0;
    top: 4px
}

.footer__copy__text span {
    padding: 0 5px
}

.footer_nav {
    padding-top: 64px;
    padding-bottom: 24px
}

@media screen and (max-width: 599px) {
    .footer_nav {
        padding-top: 24px;
        padding-bottom: 8px
    }
}

.footer__cols {
    display: grid;
    gap: 12px
}

@media screen and (min-width: 600px) {
    .footer__cols {
        grid-template-columns: 2fr 1fr
    }
}

@media screen and (min-width: 1020px) {
    .footer__cols {
        grid-template-columns: 4fr 1fr
    }
}

@media screen and (max-width: 599px) {
    .footer__cols {
        display: none
    }
}

.footer__cols .cols4 {
    gap: 12px;
    display: grid
}

@media screen and (min-width: 1020px) {
    .footer__cols .cols4 {
        grid-template-columns: repeat(2, 1fr)
    }
}

.footer__cols .cols2 {
    display: grid;
    gap: 12px
}

@media screen and (min-width: 600px) {
    .footer__cols .cols2 {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media screen and (min-width: 600px) {
    .footer__mobile {
        display: none
    }
}

.fields input {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    background: transparent;
    border-radius: 30px;
    border: solid 1px #235577;
    box-sizing: border-box;
    color: #056c89;
    font-size: 16px;
    font-weight: 400;
    height: 40px;
    line-height: 38px;
    outline: none;
    padding-left: 12px;
    padding-right: 24px;
    position: relative;
    text-align: left !important;
    -webkit-user-select: none;
    user-select: none;
    white-space: nowrap;
    width: 100%;
    background-color: #f7f7f8
}

.fields input::placeholder {
    color: #056c89;
    font-size: 1rem
}

.fields input:focus,
.fields input:focus-visible {
    background: #fff;
    color: #0a0e14;
    border-color: transparent;
    outline: 3px solid #983700
}

.fields label {
    color: #056c89
}

.fields .input_error {
    border: 2px solid #983700
}

.no-label {
    text-indent: -9999px
}

.error-msg {
    color: #c54727
}

.form__fields {
    display: grid;
    gap: 16px
}

@media screen and (min-width: 600px) {
    .form__fields {
        gap: 24px
    }
}

.form__fields .row1 {
    display: grid;
    gap: 16px
}

@media screen and (min-width: 600px) {
    .form__fields .row1 {
        gap: 40px;
        grid-template-columns: repeat(3, 1fr)
    }
}

.form__fields .row2 {
    display: grid;
    gap: 16px
}

@media screen and (min-width: 600px) {
    .form__fields .row2 {
        gap: 40px;
        grid-template-columns: repeat(2, 1fr)
    }
}

@media screen and (min-width: 980px) {
    .form__fields .row2 {
        grid-template-columns: repeat(3, 1fr)
    }
}

.form__item {
    display: grid;
    gap: 8px
}

.form__item input {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    background: transparent;
    border-radius: 30px;
    border: solid 1px #235577;
    box-sizing: border-box;
    color: #056c89;
    font-size: 16px;
    font-weight: 400;
    height: 40px;
    line-height: 38px;
    outline: none;
    padding-left: 12px;
    padding-right: 24px;
    position: relative;
    text-align: left !important;
    -webkit-user-select: none;
    user-select: none;
    white-space: nowrap;
    width: 100%;
    background-color: #f7f7f8
}

.form__item input::placeholder {
    color: #056c89;
    font-size: 1rem
}

.form__item input:focus,
.form__item input:focus-visible {
    background: #fff;
    color: #0a0e14;
    border-color: transparent;
    outline: 3px solid #983700
}

.form__item input:read-only,
.form__item input[disabled] {
    background: #dcdfe3;
    border: none;
    color: #696e75
}

.form__label {
    color: #235577;
    font-size: .875rem;
    line-height: 1
}

.grid {
    border-top: solid 1px #81BECC;
    padding-top: 40px
}

.grid__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 24px 16px
}

@media screen and (max-width: 650px) {
    .grid__view {
        display: none
    }
}

.grid__view__btn {
    background: transparent;
    border-radius: 50%;
    border: none;
    line-height: 0;
    padding: 0
}

.grid__view__btn .material-icons {
    display: flex;
    align-items: center;
    width: 32px;
    height: 32px;
    color: #983700;
    border-radius: 50%;
    font-size: 1.75rem;
    padding: 2px
}

.grid__view__btn.active .material-icons {
    color: #fff;
    background: #983700
}

.grid__orderby {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 205px
}

.grid__orderby .combo:after {
    background: #056c89;
    border-radius: 50%;
    color: #fff;
    position: absolute;
    width: 32px;
    height: 32px;
    right: 3px;
    top: 3px
}

.grid__items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 24px;
    gap: 32px 64px
}

@media screen and (max-width: 1024px) {
    .grid__items {
        gap: 12px
    }
}

@media screen and (max-width: 768px) {
    .grid__items {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media screen and (max-width: 650px) {
    .grid__items {
        grid-template-columns: 1fr;
        gap: 32px
    }
}

.grid__items.view_list {
    grid-template-columns: 1fr;
    gap: 32px
}

.grid__pagination {
    margin: 48px auto;
    text-align: center
}

#order_by:focus-visible {
    border-color: #c00;
    box-shadow: 0 0 4px 2px #0067b8;
    outline: 4px solid transparent
}

.header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: #fff
}

.header__wrapper {
    margin: 0 auto;
    max-width: 1200px;
    padding-left: 24px;
    padding-right: 24px;
    box-sizing: content-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px
}

@media screen and (max-width: 768px) {
    .header__wrapper {
        padding-left: 16px;
        padding-right: 16px
    }
}

.header__logos {
    display: flex;
    align-items: center;
    margin-top: 16px;
    margin-bottom: 5px
}

@media screen and (max-width: 768px) {
    .header__logos {
        max-width: 340px
    }
}

.header__logos--gobierno {
    max-width: 200px
}

@media screen and (max-width: 768px) {
    .header__logos--gobierno {
        max-width: 110px
    }
}

.header__logos--ue {
    max-width: 62px;
    margin-left: 16px
}

@media screen and (max-width: 1024px) {
    .header__logos--ue {
        margin-left: 8px
    }
}

.header__logos--portal {
    max-width: 296px;
    margin: 0 0 0 16px
}

@media screen and (max-width: 1024px) {
    .header__logos--portal {
        margin-left: 8px
    }
}

@media screen and (max-width: 768px) {
    .header__logos--portal {
        max-width: 163px
    }
}

.header__logos--portal .logo_portal_movil {
    display: none
}

@media screen and (max-width: 440px) {
    .header__logos--portal .logo_portal {
        display: none
    }

    .header__logos--portal .logo_portal_movil {
        display: block
    }
}

.header__languages {
    display: flex
}

.header__languages .combo {
    border: none;
    background: transparent;
    width: fit-content;
    white-space: nowrap;
    padding-right: 12px
}

.header__languages .combo-input {
    background: transparent;
    border: none;
    color: #056c89;
    font-size: 1.125rem;
    padding-right: 42px
}

.header__languages .combo-menu {
    left: auto;
    width: fit-content
}

.header__languages .combo:after {
    background-color: transparent;
    right: 14px
}

@media screen and (max-width: 768px) {
    .header__languages {
        display: none
    }
}

.header__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end
}

@media screen and (min-width: 769px) {
    .header__actions {
        gap: 24px
    }
}

@media screen and (min-width: 970px) {
    .header__actions {
        gap: 32px
    }
}

.header__actions .primary_button {
    width: fit-content;
    white-space: nowrap
}

.header__sede {
    width: 100%
}

@media screen and (max-width: 768px) {
    .header__sede {
        display: none
    }

    .calendar {
        padding: 12px;
        width: 336px
    }
}

.header__search {
    color: #fff
}

.header__ham {
    display: none
}

@media screen and (max-width: 768px) {
    .header__ham {
        display: block
    }
}

.header__flag {
    width: 100%;
    height: 8px;
    display: grid;
    grid-template-columns: 1fr 2fr 1fr
}

.header__flag--red {
    background: #ad1519
}

.header__flag--yellow {
    background: #fabd00
}

.header__subnav {
    background: #f9fafb;
    padding: 8px 0
}

@media screen and (max-width: 768px) {
    .header__subnav {
        display: none
    }
}

.header__subnav .back_button__text {
    display: flex;
    align-items: center;
    font-size: .875rem
}

.main {
    margin: 0 auto;
    max-width: 1200px;
    padding-left: 24px;
    padding-right: 24px;
    box-sizing: content-box
}

@media screen and (max-width: 768px) {
    .main {
        padding-left: 16px;
        padding-right: 16px
    }
}

.main__cols {
    display: grid;
    grid-template-columns: 3fr 1fr;
    gap: 8.5%;
    margin-top: 24px
}

@media screen and (max-width: 880px) {
    .main__cols {
        grid-template-columns: 1fr;
        gap: 32px
    }
}

@media screen and (max-width: 880px) {
    .main__cols__content {
        order: 2
    }
}

.main__title_center {
    margin-top: 40px;
    text-align: center
}

.main__title {
    color: #023653;
    font: 2rem Nunito, sans-serif;
    font-weight: 700;
    line-height: 137%;
    margin: 0
}

@media screen and (max-width: 768px) {
    .main__title {
        font-size: 1.625rem
    }
}

.main__h3 {
    color: #023653;
    font-size: 1.75rem;
    font-weight: 700;
    margin: 48px 0 24px
}

@media screen and (max-width: 768px) {
    .main__h3 {
        font-size: 1.625rem
    }
}

.main__subtitle {
    color: #0a0e14;
    font: 1.125rem Nunito, sans-serif;
    font-weight: 700;
    margin: 8px 0 0
}

.top_nav .menu {
    display: flex;
    align-items: center
}

.top_nav .menu__li {
    padding: 10px 16px
}

.top_nav .menu__item {
    color: #0a0e14;
    font-size: 1rem;
    text-decoration: none
}

.top_nav .menu .active {
    border-bottom: 2px solid #056C89;
    font-weight: 700
}

.top_nav .menu .active .menu__item {
    color: #056c89
}

.footer_nav .menu__li {
    margin-bottom: 16px
}

.footer_nav .menu__title {
    color: #0a0e14;
    font: 1.125rem Nunito, sans-serif;
    font-weight: 700;
    margin: 0 0 16px
}

@media screen and (max-width: 600px) {
    .footer_nav .menu__title {
        font-size: 1rem
    }
}

.footer_nav .menu__item {
    color: #0a0e14;
    font: 1rem Nunito, sans-serif
}

.footer_nav .menu.menu5 {
    display: block
}

.legales_nav {
    padding: 24px 0
}

.legales_nav .menu {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto;
    gap: 16px
}

@media screen and (max-width: 480px) {
    .legales_nav .menu {
        flex-direction: column
    }
}

.legales_nav .menu__li {
    padding: 0 16px;
    position: relative
}

@media screen and (min-width: 481px) {
    .legales_nav .menu__li:after {
        content: "";
        position: absolute;
        width: 1px;
        height: 25px;
        background: #0a0e14;
        right: 0;
        top: 0
    }

    .legales_nav .menu__li:last-child:after {
        display: none
    }
}

.legales_nav .menu__item {
    color: #0a0e14;
    font-size: 1rem
}

.account__header {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    justify-content: space-between;
    padding: 24px 0
}

.account__header__buttons {
    display: flex;
    gap: 16px
}

.account__title {
    color: #0a0e14;
    font-size: 1.25rem;
    font-weight: 700;
    margin: 16px 0 0
}

.account__logout {
    margin: 16px 0 0
}

.account__form {
    padding-top: 16px
}

.account__main {
    padding: 32px
}

.account__main__text {
    margin: 0 0 24px
}

.account .rounded__box {
    border: 1px solid #81BECC;
    border-radius: 30px;
    margin: 24px 0;
    padding: 16px
}

@media screen and (min-width: 767px) {
    .account .rounded__box {
        padding: 32px 16px
    }
}

@media screen and (min-width: 890px) {
    .account .rounded__box {
        padding: 32px
    }
}

.account .rounded__box__title {
    font-size: 1.5rem;
    font-weight: 400;
    margin: 0 0 24px
}

@media screen and (min-width: 768px) {

    .account .rounded__box .account__contribution,
    .account .rounded__box .account__suscription {
        padding: 0
    }
}

.account .form__fields {
    margin-top: 16px
}

@media screen and (min-width: 600px) {
    .account .form__fields {
        margin-top: 24px
    }
}

.account .form__fields .row2.hidden {
    display: none
}

.account .form__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
    padding: 24px 0 16px
}

.account .form__actions.hidden {
    display: none
}

.account .form__item .combo:after {
    color: #235577;
    font-weight: 200;
    right: 12px
}

.account .rgpd {
    padding-top: 24px
}

.account .rgpd__text {
    color: #0a0e14;
    margin: 0 0 24px
}

.account .rgpd__text a {
    color: #056c89;
    font-weight: 700;
    text-decoration: underline
}

.account .rgpd__acceptance {
    margin: 0
}

@media screen and (min-width: 380px) {
    .account .rgpd__acceptance {
        display: flex;
        align-items: center
    }
}

.account .rgpd__acceptance__text {
    color: #0a0e14;
    padding-left: 12px
}

.account .tech__info {
    padding: 32px
}

.account .tech__info__item {
    margin-top: 24px
}

.account .tech__info__title {
    color: #000;
    font-size: 1.25rem;
    margin: 0 0 16px
}

.account .tech__info__txt {
    color: #000;
    margin: 0
}

.account .tech__info__ul {
    list-style-type: disc;
    margin-left: 24px
}

@media screen and (max-width: 767px) {

    .account__contribution.desktop,
    .account__suscription.desktop {
        display: none
    }
}

@media screen and (min-width: 768px) {

    .account__contribution.mobile,
    .account__suscription.mobile {
        display: none
    }
}

.account__contribution .process__actions,
.account__suscription .process__actions {
    display: grid;
    gap: 8px;
    justify-content: flex-start
}

@media screen and (max-width: 767px) {

    .account__contribution .process__actions,
    .account__suscription .process__actions {
        padding: 8px
    }
}

.account__contribution .process__actions__enabled,
.account__suscription .process__actions__enabled {
    color: #056c89
}

.account__contribution .process__actions__disabled,
.account__suscription .process__actions__disabled {
    color: #878b8f
}

.account__contribution .process__actions__delete,
.account__suscription .process__actions__delete {
    background: transparent;
    border: none;
    color: #056c89;
    padding: 0
}

.account__contribution .process__actions__delete:disabled,
.account__suscription .process__actions__delete:disabled {
    background: transparent;
    color: #878b8f
}

@media screen and (max-width: 890px) {

    .account__contribution .sortable th,
    .account__suscription .sortable th {
        padding: 16px 8px
    }
}

.account__contribution .sortable td,
.account__suscription .sortable td {
    vertical-align: middle
}

.account__suscription table th:first-child {
    width: 60%
}

.account__suscription table th:nth-of-type(2) {
    min-width: 195px
}

.account__listall {
    display: flex;
    justify-content: flex-end;
    padding-top: 40px
}

.account .pagination {
    padding-top: 24px
}

.account .contribution__textarea {
    height: auto
}

.hidden-row {
    display: none
}

.contribution__row {
    display: grid
}

.contribution__label {
    color: #023653;
    font-size: 1.75rem;
    font-weight: 700;
    margin: 16px 0 24px
}

@media screen and (max-width: 768px) {
    .contribution__label {
        font-size: 1.625rem
    }
}

.contribution__checkbox {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px
}

.contribution__checkbox input[type=checkbox]:focus,
.contribution__checkbox input[type=checkbox]:focus-visible {
    background: #fff;
    color: #0a0e14;
    border-color: transparent;
    outline: 3px solid #983700
}

.contribution__textarea {
    background: #f7f7f8;
    border-radius: 30px;
    border: solid 1px #235577;
    height: 224px;
    margin-bottom: 8px;
    padding: 24px
}

.contribution__textarea:focus,
.contribution__textarea:focus-visible {
    background: #fff;
    color: #0a0e14;
    border-color: transparent;
    outline: 3px solid #983700
}

.contribution__count {
    display: flex;
    align-items: center;
    flex-direction: row-reverse
}

.contribution__attach {
    display: flex;
    align-items: center;
    gap: 16px;
    position: relative;
    order: 1
}

.contribution__selection {
    background: #f7f7f8;
    border: 1px solid #434547;
    border-radius: 50px;
    color: #056c89;
    height: 38px;
    padding: 8px 8px 8px 24px;
    width: 100%;
    max-width: 680px
}

.contribution__selection::placeholder {
    color: #434547;
    font-size: .875rem
}

.contribution__selection:focus,
.contribution__selection:focus-visible {
    background: #fff;
    color: #0a0e14;
    border-color: transparent;
    outline: 3px solid #983700
}

.contribution__selection__file {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 50vw;
    width: 100%
}

.contribution__msg {
    position: absolute;
    left: 16px;
    color: #235577;
    font-size: .875rem
}

.contribution__msg.error-msg {
    color: #c54727
}

.contribution__choose {
    position: relative;
    order: 2
}

.contribution__choose__field {
    position: absolute;
    height: auto;
    width: 200px;
    overflow: hidden;
    opacity: 0;
    line-height: 40px
}

.contribution__choose__field:is(:focus, :focus-within)+label {
    background: #fff;
    color: #0a0e14;
    border-color: transparent;
    outline: 3px solid #983700
}

.contribution__choose__label {
    margin: 16px 0;
    padding: 0 16px;
    width: fit-content
}

.contribution__choose__note {
    font-size: .75rem
}

.contribution__files__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: solid 1px #235577;
    color: #023653;
    padding: 16px 24px
}

@media screen and (max-width: 440px) {
    .contribution__files__item {
        gap: 24px;
        flex-direction: column
    }
}

.contribution__files__info {
    display: flex;
    align-items: center;
    gap: 8px
}

@media screen and (max-width: 600px) {
    .contribution__files__info {
        flex-wrap: wrap
    }
}

@media screen and (max-width: 440px) {
    .contribution__files__info {
        align-self: flex-start
    }
}

.contribution__files__name {
    font-weight: 600;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 200px
}

@media screen and (min-width: 700px) {
    .contribution__files__name {
        max-width: 360px
    }
}

@media screen and (min-width: 881px) {
    .contribution__files__name {
        max-width: 300px
    }
}

@media screen and (min-width: 1241px) {
    .contribution__files__name {
        max-width: 480px
    }
}

.contribution__files__type {
    display: flex;
    align-items: center;
    gap: 8px
}

.contribution__files__download {
    font-weight: 600;
    font-size: .875rem;
    margin: 0;
    padding: 0;
    width: 145px
}

@media screen and (max-width: 440px) {
    .contribution__files__download {
        align-self: flex-end
    }
}

.contribution__files__del {
    opacity: .5
}

.contribution__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-top: 24px;
    gap: 16px
}

@media screen and (max-width: 440px) {
    .contribution__actions {
        justify-content: center
    }
}

.contribution__actions__arrow {
    margin-right: 5px
}

.contribution__actions .primary_outline {
    background: #f7f7f8
}

.contribution__actions .primary_outline:hover {
    background: #056c89
}

.contribution__actions .icon_back:after {
    top: -1px
}

.contribution__quiz {
    display: flex;
    align-items: center;
    border-bottom: solid 1px #983700;
    color: #023653;
    gap: 8px;
    padding: 24px
}

.contribution__quiz__text a {
    color: #056c89;
    font-weight: 600;
    margin-bottom: 8px;
    text-decoration: underline
}

.contribution__quiz__text a:hover {
    text-decoration: none
}

.contribution__quiz .material-symbols-outlined {
    color: #056c89;
    display: flex
}

.contribution__reply {
    display: grid;
    justify-content: center;
    justify-items: center;
    padding: 40px 0;
    text-align: center
}

.contribution__reply__title {
    font-size: 2rem;
    font-weight: 700;
    margin: 40px 0 8px
}

@media screen and (max-width: 768px) {
    .contribution__reply__title {
        font-size: 1.625rem
    }
}

.contribution__reply__subtitle {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 56px
}

.contribution__reply.approved .contribution__reply__title {
    color: #023653
}

.contribution__reply.cancel .contribution__reply__title {
    color: #5e1503
}

.contribution__description {
    padding-bottom: 24px
}

.process__intro {
    margin-top: 16px
}

.process__intro__pdf {
    color: #056c89;
    display: flex;
    justify-content: flex-end
}

.process__title {
    color: #023653;
    font-size: 1.75rem;
    font-weight: 700;
    margin: 40px 0 24px
}

@media screen and (max-width: 768px) {
    .process__title {
        font-size: 1.625rem
    }
}

.process__events .events {
    display: flex;
    gap: 56px
}

.process__events .events__list {
    flex-grow: 1;
    width: 100%
}

.process__events .events__button {
    margin-top: 56px;
    max-width: fit-content
}

@media screen and (max-width: 640px) {
    .process__events .events__button {
        margin: 56px auto 0
    }
}

@media screen and (max-width: 640px) {
    .process__events .events__calendar {
        max-width: 400px;
        margin: 0 auto
    }
}

@media screen and (max-width: 640px) {
    .process__events .events {
        flex-direction: column
    }
}

.process__events .event__item {
    border-bottom: solid 1px #983700;
    color: #023653;
    padding: 16px 24px
}

.process__events .event__title {
    font-weight: 600;
    margin: 0 0 8px;
    display: block
}

.process__events .event__info {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px
}

@media screen and (max-width: 880px) {
    .aside {
        order: 1;
        display: grid;
        grid-template-columns: 260px 1fr;
        grid-template-rows: 1fr 2fr;
        align-items: flex-start;
        justify-self: flex-start;
        gap: 24px 48px;
        grid-template-areas: "buttons phases" "opinion phases"
    }
}

@media screen and (max-width: 880px) and (max-width: 600px) {
    .aside {
        display: flex;
        flex-direction: column;
        gap: 32px;
        width: 100%
    }
}

.aside__buttons {
    display: grid;
    gap: 24px;
    justify-content: center;
    margin-top: 16px
}

.aside__buttons .primary_button,
.aside__buttons .secondary_button {
    font-size: .875rem;
    min-width: 200px
}

@media screen and (max-width: 880px) {
    .aside__buttons {
        justify-self: center;
        justify-content: stretch;
        width: 100%;
        grid-area: buttons
    }

    .aside__buttons .primary_button,
    .aside__buttons .secondary_button {
        width: 100%
    }
}

@media screen and (max-width: 600px) {
    .aside__buttons {
        margin: 0 auto;
        max-width: fit-content
    }
}

.aside__phases {
    margin-top: 48px
}

.aside__phases__title {
    color: #023653;
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 24px
}

@media screen and (max-width: 880px) {
    .aside__phases {
        margin-top: 24px;
        grid-area: phases
    }
}

@media screen and (max-width: 440px) {
    .aside__phases {
        margin-top: 0
    }
}

.aside__phases__trace {
    padding-bottom: 32px
}

.aside__phases__trace .trace {
    color: #0a0e14;
    font-size: 1rem;
    position: relative;
    padding: 0 0 16px 40px
}

.aside__phases__trace .trace:before {
    content: "";
    border: solid 2px #983700;
    border-radius: 50%;
    height: 20px;
    left: 0;
    position: absolute;
    width: 20px;
    text-indent: 0;
    top: 0
}

.aside__phases__trace .trace:after {
    content: "";
    background: #983700;
    height: 100%;
    left: 11px;
    position: absolute;
    width: 2px;
    text-indent: 0;
    top: 7px
}

.aside__phases__trace .trace--active:before {
    background: #983700
}

.aside__phases__trace .trace:last-child:after {
    display: none
}

@media screen and (max-width: 600px) {
    .aside__phases__trace {
        padding-bottom: 0
    }
}

.aside__title {
    color: #0a0e14;
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 8px
}

.aside .opinion {
    border-top: 1px solid #81BECC;
    color: #0a0e14;
    padding-top: 24px
}

@media screen and (max-width: 880px) {
    .aside .opinion {
        grid-area: opinion
    }
}

.aside .opinion__text {
    color: #0a0e14;
    font-size: 1rem;
    margin: 0 0 24px
}

.aside .opinion__icons {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 220px;
    padding-left: 16px
}

@media screen and (max-width: 600px) {
    .aside .opinion__icons {
        margin: 0 auto;
        padding-left: 0
    }
}

.aside .opinion__btn {
    display: flex;
    align-items: center;
    background: transparent;
    border: none;
    gap: 8px;
    height: 50px
}

.aside .opinion__btn:first-child {
    position: relative;
    justify-content: end;
    width: 90px;
    padding-right: 16px
}

.aside .opinion__btn:first-child:after {
    content: "";
    position: absolute;
    height: 48px;
    width: 1px;
    background: #81becc;
    right: 0;
    top: 50%;
    margin-top: -24px
}

.aside .opinion__btn:last-child {
    justify-content: center;
    width: 80px
}

.aside .opinion__num {
    color: #0a0e14;
    font-size: .875rem;
    width: 20px
}

.aside .opinion #btn-like {
    background: url("data:image/svg+xml,%3csvg%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M17.6472%2022.0131C17.6472%2022.0131%2029.4242%2011.7517%2030.0794%205.38874C30.0794%205.38874%2039.2396%204.75805%2031.1695%2019.0904H37.9855C37.9855%2019.0904%2041.8565%2018.8036%2041.9119%2023.7909L39.3493%2037.0333C39.3493%2037.0333%2038.2039%2040.4153%2033.6787%2039.9571L21.029%2040C21.029%2040%2018.1394%2039.7857%2017.6482%2038.2947'%20fill='white'/%3e%3cpath%20d='M17.6472%2022.0131C17.6472%2022.0131%2029.4242%2011.7517%2030.0794%205.38874C30.0794%205.38874%2039.2396%204.75805%2031.1695%2019.0904H37.9855C37.9855%2019.0904%2041.8565%2018.8036%2041.9119%2023.7909L39.3493%2037.0333C39.3493%2037.0333%2038.2039%2040.4153%2033.6787%2039.9571L21.029%2040C21.029%2040%2018.1394%2039.7857%2017.6482%2038.2947'%20stroke='%23056C89'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M15.196%2019.2308H9.80416C8.45044%2019.2308%207.35303%2020.4013%207.35303%2021.8451V38.9241C7.35303%2040.368%208.45044%2041.5385%209.80416%2041.5385H15.196C16.5497%2041.5385%2017.6471%2040.368%2017.6471%2038.9241V21.8451C17.6471%2020.4013%2016.5497%2019.2308%2015.196%2019.2308Z'%20fill='white'%20stroke='%23056C89'%20stroke-width='2'%20stroke-miterlimit='10'/%3e%3c/svg%3e") no-repeat
}

.aside .opinion #btn-like.active {
    background: url("data:image/svg+xml,%3csvg%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M17.6472%2022.0131C17.6472%2022.0131%2029.4242%2011.7517%2030.0795%205.38874C30.0795%205.38874%2039.2396%204.75805%2031.1695%2019.0904H37.9855C37.9855%2019.0904%2041.8565%2018.8036%2041.9119%2023.7909L39.3494%2037.0333C39.3494%2037.0333%2038.204%2040.4153%2033.6788%2039.9571L21.0291%2040C21.0291%2040%2018.1395%2039.7857%2017.6483%2038.2947'%20fill='%2381BECC'/%3e%3cpath%20d='M17.6472%2022.0131C17.6472%2022.0131%2029.4242%2011.7517%2030.0795%205.38874C30.0795%205.38874%2039.2396%204.75805%2031.1695%2019.0904H37.9856C37.9856%2019.0904%2041.8565%2018.8036%2041.9119%2023.7909L39.3494%2037.0333C39.3494%2037.0333%2038.204%2040.4153%2033.6788%2039.9571L21.0291%2040C21.0291%2040%2018.1395%2039.7857%2017.6483%2038.2947'%20stroke='%23056C89'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M15.196%2019.2308H9.80416C8.45044%2019.2308%207.35303%2020.4013%207.35303%2021.8451V38.9241C7.35303%2040.368%208.45044%2041.5385%209.80416%2041.5385H15.196C16.5497%2041.5385%2017.6471%2040.368%2017.6471%2038.9241V21.8451C17.6471%2020.4013%2016.5497%2019.2308%2015.196%2019.2308Z'%20fill='%2381BECC'%20stroke='%23056C89'%20stroke-width='2'%20stroke-miterlimit='10'/%3e%3c/svg%3e") no-repeat
}

.aside .opinion #btn-dislike {
    background: url("data:image/svg+xml,%3csvg%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_3905_2620)'%3e%3cpath%20d='M32.0837%2026.462C32.0837%2026.462%2020.2649%2036.3036%2019.6083%2042.4049C19.6083%2042.4049%2010.4158%2043.0098%2018.5164%2029.2654L11.6774%2029.2654C11.6774%2029.2654%207.79681%2029.5384%207.73779%2024.7578L10.3126%2012.061C10.3126%2012.061%2011.4635%208.81487%2016.0007%209.25752L28.69%209.21326C28.69%209.21326%2031.5894%209.41983%2032.0837%2010.8511'%20fill='white'/%3e%3cpath%20d='M32.0837%2026.462C32.0837%2026.462%2020.2649%2036.3036%2019.6083%2042.4049C19.6083%2042.4049%2010.4158%2043.0098%2018.5164%2029.2654L11.6774%2029.2654C11.6774%2029.2654%207.79681%2029.5384%207.73779%2024.7578L10.3126%2012.061C10.3126%2012.061%2011.4635%208.81487%2016.0007%209.25752L28.69%209.21326C28.69%209.21326%2031.5894%209.41983%2032.0837%2010.8511'%20stroke='%236C2700'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M34.5405%2029.1327L39.9482%2029.1327C41.3057%2029.1327%2042.4049%2028.0113%2042.4049%2026.6243L42.4049%2010.2461C42.4049%208.85915%2041.3057%207.73776%2039.9482%207.73776L34.5405%207.73776C33.183%207.73776%2032.0837%208.85915%2032.0837%2010.2461L32.0837%2026.6243C32.0837%2028.0113%2033.183%2029.1327%2034.5405%2029.1327Z'%20fill='white'%20stroke='%236C2700'%20stroke-width='2'%20stroke-miterlimit='10'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_3905_2620'%3e%3crect%20width='36.15'%20height='36.15'%20fill='white'%20transform='translate(7.00006%207)'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e") no-repeat
}

.aside .opinion #btn-dislike.active {
    background: url("data:image/svg+xml,%3csvg%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_5149_2912)'%3e%3cpath%20d='M32.0837%2026.462C32.0837%2026.462%2020.2649%2036.3036%2019.6083%2042.4049C19.6083%2042.4049%2010.4158%2043.0098%2018.5164%2029.2654H11.6774C11.6774%2029.2654%207.79681%2029.5384%207.73779%2024.7578L10.3126%2012.061C10.3126%2012.061%2011.4635%208.81487%2016.0007%209.25752L28.69%209.21326C28.69%209.21326%2031.5894%209.41983%2032.0837%2010.8511'%20fill='%23C9591A'/%3e%3cpath%20d='M32.0837%2026.462C32.0837%2026.462%2020.2649%2036.3036%2019.6083%2042.4049C19.6083%2042.4049%2010.4158%2043.0098%2018.5164%2029.2654H11.6774C11.6774%2029.2654%207.79681%2029.5384%207.73779%2024.7578L10.3126%2012.061C10.3126%2012.061%2011.4635%208.81487%2016.0007%209.25752L28.69%209.21326C28.69%209.21326%2031.5894%209.41983%2032.0837%2010.8511'%20fill='%23C9591A'/%3e%3cpath%20d='M32.0837%2026.462C32.0837%2026.462%2020.2649%2036.3036%2019.6083%2042.4049C19.6083%2042.4049%2010.4158%2043.0098%2018.5164%2029.2654H11.6774C11.6774%2029.2654%207.79681%2029.5384%207.73779%2024.7578L10.3126%2012.061C10.3126%2012.061%2011.4635%208.81487%2016.0007%209.25752L28.69%209.21326C28.69%209.21326%2031.5894%209.41983%2032.0837%2010.8511'%20stroke='%236C2700'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M34.5405%2029.1327H39.9482C41.3057%2029.1327%2042.4049%2028.0113%2042.4049%2026.6243V10.2461C42.4049%208.85915%2041.3057%207.73776%2039.9482%207.73776L34.5405%207.73776C33.183%207.73776%2032.0837%208.85915%2032.0837%2010.2461V26.6243C32.0837%2028.0113%2033.183%2029.1327%2034.5405%2029.1327Z'%20fill='%23C9591A'%20stroke='%236C2700'%20stroke-width='2'%20stroke-miterlimit='10'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_5149_2912'%3e%3crect%20width='36.15'%20height='36.15'%20fill='white'%20transform='translate(7%207)'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e") no-repeat
}

.main__event {
    display: grid;
    gap: 32px
}

@media screen and (min-width: 881px) {
    .main__event {
        grid-template-columns: 1fr 1fr 1fr;
        grid-template-areas: "header header aside" "body body aside";
        gap: 0 8.5%;
        margin-top: 24px
    }
}

.event .main__title {
    padding: 0
}

.event__header {
    display: grid;
    gap: 24px
}

@media screen and (min-width: 601px) {
    .event__header {
        display: flex
    }
}

@media screen and (max-width: 880px) {
    .event__header {
        order: 1
    }
}

@media screen and (min-width: 881px) {
    .event__header {
        grid-area: header
    }
}

.event__header__img {
    width: 100%
}

@media screen and (min-width: 701px) {
    .event__header__img {
        max-width: 240px;
        min-width: 200px
    }
}

.event__header__img img {
    border-top-right-radius: 18px;
    border-bottom-left-radius: 18px;
    object-fit: cover
}

.event__description {
    margin-top: 24px
}

@media screen and (max-width: 880px) {
    .event__description {
        margin-top: 0
    }
}

.event__link {
    display: flex;
    align-items: center;
    border-bottom: solid 1px #983700;
    color: #023653;
    gap: 8px;
    padding: 24px
}

.event__link__text a {
    color: #056c89;
    font-weight: 600;
    margin-bottom: 8px;
    text-decoration: underline
}

.event__link__text a:hover {
    text-decoration: none
}

.event__link .material-symbols-outlined {
    color: #056c89;
    display: flex
}

@media screen and (max-width: 880px) {
    .event__body {
        order: 3
    }
}

@media screen and (min-width: 881px) {
    .event__body {
        grid-area: body
    }
}

@media screen and (max-width: 880px) {
    .event__aside {
        order: 2
    }
}

@media screen and (min-width: 881px) {
    .event__aside {
        grid-area: aside
    }
}

.event__aside {
    display: grid;
    align-content: flex-start;
    gap: 48px;
    min-width: 306px
}

@media screen and (max-width: 880px) {
    .event__aside {
        grid-template-columns: 1fr 1fr;
        align-items: center;
        justify-content: center;
        padding-bottom: 0;
        max-width: 600px;
        margin: auto
    }
}

@media screen and (max-width: 880px) and (max-width: 600px) {
    .event__aside {
        grid-template-columns: 1fr;
        max-width: 320px
    }
}

.event__aside__info {
    color: #0a0e14;
    display: grid;
    gap: 16px;
    font: 1rem Nunito, sans-serif
}

.events .main__title {
    padding: 40px 0 24px
}

.events__content {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: 24px;
    padding-top: 24px
}

@media screen and (min-width: 1171px) {
    .events__content {
        gap: 24px;
        flex-direction: row-reverse
    }
}

.events__label {
    font: 1.125rem Nunito, sans-serif;
    font-weight: 700;
    margin: 0
}

.events__table {
    flex-grow: 1
}

@media screen and (max-width: 709px) {
    .events__table .desktop {
        display: none
    }
}

@media screen and (min-width: 710px) {
    .events__table .mobile {
        display: none
    }
}

.events__table .mobile .events__label {
    margin-bottom: 8px
}

.events__table__item {
    color: #0a0e14
}

@media screen and (min-width: 710px) {
    .events__table__item {
        display: grid;
        grid-template-columns: 22% 33% 15% 11% 19%;
        border-bottom: 1px solid #81BECC
    }
}

.events__table__item [role=cell] {
    padding: 12px
}

.events__table .link_event {
    color: #023653;
    font-weight: 700;
    text-decoration: underline
}

@media screen and (min-width: 1171px) {
    .events .desktop_hidden {
        display: none !important
    }
}

.events__calendar {
    position: relative;
    min-height: 30px;
    width: 100%
}

.events__calendar .calendar {
    margin: 0 auto
}

@media screen and (max-width: 1170px) {
    .events__calendar__container {
        display: grid;
        align-items: flex-end;
        grid-template-columns: repeat(2, 1fr);
        max-width: 620px;
        margin: 0 auto 24px
    }
}

@media screen and (max-width: 640px) {
    .events__calendar__container {
        grid-template-columns: 1fr
    }
}

.events__calendar .toggle_calendar {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap;
    background: #056c89;
    border: 1px solid #056C89;
    color: #fff;
    font-size: .875rem;
    font-weight: 400;
    position: absolute;
    right: 0;
    top: -24px;
    gap: 4px
}

.events__calendar .toggle_calendar:hover {
    background: #fff;
    color: #056c89;
    border-color: #056c89
}

.events__calendar .toggle_calendar:focus,
.events__calendar .toggle_calendar:focus-visible {
    background: #056c89;
    color: #fff;
    border-color: transparent;
    border: 2px solid;
    outline: 3px solid #983700
}

.events__calendar .toggle_calendar:active {
    background: #023653;
    color: #fff;
    outline: none
}

.events__calendar .toggle_calendar.active {
    background: #fff;
    color: #056c89
}

.events__calendar .toggle_calendar .material-symbols-outlined {
    font-size: 1.25rem;
    margin-right: -4px;
    margin-top: -2px
}

@media screen and (max-width: 1170px) {
    .events__calendar .toggle_active {
        padding-top: 64px
    }
}

.events__reference {
    color: #000;
    display: grid;
    font-size: .75rem;
    gap: 16px;
    max-width: 306px;
    margin: 0 auto;
    padding: 24px 0 8px
}

.events__reference .current-day,
.events__reference .selected-day,
.events__reference .events-day {
    display: flex;
    align-items: center;
    padding-left: 32px;
    position: relative
}

.events__reference .current-day:before,
.events__reference .selected-day:before,
.events__reference .events-day:before {
    content: "";
    position: absolute;
    left: 0;
    width: 24px;
    height: 24px;
    border-radius: 50%
}

.events__reference .current-day:before {
    background: #983700
}

.events__reference .selected-day:before {
    background: #ff7425
}

.events__reference .events-day:before {
    border: 2px solid #983700;
    box-sizing: border-box
}

.events__listall {
    display: flex;
    justify-content: flex-end;
    padding-top: 40px
}

.events__quantity {
    padding-bottom: 24px
}

.news .main__title {
    padding: 40px 0 24px
}

.news__subheader {
    margin: 40px 0
}

@media screen and (min-width: 600px) {
    .news__subheader {
        display: flex;
        align-items: center;
        justify-content: space-between
    }
}

@media screen and (min-width: 1171px) {
    .news__subheader {
        margin: 40px 0 16px
    }
}

.news__cause {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #0a0e14
}

.news__date {
    color: #434547;
    margin-top: 8px
}

@media screen and (min-width: 600px) {
    .news__date {
        margin-top: 8px
    }
}

@media screen and (min-width: 1171px) {
    .news .desktop_hidden {
        display: none !important
    }
}

@media screen and (min-width: 769px) {
    .form__login {
        max-width: 50%;
        margin: 0 auto !important
    }
}

.login {
    display: grid
}

@media screen and (min-width: 769px) {
    .login {
        grid-template-columns: 1fr 1fr
    }
}

.dislike {
    margin-left: 45px
}

.cajas-texto {
    border-radius: 4px;
    margin: 10px;
    overflow: hidden;
    resize: none;
    width: 790px;
    border: none
}

.redirectclave {
    font-size: 25px;
    color: #000d33
}

.formCaptcha {
    display: inline-block;
    text-align: center;
    padding: 1em 8%;
    background-color: #f7f7f8;
    border: solid 1px #235577;
    border-radius: 5px;
    height: 160px;
    margin: 0 auto 1em
}

.desc_captcha {
    font-size: .75em;
    color: #235577;
    margin-top: 0
}

.text_captcha {
    background-color: #fff;
    border: 1px solid #bbb
}

.icon_captcha {
    height: 30px;
    margin-left: .5em
}

.input_captcha {
    width: 227px;
    border: 1px solid #bbb;
    padding: 3px;
    margin-bottom: 2%;
    margin-top: 2%
}

.ftl {
    float: left !important
}

.clr {
    clear: both
}

.w5 {
    width: 5% !important
}

.mtop_2 {
    margin-top: 2%
}

.audioDiv {
    height: 20px;
    margin-top: 20px
}

@media screen and (max-width: 599px) {
    #audioPlayerCaptcha {
        width: 70%
    }
}

.loader-page {
    position: fixed;
    z-index: 25000;
    background: #fff;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s ease;
    opacity: .7
}

.loader-page:before {
    content: "";
    position: absolute;
    border: 2px solid rgb(50, 150, 176);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    box-sizing: border-box;
    border-left: 2px solid rgba(50, 150, 176, 0);
    border-top: 2px solid rgba(50, 150, 176, 0);
    animation: rotarload 1s linear infinite;
    transform: rotate(0)
}

@keyframes rotarload {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

.loader-page:after {
    content: "";
    position: absolute;
    border: 2px solid rgba(50, 150, 176, .5);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    box-sizing: border-box;
    border-left: 2px solid rgba(50, 150, 176, 0);
    border-top: 2px solid rgba(50, 150, 176, 0);
    animation: rotarload 1s ease-out infinite;
    transform: rotate(0)
}

.login-email .primary_button,
.login-email .secondary_button {
    margin: 0 auto
}

.form_pass {
    position: relative
}

.form_pass .visibility_button {
    border-radius: 50%;
    display: none;
    height: 36px;
    padding: 0 6px;
    position: absolute;
    right: 6px;
    top: 25px
}

.form_pass .visibility_button.showMark {
    display: flex
}

.visibility_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50px;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    font-size: 1rem;
    padding-left: 16px;
    padding-right: 16px;
    height: 40px;
    white-space: nowrap
}

/* Nuevos estilos para el bloque de responsables y copyright en el footer */
.footer__responsables {
    margin-top: 24px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    font-size: 0.865rem;
    line-height: 26px;
    font-weight: 400;
    justify-self: center;
    text-align: center;
}

.footer__responsables strong {
    font-weight: 700;
}

.footer__copyright {
    display: flex;
    justify-content: center;
    font-size: 0.865rem;
    line-height: 26px;
    margin-top: 8px;
    margin-bottom: 0;
    text-align: center;
}