.fc-icon,
.fc-unselectable {
    -moz-user-select: none;
    -ms-user-select: none
}

.fc .fc-button,
.fc-icon {
    text-transform: none;
    text-align: center
}

.fc-not-allowed,
.fc-not-allowed .fc-event {
    cursor: not-allowed
}

.fc .fc-button:not(:disabled),
.fc a[data-navlink],
.fc td {
    cursor: pointer
}

.fc-unselectable {
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent
}

.fc {
    display: flex;
    flex-direction: column;
    font-size: 1em
}

.fc .fc-button,
.fc-icon {
    display: inline-block;
    font-weight: 400
}

.fc,
.fc *,
.fc :after,
.fc :before {
    box-sizing: border-box
}

.fc table {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 1em
}

.fc th {
    text-align: center
}

.fc td,
.fc th {
    vertical-align: top;
    padding: .8em 0
}

.fc .fc-button,
.fc .fc-button .fc-icon,
.fc .fc-button-group,
.fc .fc-timegrid-slot-label {
    vertical-align: middle
}

.fc a[data-navlink]:hover {
    text-decoration: underline
}

.fc-direction-ltr {
    direction: ltr;
    text-align: left
}

.fc-direction-rtl {
    direction: rtl;
    text-align: right
}

.fc-liquid-hack td,
.fc-liquid-hack th {
    position: relative
}

@font-face {
    font-family: fcicons;
    src: url("data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBfAAAAC8AAAAYGNtYXAXVtKNAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5ZgYydxIAAAF4AAAFNGhlYWQUJ7cIAAAGrAAAADZoaGVhB20DzAAABuQAAAAkaG10eCIABhQAAAcIAAAALGxvY2ED4AU6AAAHNAAAABhtYXhwAA8AjAAAB0wAAAAgbmFtZXsr690AAAdsAAABhnBvc3QAAwAAAAAI9AAAACAAAwPAAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADpBgPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6Qb//f//AAAAAAAg6QD//f//AAH/4xcEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAWIAjQKeAskAEwAAJSc3NjQnJiIHAQYUFwEWMjc2NCcCnuLiDQ0MJAz/AA0NAQAMJAwNDcni4gwjDQwM/wANIwz/AA0NDCMNAAAAAQFiAI0CngLJABMAACUBNjQnASYiBwYUHwEHBhQXFjI3AZ4BAA0N/wAMJAwNDeLiDQ0MJAyNAQAMIw0BAAwMDSMM4uINIwwNDQAAAAIA4gC3Ax4CngATACcAACUnNzY0JyYiDwEGFB8BFjI3NjQnISc3NjQnJiIPAQYUHwEWMjc2NCcB87e3DQ0MIw3VDQ3VDSMMDQ0BK7e3DQ0MJAzVDQ3VDCQMDQ3zuLcMJAwNDdUNIwzWDAwNIwy4twwkDA0N1Q0jDNYMDA0jDAAAAgDiALcDHgKeABMAJwAAJTc2NC8BJiIHBhQfAQcGFBcWMjchNzY0LwEmIgcGFB8BBwYUFxYyNwJJ1Q0N1Q0jDA0Nt7cNDQwjDf7V1Q0N1QwkDA0Nt7cNDQwkDLfWDCMN1Q0NDCQMt7gMIw0MDNYMIw3VDQ0MJAy3uAwjDQwMAAADAFUAAAOrA1UAMwBoAHcAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMhMjY1NCYjISIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAAVYRGRkR/qoRGRkRA1UFBAUOCQkVDAsZDf2rDRkLDBUJCA4FBQUFBQUOCQgVDAsZDQJVDRkLDBUJCQ4FBAVVAgECBQMCBwQECAX9qwQJAwQHAwMFAQICAgIBBQMDBwQDCQQCVQUIBAQHAgMFAgEC/oAZEhEZGRESGQAAAAADAFUAAAOrA1UAMwBoAIkAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMzFRQWMzI2PQEzMjY1NCYrATU0JiMiBh0BIyIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAgBkSEhmAERkZEYAZEhIZgBEZGREDVQUEBQ4JCRUMCxkN/asNGQsMFQkIDgUFBQUFBQ4JCBUMCxkNAlUNGQsMFQkJDgUEBVUCAQIFAwIHBAQIBf2rBAkDBAcDAwUBAgICAgEFAwMHBAMJBAJVBQgEBAcCAwUCAQL+gIASGRkSgBkSERmAEhkZEoAZERIZAAABAOIAjQMeAskAIAAAExcHBhQXFjI/ARcWMjc2NC8BNzY0JyYiDwEnJiIHBhQX4uLiDQ0MJAzi4gwkDA0N4uINDQwkDOLiDCQMDQ0CjeLiDSMMDQ3h4Q0NDCMN4uIMIw0MDOLiDAwNIwwAAAABAAAAAQAAa5n0y18PPPUACwQAAAAAANivOVsAAAAA2K85WwAAAAADqwNVAAAACAACAAAAAAAAAAEAAAPA/8AAAAQAAAAAAAOrAAEAAAAAAAAAAAAAAAAAAAALBAAAAAAAAAAAAAAAAgAAAAQAAWIEAAFiBAAA4gQAAOIEAABVBAAAVQQAAOIAAAAAAAoAFAAeAEQAagCqAOoBngJkApoAAQAAAAsAigADAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAA4ArgABAAAAAAABAAcAAAABAAAAAAACAAcAYAABAAAAAAADAAcANgABAAAAAAAEAAcAdQABAAAAAAAFAAsAFQABAAAAAAAGAAcASwABAAAAAAAKABoAigADAAEECQABAA4ABwADAAEECQACAA4AZwADAAEECQADAA4APQADAAEECQAEAA4AfAADAAEECQAFABYAIAADAAEECQAGAA4AUgADAAEECQAKADQApGZjaWNvbnMAZgBjAGkAYwBvAG4Ac1ZlcnNpb24gMS4wAFYAZQByAHMAaQBvAG4AIAAxAC4AMGZjaWNvbnMAZgBjAGkAYwBvAG4Ac2ZjaWNvbnMAZgBjAGkAYwBvAG4Ac1JlZ3VsYXIAUgBlAGcAdQBsAGEAcmZjaWNvbnMAZgBjAGkAYwBvAG4Ac0ZvbnQgZ2VuZXJhdGVkIGJ5IEljb01vb24uAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=") format('truetype');
    font-weight: 400;
    font-style: normal
}

.fc-icon {
    width: 1em;
    height: 1em;
    -webkit-user-select: none;
    user-select: none;
    font-family: fcicons !important;
    speak: none;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.fc-icon-chevron-left:before {
    content: "\e900"
}

.fc-icon-chevron-right:before {
    content: "\e901"
}

.fc-icon-chevrons-left:before {
    content: "\e902"
}

.fc-icon-chevrons-right:before {
    content: "\e903"
}

.fc-icon-minus-square:before {
    content: "\e904"
}

.fc-icon-plus-square:before {
    content: "\e905"
}

.fc-icon-x:before {
    content: "\e906"
}

.fc .fc-button {
    overflow: visible;
    text-transform: none;
    margin: 0;
    font-family: inherit
}

.fc .fc-button::-moz-focus-inner {
    padding: 0;
    border-style: none
}

.fc .fc-button {
    -webkit-appearance: button;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: .4em .65em;
    font-size: 1em;
    line-height: 1.5;
    border-radius: .25em
}

.fc .fc-button:hover {
    text-decoration: none
}

.fc .fc-button:focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(44, 62, 80, .25)
}

.fc .fc-button:disabled {
    opacity: .65
}

td.fc-day-disabled {
    cursor: auto
}

.fc .fc-button-primary {
    color: #fff;
    color: var(--fc-button-text-color, #fff);
    appearance: none;
    outline: 0;
    border: none;
    box-shadow: none !important
}

.fc .fc-scrollgrid,
.fc .fc-scrollgrid-section-footer>*,
.fc .fc-scrollgrid-section-header>* {
    border-bottom-width: 0
}

.fc .fc-button-primary:disabled {
    color: #fff;
    color: var(--fc-button-text-color, #fff)
}

.fc .fc-button-primary:focus,
.fc .fc-button-primary:not(:disabled).fc-button-active:focus,
.fc .fc-button-primary:not(:disabled):active:focus {
    box-shadow: 0 0 0 .2rem rgba(76, 91, 106, .5)
}

.fc .fc-button .fc-icon {
    font-size: 1.5em
}

.fc .fc-button-group {
    position: relative;
    display: inline-flex
}

.fc .fc-button-group>.fc-button {
    position: relative;
    flex: 1 1 auto
}

.fc .fc-button-group>.fc-button.fc-button-active,
.fc .fc-button-group>.fc-button:active,
.fc .fc-button-group>.fc-button:focus,
.fc .fc-button-group>.fc-button:hover {
    z-index: 1
}

.fc-direction-ltr .fc-button-group>.fc-button:not(:first-child) {
    margin-left: -1px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.fc-direction-ltr .fc-button-group>.fc-button:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.fc-direction-rtl .fc-button-group>.fc-button:not(:first-child) {
    margin-right: -1px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.fc-direction-rtl .fc-button-group>.fc-button:not(:last-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.fc .fc-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.fc .fc-toolbar.fc-header-toolbar {
    background: var(--bg-prm);
    padding: calc(16px + 20 * ((100vw - 1280px)/ 1920)) 0
}

.fc-toolbar-chunk div {
    display: flex;
    align-items: baseline
}

.fc .fc-toolbar.fc-footer-toolbar {
    margin-top: 1.5em
}

.fc .fc-toolbar-title {
    font-size: var(--h4);
    margin: 0;
    color: #fff;
    text-transform: uppercase;
    font-family: var(--primaria-bold)
}

.fc-direction-ltr .fc-toolbar>*>:not(:first-child) {
    margin-left: .75em
}

.fc-direction-rtl .fc-toolbar>*>:not(:first-child) {
    margin-right: .75em
}

.fc-direction-rtl .fc-toolbar-ltr {
    flex-direction: row-reverse
}

.fc .fc-scroller {
    -webkit-overflow-scrolling: touch;
    position: relative
}

.fc .fc-scroller-liquid {
    height: 100%
}

.fc .fc-scroller-liquid-absolute {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0
}

.fc .fc-scroller-harness {
    position: relative;
    overflow: hidden;
    direction: ltr
}

.fc .fc-scroller-harness-liquid {
    height: 100%
}

.fc-direction-rtl .fc-scroller-harness>.fc-scroller {
    direction: rtl
}

.fc .fc-scrollgrid,
.fc .fc-scrollgrid table {
    width: 100%;
    table-layout: fixed
}

.fc .fc-scrollgrid table {
    border-top-style: hidden;
    border-left-style: hidden;
    border-right-style: hidden
}

.fc .fc-scrollgrid {
    border-collapse: separate;
    border-right-width: 0
}

.fc .fc-scrollgrid-liquid {
    height: 100%
}

.fc .fc-scrollgrid-section,
.fc .fc-scrollgrid-section table,
.fc .fc-scrollgrid-section>td {
    height: 1px
}

.fc .fc-scrollgrid-section-liquid>td {
    height: 100%
}

.fc .fc-scrollgrid-section>* {
    border-top-width: 0;
    border-left-width: 0
}

.fc .fc-scrollgrid-section-body table,
.fc .fc-scrollgrid-section-footer table {
    border-bottom-style: hidden
}

.fc .fc-scrollgrid-section-sticky>* {
    background: var(--fc-page-bg-color, #fff);
    position: sticky;
    z-index: 3
}

.fc .fc-scrollgrid-section-header.fc-scrollgrid-section-sticky>* {
    top: 0
}

.fc .fc-scrollgrid-section-footer.fc-scrollgrid-section-sticky>* {
    bottom: 0
}

.fc .fc-scrollgrid-sticky-shim {
    height: 1px;
    margin-bottom: -1px
}

.fc-sticky {
    position: sticky
}

.fc .fc-view-harness {
    flex-grow: 1;
    position: relative
}

.fc .fc-bg-event,
.fc .fc-daygrid-day-bg .fc-highlight:after,
.fc .fc-highlight,
.fc .fc-non-business,
.fc .fc-view-harness-active>.fc-view {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.fc .fc-col-header-cell-cushion {
    display: inline-block;
    padding: 2px 4px;
    color: var(--txt-prm);
    text-decoration: none;
    text-transform: uppercase
}

.fc .fc-non-business {
    background: rgba(215, 215, 215, .3);
    background: var(--fc-non-business-color, rgba(215, 215, 215, .3))
}

.fc .fc-bg-event {
    background: var(--fc-bg-event-color, #8fdf82);
    opacity: .3;
    opacity: var(--fc-bg-event-opacity, .3)
}

.fc .fc-bg-event .fc-event-title {
    margin: .5em;
    font-size: .85em;
    font-size: var(--fc-small-font-size, .85em);
    font-style: italic
}

.fc .fc-daygrid-day-bg .fc-highlight:after {
    content: "";
    width: 50px;
    height: 50px;
    border: 1px solid var(--bg-prm);
    border-radius: 50%;
    margin: auto
}

a.fc-event,
a.fc-event:hover {
    text-decoration: none
}

.fc-event.fc-event-draggable,
.fc-event[href] {
    cursor: pointer
}

.fc-event .fc-event-main {
    position: relative;
    z-index: 2
}

.fc-event-dragging:not(.fc-event-selected) {
    opacity: .75
}

.fc-event-dragging.fc-event-selected {
    box-shadow: 0 2px 7px rgba(0, 0, 0, .3)
}

.fc-event .fc-event-resizer {
    display: none;
    position: absolute;
    z-index: 4
}

.fc-event-selected .fc-event-resizer,
.fc-event:hover .fc-event-resizer,
.fc-h-event,
.fc-v-event {
    display: block
}

.fc-event-selected .fc-event-resizer {
    border-radius: 4px;
    border-radius: calc(var(--fc-event-resizer-dot-total-width, 8px)/ 2);
    border-width: 1px;
    border-width: var(--fc-event-resizer-dot-border-width, 1px);
    width: 8px;
    width: var(--fc-event-resizer-dot-total-width, 8px);
    height: 8px;
    height: var(--fc-event-resizer-dot-total-width, 8px);
    border-style: solid;
    border-color: inherit;
    background: var(--fc-page-bg-color, #fff)
}

.fc-event-selected .fc-event-resizer:before {
    content: '';
    position: absolute;
    top: -20px;
    left: -20px;
    right: -20px;
    bottom: -20px
}

.fc-event-selected,
.fc-event:focus {
    box-shadow: 0 2px 5px rgba(0, 0, 0, .2)
}

.fc-event-selected:before,
.fc-event:focus:before {
    content: "";
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.fc-event-selected:after,
.fc-event:focus:after {
    content: "";
    background: rgba(0, 0, 0, .25);
    background: var(--fc-event-selected-overlay-color, rgba(0, 0, 0, .25));
    position: absolute;
    z-index: 1;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px
}

.fc-h-event {
    border: 1px solid #3788d8;
    border: 1px solid var(--fc-event-border-color, #3788d8);
    background-color: #3788d8;
    background-color: var(--fc-event-bg-color, #3788d8)
}

.fc-h-event .fc-event-main {
    color: #fff;
    color: var(--fc-event-text-color, #fff)
}

.fc-h-event .fc-event-main-frame {
    display: flex
}

.fc-h-event .fc-event-time {
    max-width: 100%;
    overflow: hidden
}

.fc-h-event .fc-event-title-container {
    flex-grow: 1;
    flex-shrink: 1;
    min-width: 0
}

.fc-h-event .fc-event-title {
    display: inline-block;
    vertical-align: top;
    left: 0;
    right: 0;
    max-width: 100%;
    overflow: hidden
}

.fc-h-event.fc-event-selected:before {
    top: -10px;
    bottom: -10px
}

.fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-start),
.fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-end) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left-width: 0
}

.fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-end),
.fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-start) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right-width: 0
}

.fc-h-event:not(.fc-event-selected) .fc-event-resizer {
    top: 0;
    bottom: 0;
    width: 8px;
    width: var(--fc-event-resizer-thickness, 8px)
}

.fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start,
.fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end {
    cursor: w-resize;
    left: -4px;
    left: calc(-.5 * var(--fc-event-resizer-thickness, 8px))
}

.fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end,
.fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start {
    cursor: e-resize;
    right: -4px;
    right: calc(-.5 * var(--fc-event-resizer-thickness, 8px))
}

.fc-h-event.fc-event-selected .fc-event-resizer {
    top: 50%;
    margin-top: -4px;
    margin-top: calc(-.5 * var(--fc-event-resizer-dot-total-width, 8px))
}

.fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-start,
.fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-end {
    left: -4px;
    left: calc(-.5 * var(--fc-event-resizer-dot-total-width, 8px))
}

.fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-end,
.fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-start {
    right: -4px;
    right: calc(-.5 * var(--fc-event-resizer-dot-total-width, 8px))
}

.fc .fc-popover {
    position: absolute;
    z-index: 9999;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .15)
}

.fc .fc-popover-header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 3px 4px
}

.fc .fc-popover-title {
    margin: 0 2px
}

.fc .fc-popover-close {
    cursor: pointer;
    opacity: .65;
    font-size: 1.1em
}

.fc-theme-standard .fc-popover {
    border: 1px solid #ddd;
    border: 1px solid var(--fc-border-color, #ddd);
    background: var(--fc-page-bg-color, #fff)
}

.fc-theme-standard .fc-popover-header {
    background: rgba(208, 208, 208, .3);
    background: var(--fc-neutral-bg-color, rgba(208, 208, 208, .3))
}

:root {
    --fc-daygrid-event-dot-width: 8px;
    --fc-list-event-dot-width: 10px;
    --fc-list-event-hover-bg-color: #f5f5f5
}

.fc-daygrid-day-events:after,
.fc-daygrid-day-events:before,
.fc-daygrid-day-frame:after,
.fc-daygrid-day-frame:before,
.fc-daygrid-event-harness:after,
.fc-daygrid-event-harness:before {
    content: "";
    clear: both;
    display: table
}

.fc .fc-daygrid-body {
    position: relative;
    z-index: 1
}

.fc .fc-daygrid-day.fc-day-today a {
    color: #fff
}

.fc .fc-daygrid-day.fc-day-today {
    position: relative
}

.fc .fc-daygrid-day.fc-day-today::after {
    content: "";
    width: 50px;
    height: 50px;
    position: absolute;
    background: var(--bg-prm);
    border-radius: 50%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto
}

.fc .fc-daygrid-day-frame {
    display: grid;
    place-items: center;
    position: relative;
    min-height: 100%
}

.fc .fc-daygrid-day-top {
    display: flex;
    flex-direction: row-reverse
}

.fc .fc-day-other .fc-daygrid-day-top {
    opacity: .3
}

.fc .fc-daygrid-day-number {
    position: relative;
    z-index: 4;
    padding: 4px;
    color: var(--txt-sec);
    text-decoration: none;
    font-family: var(--primaria-bold)
}

.fc .fc-daygrid-day-events {
    margin-top: 1px;
    display: none
}

.fc .fc-daygrid-body-balanced .fc-daygrid-day-events {
    position: absolute;
    left: 0;
    right: 0
}

.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events {
    position: relative;
    min-height: 2em
}

.fc .fc-daygrid-body-natural .fc-daygrid-day-events {
    margin-bottom: 1em
}

.fc .fc-daygrid-event-harness {
    position: relative
}

.fc .fc-daygrid-event-harness-abs {
    position: absolute;
    top: 0;
    left: 0;
    right: 0
}

.fc .fc-daygrid-bg-harness {
    position: absolute;
    top: 0;
    bottom: 0
}

.fc .fc-daygrid-day-bg .fc-non-business {
    z-index: 1
}

.fc .fc-daygrid-day-bg .fc-bg-event {
    z-index: 2
}

.fc .fc-daygrid-day-bg .fc-highlight {
    z-index: 3
}

.fc .fc-daygrid-event {
    z-index: 6;
    margin-top: 1px
}

.fc .fc-daygrid-event.fc-event-mirror {
    z-index: 7
}

.fc .fc-daygrid-day-bottom {
    font-size: .85em;
    padding: 2px 3px 0
}

.fc .fc-daygrid-day-bottom:before {
    content: "";
    clear: both;
    display: table
}

.fc .fc-daygrid-more-link {
    position: relative;
    z-index: 4;
    cursor: pointer
}

.fc .fc-daygrid-week-number {
    position: absolute;
    z-index: 5;
    top: 0;
    padding: 2px;
    min-width: 1.5em;
    text-align: center;
    background-color: rgba(208, 208, 208, .3);
    background-color: var(--fc-neutral-bg-color, rgba(208, 208, 208, .3));
    color: grey;
    color: var(--fc-neutral-text-color, grey)
}

.fc .fc-more-popover .fc-popover-body {
    min-width: 220px;
    padding: 10px
}

.fc-direction-ltr .fc-daygrid-event.fc-event-start,
.fc-direction-rtl .fc-daygrid-event.fc-event-end {
    margin-left: 2px
}

.fc-direction-ltr .fc-daygrid-event.fc-event-end,
.fc-direction-rtl .fc-daygrid-event.fc-event-start {
    margin-right: 2px
}

.fc-direction-ltr .fc-daygrid-week-number {
    left: 0;
    border-radius: 0 0 3px
}

.fc-direction-rtl .fc-daygrid-week-number {
    right: 0;
    border-radius: 0 0 0 3px
}

.fc-liquid-hack .fc-daygrid-day-frame {
    position: static
}

.fc-daygrid-event {
    position: relative;
    white-space: nowrap;
    border-radius: 3px;
    font-size: .85em;
    font-size: var(--fc-small-font-size, .85em)
}

.fc-daygrid-block-event .fc-event-time {
    font-weight: 700
}

.fc-daygrid-block-event .fc-event-time,
.fc-daygrid-block-event .fc-event-title {
    padding: 1px
}

.fc-daygrid-dot-event {
    display: flex;
    align-items: center;
    padding: 2px 0
}

.fc-daygrid-dot-event .fc-event-title {
    flex-grow: 1;
    flex-shrink: 1;
    min-width: 0;
    overflow: hidden;
    font-weight: 700
}

.fc-daygrid-dot-event.fc-event-mirror,
.fc-daygrid-dot-event:hover {
    background: rgba(0, 0, 0, .1)
}

.fc-daygrid-dot-event.fc-event-selected:before {
    top: -10px;
    bottom: -10px
}

.fc-daygrid-event-dot {
    margin: 0 4px;
    box-sizing: content-box;
    width: 0;
    height: 0;
    border: 4px solid #3788d8;
    border: calc(var(--fc-daygrid-event-dot-width, 8px)/ 2) solid var(--fc-event-border-color, #3788d8);
    border-radius: 4px;
    border-radius: calc(var(--fc-daygrid-event-dot-width, 8px)/ 2)
}

.fc-direction-ltr .fc-daygrid-event .fc-event-time {
    margin-right: 3px
}

.fc-direction-rtl .fc-daygrid-event .fc-event-time {
    margin-left: 3px
}

.fc-v-event {
    border: 1px solid #3788d8;
    border: 1px solid var(--fc-event-border-color, #3788d8);
    background-color: #3788d8;
    background-color: var(--fc-event-bg-color, #3788d8)
}

.fc-v-event .fc-event-main {
    color: #fff;
    color: var(--fc-event-text-color, #fff);
    height: 100%
}

.fc-v-event .fc-event-main-frame {
    height: 100%;
    display: flex;
    flex-direction: column
}

.fc-v-event .fc-event-time {
    flex-grow: 0;
    flex-shrink: 0;
    max-height: 100%;
    overflow: hidden
}

.fc-v-event .fc-event-title-container {
    flex-grow: 1;
    flex-shrink: 1;
    min-height: 0
}

.fc-v-event .fc-event-title {
    top: 0;
    bottom: 0;
    max-height: 100%;
    overflow: hidden
}

.fc-v-event:not(.fc-event-start) {
    border-top-width: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.fc-v-event:not(.fc-event-end) {
    border-bottom-width: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.fc-v-event.fc-event-selected:before {
    left: -10px;
    right: -10px
}

.fc-v-event .fc-event-resizer-start {
    cursor: n-resize
}

.fc-v-event .fc-event-resizer-end {
    cursor: s-resize
}

.fc-v-event:not(.fc-event-selected) .fc-event-resizer {
    height: 8px;
    height: var(--fc-event-resizer-thickness, 8px);
    left: 0;
    right: 0
}

.fc-v-event:not(.fc-event-selected) .fc-event-resizer-start {
    top: -4px;
    top: calc(var(--fc-event-resizer-thickness, 8px)/ -2)
}

.fc-v-event:not(.fc-event-selected) .fc-event-resizer-end {
    bottom: -4px;
    bottom: calc(var(--fc-event-resizer-thickness, 8px)/ -2)
}

.fc-v-event.fc-event-selected .fc-event-resizer {
    left: 50%;
    margin-left: -4px;
    margin-left: calc(var(--fc-event-resizer-dot-total-width, 8px)/ -2)
}

.fc-v-event.fc-event-selected .fc-event-resizer-start {
    top: -4px;
    top: calc(var(--fc-event-resizer-dot-total-width, 8px)/ -2)
}

.fc-v-event.fc-event-selected .fc-event-resizer-end {
    bottom: -4px;
    bottom: calc(var(--fc-event-resizer-dot-total-width, 8px)/ -2)
}

.fc .fc-timegrid .fc-daygrid-body {
    z-index: 2
}

.fc .fc-timegrid-axis-chunk>table,
.fc .fc-timegrid-body,
.fc .fc-timegrid-slots {
    position: relative;
    z-index: 1
}

.fc .fc-timegrid-divider {
    padding: 0 0 2px
}

.fc .fc-timegrid-body {
    min-height: 100%
}

.fc .fc-timegrid-axis-chunk {
    position: relative
}

.fc .fc-timegrid-slot {
    height: 1.5em;
    border-bottom: 0
}

.fc .fc-timegrid-slot:empty:before {
    content: '\00a0'
}

.fc .fc-timegrid-slot-minor {
    border-top-style: dotted
}

.fc .fc-timegrid-slot-label-cushion {
    display: inline-block;
    white-space: nowrap
}

.fc .fc-timegrid-axis-cushion,
.fc .fc-timegrid-slot-label-cushion {
    padding: 0 4px
}

.fc .fc-timegrid-axis-frame-liquid {
    height: 100%
}

.fc .fc-timegrid-axis-frame {
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.fc .fc-timegrid-axis-cushion {
    max-width: 60px;
    flex-shrink: 0
}

.fc-direction-ltr .fc-timegrid-slot-label-frame {
    text-align: right
}

.fc-direction-rtl .fc-timegrid-slot-label-frame {
    text-align: left
}

.fc-liquid-hack .fc-timegrid-axis-frame-liquid {
    height: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.fc .fc-timegrid-col.fc-day-today {
    background-color: rgba(255, 220, 40, .15);
    background-color: var(--fc-today-bg-color, rgba(255, 220, 40, .15))
}

.fc .fc-timegrid-col-frame {
    min-height: 100%;
    position: relative
}

.fc-media-screen.fc-liquid-hack .fc-timegrid-col-frame {
    height: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.fc-media-screen .fc-timegrid-cols {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.fc-media-screen .fc-timegrid-cols>table {
    height: 100%
}

.fc-media-screen .fc-timegrid-col-bg,
.fc-media-screen .fc-timegrid-col-events,
.fc-media-screen .fc-timegrid-now-indicator-container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0
}

.fc .fc-timegrid-col-bg {
    z-index: 2
}

.fc .fc-timegrid-col-bg .fc-non-business {
    z-index: 1
}

.fc .fc-timegrid-col-bg .fc-bg-event {
    z-index: 2
}

.fc .fc-timegrid-col-bg .fc-highlight,
.fc .fc-timegrid-col-events {
    z-index: 3
}

.fc .fc-timegrid-bg-harness {
    position: absolute;
    left: 0;
    right: 0
}

.fc .fc-timegrid-now-indicator-container {
    bottom: 0;
    overflow: hidden
}

.fc-direction-ltr .fc-timegrid-col-events {
    margin: 0 2.5% 0 2px
}

.fc-direction-rtl .fc-timegrid-col-events {
    margin: 0 2px 0 2.5%
}

.fc-timegrid-event-harness {
    position: absolute
}

.fc-timegrid-event-harness>.fc-timegrid-event {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.fc-timegrid-event-harness-inset .fc-timegrid-event,
.fc-timegrid-event.fc-event-mirror,
.fc-timegrid-more-link {
    box-shadow: 0 0 0 1px #fff;
    box-shadow: 0 0 0 1px var(--fc-page-bg-color, #fff)
}

.fc-timegrid-event,
.fc-timegrid-more-link {
    font-size: .85em;
    font-size: var(--fc-small-font-size, .85em);
    border-radius: 3px
}

.fc-timegrid-event {
    margin-bottom: 1px
}

.fc-timegrid-event .fc-event-main {
    padding: 1px 1px 0
}

.fc-timegrid-event .fc-event-time {
    white-space: nowrap;
    font-size: .85em;
    font-size: var(--fc-small-font-size, .85em);
    margin-bottom: 1px
}

.fc-timegrid-event-short .fc-event-main-frame {
    flex-direction: row;
    overflow: hidden
}

.fc-timegrid-event-short .fc-event-time:after {
    content: '\00a0-\00a0'
}

.fc-timegrid-event-short .fc-event-title {
    font-size: .85em;
    font-size: var(--fc-small-font-size, .85em)
}

.fc-timegrid-more-link {
    position: absolute;
    z-index: 9999;
    color: inherit;
    color: var(--fc-more-link-text-color, inherit);
    background: var(--fc-more-link-bg-color, #d0d0d0);
    cursor: pointer;
    margin-bottom: 1px
}

.fc-timegrid-more-link-inner {
    padding: 3px 2px;
    top: 0
}

.fc-direction-ltr .fc-timegrid-more-link {
    right: 0
}

.fc-direction-rtl .fc-timegrid-more-link {
    left: 0
}

.fc .fc-timegrid-now-indicator-line {
    position: absolute;
    z-index: 4;
    left: 0;
    right: 0;
    border-style: solid;
    border-color: red;
    border-color: var(--fc-now-indicator-color, red);
    border-width: 1px 0 0
}

.fc .fc-timegrid-now-indicator-arrow {
    position: absolute;
    z-index: 4;
    margin-top: -5px;
    border-style: solid;
    border-color: red;
    border-color: var(--fc-now-indicator-color, red)
}

.fc-direction-ltr .fc-timegrid-now-indicator-arrow {
    left: 0;
    border-width: 5px 0 5px 6px;
    border-top-color: transparent;
    border-bottom-color: transparent
}

.fc-direction-rtl .fc-timegrid-now-indicator-arrow {
    right: 0;
    border-width: 5px 6px 5px 0;
    border-top-color: transparent;
    border-bottom-color: transparent
}

.fc-theme-standard .fc-list {
    border: 1px solid #ddd;
    border: 1px solid var(--fc-border-color, #ddd)
}

.fc .fc-list-empty {
    background-color: rgba(208, 208, 208, .3);
    background-color: var(--fc-neutral-bg-color, rgba(208, 208, 208, .3));
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.fc .fc-list-empty-cushion {
    margin: 5em 0
}

.fc .fc-list-table {
    width: 100%;
    border-style: hidden
}

.fc .fc-list-table tr>* {
    border-left: 0;
    border-right: 0
}

.fc .fc-list-sticky .fc-list-day>* {
    position: sticky;
    top: 0;
    background: var(--fc-page-bg-color, #fff)
}

.fc .fc-list-table thead {
    position: absolute;
    left: -10000px
}

.fc .fc-list-table tbody>tr:first-child th {
    border-top: 0
}

.fc .fc-list-table th {
    padding: 0
}

.fc .fc-list-day-cushion,
.fc .fc-list-table td {
    padding: 8px 14px
}

.fc .fc-list-day-cushion:after {
    content: "";
    clear: both;
    display: table
}

.fc-theme-standard .fc-list-day-cushion {
    background-color: rgba(208, 208, 208, .3);
    background-color: var(--fc-neutral-bg-color, rgba(208, 208, 208, .3))
}

.fc-direction-ltr .fc-list-day-text,
.fc-direction-rtl .fc-list-day-side-text {
    float: left
}

.fc-direction-ltr .fc-list-day-side-text,
.fc-direction-rtl .fc-list-day-text {
    float: right
}

.fc-direction-ltr .fc-list-table .fc-list-event-graphic {
    padding-right: 0
}

.fc-direction-rtl .fc-list-table .fc-list-event-graphic {
    padding-left: 0
}

.fc .fc-list-event.fc-event-forced-url {
    cursor: pointer
}

.fc .fc-list-event:hover td {
    background-color: #f5f5f5;
    background-color: var(--fc-list-event-hover-bg-color, #f5f5f5)
}

.fc .fc-list-event-graphic,
.fc .fc-list-event-time {
    white-space: nowrap;
    width: 1px
}

.fc .fc-list-event-dot {
    display: inline-block;
    box-sizing: content-box;
    width: 0;
    height: 0;
    border: 5px solid #3788d8;
    border: calc(var(--fc-list-event-dot-width, 10px)/ 2) solid var(--fc-event-border-color, #3788d8);
    border-radius: 5px;
    border-radius: calc(var(--fc-list-event-dot-width, 10px)/ 2)
}

.fc .fc-list-event-title a {
    color: inherit;
    text-decoration: none
}

.fc .fc-list-event.fc-event-forced-url:hover a {
    text-decoration: underline
}

.fc-theme-bootstrap a:not([href]) {
    color: inherit
}

.fc-theme-bootstrap5 a:not([href]) {
    color: inherit;
    text-decoration: inherit
}

.fc-theme-bootstrap5 .fc-list,
.fc-theme-bootstrap5 .fc-scrollgrid,
.fc-theme-bootstrap5 td,
.fc-theme-bootstrap5 th {
    border: 1px solid var(--bs-gray-400)
}

.fc-theme-bootstrap5 .fc-scrollgrid {
    border-right-width: 0;
    border-bottom-width: 0
}

.fc-theme-bootstrap5-shaded {
    background-color: var(--bs-gray-200)
}

@font-face {
    font-family: icomoon;
    src: url(../fonts/icon//icomoon.eot?gwbtur);
    src: url(../fonts/icon//icomoon.eot?gwbtur#iefix) format('embedded-opentype'), url(../fonts/icon//icomoon.ttf?gwbtur) format('truetype'), url(../fonts/icon//icomoon.woff?gwbtur) format('woff'), url(../fonts/icon//icomoon.svg?gwbtur#icomoon) format('svg');
    font-weight: 400;
    font-style: normal;
    font-display: block
}

[class*=" icon-"],
[class^=icon-] {
    font-family: icomoon !important;
    speak: never;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon-close:before {
    content: "\e900"
}

.icon-icon-ham:before {
    content: "\e901";
    color: #f9f9f9
}

.icon-youtube:before {
    content: "\e902"
}

.icon-twitter:before {
    content: "\e903"
}

.icon-instagram-solid:before {
    content: "\e904"
}

.icon-facebook-logo:before {
    content: "\e905"
}

@charset "UTF-8";

/*!
 * Bootstrap v5.1.3 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
.modal,
body {
    overflow-x: hidden
}

.btn,
.placeholder,
img,
svg {
    vertical-align: middle
}

.btn,
.btn:focus,
.input input,
.input select,
.modal,
button:focus:not(:focus-visible) {
    outline: 0
}

a {
    text-decoration: underline;
    color: #0d6efd
}

label {
    display: inline-block
}

:root {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --bs-primary-rgb: 13, 110, 253;
    --bs-secondary-rgb: 108, 117, 125;
    --bs-success-rgb: 25, 135, 84;
    --bs-info-rgb: 13, 202, 240;
    --bs-warning-rgb: 255, 193, 7;
    --bs-danger-rgb: 220, 53, 69;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark-rgb: 33, 37, 41;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-body-color-rgb: 33, 37, 41;
    --bs-body-bg-rgb: 255, 255, 255;
    --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-body-color: #212529;
    --bs-body-bg: #fff;
    --bg-prm: #ff5051;
    --bg-sec: #171717;
    --bg-gris: #eeeeee;
    --txt-prm: #ff5051;
    --txt-sec: #171717;
    --primaria-light: "Helvetica-light";
    --primariaRegular: "Helvetica-regular";
    --primaria-bold: "Helvetica-bold";
    --secundaria-bold: "Helvetica-bold-cond";
    --h1: calc(85px + 40 * ((100vw - 1920px) / 1024));
    --h2: calc(58px + 30 * ((100vw - 1920px) / 1024));
    --h3: calc(32px + 20 * ((100vw - 1920px) / 1024));
    --h4: calc(24px + 15 * ((100vw - 1920px) / 1024));
    --h5: calc(16px + 10 * ((100vw - 1920px) / 1024));
    --h6: calc(14px + 10 * ((100vw - 1920px) / 1024));
    --paddingSection: 7em 0;
    --paddingTop: calc(200px + 25 * ((100vw - 1920px) / 320))
}

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

@media (prefers-reduced-motion:no-preference) {
    :root {
        scroll-behavior: smooth
    }
}

body {
    margin: 0;
    font-size: var(--bs-body-font-size);
    font-weight: var(--bs-body-font-weight);
    line-height: var(--bs-body-line-height);
    color: var(--bs-body-color);
    text-align: var(--bs-body-text-align);
    background-color: var(--bs-body-bg);
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent
}

.img-fluid {
    max-width: 100%;
    height: auto
}

.h2,
.h3,
.h4,
.h6,
h2,
h3,
h4,
h6 {
    margin-top: 0;
    margin-bottom: .5rem;
    font-weight: 500;
    line-height: 1.2
}

p,
ul {
    margin-bottom: 1rem;
    margin-top: 0
}

.nav,
ul ul {
    margin-bottom: 0
}

.h2,
h2 {
    font-size: calc(1.325rem + .9vw)
}

@media (min-width:1200px) {

    .h2,
    h2 {
        font-size: 2rem
    }
}

.h3,
h3 {
    font-size: calc(1.3rem + .6vw)
}

@media (min-width:1200px) {

    .h3,
    h3 {
        font-size: 1.75rem
    }
}

.h4,
h4 {
    font-size: calc(1.275rem + .3vw)
}

@media (min-width:1200px) {

    .h4,
    h4 {
        font-size: 1.5rem
    }
}

.h6,
h6 {
    font-size: 1rem
}

.btn,
[role=button],
[type=button]:not(:disabled),
[type=submit]:not(:disabled),
button:not(:disabled) {
    cursor: pointer
}

ul {
    padding-left: 2rem
}

b {
    font-weight: bolder
}

a:hover {
    color: #0a58ca
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none
}

button {
    border-radius: 0
}

iframe {
    border: 0
}

button,
input,
select,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

button,
select {
    text-transform: none
}

select {
    word-wrap: normal
}

select:disabled {
    opacity: 1
}

[type=button],
[type=submit],
button {
    -webkit-appearance: button
}

::-moz-focus-inner {
    padding: 0;
    border-style: none
}

textarea {
    resize: vertical
}

::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-year-field {
    padding: 0
}

::-webkit-inner-spin-button {
    height: auto
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-color-swatch-wrapper {
    padding: 0
}

::file-selector-button {
    font: inherit
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button
}

.btn,
.input input {
    -webkit-appearance: none;
    appearance: none
}

[hidden] {
    display: none !important
}

.container,
.container-fluid {
    width: 100%;
    padding-right: var(--bs-gutter-x, .75rem);
    padding-left: var(--bs-gutter-x, .75rem);
    margin-right: auto;
    margin-left: auto
}

@media (min-width:576px) {
    .container {
        max-width: 540px
    }
}

@media (min-width:768px) {
    .container {
        max-width: 720px
    }
}

@media (min-width:1025px) {
    .container {
        max-width: 960px
    }
}

@media (min-width:1280px) {
    .container {
        max-width: 1140px
    }
}

@media (min-width:1440px) {
    .container {
        max-width: 1540px
    }
}

.row {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: calc(-1 * var(--bs-gutter-y));
    margin-right: calc(-.5 * var(--bs-gutter-x));
    margin-left: calc(-.5 * var(--bs-gutter-x))
}

.collapse:not(.show),
.tab-content>.tab-pane {
    display: none
}

.row>* {
    max-width: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    padding-right: calc(var(--bs-gutter-x) * .5);
    padding-left: calc(var(--bs-gutter-x) * .5);
    margin-top: var(--bs-gutter-y)
}

.col {
    -ms-flex: 1 0 0%;
    flex: 1 0 0%
}

.col-6 {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 50%
}

.col-12 {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%
}

@media (min-width:1025px) {
    .col-lg-2 {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66667%
    }

    .col-lg-3 {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%
    }

    .col-lg-5 {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66667%
    }

    .col-lg-6 {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%
    }

    .col-lg-7 {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333%
    }

    .col-lg-8 {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66667%
    }

    .col-lg-10 {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333%
    }
}

.btn {
    line-height: 1.5;
    border-radius: .25rem;
    font-weight: 400;
    text-align: center;
    text-decoration: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent
}

.btn,
.btn:hover {
    color: #212529
}

@media (prefers-reduced-motion:reduce) {
    .btn {
        transition: none
    }
}

.btn:focus {
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25)
}

.btn:disabled {
    pointer-events: none;
    opacity: .65
}

.fade {
    transition: opacity .15s linear
}

@media (prefers-reduced-motion:reduce) {
    .fade {
        transition: none
    }
}

.fade:not(.show) {
    opacity: 0
}

.nav {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-left: 0;
    list-style: none
}

.nav-link {
    display: block;
    padding: .5rem 1rem;
    color: #0d6efd;
    text-decoration: none;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .nav-link {
        transition: none
    }
}

.nav-link:focus,
.nav-link:hover {
    color: #0a58ca
}

.nav-tabs {
    border-bottom: 1px solid #dee2e6
}

.nav-tabs .nav-link {
    margin-bottom: -1px;
    background: 0 0;
    border: 1px solid transparent;
    border-top-left-radius: .25rem;
    border-top-right-radius: .25rem
}

.nav-tabs .nav-link:focus,
.nav-tabs .nav-link:hover {
    border-color: #e9ecef #e9ecef #dee2e6;
    isolation: isolate
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff
}

.tab-content>.active {
    display: block
}

.navbar-collapse {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-align: center;
    align-items: center
}

@media (min-width:1025px) {
    .navbar-expand-lg {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .navbar-expand-lg .navbar-collapse {
        display: -ms-flexbox !important;
        display: flex !important;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }
}

.pagination {
    display: -ms-flexbox;
    display: flex;
    padding-left: 0;
    list-style: none
}

@keyframes progress-bar-stripes {
    0% {
        background-position-x: 1rem
    }
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1055;
    display: none;
    width: 100%;
    height: 100%;
    overflow-y: auto
}

@keyframes spinner-border {
    to {
        transform: rotate(360deg)
    }
}

@keyframes spinner-grow {
    0% {
        transform: scale(0)
    }

    50% {
        opacity: 1;
        transform: none
    }
}

.placeholder {
    min-height: 1em;
    background-color: currentColor;
    display: inline-block;
    cursor: wait;
    opacity: .5
}

.placeholder.btn::before {
    display: inline-block;
    content: ""
}

@keyframes placeholder-glow {
    50% {
        opacity: .2
    }
}

.title.revealed::after,
.title.revealed::before {
    animation-duration: 10s;
    animation-iteration-count: infinite
}

@keyframes placeholder-wave {
    100% {
        -webkit-mask-position: -200% 0;
        mask-position: -200% 0
    }
}

.center-column,
.centered-all,
.d-flex {
    display: -ms-flexbox !important;
    display: flex !important
}

.position-relative {
    position: relative !important
}

.border {
    border: 1px solid #dee2e6 !important
}

.center-column,
.flex-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important
}

.centered-all,
.justify-content-center {
    -ms-flex-pack: center !important;
    justify-content: center !important
}

.align-items-center,
.center-column,
.centered-all {
    -ms-flex-align: center !important;
    align-items: center !important
}

.mt-2 {
    margin-top: .5rem !important
}

.mt-3 {
    margin-top: 1rem !important
}

.mt-5 {
    margin-top: 3rem !important
}

.p-0 {
    padding: 0 !important
}

.text-center {
    text-align: center !important
}

.text-decoration-none {
    text-decoration: none !important
}

@font-face {
    font-family: Helvetica-bold-cond;
    src: url(../fonts/primaria-bold/HelveticaNeueLTStd-BdCn.eot);
    src: local("☺"), url(../fonts/primaria-bold/HelveticaNeueLTStd-BdCn.otf) format("opentype"), url(../fonts/primaria-bold/HelveticaNeueLTStd-BdCn.ttf) format("truetype"), url(../fonts/primaria-bold/HelveticaNeueLTStd-BdCn.svg) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Helvetica-light-cond;
    src: url(../fonts/primaria-light/HelveticaNeueLTStd-ThEx.eot);
    src: local("☺"), url(../fonts/primaria-light/HelveticaNeueLTStd-ThEx.otf) format("opentype"), url(../fonts/primaria-light/HelveticaNeueLTStd-ThEx.ttf) format("truetype"), url(../fonts/primaria-light/HelveticaNeueLTStd-ThEx.svg) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Helvetica-regular-cond;
    src: url(../fonts/primaria-regular/HelveticaNeueLTStd-Ex.eot);
    src: local("☺"), url(../fonts/primaria-regular/HelveticaNeueLTStd-Ex.otf) format("opentype"), url(../fonts/primaria-regular/HelveticaNeueLTStd-Ex.ttf) format("truetype"), url(../fonts/primaria-regular/HelveticaNeueLTStd-Ex.svg) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Helvetica-regular;
    src: url(../fonts/secundaria-regular/HelveticaNeue.eot);
    src: local("☺"), url(../fonts/secundaria-regular/HelveticaNeue.otf) format("opentype"), url(../fonts/secundaria-regular/HelveticaNeue.ttf) format("truetype"), url(../fonts/secundaria-regular/HelveticaNeue.svg) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Helvetica-light;
    src: url(../fonts/secundaria-light/HelveticaNeue-Light.eot);
    src: local("☺"), url(../fonts/secundaria-light/HelveticaNeue-Light.otf) format("opentype"), url(../fonts/secundaria-light/HelveticaNeue-Light.ttf) format("truetype"), url(../fonts/secundaria-light/HelveticaNeue-Light.svg) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Helvetica-bold;
    src: url(../fonts/secundaria-bold/HelveticaNeue-Bold.eot);
    src: local("☺"), url(../fonts/secundaria-bold/HelveticaNeue-Bold.otf) format("opentype"), url(../fonts/secundaria-bold/HelveticaNeue-Bold.ttf) format("truetype"), url(../fonts/secundaria-bold/HelveticaNeue-Bold.svg) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

.title {
    position: relative;
    z-index: 1;
    -ms-flex-pack: center;
    justify-content: center;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 50px
}

.title::after,
.title::before {
    content: "";
    width: 100%;
    height: calc(100px + 40 * ((100vw - 1920px)/ 1024));
    border: 10px solid transparent;
    border-width: 15px 0 40px;
    border-image: url(../img/brush.png) 40 0;
    position: relative;
    z-index: -1;
    display: block;
    margin: auto;
    transition: .5s ease-in-out all
}

.btn,
.input {
    display: -ms-flexbox;
    display: flex
}

.title.revealed::before {
    animation-name: animTitles
}

.title.revealed::after {
    animation-name: animTitlesDos
}

@keyframes animTitles {

    0%,
    100% {
        right: -450%
    }

    10%,
    80% {
        right: 0;
        opacity: 1
    }
}

@keyframes animTitlesDos {

    0%,
    100% {
        left: -450%
    }

    10%,
    80% {
        left: 0;
        opacity: 1
    }
}

.title svg {
    margin: auto 2em;
    -ms-flex-negative: .8;
    flex-shrink: .8
}

@media (max-width:1024px) {
    :root {
        --h1: calc(50px + 10 * ((100vw - 1024px) / 640));
        --h2: calc(36px + 10 * ((100vw - 1024px) / 640));
        --h3: calc(24px + 10 * ((100vw - 1024px) / 640));
        --h4: calc(18px + 10 * ((100vw - 1024px) / 640));
        --h5: calc(14px + 10 * ((100vw - 1024px) / 640));
        --h6: calc(12px + 10 * ((100vw - 1024px) / 640))
    }

    .title {
        font-size: var(--h2);
        min-height: calc(120px + 80 * ((100vw - 1024px)/ 640))
    }

    .title::after,
    .title::before {
        height: calc(40px + 40 * ((100vw - 1024px)/ 640))
    }

    .title span {
        font-size: var(--h1)
    }
}

@media (max-width:640px) {
    :root {
        --h1: calc(64px + 30 * ((100vw - 640px) / 360));
        --h2: calc(45px + 25 * ((100vw - 640px) / 360));
        --h3: calc(32px + 22 * ((100vw - 640px) / 360));
        --h4: calc(24px + 10 * ((100vw - 640px) / 360));
        --h6: calc(16px + 5 * ((100vw - 640px) / 360))
    }

    .title {
        letter-spacing: 5px;
        min-height: calc(160px + 80 * ((100vw - 640px)/ 360));
        padding: 0;
        width: auto
    }

    .title::after,
    .title::before {
        height: calc(50px + 20 * ((100vw - 640px)/ 360))
    }

    .title span {
        margin-top: .4em;
        letter-spacing: 3px
    }

    body .header {
        --alto-nav: calc(90px + 10 * ((100vw - 640px) / 360))
    }
}

.btn {
    border: 0;
    min-width: calc(150px + 100 * ((100vw - 1920px)/ 1024));
    font-size: var(--h4);
    padding: 8px 40px;
    transition: .3s ease-in-out all
}

.btn.prm {
    background: var(--bg-prm);
    -webkit-mask-box-image: url(../img/brush-naranja.svg);
    mask-border: url(../img/brush-naranja.svg);
    color: #fff;
    font-family: var(--secundariaRegular);
    -ms-flex-align: center;
    align-items: center
}

@media (hover:hover) {
    .btn.prm:hover {
        background-color: transparent;
        border: 1px ridge #ff5051
    }
}

@media (max-width:1024px) {
    .btn {
        min-width: auto;
        width: 100%;
        padding: 10px 50px 5px;
        font-size: var(--h3)
    }
}

.input {
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    position: relative
}

.input label {
    color: #fff;
    font-size: var(--h3);
    margin-bottom: .5em;
    transition: .2s ease-in-out all;
    font-family: var(--secundaria-bold);
    -ms-flex-order: 3;
    order: 3
}

.input .error-input {
    color: var(--txt-prm);
    font-size: var(--h5);
    -ms-flex-order: 1;
    order: 1;
    position: absolute;
    bottom: -2em;
    display: none
}

.input input:focus~label,
.input textarea:focus~label {
    color: var(--bg-prm)
}

.input .error-input.show {
    display: block
}

body .header--navegacion .btn-ham,
body .main-servicios .hero p.trabajo-desk {
    display: none
}

.input input {
    border: none;
    height: 50px;
    padding: 1em;
    -ms-flex-order: 2;
    order: 2
}

.input input:focus,
.input textarea:focus {
    border: 1px solid var(--bg-prm)
}

.input textarea {
    resize: none;
    height: calc(235px - 120 * ((100vw - 1280px)/ 1920));
    -ms-flex-order: 2;
    order: 2
}

.input select {
    border: none;
    height: 56px;
    padding: 1em;
    cursor: pointer
}

@media (max-width:1024px) {
    .input input {
        width: 100%
    }

    .input textarea {
        height: calc(160px - 0 * ((100vw - 1024px)/ 768))
    }
}

body .header,
body .header--navegacion ul a {
    height: var(--alto-nav);
    transition: .3s ease-in-out all
}

body .header {
    --alto-nav: calc(98px + 40 * ((100vw - 1920px) / 1024));
    position: sticky;
    width: 100%;
    top: 0;
    z-index: 9;
    background: #000;
    padding: 0 0 0 40px;
    -webkit-mask: url(../img/brush-black.svg) no-repeat center bottom/cover;
    mask: url(../img/brush-black.svg) no-repeat center bottom/cover
}

body .header.nav-on {
    padding-top: 0;
    background: rgba(26, 26, 26, .9)
}

body .header--navegacion {
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: 0
}

body .header--navegacion ul {
    padding: 0;
    margin: 0;
    list-style: none;
    display: -ms-inline-flexbox;
    display: inline-flex
}

body .header--navegacion ul a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    font-size: var(--h5);
    letter-spacing: 4px;
    padding: 0 40px 0 0;
    text-decoration: none;
    color: #fff
}

@media (hover:hover) {
    body .header--navegacion ul a:hover:not(.active) {
        color: var(--bg-prm)
    }
}

body .header--navegacion ul a.active {
    background: var(--bg-prm)
}

body .header--navegacion ul a.active li,
body .header--navegacion ul a.active+a li {
    border: none
}

body .footer .redes-footer a,
body .header--redes a,
body .main-servicios .content-swiper .bg-orange .expand-info {
    border-radius: 50%;
    place-items: center;
    text-decoration: none
}

body .header--navegacion ul a:first-child li {
    border-left: none
}

body .header--navegacion ul a li {
    border-left: 1px solid #fff;
    padding: 0 0 0 40px
}

body .header img.logo-live {
    width: 100px
}

body .header--redes {
    position: absolute;
    right: 6%;
    top: 0;
    bottom: 0;
    z-index: 1;
    margin: auto;
    height: max-content
}

body .header--redes .h6,
body .header--redes h6 {
    color: #fff;
    transform: rotateZ(90deg);
    margin-bottom: 40px;
    font-family: Helvetica-bold;
    font-size: 10px;
    letter-spacing: 2px
}

body .header--redes a {
    color: #000;
    background: #fff;
    width: 30px;
    height: 30px;
    display: -ms-grid;
    display: grid;
    margin-bottom: 10px
}

body .header--redes a:hover {
    background-color: #ff5051;
    transition: .3s ease-in-out
}

@media (max-width:1024px) {
    body .header--redes {
        display: none !important
    }

    body.nav-on .header #navbarNav {
        right: 0
    }

    body .header {
        --alto-nav: calc(100px + 12 * ((100vw - 1024px) / 360));
        padding: 45px 15px;
        -ms-flex-align: center;
        align-items: center
    }

    body .header img.logo-live {
        width: 127px
    }

    body .header .btn-ham {
        width: 24px;
        height: 24px;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        transition: .3s ease-in-out all
    }

    body .header .btn-ham span {
        width: 100%;
        height: 3px;
        border-radius: 5px;
        display: block;
        background: #fff;
        transition: .3s ease-in-out all
    }

    body .header .btn-ham span.ham-top {
        transform-origin: left top
    }

    body .header .btn-ham span.ham-btm {
        transform-origin: left bottom
    }

    body .header .btn-ham.ham-on span {
        z-index: 6
    }

    body .header .btn-ham.ham-on .ham-mid {
        transform: scale(0)
    }

    body .header .btn-ham.ham-on .ham-top {
        transform: rotateZ(45deg) scaleX(1.2)
    }

    body .header .btn-ham.ham-on .ham-btm {
        transform: rotateZ(-45deg) scaleX(1.2) translate(-1px, 3px)
    }

    body .header #navbarNav {
        position: absolute;
        right: -100vw;
        height: 100vh;
        background: var(--bg-prm);
        top: 0;
        width: 100vw;
        -ms-flex-pack: center;
        justify-content: center;
        display: -ms-flexbox;
        display: flex;
        transition: .3s ease-in-out right
    }

    body .header--navegacion ul {
        -ms-flex-direction: column;
        flex-direction: column
    }

    body .header--navegacion ul a {
        padding: 0;
        height: auto
    }

    body .header--navegacion ul a.active {
        color: var(--bg-sec)
    }

    body .header--navegacion ul li {
        margin: 0 auto 50px;
        padding: 0 !important;
        font-size: var(--h3);
        border: none !important
    }
}

body .footer {
    background: url(../img/back-footer.webp) center/cover no-repeat;
    padding: var(--paddingSection);
    padding-bottom: 0
}

body .footer--site {
    width: 100%;
    padding-bottom: 8em;
    position: relative
}

body .footer--site .h3,
body .footer--site h3 {
    font-family: Helvetica-bold;
    margin-bottom: 1em;
    color: #fff;
    font-size: 1.2vw
}

body .footer--site .h4,
body .footer--site h4 {
    font-family: Helvetica-bold;
    margin-bottom: 1.5em;
    color: #fff;
    font-size: 1vw;
    letter-spacing: 1px
}

body .footer--site .h4 a,
body .footer--site .h4 span,
body .footer--site h4 a,
body .footer--site h4 span {
    color: #fff;
    display: block;
    font-family: Helvetica-light;
    font-size: 16px;
    margin-top: .5em;
    margin-bottom: 0
}

body .footer--site a {
    margin-bottom: 1em;
    font-size: 16px;
    color: #fff
}

@media (hover:hover) {
    body .footer--site a:hover {
        color: #ff5051;
        background: url(../img/trazo-naranja.png) center/cover no-repeat;
        transition: .3s ease-in-out
    }
}

body .footer--legales {
    background: var(--bg-sec);
    text-align: center;
    padding: 1.5em 0;
    position: relative;
    color: #fff
}

body .footer--legales::after {
    content: "";
    height: 30px;
    width: 100%;
    display: block;
    position: absolute;
    top: -1px;
    z-index: 1;
    transform: rotateZ(180deg)
}

body .footer--legales .col-lg-10 {
    border-top: 1px solid var(--bg-gris);
    padding-top: 30px
}

body .footer--legales .h6,
body .footer--legales a,
body .footer--legales h6,
body .footer--legales span {
    color: var(--txt-gris);
    margin: 10px 5px 0;
    font-family: var(--secundariaRegular);
    letter-spacing: 2px;
    font-size: var(--h6)
}

body .footer #title-redes {
    margin-top: 1em;
    margin-bottom: 1rem
}

body .footer .redes-footer a {
    background: #fff;
    color: #000;
    width: 25px;
    height: 25px;
    display: -ms-grid;
    display: grid;
    margin-bottom: 10px;
    margin-right: 10px
}

body .footer .redes-footer a:hover {
    background-color: #ff5051;
    color: #000;
    transition: .3s ease-in-out
}

@media (max-width:1024px) {
    body .footer {
        padding: 4em 0 0
    }

    body .footer--site {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
        padding-bottom: 0
    }

    body .footer--site>* {
        text-align: center;
        margin-bottom: 50px
    }
}

@media (max-width:640px) {

    body .footer--site .h3,
    body .footer--site h3 {
        font-size: var(--h2);
        font-family: Helvetica-bold
    }

    body .footer--site a {
        font-size: var(--h4)
    }

    body .footer--site .redes-footer {
        -ms-flex-pack: center;
        justify-content: center
    }

    body .footer--site .redes-footer a {
        font-size: 12px
    }

    body .footer--site .h4,
    body .footer--site h4 {
        font-size: var(--h3)
    }

    body .footer--site .h4 a,
    body .footer--site .h4 span,
    body .footer--site h4 a,
    body .footer--site h4 span {
        font-size: var(--h4)
    }
}

@media not all and (min-resolution:0.001dpcm) {
    @supports (-webkit-appearance:none) {
        body html {
            overflow-x: hidden
        }

        body .home .numeros {
            background-image: url(../img/back-numbers.jpg)
        }

        body .home .servicios {
            background-image: url(../img/back-servicios.png)
        }

        body .home .about {
            background-image: url(../img/back-nosotros.png)
        }

        body .home .especial {
            background-image: url(../img/back-especial.png)
        }

        body .home .contacto {
            background-image: url(../img/back-contacto.png)
        }
    }
}

body {
    position: relative;
    font-family: var(--primaria-light)
}

body .h2,
body .h3,
body .h4,
body .h6,
body h2,
body h3,
body h4,
body h6 {
    margin-bottom: 0;
    line-height: normal
}

body .h2,
body h2 {
    font-size: var(--h2);
    line-height: 1
}

body .h3,
body h3 {
    font-size: var(--h3)
}

body .h4,
body h4 {
    font-size: var(--h4)
}

body .h6,
body h6 {
    font-size: var(--h6);
    letter-spacing: 1px
}

body b {
    font-family: var(--primariaBold)
}

body p {
    font-size: var(--h3);
    line-height: 1.2
}

body .home .hero {
    height: 100vh;
    position: relative
}

body .home .hero video,
body .home .hero::after {
    width: 100%;
    position: absolute;
    top: -10px;
    height: 100%
}

body .home .hero::after {
    content: "";
    background: url(../img/filtro-video.webp) center/cover no-repeat;
    mix-blend-mode: multiply
}

body .home .hero img {
    z-index: 1
}

body .home .hero video {
    object-fit: cover;
    left: 0;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    aspect-ratio: 16/9
}

body .home .about {
    padding: var(--paddingSection);
    background: url(../img/back-nosotros.webp) center right/cover no-repeat;
    top: -5px;
    position: relative
}

body .home .about .title {
    margin-bottom: 2.5em
}

body .home .about .title svg {
    width: 2000px
}

body .home .about--info {
    background: var(--bg-gris);
    padding: 3em;
    width: 85%
}

body .home .about--info p {
    text-align: center;
    margin-bottom: 3.5em
}

body .home .about .about--logos {
    margin-bottom: 3rem
}

body .home .about .btn-about button {
    margin-top: -1rem
}

body .home .about .title-nosotros_desk {
    margin-bottom: 5rem;
    width: 100%
}

body .home .about .title-nosotros_desk svg {
    -ms-flex-negative: .6;
    flex-shrink: .6
}

body .home .numeros {
    background: url(../img/back-numbers.webp) center/cover no-repeat;
    padding: var(--paddingSection);
    position: relative;
    -webkit-mask: url(../img/mask-texture.svg) no-repeat center top/cover;
    mask: url(../img/mask-texture.svg) no-repeat center top/cover
}

body .home .numeros--parrafo {
    margin: calc(80px + 50 * ((100vw - 1920px)/ 1024)) auto calc(100px + 100 * ((100vw - 1920px)/ 1024))
}

body .home .numeros--parrafo p {
    color: var(--txt-sec);
    text-align: center
}

body .home .numeros--parrafo p span {
    font-family: var(--primaria-bold);
    color: var(--txt-sec)
}

body .home .numeros--items {
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    margin: auto
}

body .home .numeros--items__item {
    text-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    cursor: pointer;
    overflow: hidden;
    -ms-flex: .2;
    flex: .2
}

body .home .numeros--items__item:nth-child(odd) {
    color: var(--txt-prm)
}

body .home .numeros--items__item::after,
body .home .numeros--items__item::before {
    content: "";
    width: 0;
    height: 15px;
    background: url(../img/brush.webp);
    display: block;
    margin: 1.5em 0;
    transition: .3s ease-in-out all
}

body .home .servicios .swiper-slide {
    height: max-content
}

body .home .servicios {
    background: url(../img/back-servicios.webp) center top/cover no-repeat;
    padding: var(--paddingSection);
    position: relative
}

body .home .numeros--items__item::after {
    transform: rotateZ(180deg)
}

@media (hover:hover) {

    body .home .numeros--items__item:hover::after,
    body .home .numeros--items__item:hover::before {
        width: 100%
    }
}

body .home .numeros--items__item .h2,
body .home .numeros--items__item h2 {
    font-size: var(--h1);
    font-family: var(--secundaria-bold)
}

@media (max-width:1024px) {
    body .home .numeros--items {
        -ms-flex-flow: row wrap;
        flex-flow: row wrap
    }

    body .home .numeros--items__item {
        -ms-flex-preferred-size: 45%;
        flex-basis: 45%
    }

    body .home .numeros--items__item::after,
    body .home .numeros--items__item::before {
        width: 100%;
        margin: 2em auto
    }
}

@media (max-width:640px) {
    body .home .numeros .fireworks.shine1 {
        left: calc(-200px - 150 * ((100vw - 640px)/ 360));
        top: 35%
    }

    body .home .numeros .fireworks.shine2 {
        right: calc(-200px - 170 * ((100vw - 640px)/ 360));
        top: 40%
    }

    body .home .numeros--parrafo p {
        margin-bottom: 5em;
        margin-top: 4rem
    }

    body .home .numeros--items__item .h4,
    body .home .numeros--items__item h4 {
        margin-top: .5em
    }
}

body .home .servicios .swiper p span {
    font-family: Helvetica-bold
}

body .home .servicios .swiper p {
    color: #fff;
    text-align: center;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-family: Helvetica-light
}

body .home .servicios .swiper a {
    margin-top: 4rem
}

body .home .servicios .swiper-pagination {
    position: relative;
    margin-top: 5rem
}

body .home .servicios .swiper-pagination-bullet {
    border: 1px solid #fff;
    padding: 8px;
    box-sizing: content-box;
    background: #fff;
    background-clip: content-box, border-box;
    margin: auto .5em
}

body .home .servicios .swiper-pagination-bullet-active {
    background: var(--bg-prm);
    background-clip: content-box, border-box;
    border: 1px solid var(--bg-prm)
}

@media (max-width:640px) {
    body .home .servicios .swiper {
        margin-bottom: 5em
    }
}

body .home .especial {
    background: url(../img/back-especial.webp) no-repeat;
    position: relative
}

body .home .especial .fireworks {
    position: absolute;
    top: 5em;
    width: calc(340px + 250 * ((100vw - 1920px)/ 1024));
    height: calc(340px + 250 * ((100vw - 1920px)/ 1024));
    transform: scale(0);
    transition: .8s ease-in-out all;
    margin-top: 8em !important
}

body .home .especial .fireworks.revealed {
    transform: scale(1)
}

body .home .pleca::after,
body .main-servicios .hero::after {
    transform: rotateZ(180deg);
    content: ""
}

body .home .especial .fireworks.shine1 {
    left: -7em;
    top: 10em
}

body .home .especial .fireworks.shine2 {
    right: -7em;
    top: 10em
}

body .home .especial .fireworks.shine3 {
    right: 0;
    left: 0;
    top: 20em;
    margin: auto
}

@media (max-width:640px) {
    body .home .especial .fireworks {
        width: calc(300px + 190 * ((100vw - 640px)/ 360));
        height: calc(300px + 190 * ((100vw - 640px)/ 360))
    }
}

body .home .especial #hombre {
    position: absolute;
    bottom: 0
}

body .home .especial img.hombre-mobile {
    position: relative;
    margin-top: -5rem;
    width: 100%
}

body .home .especial p {
    font-family: Helvetica-light;
    color: #FFF;
    text-align: center;
    margin-top: -4.3rem;
    position: relative;
    font-size: 4vw;
    padding-right: 1rem;
    padding-left: 1rem
}

body .home .especial span {
    font-family: Helvetica-bold
}

body .home .especial .btn-contacto {
    margin-top: 1.5rem;
    margin-bottom: 2rem;
    position: relative
}

body .home .especial .container-fireworks {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around
}

body .home .pleca {
    background: var(--bg-gris);
    padding: 1.5em;
    position: relative
}

body .home .pleca::after {
    height: 30px;
    width: 100%;
    display: block;
    position: absolute;
    bottom: -29px;
    z-index: 1
}

body .home .pleca img {
    max-width: calc(170px + 50 * ((100vw - 1920px)/ 1024))
}

@media (max-width:640px) {
    body .home .pleca {
        padding-top: 2em;
        padding-bottom: 1em
    }

    body .home .pleca img {
        max-width: 120px
    }

    body main .hero img {
        width: calc(400px + 230 * ((100vw - 640px)/ 360));
        margin-bottom: 200px
    }

    body main .about .about--logos img {
        margin: 0
    }

    body main .about .about--logos img.live {
        width: 80%
    }

    body main .about .about--logos img.ocesa {
        width: 55%
    }

    body main .especial {
        background: url(../img/back-vivo-mobile.png) center/cover no-repeat var(--bg-sec);
        padding-bottom: 1em;
        box-sizing: content-box
    }

    body main .especial .fireworks {
        top: 25%
    }

    body main .especial .fireworks.shine1 {
        left: calc(-200px - 170 * ((100vw - 640px)/ 360))
    }

    body main .especial .fireworks.shine2 {
        right: calc(-200px - 170 * ((100vw - 640px)/ 360))
    }
}

@media (min-width:641px) {
    body .about .about--logos img {
        margin: 0
    }

    body .about .about--logos img.live {
        width: 80%
    }

    body .about .about--logos img.ocesa {
        width: 25%
    }
}

@media (max-width:1024px) {

    body main .about .title.title-nosotros_desk,
    body main .especial img#hombre {
        display: none
    }

    body main .hero img {
        margin-bottom: 50px
    }

    body main .about .about--pic {
        width: 85%;
        margin: 0 auto
    }

    body main .about .about--info {
        background: var(--bg-gris);
        padding: 1rem;
        width: 95%;
        margin-top: 1rem
    }

    body main .about .about--info p span {
        font-family: Helvetica-bold
    }

    body main .numeros .h2 svg,
    body main .numeros h2 svg {
        width: 100%;
        height: 21vw !important;
        transform: translate3d(0, 0, 0)
    }

    body main .servicios .h2 svg,
    body main .servicios h2 svg {
        width: 100%;
        height: 50% !important;
        transform: translate3d(0, 0, 0)
    }

    body main .servicios .servicios__slider {
        margin-top: 3rem
    }

    body main .about .h2,
    body main .about h2 {
        margin-bottom: 4rem
    }

    body main .about .h2 svg,
    body main .about h2 svg {
        width: 100%;
        height: 12vw !important;
        transform: translate3d(0, 0, 0)
    }

    body main .especial .title-entretenimiento.h2,
    body main .especial h2.title-entretenimiento {
        margin-top: 4rem
    }

    body main .especial .title-entretenimiento.h2 svg,
    body main .especial h2.title-entretenimiento svg {
        width: 100%;
        height: 50%;
        transform: translate3d(0, 0, 0)
    }

    body main .especial .shine1,
    body main .especial .shine2,
    body main .especial .shine3 {
        width: calc(860px + 250 * ((100vw - 1920px)/ 1024));
        height: calc(740px + 250 * ((100vw - 1920px)/ 1024));
        position: absolute
    }

    body main .especial .shine1 svg {
        position: absolute;
        top: -25%;
        left: -75%
    }

    body main .especial .shine2 svg {
        position: absolute;
        top: 20%;
        left: -50%
    }

    body main .especial .shine3 svg {
        position: absolute;
        top: -25%;
        right: 25%
    }
}

@media (min-width:1025px) {
    body .about .center {
        display: -ms-flexbox;
        display: flex
    }

    body .about .title-nosotros.title,
    body .especial img.hombre-mobile,
    body .numeros p br,
    body .servicios p br {
        display: none
    }

    body .about .about--info p span {
        font-family: Helvetica-bold
    }

    body .about--logos img {
        max-width: calc(240px + 40 * ((100vw - 1920px)/ 1024));
        max-height: calc(50px + 40 * ((100vw - 1920px)/ 1024));
        margin: 0 20px
    }

    body .numeros {
        margin-top: -15px
    }

    body .numeros .h2 svg,
    body .numeros h2 svg {
        width: 100%;
        height: 25% !important;
        transform: translate3d(0, 0, 0)
    }

    body .numeros p {
        padding-top: 3rem
    }

    body .servicios .h2 svg,
    body .servicios h2 svg {
        width: 100%;
        height: 35% !important;
        transform: translate3d(0, 0, 0)
    }

    body .servicios .swiper a {
        padding-top: 4rem
    }

    body .servicios p {
        padding-top: 3rem
    }

    body .especial {
        height: 100vh;
        margin-top: -11px
    }

    body .especial .title-entretenimiento.h2,
    body .especial h2.title-entretenimiento {
        margin-top: 4rem
    }

    body .especial .title-entretenimiento.h2 svg,
    body .especial h2.title-entretenimiento svg {
        width: 100%;
        height: 45% !important;
        transform: translate3d(0, 0, 0)
    }

    body .especial .shine1,
    body .especial .shine2,
    body .especial .shine3 {
        width: calc(660px + 250 * ((100vw - 1920px)/ 1024));
        height: calc(540px + 250 * ((100vw - 1920px)/ 1024))
    }

    body .especial .container-events {
        position: absolute;
        bottom: 6%
    }

    body .especial .container-events p {
        font-size: 1.6vw;
        text-align: left;
        padding-right: auto;
        padding-left: 3rem;
        margin-left: 3rem
    }

    body .especial .fireworks.shine1 {
        left: 7% !important;
        top: 5% !important
    }

    body .especial .fireworks.shine2 {
        right: 7% !important;
        top: 5% !important
    }

    body .especial .fireworks.shine3 {
        top: 17% !important
    }

    body .especial .container-fireworks {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: distribute;
        justify-content: space-around
    }

    body .especial .shine1 svg {
        position: absolute;
        top: -40%
    }

    body .especial .shine2 svg {
        position: absolute;
        top: -23%
    }

    body .especial .shine3 svg {
        position: absolute;
        top: -40%
    }
}

body .main-servicios .hero {
    height: 100vh;
    background: url(../img/servicios-bg.jpg);
    background-size: cover;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative
}

body .main-servicios .hero .title {
    margin: auto;
    color: var(--txt-prm)
}

body .main-servicios .hero p.p-trabajo {
    font-family: Helvetica-light;
    padding-left: .7rem;
    padding-right: .7rem;
    font-size: 4vw;
    color: #171717;
    text-align: center;
    margin-top: 1rem
}

body .main-servicios .hero span {
    font-family: Helvetica-bold-cond
}

body .main-servicios .content-swiper {
    background: url(../img/servicios-bg.jpg);
    padding-bottom: 3rem
}

body .main-servicios .content-swiper .bg-orange {
    background-color: #FF5051;
    width: 100%;
    position: relative;
    overflow: hidden
}

body .main-servicios .content-swiper .bg-orange .h2,
body .main-servicios .content-swiper .bg-orange h2 {
    color: #fff;
    margin-top: 1.5rem;
    letter-spacing: 2px;
    font-family: Helvetica-bold;
    padding-left: 1.5rem;
    line-height: 35px;
    padding-bottom: 1.5rem
}

body .main-servicios .content-swiper .bg-orange .img-colapse {
    width: 100%
}

body .main-servicios .content-swiper .bg-orange .expand-info {
    color: #fff;
    background: #ff5051;
    width: 40px;
    height: 40px;
    display: -ms-grid;
    display: grid;
    font-size: 15px;
    position: absolute;
    right: 2%;
    bottom: 13%;
    box-shadow: 8px 10px 10px 1px rgba(0, 0, 0, .5);
    cursor: pointer
}

body .main-servicios .content-swiper .bg-orange .close-info {
    color: #fff;
    display: none;
    place-items: center;
    text-decoration: none;
    font-size: 20px;
    position: absolute;
    right: 2%;
    bottom: 13%;
    cursor: pointer
}

body .main-servicios .content-swiper .bg-orange .info-swiper {
    color: #fff;
    font-family: Helvetica-light;
    letter-spacing: 2px;
    padding-left: 1.5rem;
    line-height: 18px;
    font-size: 18px;
    margin-top: 1rem;
    display: none
}

body .main-servicios .content-swiper .bg-orange .section-gallery-mobile-swiper {
    display: none
}

body .main-servicios .content-swiper .bg-orange .list-container li {
    margin-top: 2rem;
    display: inline-block
}

body .main-servicios .content-swiper .bg-orange .list-container li a {
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 12px;
    margin-top: 1rem;
    display: block
}

body .main-servicios .content-swiper .bg-orange .list-container li a i {
    position: absolute;
    right: 12px;
    font-size: 20px
}

body .main-servicios .content-swiper .bg-onrage-deskt,
body .main-servicios .content-swiper .gallery-container {
    display: none
}

body .main-servicios .content-swiper .swiper-button-next,
body .main-servicios .content-swiper .swiper-button-prev {
    margin-top: -40%
}

body .main-servicios .eventos {
    padding: var(--paddingSection);
    background: url(../img/back-especial.webp) center/cover no-repeat;
    padding-top: 4rem;
    position: relative
}

body .main-servicios .eventos::after {
    content: "";
    height: 30px;
    width: 100%;
    display: block;
    position: absolute;
    bottom: -29px;
    z-index: 1
}

body .main-servicios .eventos .fireworks {
    position: absolute;
    top: 5em;
    width: calc(340px + 250 * ((100vw - 1920px)/ 1024));
    height: calc(340px + 250 * ((100vw - 1920px)/ 1024));
    transform: scale(0);
    transition: .8s ease-in-out all
}

body .main-servicios .eventos .fireworks.revealed {
    transform: scale(1)
}

body .main-servicios .eventos .fireworks.shine1 {
    left: -7em;
    top: 10em
}

body .main-servicios .eventos .fireworks.shine2 {
    right: -7em;
    top: 10em
}

body .main-servicios .eventos .fireworks.shine3 {
    right: 0;
    left: 0;
    top: 20em;
    margin: auto
}

@media (max-width:640px) {
    body .main-servicios .eventos .fireworks {
        width: calc(300px + 190 * ((100vw - 640px)/ 360));
        height: calc(300px + 190 * ((100vw - 640px)/ 360))
    }
}

body .main-servicios .eventos .shine1,
body .main-servicios .eventos .shine2 {
    width: calc(860px + 250 * ((100vw - 1920px)/ 1024));
    height: calc(740px + 250 * ((100vw - 1920px)/ 1024));
    position: absolute
}

body .main-servicios .eventos .shine1 svg {
    position: absolute;
    top: 95%;
    left: 38%;
    z-index: 1
}

body .main-servicios .eventos .shine2 svg {
    position: absolute;
    top: 97%;
    left: -60%;
    z-index: 1
}

body .main-servicios .eventos .section-gallery-mobile {
    margin-top: 3rem;
    padding-top: 6rem
}

body .main-servicios .eventos .title {
    margin: 0 auto;
    color: #fff
}

body .main-servicios .eventos p {
    color: #fff;
    text-align: center;
    margin-top: 3rem;
    font-family: Helvetica-light;
    font-size: 15px
}

body .main-servicios .eventos p span {
    font-family: Helvetica-bold
}

body .main-servicios .eventos .marco-video {
    display: block;
    position: relative;
    margin: 0 auto;
    text-align: center;
    background: url(../img/marco-servicios.png)
}

body .main-servicios .eventos video {
    width: 100%;
    display: block;
    margin: 3rem auto auto;
    position: relative;
    z-index: 20
}

body .main-nosotros .pleca::after,
body .main-servicios .pleca::after,
body .pleca::after {
    content: "";
    bottom: -29px;
    z-index: 1;
    transform: rotateZ(180deg)
}

body .main-servicios .eventos .section-gallery {
    display: none
}

body .main-servicios .especial {
    height: 80vh;
    background: url(../img/back-servicios-especial.jpg) center/cover no-repeat #fff;
    padding: var(--paddingSection);
    position: relative
}

body .main-nosotros .pleca::after,
body .main-servicios .pleca::after {
    height: 30px
}

body .main-servicios .especial .title {
    margin: auto;
    color: var(--txt-sec)
}

body .main-servicios .especial .title::after,
body .main-servicios .especial .title::before {
    background: var(--bg-sec)
}

body .main-servicios .pleca {
    background: var(--bg-gris);
    padding: 1.5em;
    position: relative
}

body .main-servicios .pleca::after {
    width: 100%;
    display: block;
    position: absolute
}

body .main-servicios .pleca img {
    max-width: calc(170px + 50 * ((100vw - 1920px)/ 1024))
}

@media (max-width:640px) {
    body .main-servicios .pleca {
        padding-top: 2em;
        padding-bottom: 1em
    }

    body .main-servicios .pleca img {
        max-width: 120px
    }

    body .main-servicios .eventos .fireworks.shine1 {
        left: calc(-200px - 150 * ((100vw - 640px)/ 360));
        top: 45%
    }

    body .main-servicios .eventos .fireworks.shine2 {
        right: calc(-200px - 170 * ((100vw - 640px)/ 360));
        top: 40%
    }
}

@media (max-width:1024px) {
    body .main-servicios .eventos p br {
        display: none
    }
}

@media (min-width:1025px) {

    body .main-servicios .content-swiper .gallery-container .gallery__item:nth-child(2),
    body .main-servicios .content-swiper .gallery-container .gallery__item:nth-child(4),
    body .main-servicios .content-swiper .gallery-container .gallery__item:nth-child(8) {
        -ms-grid-column: span 2;
        grid-column-start: span 2
    }

    body .main-servicios .hero #title-servicios {
        margin-top: 2rem
    }

    body .main-servicios .hero p.trabajo-desk {
        font-family: Helvetica-light;
        font-size: 1.9vw;
        color: #171717;
        text-align: center;
        display: block !important;
        line-height: 1;
        margin-top: 3rem
    }

    body .main-servicios .hero span {
        font-family: Helvetica-bold-cond;
        letter-spacing: 2px
    }

    body .main-servicios .hero p.p-trabajo {
        display: none
    }

    body .main-servicios .eventos p {
        font-size: 1.9vw;
        margin-top: 3rem
    }

    body .main-servicios .eventos video {
        width: 65%;
        display: block;
        margin: 3rem auto auto
    }

    body .main-servicios .eventos .shine1,
    body .main-servicios .eventos .shine2 {
        width: calc(460px + 250 * ((100vw - 1920px)/ 1024))
    }

    body .main-servicios .eventos .section-gallery-mobile {
        display: none
    }

    body .main-servicios .eventos .section-gallery {
        display: block;
        margin-top: 5rem
    }

    body .main-servicios .eventos .shine1 svg {
        top: 35%;
        left: 327%
    }

    body .main-servicios .eventos .shine2 svg {
        top: 35%;
        left: -15%
    }

    body .main-servicios .content-swiper {
        padding-bottom: 8rem
    }

    body .main-servicios .content-swiper .bg-orange {
        position: relative;
        padding: .4rem;
        margin-left: 1rem;
        height: 600px;
        transition: 1.2s all
    }

    body .main-servicios .content-swiper .bg-orange:hover {
        height: 600px
    }

    body .main-servicios .content-swiper .bg-orange:hover .img-colapse {
        margin-top: -197.6%;
        transition: 1.2s all
    }

    body .main-servicios .content-swiper .bg-orange:hover .info-swiper {
        display: block;
        padding-left: .5rem;
        font-size: 15px
    }

    body .main-servicios .content-swiper .bg-orange .info-swiper {
        display: none
    }

    body .main-servicios .content-swiper .bg-orange .section-gallery-mobile-swiper {
        display: none !important
    }

    body .main-servicios .content-swiper .bg-orange .close-info,
    body .main-servicios .content-swiper .bg-orange .expand-info,
    body .main-servicios .content-swiper .bg-orange .list-container i {
        display: none
    }

    body .main-servicios .content-swiper .bg-orange .h2,
    body .main-servicios .content-swiper .bg-orange h2 {
        font-size: 1.7vw;
        padding-left: 1rem
    }

    body .main-servicios .content-swiper .bg-orange .list-container li {
        margin-top: 1rem
    }

    body .main-servicios .content-swiper .bg-orange .list-container a {
        font-family: Helvetica-bold
    }

    body .main-servicios .content-swiper .bg-orange .list-container li a:hover {
        color: #171717;
        transition: .5s ease-in-out
    }

    body .main-servicios .content-swiper .bg-onrage-deskt {
        display: -ms-flexbox !important;
        display: flex !important
    }

    body .main-servicios .content-swiper .close-gallery {
        position: absolute;
        right: -30%;
        color: #fff;
        z-index: 3;
        top: 19%;
        cursor: pointer
    }

    body .main-servicios .content-swiper .gallery-container {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: (1fr) [4];
        grid-template-columns: repeat(4, 1fr);
        padding: 14px;
        grid-gap: 10px;
        background: #444c;
        position: absolute;
        left: 105%;
        margin-top: 0;
        width: 59.8%;
        height: 600px
    }

    body .main-servicios .content-swiper .gallery-container img {
        width: 100%;
        height: 100%;
        object-fit: cover
    }

    body .main-servicios .content-swiper .gallery-container .gallery__item:nth-child(6) {
        -ms-grid-row: span 2;
        grid-row-start: span 2
    }

    body .main-servicios .content-swiper .swiper-services {
        display: none
    }
}

@media (min-width:1500px) {

    body .main-servicios .content-swiper .bg-orange,
    body .main-servicios .content-swiper .bg-orange:hover {
        height: 815px
    }

    body .main-servicios .content-swiper .tres {
        transition: all 1.2s ease 0s
    }

    body .main-servicios .content-swiper .gallery-container {
        transition: all 1.2s ease 0s;
        width: 64.7%;
        height: 815px
    }

    body .main-servicios .content-swiper .close-gallery {
        top: 21.3%
    }
}

body .main-nosotros .about-entretener {
    height: 90vh;
    background: url(../img/back-contacto.webp) no-repeat #1c1b1c;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    overflow: hidden
}

body .main-nosotros .about-entretener img.persons {
    width: 300%;
    position: absolute;
    top: 15%;
    left: -80%
}

body .main-nosotros .about-entretener .title-nosotros.h2,
body .main-nosotros .about-entretener h2.title-nosotros {
    margin-top: -3rem
}

body .main-nosotros .about-entretener p.expertos {
    color: #fff;
    text-align: center;
    font-family: Helvetica-light;
    position: relative;
    padding-top: 3rem
}

body .main-nosotros .about-entretener p.expertos span,
body main .error p.text {
    font-family: Helvetica-bold
}

body .main-nosotros .valores {
    background: url(../img/servicios-bg.jpg) #fff;
    background-size: 100%;
    padding-bottom: 4rem
}

body .main-nosotros .valores .ideales.h2,
body .main-nosotros .valores h2.ideales {
    padding-top: 4rem
}

body .main-nosotros .valores .ideales.h2 svg,
body .main-nosotros .valores h2.ideales svg {
    width: 60% !important;
    margin: 0 auto;
    display: block
}

body .main-nosotros .valores--copy {
    padding: 0 100px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column
}

body .main-nosotros .valores .title-valores {
    background: #fff;
    position: relative;
    padding: 15px 60px 15px 15px;
    border: 5px solid var(--bg-prm);
    border-width: 3px 0 0 3px;
    font-family: Helvetica-bold-cond;
    margin: 3rem 0 1.2em;
    font-size: 15px;
    color: #FF5051;
    font-weight: 700;
    top: 36%
}

body .main-nosotros .valores .title-valores::after {
    content: "";
    width: 3px;
    height: 50%;
    position: absolute;
    right: 0;
    top: 0;
    background: var(--bg-prm)
}

body .main-nosotros .valores p.agencia {
    text-align: center;
    color: #151515;
    margin-top: 3rem;
    padding-top: 1rem;
    font-size: .9rem;
    padding-right: 1rem;
    padding-left: 1rem;
    font-weight: 700;
    text-transform: uppercase;
    font-family: Helvetica-regular
}

body .main-nosotros .valores p.agencia-content {
    text-align: center;
    color: #191919;
    font-family: Helvetica-light;
    font-size: .93rem;
    padding: 1rem 1rem 3rem
}

body .main-nosotros .valores .swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: #FD4C18;
    border-radius: 0 !important;
    left: 0;
    top: 0
}

body .main-nosotros .valores .swiper-button-next {
    right: 10px;
    left: auto;
    margin-top: 3rem
}

body .main-nosotros .valores .swiper-button-prev {
    left: 10px;
    right: auto;
    margin-top: 3rem
}

body .main-nosotros .valores .h3,
body .main-nosotros .valores h3 {
    font-family: var(--primariaBold);
    margin-bottom: 1em
}

body .main-nosotros .valores p {
    font-family: var(--secundariaRegular);
    font-size: var(--h4)
}

body .main-nosotros .equipo {
    background: url(../img/back-especial.webp) no-repeat;
    padding: var(--paddingSection);
    padding-bottom: 3rem
}

body .main-nosotros .equipo .swiper-team {
    margin-top: 3rem;
    padding-top: 3rem;
    height: 680px !important
}

body .main-nosotros .equipo .container-tabs {
    display: none
}

body .main-nosotros .equipo #myTab {
    display: block
}

body .main-nosotros .equipo #myTab li {
    font-size: var(--h3);
    -ms-flex-preferred-size: 33%;
    flex-basis: 33%;
    cursor: pointer
}

body .main-nosotros .equipo #myTab li a {
    color: #fff;
    text-align: center;
    border: none;
    font-family: var(--primariaBold);
    padding-bottom: 30px
}

body .main-nosotros .equipo #myTab li a.active {
    color: #ff5051;
    background: 0 0;
    position: relative;
    border-bottom: 3px solid var(--bg-prm);
    top: 2px;
    width: 103%
}

body .main-nosotros .equipo #myTab li a.active::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 30px solid var(--bg-prm);
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    margin: auto
}

body .main-nosotros .equipo .tab-pane {
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 7em
}

body .main-nosotros .equipo .tab-pane.active {
    display: block
}

body .main-nosotros .equipo .tab-pane .nav--img {
    border: 2px solid var(--bg-prm);
    border-radius: 50%;
    width: calc(200px + 10 * ((100vw - 1920px)/ 1024));
    height: calc(200px + 10 * ((100vw - 1920px)/ 1024));
    overflow: hidden;
    position: relative;
    display: block;
    margin: 0 auto
}

body .main-nosotros .equipo .tab-pane .nav--img img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%
}

body .main-nosotros .equipo .tab-pane .nav--img::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 50%;
    left: 0;
    top: 0;
    margin: auto
}

body .main-nosotros .equipo .tab-pane p {
    font-size: var(--h4);
    color: #fff;
    text-align: center;
    margin-top: 3rem;
    padding-top: 1rem;
    font-family: Helvetica-light
}

body .main-nosotros .grupo {
    position: relative;
    background: url(../img/servicios-bg.jpg);
    background-size: 100%;
    padding-top: 3rem
}

body .main-nosotros .pleca,
body .pleca {
    background: var(--bg-gris);
    position: relative
}

body .main-nosotros .grupo .title {
    margin: auto
}

body .main-nosotros .grupo img.logo-ocesa {
    width: 45%;
    display: block;
    margin: 3rem auto 0;
    padding-top: 2rem
}

body .main-nosotros .pleca,
body .pleca {
    padding: 1.5em
}

body .main-nosotros .grupo img {
    display: block;
    margin: 0 auto
}

body .main-nosotros .pleca::after {
    width: 100%;
    display: block;
    position: absolute
}

body .main-nosotros .pleca img {
    max-width: calc(170px + 50 * ((100vw - 1920px)/ 1024))
}

@media (max-width:640px) {
    body .main-nosotros .pleca {
        padding-top: 2em;
        padding-bottom: 1em
    }

    body .main-nosotros .pleca img {
        max-width: 120px
    }
}

@media (min-width:1025px) {
    body .main-nosotros .about-entretener {
        height: 95vh
    }

    body .main-nosotros .about-entretener img.persons {
        width: 110%;
        top: -6%;
        left: -5%
    }

    body .main-nosotros .about-entretener .title-nosotros.h2,
    body .main-nosotros .about-entretener h2.title-nosotros {
        margin-top: -1rem
    }

    body .main-nosotros .about-entretener p.expertos {
        font-size: 1.7vw;
        padding-top: 4rem
    }

    body .main-nosotros .valores {
        padding-bottom: 0
    }

    body .main-nosotros .valores .reverse {
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        margin-top: 3rem;
        padding-top: 2rem
    }

    body .main-nosotros .valores .ideales.h2,
    body .main-nosotros .valores h2.ideales {
        padding-top: 5rem
    }

    body .main-nosotros .valores .title-valores {
        width: 70%;
        top: 0;
        left: -40%;
        font-size: 36px;
        padding: 20px 0 20px 35px
    }

    body .main-nosotros .valores .title-valores.cumpl {
        width: 75%;
        top: 0;
        left: 70%;
        font-size: 36px;
        padding: 20px 0 20px 35px
    }

    body .main-nosotros .valores .swiper-wrapper {
        position: relative;
        width: 100%;
        height: 100%;
        z-index: 1;
        display: block;
        transition-property: transform;
        box-sizing: content-box
    }

    body .main-nosotros .equipo .swiper-team,
    body .main-nosotros .valores .swiper-button-next,
    body .main-nosotros .valores .swiper-button-prev,
    body .main-nosotros .valores p.agencia-content br {
        display: none
    }

    body .main-nosotros .valores .reverse-two {
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    body .main-nosotros .valores .container-content {
        position: relative;
        top: -105%;
        left: -5%
    }

    body .main-nosotros .valores p.agencia {
        font-size: 1.3vw;
        text-align: left;
        padding-left: 4rem
    }

    body .main-nosotros .valores p.agencia-content {
        font-size: 1.35vw;
        padding-left: 4.2rem;
        text-align: left
    }

    body .main-nosotros .valores .row.elevar {
        margin-top: -2rem
    }

    body .main-nosotros .valores .swiper-scrollbar {
        background-color: transparent
    }

    body .main-nosotros .equipo {
        padding: var(--paddingSection)
    }

    body .main-nosotros .equipo .swiper-scrollbar-drag {
        background-color: transparent !important
    }

    body .main-nosotros .equipo .container-tabs {
        margin-top: 5rem;
        display: block
    }

    body .main-nosotros .equipo .nav-tabs {
        border-bottom: 3px solid #dee2e6
    }

    body .main-nosotros .equipo #myTab {
        display: -ms-flexbox;
        display: flex
    }

    body .main-nosotros .equipo #myTab li {
        font-size: var(--h3);
        -ms-flex-preferred-size: 33%;
        flex-basis: 33%;
        cursor: pointer
    }

    body .main-nosotros .equipo #myTab li a {
        color: #fff;
        text-align: center;
        border: none;
        font-family: var(--primariaBold);
        padding-bottom: 30px
    }

    body .main-nosotros .equipo #myTab li a.active {
        color: #ff5051;
        background: 0 0;
        position: relative;
        border-bottom: 3px solid var(--bg-prm);
        top: 2px;
        width: 103%
    }

    body .main-nosotros .equipo #myTab li a.active::after {
        content: "";
        display: block;
        width: 0;
        height: 0;
        border-left: 30px solid transparent;
        border-right: 30px solid transparent;
        border-top: 30px solid var(--bg-prm);
        position: absolute;
        bottom: -30px;
        left: 0;
        right: 0;
        margin: auto
    }

    body .main-nosotros .equipo .tab-pane {
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center;
        padding-top: 7em
    }

    body .main-nosotros .equipo .tab-pane.active {
        display: -ms-flexbox;
        display: flex
    }

    body .main-nosotros .equipo .tab-pane .nav--img {
        border: 2px solid var(--bg-prm);
        border-radius: 50%;
        width: calc(300px + 10 * ((100vw - 1920px)/ 1024));
        height: calc(300px + 10 * ((100vw - 1920px)/ 1024));
        overflow: hidden;
        position: relative;
        display: -ms-grid;
        display: grid;
        place-items: center
    }

    body .main-nosotros .equipo .tab-pane .nav--img img {
        object-fit: cover;
        object-position: center;
        width: 100%;
        height: 100%
    }

    body .main-nosotros .equipo .tab-pane .nav--img::after {
        content: "";
        border: 10px solid var(--bg-sec);
        width: 100%;
        height: 100%;
        position: absolute;
        border-radius: 50%;
        left: 0;
        top: 0;
        margin: auto
    }

    body .main-nosotros .equipo .tab-pane p {
        font-size: var(--h4);
        color: #fff;
        padding: 60px 30px;
        margin-left: 80px;
        border-left: 5px solid var(--bg-prm);
        -ms-flex: 1;
        flex: 1;
        text-align: left;
        font-family: Helvetica-regular
    }

    body .main-nosotros .grupo {
        padding-top: 8rem
    }

    body .main-nosotros .grupo img.logo-ocesa {
        width: 20%
    }
}

body .contacto {
    background: url(../img/back-contacto.webp) 0 0/contain var(--bg-sec)
}

body .contacto .formulario {
    padding: var(--paddingSection);
    padding-bottom: 2em
}

body .contacto .formulario form {
    display: -ms-grid !important;
    display: grid !important;
    -ms-grid-columns: (1fr) [2];
    grid-template-columns: repeat(2, 1fr);
    gap: 1em
}

body .contacto .formulario .btn::after,
body .contacto .mapa__item br {
    display: none
}

body .contacto .formulario .input {
    margin-bottom: 1em
}

body .contacto .formulario #input-cal {
    grid-column: 2/2;
    grid-row: 7/4
}

body .contacto .formulario #input-cal #calendario {
    background: #fff
}

body .contacto .formulario .btn {
    -ms-flex-pack: center;
    justify-content: center;
    grid-column: 1/3;
    margin: 2em 0
}

body .contacto .mapa iframe {
    width: 100%;
    height: 500px
}

body .contacto .mapa .h3,
body .contacto .mapa .h4,
body .contacto .mapa h3,
body .contacto .mapa h4 {
    color: #fff;
    font-family: Helvetica-bold-cond;
    font-size: 25px
}

body .contacto .mapa p {
    color: #fff;
    font-family: Helvetica-regular;
    font-size: 20px
}

body .contacto .mapa p a {
    color: inherit;
    text-decoration: none
}

body .contacto .mapa a {
    transition: .2s ease-in-out all
}

@media (hover:hover) {
    body .contacto .mapa a:hover {
        color: var(--bg-prm)
    }
}

body .contacto .mapa--contacto {
    padding: 2em 0
}

body .contacto .mapa .col-lg-2 {
    width: 12%
}

body .contacto .mapa__item {
    padding-right: 1em;
    width: 30%;
    margin-left: 3rem
}

body .contacto .mapa__item:last-child {
    padding-right: 0
}

body .contacto .mapa__item--redes {
    margin-top: 1em
}

body .contacto .mapa__item--redes a {
    color: var(--bg-sec);
    text-decoration: none;
    margin-right: 20px;
    background: #fff;
    border-radius: 50%;
    padding: .3em
}

@media (max-width:1024px) {

    body .contacto .formulario form .input#input-cal,
    body .contacto .formulario form .input:not(:nth-child(1)):not(:nth-child(2)) {
        grid-column: 1/3
    }

    body .contacto .mapa iframe textarea {
        height: calc(500px - 120 * ((100vw - 1024px)/ 360))
    }

    body .contacto .mapa--contacto {
        -ms-flex-direction: column;
        flex-direction: column
    }

    body .contacto .mapa--contacto .col-lg-2,
    body .contacto .mapa--contacto .mapa__item {
        width: 100%;
        margin-bottom: 1.5em;
        text-align: center;
        padding-right: 0;
        margin-left: 0
    }

    body .contacto .mapa--contacto .col-lg-2 br,
    body .contacto .mapa--contacto .mapa__item br {
        display: block
    }

    body .contacto .mapa--contacto .col-lg-2 p,
    body .contacto .mapa--contacto .mapa__item p {
        font-size: 16px
    }

    body .contacto .mapa--contacto .mapa__item--redes {
        -ms-flex-pack: center;
        justify-content: center
    }

    body .contacto .mapa--contacto .mapa__item--redes a {
        margin: 0 1em
    }
}

body .aviso-privacidad {
    margin-bottom: 2rem
}

body .aviso-privacidad .title-aviso {
    color: #151515;
    font-family: Helvetica-bold-cond;
    font-size: 21px;
    text-align: left;
    letter-spacing: 1.44px;
    text-transform: capitalize
}

body .aviso-privacidad .subtitle-aviso {
    color: #FF5051;
    font-size: 16px;
    font-family: Helvetica-bold-cond;
    margin-top: 1.5rem;
    letter-spacing: 1px;
    line-height: 1
}

body .aviso-privacidad .content-aviso {
    font-size: 11.4px;
    color: #151515;
    font-family: Helvetica-light
}

body .pleca::after {
    height: 30px;
    width: 100%;
    display: block;
    position: absolute
}

body .pleca img {
    max-width: calc(170px + 50 * ((100vw - 1920px)/ 1024))
}

@media (max-width:640px) {
    body .pleca {
        padding-top: 2em;
        padding-bottom: 1em
    }

    body .pleca img {
        max-width: 120px
    }
}

@media (min-width:1025px) {
    body .aviso-privacidad {
        margin-bottom: 3rem
    }

    body .aviso-privacidad .title-aviso {
        font-size: 3.5vw;
        font-family: Helvetica-bold;
        letter-spacing: 3px;
        text-transform: initial
    }

    body .aviso-privacidad br {
        display: none
    }

    body .aviso-privacidad .subtitle-aviso {
        margin-top: 3.5rem;
        font-size: 1.7vw
    }

    body .aviso-privacidad .content-aviso {
        font-size: 1.24vw;
        margin-top: 1.5rem;
        line-height: 1.4
    }
}

body main {
    margin-top: -.9rem
}

body main .error {
    padding-bottom: 3rem;
    background: url(../img/bg-error.png);
    padding-top: 3.1rem;
    position: relative
}

body main .error p.text {
    text-align: center;
    color: #1b1b1c;
    background: 0 0;
    font-size: 8vw;
    letter-spacing: 3px;
    text-shadow: -1px -1px 1px #FF5051, 1px -1px 1px #FF5051, -1px 1px 1px #FF5051, 1px 1px 1px #FF5051
}

body main .error .text-center {
    display: -ms-flexbox;
    display: flex;
    margin-top: 2rem;
    -ms-flex-pack: center;
    justify-content: center
}

body main .error img {
    width: 40%
}

body main .error p {
    font-size: 16px;
    text-align: center;
    color: #FFF;
    font-family: Helvetica-light;
    margin-top: 3rem
}

body main .error span {
    font-family: Helvetica-bold
}

body main .error button {
    margin-top: 3rem;
    font-family: Helvetica-regular
}

body main .error .redes-sociales {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: baseline;
    align-items: baseline
}

body main .error .redes-sociales p {
    margin-right: 1.5rem;
    text-transform: uppercase;
    font-size: 12px
}

body main .error .redes-sociales a {
    text-decoration: none;
    font-size: 14px;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    color: #000;
    background-color: #FF5051;
    border-radius: 50%;
    margin-right: .5rem
}

@media (min-width:1025px) {
    body main .error {
        padding-top: 1.1rem
    }

    body main .error p.text {
        font-size: 75px;
        text-shadow: -2px -2px 1px #FF5051, 2px -2px 1px #FF5051, -2px 2px 1px #FF5051, 2px 2px 1px #FF5051;
        letter-spacing: 5px
    }

    body main .error img {
        width: 23%;
        margin-right: 2rem
    }

    body main .error p {
        font-size: 30px;
        letter-spacing: .7px
    }
}
@media (min-width: 1025px)
{
    .btn-slides {
        font-size: 18px !important;
      }
}

