.flex-table {
    display: table
}

.flex-table-item {
    display: table-cell;
    width: 1%;
    white-space: nowrap;
    vertical-align: middle
}

.flex-table-item-primary {
    width: 99%
}

.container {
    width: 980px;
    margin-right: auto;
    margin-left: auto
}

.container::before {
    display: table;
    content: ""
}

.container::after {
    display: table;
    clear: both;
    content: ""
}

.container-md {
    max-width: 768px;
    margin-right: auto;
    margin-left: auto
}

.container-md::before {
    display: table;
    content: ""
}

.container-md::after {
    display: table;
    clear: both;
    content: ""
}

.container-lg {
    max-width: 1004px;
    margin-right: auto;
    margin-left: auto
}

.container-lg::before {
    display: table;
    content: ""
}

.container-lg::after {
    display: table;
    clear: both;
    content: ""
}

.container-xl {
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto
}

.container-xl::before {
    display: table;
    content: ""
}

.container-xl::after {
    display: table;
    clear: both;
    content: ""
}

.columns {
    margin-right: -10px;
    margin-left: -10px
}

.columns::before {
    display: table;
    content: ""
}

.columns::after {
    display: table;
    clear: both;
    content: ""
}

.column {
    float: left;
    padding-right: 10px;
    padding-left: 10px
}

.one-third {
    width: 33.333333%
}

.two-thirds {
    width: 66.666667%
}

.one-fourth {
    width: 25%
}

.one-half {
    width: 50%
}

.three-fourths {
    width: 75%
}

.one-fifth {
    width: 20%
}

.four-fifths {
    width: 80%
}

.single-column {
    padding-right: 10px;
    padding-left: 10px
}

.table-column {
    display: table-cell;
    width: 1%;
    padding-right: 10px;
    padding-left: 10px;
    vertical-align: top
}

.centered {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto
}



.gut-sm {
    margin-right: -6px;
    margin-left: -6px
}

.gut-sm > [class*="col-"] {
    padding-right: 6px !important;
    padding-left: 6px !important
}

.gut-md {
    margin-right: -12px;
    margin-left: -12px
}

.gut-md > [class*="col-"] {
    padding-right: 12px !important;
    padding-left: 12px !important
}

.gut-lg {
    margin-right: -24px;
    margin-left: -24px
}

.gut-lg > [class*="col-"] {
    padding-right: 24px !important;
    padding-left: 24px !important
}

.anim-fade-in {
    animation-name: fade-in;
    animation-duration: 1s;
    animation-timing-function: ease-in-out
}

.anim-fade-in.fast {
    animation-duration: 300ms
}

@keyframes fade-in {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

.anim-fade-up {
    opacity: 0;
    animation-name: fade-up;
    animation-duration: 0.3s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-out;
    animation-delay: 1s
}

@keyframes fade-up {
    0% {
        opacity: 0.8;
        transform: translateY(100%)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

.anim-fade-down {
    animation-name: fade-down;
    animation-duration: 0.3s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in
}

@keyframes fade-down {
    0% {
        opacity: 1;
        transform: translateY(0)
    }

    100% {
        opacity: 0.5;
        transform: translateY(100%)
    }
}

.anim-grow-x {
    width: 0%;
    animation-name: grow-x;
    animation-duration: 0.3s;
    animation-fill-mode: forwards;
    animation-timing-function: ease;
    animation-delay: 0.5s
}

@keyframes grow-x {
    to {
        width: 100%
    }
}

.anim-shrink-x {
    animation-name: shrink-x;
    animation-duration: 0.3s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-delay: 0.5s
}

@keyframes shrink-x {
    to {
        width: 0%
    }
}

.anim-scale-in {
    animation-name: scale-in;
    animation-duration: 0.15s;
    animation-timing-function: cubic-bezier(0.2, 0, 0.13, 1.5)
}

@keyframes scale-in {
    0% {
        opacity: 0;
        transform: scale(0.5)
    }

    100% {
        opacity: 1;
        transform: scale(1)
    }
}

.anim-pulse {
    animation-name: pulse;
    animation-duration: 2s;
    animation-timing-function: linear;
    animation-iteration-count: infinite
}

@keyframes pulse {
    0% {
        opacity: 0.3
    }

    10% {
        opacity: 1
    }

    100% {
        opacity: 0.3
    }
}

.anim-pulse-in {
    animation-name: pulse-in;
    animation-duration: 0.5s
}

@keyframes pulse-in {
    0% {
        transform: scale3d(1, 1, 1)
    }

    50% {
        transform: scale3d(1.1, 1.1, 1.1)
    }

    100% {
        transform: scale3d(1, 1, 1)
    }
}

.border {
    border: 1px #e5e5e5 solid !important
}

.border-top {
    border-top: 1px #e5e5e5 solid !important
}

.border-right {
    border-right: 1px #e5e5e5 solid !important
}

.border-bottom {
    border-bottom: 1px #e5e5e5 solid !important
}

.border-left {
    border-left: 1px #e5e5e5 solid !important
}

.border-y {
    border-top: 1px #e5e5e5 solid !important;
    border-bottom: 1px #e5e5e5 solid !important
}

.border-blue {
    border-color: #c5d5dd !important
}

.border-gray-light {
    border-color: #eee !important
}

.border-gray-dark {
    border-color: #ddd !important
}

.border-0 {
    border: 0 !important
}

.border-top-0 {
    border-top: 0 !important
}

.border-right-0 {
    border-right: 0 !important
}

.border-bottom-0 {
    border-bottom: 0 !important
}

.border-left-0 {
    border-left: 0 !important
}

.rounded-0 {
    border-radius: 0 !important
}

.rounded-1 {
    border-radius: 3px !important
}

.rounded-2 {
    border-radius: 6px !important
}

.box-shadow {
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1) !important
}

.box-shadow-large {
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.4) !important
}

.bg-white {
    background-color: #fff !important
}

.bg-blue {
    background-color: #4078c0 !important
}

.bg-blue-light {
    background-color: #f2f8fa !important
}

.bg-gray-dark {
    background-color: #333 !important
}

.bg-gray {
    background-color: #f5f5f5 !important
}

.bg-gray-light {
    background-color: #fafafa !important
}

.bg-green {
    background-color: #6cc644 !important
}

.bg-red {
    background-color: #bd2c00 !important
}

.bg-yellow {
    background-color: #ffd36b !important
}

.bg-shade-gradient {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.065), transparent) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 200px !important
}

.text-blue {
    color: #4078c0 !important
}

.text-red {
    color: #bd2c00 !important
}

.text-gray-light {
    color: #999 !important
}

.text-gray {
    color: #767676 !important
}

.text-gray-dark {
    color: #333 !important
}

.text-green {
    color: #55a532 !important
}

.text-orange {
    color: #c9510c !important
}

.text-purple {
    color: #6e5494 !important
}

.text-white {
    color: #fff !important
}

.text-inherit {
    color: inherit !important
}

.link-blue {
    color: #4078c0 !important
}

.link-gray-dark {
    color: #333 !important
}

.link-gray {
    color: #767676 !important
}

.text-renamed {
    color: #fffa5d !important
}

.text-pending {
    color: #cea61b !important
}

.muted-link {
    color: #767676 !important
}

.muted-link:hover {
    color: #4078c0 !important;
    text-decoration: none
}

.position-static {
    position: static !important
}

.position-relative {
    position: relative !important
}

.position-absolute {
    position: absolute !important
}

.position-fixed {
    position: fixed !important
}

.top-0 {
    top: 0 !important
}

.right-0 {
    right: 0 !important
}

.bottom-0 {
    bottom: 0 !important
}

.left-0 {
    left: 0 !important
}

.v-align-middle {
    vertical-align: middle !important
}

.v-align-top {
    vertical-align: top !important
}

.v-align-bottom {
    vertical-align: bottom !important
}

.v-align-text-top {
    vertical-align: text-top !important
}

.v-align-text-bottom {
    vertical-align: text-bottom !important
}

.overflow-hidden {
    overflow: hidden !important
}

.overflow-scroll {
    overflow: scroll !important
}

.overflow-auto {
    overflow: auto !important
}

.clearfix::before {
    display: table;
    content: ""
}

.clearfix::after {
    display: table;
    clear: both;
    content: ""
}

.float-right {
    float: right !important
}

.float-left {
    float: left !important
}

.float-none {
    float: none !important
}

@media (min-width: 544px) {
    .float-sm-left {
        float: left !important
    }

    .float-sm-right {
        float: right !important
    }

    .float-sm-none {
        float: none !important
    }
}

@media (min-width: 768px) {
    .float-md-left {
        float: left !important
    }

    .float-md-right {
        float: right !important
    }

    .float-md-none {
        float: none !important
    }
}

@media (min-width: 1004px) {
    .float-lg-left {
        float: left !important
    }

    .float-lg-right {
        float: right !important
    }

    .float-lg-none {
        float: none !important
    }
}

@media (min-width: 1280px) {
    .float-xl-left {
        float: left !important
    }

    .float-xl-right {
        float: right !important
    }

    .float-xl-none {
        float: none !important
    }
}

.width-fit {
    max-width: 100% !important
}

.width-full {
    width: 100% !important
}

.height-full {
    height: 100% !important
}

.min-width-0 {
    min-width: 0 !important
}

.v-hidden {
    visibility: hidden !important
}

.v-visible {
    visibility: visible !important
}

.d-table {
    display: table !important
}

.d-table-cell {
    display: table-cell !important
}

.table-fixed {
    table-layout: fixed !important
}

.d-block {
    display: block !important
}

.d-inline {
    display: inline !important
}

.d-inline-block {
    display: inline-block !important
}

.d-none {
    display: none !important
}

@media (min-width: 544px) {
    .d-sm-table {
        display: table !important
    }

    .d-sm-table-cell {
        display: table-cell !important
    }

    .d-sm-block {
        display: block !important
    }

    .d-sm-inline {
        display: inline !important
    }

    .d-sm-inline-block {
        display: inline-block !important
    }

    .d-sm-none {
        display: none !important
    }
}

@media (min-width: 768px) {
    .d-md-table {
        display: table !important
    }

    .d-md-table-cell {
        display: table-cell !important
    }

    .d-md-block {
        display: block !important
    }

    .d-md-inline {
        display: inline !important
    }

    .d-md-inline-block {
        display: inline-block !important
    }

    .d-md-none {
        display: none !important
    }
}

@media (min-width: 1004px) {
    .d-lg-table {
        display: table !important
    }

    .d-lg-table-cell {
        display: table-cell !important
    }

    .d-lg-block {
        display: block !important
    }

    .d-lg-inline {
        display: inline !important
    }

    .d-lg-inline-block {
        display: inline-block !important
    }

    .d-lg-none {
        display: none !important
    }
}

@media (min-width: 1280px) {
    .d-xl-table {
        display: table !important
    }

    .d-xl-table-cell {
        display: table-cell !important
    }

    .d-xl-block {
        display: block !important
    }

    .d-xl-inline {
        display: inline !important
    }

    .d-xl-inline-block {
        display: inline-block !important
    }

    .d-xl-none {
        display: none !important
    }
}

@media (max-width: 544px) {
    .hide-sm {
        display: none !important
    }
}

@media (min-width: 544px) and (max-width: 768px) {
    .hide-md {
        display: none !important
    }
}

@media (min-width: 768px) and (max-width: 1004px) {
    .hide-lg {
        display: none !important
    }
}

@media (min-width: 1004px) {
    .hide-xl {
        display: none !important
    }
}

.d-flex {
    display: flex !important
}

.d-inline-flex {
    display: inline-flex !important
}

.flex-row {
    flex-direction: row !important
}

.flex-column {
    flex-direction: column !important
}

.flex-wrap {
    flex-wrap: wrap !important
}

.flex-nowrap {
    flex-wrap: nowrap !important
}

.flex-justify-start {
    justify-content: flex-start !important
}

.flex-justify-end {
    justify-content: flex-end !important
}

.flex-justify-center {
    justify-content: center !important
}

.flex-justify-between {
    justify-content: space-between !important
}

.flex-justify-around {
    justify-content: space-around !important
}

.flex-items-start {
    align-items: flex-start !important
}

.flex-items-end {
    align-items: flex-end !important
}

.flex-items-center {
    align-items: center !important
}

.flex-items-baseline {
    align-items: baseline !important
}

.flex-items-stretch {
    align-items: stretch !important
}

.flex-content-start {
    align-content: flex-start !important
}

.flex-content-end {
    align-content: flex-end !important
}

.flex-content-center {
    align-content: center !important
}

.flex-content-between {
    align-content: space-between !important
}

.flex-content-around {
    align-content: space-around !important
}

.flex-content-stretch {
    align-content: stretch !important
}

.flex-auto {
    flex: 1 1 auto !important
}

.flex-self-auto {
    align-self: auto !important
}

.flex-self-start {
    align-self: flex-start !important
}

.flex-self-end {
    align-self: flex-end !important
}

.flex-self-center {
    align-self: center !important
}

.flex-self-baseline {
    align-self: baseline !important
}

.flex-self-stretch {
    align-self: stretch !important
}

@media (min-width: 544px) {
    .d-sm-flex {
        display: flex !important
    }

    .d-sm-inline-flex {
        display: inline-flex !important
    }

    .flex-sm-row {
        flex-direction: row !important
    }

    .flex-sm-column {
        flex-direction: column !important
    }

    .flex-sm-wrap {
        flex-wrap: wrap !important
    }

    .flex-sm-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-sm-justify-start {
        justify-content: flex-start !important
    }

    .flex-sm-justify-end {
        justify-content: flex-end !important
    }

    .flex-sm-justify-center {
        justify-content: center !important
    }

    .flex-sm-justify-between {
        justify-content: space-between !important
    }

    .flex-sm-justify-around {
        justify-content: space-around !important
    }

    .flex-sm-items-start {
        align-items: flex-start !important
    }

    .flex-sm-items-end {
        align-items: flex-end !important
    }

    .flex-sm-items-center {
        align-items: center !important
    }

    .flex-sm-items-baseline {
        align-items: baseline !important
    }

    .flex-sm-items-stretch {
        align-items: stretch !important
    }

    .flex-sm-content-start {
        align-content: flex-start !important
    }

    .flex-sm-content-end {
        align-content: flex-end !important
    }

    .flex-sm-content-center {
        align-content: center !important
    }

    .flex-sm-content-between {
        align-content: space-between !important
    }

    .flex-sm-content-around {
        align-content: space-around !important
    }

    .flex-sm-content-stretch {
        align-content: stretch !important
    }

    .flex-sm-auto {
        flex: 1 1 auto !important
    }

    .flex-sm-self-auto {
        align-self: auto !important
    }

    .flex-sm-self-start {
        align-self: flex-start !important
    }

    .flex-sm-self-end {
        align-self: flex-end !important
    }

    .flex-sm-self-center {
        align-self: center !important
    }

    .flex-sm-self-baseline {
        align-self: baseline !important
    }

    .flex-sm-self-stretch {
        align-self: stretch !important
    }
}

@media (min-width: 768px) {
    .d-md-flex {
        display: flex !important
    }

    .d-md-inline-flex {
        display: inline-flex !important
    }

    .flex-md-row {
        flex-direction: row !important
    }

    .flex-md-column {
        flex-direction: column !important
    }

    .flex-md-wrap {
        flex-wrap: wrap !important
    }

    .flex-md-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-md-justify-start {
        justify-content: flex-start !important
    }

    .flex-md-justify-end {
        justify-content: flex-end !important
    }

    .flex-md-justify-center {
        justify-content: center !important
    }

    .flex-md-justify-between {
        justify-content: space-between !important
    }

    .flex-md-justify-around {
        justify-content: space-around !important
    }

    .flex-md-items-start {
        align-items: flex-start !important
    }

    .flex-md-items-end {
        align-items: flex-end !important
    }

    .flex-md-items-center {
        align-items: center !important
    }

    .flex-md-items-baseline {
        align-items: baseline !important
    }

    .flex-md-items-stretch {
        align-items: stretch !important
    }

    .flex-md-content-start {
        align-content: flex-start !important
    }

    .flex-md-content-end {
        align-content: flex-end !important
    }

    .flex-md-content-center {
        align-content: center !important
    }

    .flex-md-content-between {
        align-content: space-between !important
    }

    .flex-md-content-around {
        align-content: space-around !important
    }

    .flex-md-content-stretch {
        align-content: stretch !important
    }

    .flex-md-auto {
        flex: 1 1 auto !important
    }

    .flex-md-self-auto {
        align-self: auto !important
    }

    .flex-md-self-start {
        align-self: flex-start !important
    }

    .flex-md-self-end {
        align-self: flex-end !important
    }

    .flex-md-self-center {
        align-self: center !important
    }

    .flex-md-self-baseline {
        align-self: baseline !important
    }

    .flex-md-self-stretch {
        align-self: stretch !important
    }
}

@media (min-width: 1004px) {
    .d-lg-flex {
        display: flex !important
    }

    .d-lg-inline-flex {
        display: inline-flex !important
    }

    .flex-lg-row {
        flex-direction: row !important
    }

    .flex-lg-column {
        flex-direction: column !important
    }

    .flex-lg-wrap {
        flex-wrap: wrap !important
    }

    .flex-lg-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-lg-justify-start {
        justify-content: flex-start !important
    }

    .flex-lg-justify-end {
        justify-content: flex-end !important
    }

    .flex-lg-justify-center {
        justify-content: center !important
    }

    .flex-lg-justify-between {
        justify-content: space-between !important
    }

    .flex-lg-justify-around {
        justify-content: space-around !important
    }

    .flex-lg-items-start {
        align-items: flex-start !important
    }

    .flex-lg-items-end {
        align-items: flex-end !important
    }

    .flex-lg-items-center {
        align-items: center !important
    }

    .flex-lg-items-baseline {
        align-items: baseline !important
    }

    .flex-lg-items-stretch {
        align-items: stretch !important
    }

    .flex-lg-content-start {
        align-content: flex-start !important
    }

    .flex-lg-content-end {
        align-content: flex-end !important
    }

    .flex-lg-content-center {
        align-content: center !important
    }

    .flex-lg-content-between {
        align-content: space-between !important
    }

    .flex-lg-content-around {
        align-content: space-around !important
    }

    .flex-lg-content-stretch {
        align-content: stretch !important
    }

    .flex-lg-auto {
        flex: 1 1 auto !important
    }

    .flex-lg-self-auto {
        align-self: auto !important
    }

    .flex-lg-self-start {
        align-self: flex-start !important
    }

    .flex-lg-self-end {
        align-self: flex-end !important
    }

    .flex-lg-self-center {
        align-self: center !important
    }

    .flex-lg-self-baseline {
        align-self: baseline !important
    }

    .flex-lg-self-stretch {
        align-self: stretch !important
    }
}

@media (min-width: 1280px) {
    .d-xl-flex {
        display: flex !important
    }

    .d-xl-inline-flex {
        display: inline-flex !important
    }

    .flex-xl-row {
        flex-direction: row !important
    }

    .flex-xl-column {
        flex-direction: column !important
    }

    .flex-xl-wrap {
        flex-wrap: wrap !important
    }

    .flex-xl-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-xl-justify-start {
        justify-content: flex-start !important
    }

    .flex-xl-justify-end {
        justify-content: flex-end !important
    }

    .flex-xl-justify-center {
        justify-content: center !important
    }

    .flex-xl-justify-between {
        justify-content: space-between !important
    }

    .flex-xl-justify-around {
        justify-content: space-around !important
    }

    .flex-xl-items-start {
        align-items: flex-start !important
    }

    .flex-xl-items-end {
        align-items: flex-end !important
    }

    .flex-xl-items-center {
        align-items: center !important
    }

    .flex-xl-items-baseline {
        align-items: baseline !important
    }

    .flex-xl-items-stretch {
        align-items: stretch !important
    }

    .flex-xl-content-start {
        align-content: flex-start !important
    }

    .flex-xl-content-end {
        align-content: flex-end !important
    }

    .flex-xl-content-center {
        align-content: center !important
    }

    .flex-xl-content-between {
        align-content: space-between !important
    }

    .flex-xl-content-around {
        align-content: space-around !important
    }

    .flex-xl-content-stretch {
        align-content: stretch !important
    }

    .flex-xl-auto {
        flex: 1 1 auto !important
    }

    .flex-xl-self-auto {
        align-self: auto !important
    }

    .flex-xl-self-start {
        align-self: flex-start !important
    }

    .flex-xl-self-end {
        align-self: flex-end !important
    }

    .flex-xl-self-center {
        align-self: center !important
    }

    .flex-xl-self-baseline {
        align-self: baseline !important
    }

    .flex-xl-self-stretch {
        align-self: stretch !important
    }
}

.m-0 {
    margin: 0 !important
}

.mt-0 {
    margin-top: 0 !important
}

.mr-0 {
    margin-right: 0 !important
}

.mb-0 {
    margin-bottom: 0 !important
}

.ml-0 {
    margin-left: 0 !important
}

.mx-0 {
    margin-right: 0 !important;
    margin-left: 0 !important
}

.my-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important
}

.m-1 {
    margin: 4px !important
}

.mt-1 {
    margin-top: 4px !important
}

.mr-1 {
    margin-right: 4px !important
}

.mb-1 {
    margin-bottom: 4px !important
}

.ml-1 {
    margin-left: 4px !important
}

.mx-1 {
    margin-right: 4px !important;
    margin-left: 4px !important
}

.my-1 {
    margin-top: 4px !important;
    margin-bottom: 4px !important
}

.m-2 {
    margin: 6px !important
}

.mt-2 {
    margin-top: 6px !important
}

.mr-2 {
    margin-right: 6px !important
}

.mb-2 {
    margin-bottom: 6px !important
}

.ml-2 {
    margin-left: 6px !important
}

.mx-2 {
    margin-right: 6px !important;
    margin-left: 6px !important
}

.my-2 {
    margin-top: 6px !important;
    margin-bottom: 6px !important
}

.m-3 {
    margin: 12px !important
}

.mt-3 {
    margin-top: 12px !important
}

.mr-3 {
    margin-right: 12px !important
}

.mb-3 {
    margin-bottom: 12px !important
}

.ml-3 {
    margin-left: 12px !important
}

.mx-3 {
    margin-right: 12px !important;
    margin-left: 12px !important
}

.my-3 {
    margin-top: 12px !important;
    margin-bottom: 12px !important
}

.m-4 {
    margin: 24px !important
}

.mt-4 {
    margin-top: 24px !important
}

.mr-4 {
    margin-right: 24px !important
}

.mb-4 {
    margin-bottom: 24px !important
}

.ml-4 {
    margin-left: 24px !important
}

.mx-4 {
    margin-right: 24px !important;
    margin-left: 24px !important
}

.my-4 {
    margin-top: 24px !important;
    margin-bottom: 24px !important
}

.m-5 {
    margin: 36px !important
}

.mt-5 {
    margin-top: 36px !important
}

.mr-5 {
    margin-right: 36px !important
}

.mb-5 {
    margin-bottom: 36px !important
}

.ml-5 {
    margin-left: 36px !important
}

.mx-5 {
    margin-right: 36px !important;
    margin-left: 36px !important
}

.my-5 {
    margin-top: 36px !important;
    margin-bottom: 36px !important
}

.m-6 {
    margin: 48px !important
}

.mt-6 {
    margin-top: 48px !important
}

.mr-6 {
    margin-right: 48px !important
}

.mb-6 {
    margin-bottom: 48px !important
}

.ml-6 {
    margin-left: 48px !important
}

.mx-6 {
    margin-right: 48px !important;
    margin-left: 48px !important
}

.my-6 {
    margin-top: 48px !important;
    margin-bottom: 48px !important
}

.m-7 {
    margin: 72px !important
}

.mt-7 {
    margin-top: 72px !important
}

.mr-7 {
    margin-right: 72px !important
}

.mb-7 {
    margin-bottom: 72px !important
}

.ml-7 {
    margin-left: 72px !important
}

.mx-7 {
    margin-right: 72px !important;
    margin-left: 72px !important
}

.my-7 {
    margin-top: 72px !important;
    margin-bottom: 72px !important
}

.m-8 {
    margin: 96px !important
}

.mt-8 {
    margin-top: 96px !important
}

.mr-8 {
    margin-right: 96px !important
}

.mb-8 {
    margin-bottom: 96px !important
}

.ml-8 {
    margin-left: 96px !important
}

.mx-8 {
    margin-right: 96px !important;
    margin-left: 96px !important
}

.my-8 {
    margin-top: 96px !important;
    margin-bottom: 96px !important
}

.m-9 {
    margin: 144px !important
}

.mt-9 {
    margin-top: 144px !important
}

.mr-9 {
    margin-right: 144px !important
}

.mb-9 {
    margin-bottom: 144px !important
}

.ml-9 {
    margin-left: 144px !important
}

.mx-9 {
    margin-right: 144px !important;
    margin-left: 144px !important
}

.my-9 {
    margin-top: 144px !important;
    margin-bottom: 144px !important
}

.m-10 {
    margin: 216px !important
}

.mt-10 {
    margin-top: 216px !important
}

.mr-10 {
    margin-right: 216px !important
}

.mb-10 {
    margin-bottom: 216px !important
}

.ml-10 {
    margin-left: 216px !important
}

.mx-10 {
    margin-right: 216px !important;
    margin-left: 216px !important
}

.my-10 {
    margin-top: 216px !important;
    margin-bottom: 216px !important
}

@media (min-width: 544px) {
    .m-sm-0 {
        margin: 0 !important
    }

    .mt-sm-0 {
        margin-top: 0 !important
    }

    .mr-sm-0 {
        margin-right: 0 !important
    }

    .mb-sm-0 {
        margin-bottom: 0 !important
    }

    .ml-sm-0 {
        margin-left: 0 !important
    }

    .mx-sm-0 {
        margin-right: 0 !important;
        margin-left: 0 !important
    }

    .my-sm-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important
    }
}

@media (min-width: 544px) {
    .m-sm-1 {
        margin: 4px !important
    }

    .mt-sm-1 {
        margin-top: 4px !important
    }

    .mr-sm-1 {
        margin-right: 4px !important
    }

    .mb-sm-1 {
        margin-bottom: 4px !important
    }

    .ml-sm-1 {
        margin-left: 4px !important
    }

    .mx-sm-1 {
        margin-right: 4px !important;
        margin-left: 4px !important
    }

    .my-sm-1 {
        margin-top: 4px !important;
        margin-bottom: 4px !important
    }
}

@media (min-width: 544px) {
    .m-sm-2 {
        margin: 6px !important
    }

    .mt-sm-2 {
        margin-top: 6px !important
    }

    .mr-sm-2 {
        margin-right: 6px !important
    }

    .mb-sm-2 {
        margin-bottom: 6px !important
    }

    .ml-sm-2 {
        margin-left: 6px !important
    }

    .mx-sm-2 {
        margin-right: 6px !important;
        margin-left: 6px !important
    }

    .my-sm-2 {
        margin-top: 6px !important;
        margin-bottom: 6px !important
    }
}

@media (min-width: 544px) {
    .m-sm-3 {
        margin: 12px !important
    }

    .mt-sm-3 {
        margin-top: 12px !important
    }

    .mr-sm-3 {
        margin-right: 12px !important
    }

    .mb-sm-3 {
        margin-bottom: 12px !important
    }

    .ml-sm-3 {
        margin-left: 12px !important
    }

    .mx-sm-3 {
        margin-right: 12px !important;
        margin-left: 12px !important
    }

    .my-sm-3 {
        margin-top: 12px !important;
        margin-bottom: 12px !important
    }
}

@media (min-width: 544px) {
    .m-sm-4 {
        margin: 24px !important
    }

    .mt-sm-4 {
        margin-top: 24px !important
    }

    .mr-sm-4 {
        margin-right: 24px !important
    }

    .mb-sm-4 {
        margin-bottom: 24px !important
    }

    .ml-sm-4 {
        margin-left: 24px !important
    }

    .mx-sm-4 {
        margin-right: 24px !important;
        margin-left: 24px !important
    }

    .my-sm-4 {
        margin-top: 24px !important;
        margin-bottom: 24px !important
    }
}

@media (min-width: 544px) {
    .m-sm-5 {
        margin: 36px !important
    }

    .mt-sm-5 {
        margin-top: 36px !important
    }

    .mr-sm-5 {
        margin-right: 36px !important
    }

    .mb-sm-5 {
        margin-bottom: 36px !important
    }

    .ml-sm-5 {
        margin-left: 36px !important
    }

    .mx-sm-5 {
        margin-right: 36px !important;
        margin-left: 36px !important
    }

    .my-sm-5 {
        margin-top: 36px !important;
        margin-bottom: 36px !important
    }
}

@media (min-width: 544px) {
    .m-sm-6 {
        margin: 48px !important
    }

    .mt-sm-6 {
        margin-top: 48px !important
    }

    .mr-sm-6 {
        margin-right: 48px !important
    }

    .mb-sm-6 {
        margin-bottom: 48px !important
    }

    .ml-sm-6 {
        margin-left: 48px !important
    }

    .mx-sm-6 {
        margin-right: 48px !important;
        margin-left: 48px !important
    }

    .my-sm-6 {
        margin-top: 48px !important;
        margin-bottom: 48px !important
    }
}

@media (min-width: 544px) {
    .m-sm-7 {
        margin: 72px !important
    }

    .mt-sm-7 {
        margin-top: 72px !important
    }

    .mr-sm-7 {
        margin-right: 72px !important
    }

    .mb-sm-7 {
        margin-bottom: 72px !important
    }

    .ml-sm-7 {
        margin-left: 72px !important
    }

    .mx-sm-7 {
        margin-right: 72px !important;
        margin-left: 72px !important
    }

    .my-sm-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important
    }
}

@media (min-width: 544px) {
    .m-sm-8 {
        margin: 96px !important
    }

    .mt-sm-8 {
        margin-top: 96px !important
    }

    .mr-sm-8 {
        margin-right: 96px !important
    }

    .mb-sm-8 {
        margin-bottom: 96px !important
    }

    .ml-sm-8 {
        margin-left: 96px !important
    }

    .mx-sm-8 {
        margin-right: 96px !important;
        margin-left: 96px !important
    }

    .my-sm-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important
    }
}

@media (min-width: 544px) {
    .m-sm-9 {
        margin: 144px !important
    }

    .mt-sm-9 {
        margin-top: 144px !important
    }

    .mr-sm-9 {
        margin-right: 144px !important
    }

    .mb-sm-9 {
        margin-bottom: 144px !important
    }

    .ml-sm-9 {
        margin-left: 144px !important
    }

    .mx-sm-9 {
        margin-right: 144px !important;
        margin-left: 144px !important
    }

    .my-sm-9 {
        margin-top: 144px !important;
        margin-bottom: 144px !important
    }
}

@media (min-width: 544px) {
    .m-sm-10 {
        margin: 216px !important
    }

    .mt-sm-10 {
        margin-top: 216px !important
    }

    .mr-sm-10 {
        margin-right: 216px !important
    }

    .mb-sm-10 {
        margin-bottom: 216px !important
    }

    .ml-sm-10 {
        margin-left: 216px !important
    }

    .mx-sm-10 {
        margin-right: 216px !important;
        margin-left: 216px !important
    }

    .my-sm-10 {
        margin-top: 216px !important;
        margin-bottom: 216px !important
    }
}

@media (min-width: 768px) {
    .m-md-0 {
        margin: 0 !important
    }

    .mt-md-0 {
        margin-top: 0 !important
    }

    .mr-md-0 {
        margin-right: 0 !important
    }

    .mb-md-0 {
        margin-bottom: 0 !important
    }

    .ml-md-0 {
        margin-left: 0 !important
    }

    .mx-md-0 {
        margin-right: 0 !important;
        margin-left: 0 !important
    }

    .my-md-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important
    }
}

@media (min-width: 768px) {
    .m-md-1 {
        margin: 4px !important
    }

    .mt-md-1 {
        margin-top: 4px !important
    }

    .mr-md-1 {
        margin-right: 4px !important
    }

    .mb-md-1 {
        margin-bottom: 4px !important
    }

    .ml-md-1 {
        margin-left: 4px !important
    }

    .mx-md-1 {
        margin-right: 4px !important;
        margin-left: 4px !important
    }

    .my-md-1 {
        margin-top: 4px !important;
        margin-bottom: 4px !important
    }
}

@media (min-width: 768px) {
    .m-md-2 {
        margin: 6px !important
    }

    .mt-md-2 {
        margin-top: 6px !important
    }

    .mr-md-2 {
        margin-right: 6px !important
    }

    .mb-md-2 {
        margin-bottom: 6px !important
    }

    .ml-md-2 {
        margin-left: 6px !important
    }

    .mx-md-2 {
        margin-right: 6px !important;
        margin-left: 6px !important
    }

    .my-md-2 {
        margin-top: 6px !important;
        margin-bottom: 6px !important
    }
}

@media (min-width: 768px) {
    .m-md-3 {
        margin: 12px !important
    }

    .mt-md-3 {
        margin-top: 12px !important
    }

    .mr-md-3 {
        margin-right: 12px !important
    }

    .mb-md-3 {
        margin-bottom: 12px !important
    }

    .ml-md-3 {
        margin-left: 12px !important
    }

    .mx-md-3 {
        margin-right: 12px !important;
        margin-left: 12px !important
    }

    .my-md-3 {
        margin-top: 12px !important;
        margin-bottom: 12px !important
    }
}

@media (min-width: 768px) {
    .m-md-4 {
        margin: 24px !important
    }

    .mt-md-4 {
        margin-top: 24px !important
    }

    .mr-md-4 {
        margin-right: 24px !important
    }

    .mb-md-4 {
        margin-bottom: 24px !important
    }

    .ml-md-4 {
        margin-left: 24px !important
    }

    .mx-md-4 {
        margin-right: 24px !important;
        margin-left: 24px !important
    }

    .my-md-4 {
        margin-top: 24px !important;
        margin-bottom: 24px !important
    }
}

@media (min-width: 768px) {
    .m-md-5 {
        margin: 36px !important
    }

    .mt-md-5 {
        margin-top: 36px !important
    }

    .mr-md-5 {
        margin-right: 36px !important
    }

    .mb-md-5 {
        margin-bottom: 36px !important
    }

    .ml-md-5 {
        margin-left: 36px !important
    }

    .mx-md-5 {
        margin-right: 36px !important;
        margin-left: 36px !important
    }

    .my-md-5 {
        margin-top: 36px !important;
        margin-bottom: 36px !important
    }
}

@media (min-width: 768px) {
    .m-md-6 {
        margin: 48px !important
    }

    .mt-md-6 {
        margin-top: 48px !important
    }

    .mr-md-6 {
        margin-right: 48px !important
    }

    .mb-md-6 {
        margin-bottom: 48px !important
    }

    .ml-md-6 {
        margin-left: 48px !important
    }

    .mx-md-6 {
        margin-right: 48px !important;
        margin-left: 48px !important
    }

    .my-md-6 {
        margin-top: 48px !important;
        margin-bottom: 48px !important
    }
}

@media (min-width: 768px) {
    .m-md-7 {
        margin: 72px !important
    }

    .mt-md-7 {
        margin-top: 72px !important
    }

    .mr-md-7 {
        margin-right: 72px !important
    }

    .mb-md-7 {
        margin-bottom: 72px !important
    }

    .ml-md-7 {
        margin-left: 72px !important
    }

    .mx-md-7 {
        margin-right: 72px !important;
        margin-left: 72px !important
    }

    .my-md-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important
    }
}

@media (min-width: 768px) {
    .m-md-8 {
        margin: 96px !important
    }

    .mt-md-8 {
        margin-top: 96px !important
    }

    .mr-md-8 {
        margin-right: 96px !important
    }

    .mb-md-8 {
        margin-bottom: 96px !important
    }

    .ml-md-8 {
        margin-left: 96px !important
    }

    .mx-md-8 {
        margin-right: 96px !important;
        margin-left: 96px !important
    }

    .my-md-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important
    }
}

@media (min-width: 768px) {
    .m-md-9 {
        margin: 144px !important
    }

    .mt-md-9 {
        margin-top: 144px !important
    }

    .mr-md-9 {
        margin-right: 144px !important
    }

    .mb-md-9 {
        margin-bottom: 144px !important
    }

    .ml-md-9 {
        margin-left: 144px !important
    }

    .mx-md-9 {
        margin-right: 144px !important;
        margin-left: 144px !important
    }

    .my-md-9 {
        margin-top: 144px !important;
        margin-bottom: 144px !important
    }
}

@media (min-width: 768px) {
    .m-md-10 {
        margin: 216px !important
    }

    .mt-md-10 {
        margin-top: 216px !important
    }

    .mr-md-10 {
        margin-right: 216px !important
    }

    .mb-md-10 {
        margin-bottom: 216px !important
    }

    .ml-md-10 {
        margin-left: 216px !important
    }

    .mx-md-10 {
        margin-right: 216px !important;
        margin-left: 216px !important
    }

    .my-md-10 {
        margin-top: 216px !important;
        margin-bottom: 216px !important
    }
}

@media (min-width: 1004px) {
    .m-lg-0 {
        margin: 0 !important
    }

    .mt-lg-0 {
        margin-top: 0 !important
    }

    .mr-lg-0 {
        margin-right: 0 !important
    }

    .mb-lg-0 {
        margin-bottom: 0 !important
    }

    .ml-lg-0 {
        margin-left: 0 !important
    }

    .mx-lg-0 {
        margin-right: 0 !important;
        margin-left: 0 !important
    }

    .my-lg-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important
    }
}

@media (min-width: 1004px) {
    .m-lg-1 {
        margin: 4px !important
    }

    .mt-lg-1 {
        margin-top: 4px !important
    }

    .mr-lg-1 {
        margin-right: 4px !important
    }

    .mb-lg-1 {
        margin-bottom: 4px !important
    }

    .ml-lg-1 {
        margin-left: 4px !important
    }

    .mx-lg-1 {
        margin-right: 4px !important;
        margin-left: 4px !important
    }

    .my-lg-1 {
        margin-top: 4px !important;
        margin-bottom: 4px !important
    }
}

@media (min-width: 1004px) {
    .m-lg-2 {
        margin: 6px !important
    }

    .mt-lg-2 {
        margin-top: 6px !important
    }

    .mr-lg-2 {
        margin-right: 6px !important
    }

    .mb-lg-2 {
        margin-bottom: 6px !important
    }

    .ml-lg-2 {
        margin-left: 6px !important
    }

    .mx-lg-2 {
        margin-right: 6px !important;
        margin-left: 6px !important
    }

    .my-lg-2 {
        margin-top: 6px !important;
        margin-bottom: 6px !important
    }
}

@media (min-width: 1004px) {
    .m-lg-3 {
        margin: 12px !important
    }

    .mt-lg-3 {
        margin-top: 12px !important
    }

    .mr-lg-3 {
        margin-right: 12px !important
    }

    .mb-lg-3 {
        margin-bottom: 12px !important
    }

    .ml-lg-3 {
        margin-left: 12px !important
    }

    .mx-lg-3 {
        margin-right: 12px !important;
        margin-left: 12px !important
    }

    .my-lg-3 {
        margin-top: 12px !important;
        margin-bottom: 12px !important
    }
}

@media (min-width: 1004px) {
    .m-lg-4 {
        margin: 24px !important
    }

    .mt-lg-4 {
        margin-top: 24px !important
    }

    .mr-lg-4 {
        margin-right: 24px !important
    }

    .mb-lg-4 {
        margin-bottom: 24px !important
    }

    .ml-lg-4 {
        margin-left: 24px !important
    }

    .mx-lg-4 {
        margin-right: 24px !important;
        margin-left: 24px !important
    }

    .my-lg-4 {
        margin-top: 24px !important;
        margin-bottom: 24px !important
    }
}

@media (min-width: 1004px) {
    .m-lg-5 {
        margin: 36px !important
    }

    .mt-lg-5 {
        margin-top: 36px !important
    }

    .mr-lg-5 {
        margin-right: 36px !important
    }

    .mb-lg-5 {
        margin-bottom: 36px !important
    }

    .ml-lg-5 {
        margin-left: 36px !important
    }

    .mx-lg-5 {
        margin-right: 36px !important;
        margin-left: 36px !important
    }

    .my-lg-5 {
        margin-top: 36px !important;
        margin-bottom: 36px !important
    }
}

@media (min-width: 1004px) {
    .m-lg-6 {
        margin: 48px !important
    }

    .mt-lg-6 {
        margin-top: 48px !important
    }

    .mr-lg-6 {
        margin-right: 48px !important
    }

    .mb-lg-6 {
        margin-bottom: 48px !important
    }

    .ml-lg-6 {
        margin-left: 48px !important
    }

    .mx-lg-6 {
        margin-right: 48px !important;
        margin-left: 48px !important
    }

    .my-lg-6 {
        margin-top: 48px !important;
        margin-bottom: 48px !important
    }
}

@media (min-width: 1004px) {
    .m-lg-7 {
        margin: 72px !important
    }

    .mt-lg-7 {
        margin-top: 72px !important
    }

    .mr-lg-7 {
        margin-right: 72px !important
    }

    .mb-lg-7 {
        margin-bottom: 72px !important
    }

    .ml-lg-7 {
        margin-left: 72px !important
    }

    .mx-lg-7 {
        margin-right: 72px !important;
        margin-left: 72px !important
    }

    .my-lg-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important
    }
}

@media (min-width: 1004px) {
    .m-lg-8 {
        margin: 96px !important
    }

    .mt-lg-8 {
        margin-top: 96px !important
    }

    .mr-lg-8 {
        margin-right: 96px !important
    }

    .mb-lg-8 {
        margin-bottom: 96px !important
    }

    .ml-lg-8 {
        margin-left: 96px !important
    }

    .mx-lg-8 {
        margin-right: 96px !important;
        margin-left: 96px !important
    }

    .my-lg-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important
    }
}

@media (min-width: 1004px) {
    .m-lg-9 {
        margin: 144px !important
    }

    .mt-lg-9 {
        margin-top: 144px !important
    }

    .mr-lg-9 {
        margin-right: 144px !important
    }

    .mb-lg-9 {
        margin-bottom: 144px !important
    }

    .ml-lg-9 {
        margin-left: 144px !important
    }

    .mx-lg-9 {
        margin-right: 144px !important;
        margin-left: 144px !important
    }

    .my-lg-9 {
        margin-top: 144px !important;
        margin-bottom: 144px !important
    }
}

@media (min-width: 1004px) {
    .m-lg-10 {
        margin: 216px !important
    }

    .mt-lg-10 {
        margin-top: 216px !important
    }

    .mr-lg-10 {
        margin-right: 216px !important
    }

    .mb-lg-10 {
        margin-bottom: 216px !important
    }

    .ml-lg-10 {
        margin-left: 216px !important
    }

    .mx-lg-10 {
        margin-right: 216px !important;
        margin-left: 216px !important
    }

    .my-lg-10 {
        margin-top: 216px !important;
        margin-bottom: 216px !important
    }
}

@media (min-width: 1280px) {
    .m-xl-0 {
        margin: 0 !important
    }

    .mt-xl-0 {
        margin-top: 0 !important
    }

    .mr-xl-0 {
        margin-right: 0 !important
    }

    .mb-xl-0 {
        margin-bottom: 0 !important
    }

    .ml-xl-0 {
        margin-left: 0 !important
    }

    .mx-xl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important
    }

    .my-xl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important
    }
}

@media (min-width: 1280px) {
    .m-xl-1 {
        margin: 4px !important
    }

    .mt-xl-1 {
        margin-top: 4px !important
    }

    .mr-xl-1 {
        margin-right: 4px !important
    }

    .mb-xl-1 {
        margin-bottom: 4px !important
    }

    .ml-xl-1 {
        margin-left: 4px !important
    }

    .mx-xl-1 {
        margin-right: 4px !important;
        margin-left: 4px !important
    }

    .my-xl-1 {
        margin-top: 4px !important;
        margin-bottom: 4px !important
    }
}

@media (min-width: 1280px) {
    .m-xl-2 {
        margin: 6px !important
    }

    .mt-xl-2 {
        margin-top: 6px !important
    }

    .mr-xl-2 {
        margin-right: 6px !important
    }

    .mb-xl-2 {
        margin-bottom: 6px !important
    }

    .ml-xl-2 {
        margin-left: 6px !important
    }

    .mx-xl-2 {
        margin-right: 6px !important;
        margin-left: 6px !important
    }

    .my-xl-2 {
        margin-top: 6px !important;
        margin-bottom: 6px !important
    }
}

@media (min-width: 1280px) {
    .m-xl-3 {
        margin: 12px !important
    }

    .mt-xl-3 {
        margin-top: 12px !important
    }

    .mr-xl-3 {
        margin-right: 12px !important
    }

    .mb-xl-3 {
        margin-bottom: 12px !important
    }

    .ml-xl-3 {
        margin-left: 12px !important
    }

    .mx-xl-3 {
        margin-right: 12px !important;
        margin-left: 12px !important
    }

    .my-xl-3 {
        margin-top: 12px !important;
        margin-bottom: 12px !important
    }
}

@media (min-width: 1280px) {
    .m-xl-4 {
        margin: 24px !important
    }

    .mt-xl-4 {
        margin-top: 24px !important
    }

    .mr-xl-4 {
        margin-right: 24px !important
    }

    .mb-xl-4 {
        margin-bottom: 24px !important
    }

    .ml-xl-4 {
        margin-left: 24px !important
    }

    .mx-xl-4 {
        margin-right: 24px !important;
        margin-left: 24px !important
    }

    .my-xl-4 {
        margin-top: 24px !important;
        margin-bottom: 24px !important
    }
}

@media (min-width: 1280px) {
    .m-xl-5 {
        margin: 36px !important
    }

    .mt-xl-5 {
        margin-top: 36px !important
    }

    .mr-xl-5 {
        margin-right: 36px !important
    }

    .mb-xl-5 {
        margin-bottom: 36px !important
    }

    .ml-xl-5 {
        margin-left: 36px !important
    }

    .mx-xl-5 {
        margin-right: 36px !important;
        margin-left: 36px !important
    }

    .my-xl-5 {
        margin-top: 36px !important;
        margin-bottom: 36px !important
    }
}

@media (min-width: 1280px) {
    .m-xl-6 {
        margin: 48px !important
    }

    .mt-xl-6 {
        margin-top: 48px !important
    }

    .mr-xl-6 {
        margin-right: 48px !important
    }

    .mb-xl-6 {
        margin-bottom: 48px !important
    }

    .ml-xl-6 {
        margin-left: 48px !important
    }

    .mx-xl-6 {
        margin-right: 48px !important;
        margin-left: 48px !important
    }

    .my-xl-6 {
        margin-top: 48px !important;
        margin-bottom: 48px !important
    }
}

@media (min-width: 1280px) {
    .m-xl-7 {
        margin: 72px !important
    }

    .mt-xl-7 {
        margin-top: 72px !important
    }

    .mr-xl-7 {
        margin-right: 72px !important
    }

    .mb-xl-7 {
        margin-bottom: 72px !important
    }

    .ml-xl-7 {
        margin-left: 72px !important
    }

    .mx-xl-7 {
        margin-right: 72px !important;
        margin-left: 72px !important
    }

    .my-xl-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important
    }
}

@media (min-width: 1280px) {
    .m-xl-8 {
        margin: 96px !important
    }

    .mt-xl-8 {
        margin-top: 96px !important
    }

    .mr-xl-8 {
        margin-right: 96px !important
    }

    .mb-xl-8 {
        margin-bottom: 96px !important
    }

    .ml-xl-8 {
        margin-left: 96px !important
    }

    .mx-xl-8 {
        margin-right: 96px !important;
        margin-left: 96px !important
    }

    .my-xl-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important
    }
}

@media (min-width: 1280px) {
    .m-xl-9 {
        margin: 144px !important
    }

    .mt-xl-9 {
        margin-top: 144px !important
    }

    .mr-xl-9 {
        margin-right: 144px !important
    }

    .mb-xl-9 {
        margin-bottom: 144px !important
    }

    .ml-xl-9 {
        margin-left: 144px !important
    }

    .mx-xl-9 {
        margin-right: 144px !important;
        margin-left: 144px !important
    }

    .my-xl-9 {
        margin-top: 144px !important;
        margin-bottom: 144px !important
    }
}

@media (min-width: 1280px) {
    .m-xl-10 {
        margin: 216px !important
    }

    .mt-xl-10 {
        margin-top: 216px !important
    }

    .mr-xl-10 {
        margin-right: 216px !important
    }

    .mb-xl-10 {
        margin-bottom: 216px !important
    }

    .ml-xl-10 {
        margin-left: 216px !important
    }

    .mx-xl-10 {
        margin-right: 216px !important;
        margin-left: 216px !important
    }

    .my-xl-10 {
        margin-top: 216px !important;
        margin-bottom: 216px !important
    }
}

.mx-auto {
    margin-right: auto !important;
    margin-left: auto !important
}

.p-0 {
    padding: 0 !important
}

.pt-0 {
    padding-top: 0 !important
}

.pr-0 {
    padding-right: 0 !important
}

.pb-0 {
    padding-bottom: 0 !important
}

.pl-0 {
    padding-left: 0 !important
}

.px-0 {
    padding-right: 0 !important;
    padding-left: 0 !important
}

.py-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important
}

.p-1 {
    padding: 4px !important
}

.pt-1 {
    padding-top: 4px !important
}

.pr-1 {
    padding-right: 4px !important
}

.pb-1 {
    padding-bottom: 4px !important
}

.pl-1 {
    padding-left: 4px !important
}

.px-1 {
    padding-right: 4px !important;
    padding-left: 4px !important
}

.py-1 {
    padding-top: 4px !important;
    padding-bottom: 4px !important
}

.p-2 {
    padding: 6px !important
}

.pt-2 {
    padding-top: 6px !important
}

.pr-2 {
    padding-right: 6px !important
}

.pb-2 {
    padding-bottom: 6px !important
}

.pl-2 {
    padding-left: 6px !important
}

.px-2 {
    padding-right: 6px !important;
    padding-left: 6px !important
}

.py-2 {
    padding-top: 6px !important;
    padding-bottom: 6px !important
}

.p-3 {
    padding: 12px !important
}

.pt-3 {
    padding-top: 12px !important
}

.pr-3 {
    padding-right: 12px !important
}

.pb-3 {
    padding-bottom: 12px !important
}

.pl-3 {
    padding-left: 12px !important
}

.px-3 {
    padding-right: 12px !important;
    padding-left: 12px !important
}

.py-3 {
    padding-top: 12px !important;
    padding-bottom: 12px !important
}

.p-4 {
    padding: 24px !important
}

.pt-4 {
    padding-top: 24px !important
}

.pr-4 {
    padding-right: 24px !important
}

.pb-4 {
    padding-bottom: 24px !important
}

.pl-4 {
    padding-left: 24px !important
}

.px-4 {
    padding-right: 24px !important;
    padding-left: 24px !important
}

.py-4 {
    padding-top: 24px !important;
    padding-bottom: 24px !important
}

.p-5 {
    padding: 36px !important
}

.pt-5 {
    padding-top: 36px !important
}

.pr-5 {
    padding-right: 36px !important
}

.pb-5 {
    padding-bottom: 36px !important
}

.pl-5 {
    padding-left: 36px !important
}

.px-5 {
    padding-right: 36px !important;
    padding-left: 36px !important
}

.py-5 {
    padding-top: 36px !important;
    padding-bottom: 36px !important
}

.p-6 {
    padding: 48px !important
}

.pt-6 {
    padding-top: 48px !important
}

.pr-6 {
    padding-right: 48px !important
}

.pb-6 {
    padding-bottom: 48px !important
}

.pl-6 {
    padding-left: 48px !important
}

.px-6 {
    padding-right: 48px !important;
    padding-left: 48px !important
}

.py-6 {
    padding-top: 48px !important;
    padding-bottom: 48px !important
}

.p-7 {
    padding: 72px !important
}

.pt-7 {
    padding-top: 72px !important
}

.pr-7 {
    padding-right: 72px !important
}

.pb-7 {
    padding-bottom: 72px !important
}

.pl-7 {
    padding-left: 72px !important
}

.px-7 {
    padding-right: 72px !important;
    padding-left: 72px !important
}

.py-7 {
    padding-top: 72px !important;
    padding-bottom: 72px !important
}

.p-8 {
    padding: 96px !important
}

.pt-8 {
    padding-top: 96px !important
}

.pr-8 {
    padding-right: 96px !important
}

.pb-8 {
    padding-bottom: 96px !important
}

.pl-8 {
    padding-left: 96px !important
}

.px-8 {
    padding-right: 96px !important;
    padding-left: 96px !important
}

.py-8 {
    padding-top: 96px !important;
    padding-bottom: 96px !important
}

.p-9 {
    padding: 144px !important
}

.pt-9 {
    padding-top: 144px !important
}

.pr-9 {
    padding-right: 144px !important
}

.pb-9 {
    padding-bottom: 144px !important
}

.pl-9 {
    padding-left: 144px !important
}

.px-9 {
    padding-right: 144px !important;
    padding-left: 144px !important
}

.py-9 {
    padding-top: 144px !important;
    padding-bottom: 144px !important
}

.p-10 {
    padding: 216px !important
}

.pt-10 {
    padding-top: 216px !important
}

.pr-10 {
    padding-right: 216px !important
}

.pb-10 {
    padding-bottom: 216px !important
}

.pl-10 {
    padding-left: 216px !important
}

.px-10 {
    padding-right: 216px !important;
    padding-left: 216px !important
}

.py-10 {
    padding-top: 216px !important;
    padding-bottom: 216px !important
}

@media (min-width: 544px) {
    .p-sm-0 {
        padding: 0 !important
    }

    .pt-sm-0 {
        padding-top: 0 !important
    }

    .pr-sm-0 {
        padding-right: 0 !important
    }

    .pb-sm-0 {
        padding-bottom: 0 !important
    }

    .pl-sm-0 {
        padding-left: 0 !important
    }

    .px-sm-0 {
        padding-right: 0 !important;
        padding-left: 0 !important
    }

    .py-sm-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important
    }
}

@media (min-width: 544px) {
    .p-sm-1 {
        padding: 4px !important
    }

    .pt-sm-1 {
        padding-top: 4px !important
    }

    .pr-sm-1 {
        padding-right: 4px !important
    }

    .pb-sm-1 {
        padding-bottom: 4px !important
    }

    .pl-sm-1 {
        padding-left: 4px !important
    }

    .px-sm-1 {
        padding-right: 4px !important;
        padding-left: 4px !important
    }

    .py-sm-1 {
        padding-top: 4px !important;
        padding-bottom: 4px !important
    }
}

@media (min-width: 544px) {
    .p-sm-2 {
        padding: 6px !important
    }

    .pt-sm-2 {
        padding-top: 6px !important
    }

    .pr-sm-2 {
        padding-right: 6px !important
    }

    .pb-sm-2 {
        padding-bottom: 6px !important
    }

    .pl-sm-2 {
        padding-left: 6px !important
    }

    .px-sm-2 {
        padding-right: 6px !important;
        padding-left: 6px !important
    }

    .py-sm-2 {
        padding-top: 6px !important;
        padding-bottom: 6px !important
    }
}

@media (min-width: 544px) {
    .p-sm-3 {
        padding: 12px !important
    }

    .pt-sm-3 {
        padding-top: 12px !important
    }

    .pr-sm-3 {
        padding-right: 12px !important
    }

    .pb-sm-3 {
        padding-bottom: 12px !important
    }

    .pl-sm-3 {
        padding-left: 12px !important
    }

    .px-sm-3 {
        padding-right: 12px !important;
        padding-left: 12px !important
    }

    .py-sm-3 {
        padding-top: 12px !important;
        padding-bottom: 12px !important
    }
}

@media (min-width: 544px) {
    .p-sm-4 {
        padding: 24px !important
    }

    .pt-sm-4 {
        padding-top: 24px !important
    }

    .pr-sm-4 {
        padding-right: 24px !important
    }

    .pb-sm-4 {
        padding-bottom: 24px !important
    }

    .pl-sm-4 {
        padding-left: 24px !important
    }

    .px-sm-4 {
        padding-right: 24px !important;
        padding-left: 24px !important
    }

    .py-sm-4 {
        padding-top: 24px !important;
        padding-bottom: 24px !important
    }
}

@media (min-width: 544px) {
    .p-sm-5 {
        padding: 36px !important
    }

    .pt-sm-5 {
        padding-top: 36px !important
    }

    .pr-sm-5 {
        padding-right: 36px !important
    }

    .pb-sm-5 {
        padding-bottom: 36px !important
    }

    .pl-sm-5 {
        padding-left: 36px !important
    }

    .px-sm-5 {
        padding-right: 36px !important;
        padding-left: 36px !important
    }

    .py-sm-5 {
        padding-top: 36px !important;
        padding-bottom: 36px !important
    }
}

@media (min-width: 544px) {
    .p-sm-6 {
        padding: 48px !important
    }

    .pt-sm-6 {
        padding-top: 48px !important
    }

    .pr-sm-6 {
        padding-right: 48px !important
    }

    .pb-sm-6 {
        padding-bottom: 48px !important
    }

    .pl-sm-6 {
        padding-left: 48px !important
    }

    .px-sm-6 {
        padding-right: 48px !important;
        padding-left: 48px !important
    }

    .py-sm-6 {
        padding-top: 48px !important;
        padding-bottom: 48px !important
    }
}

@media (min-width: 544px) {
    .p-sm-7 {
        padding: 72px !important
    }

    .pt-sm-7 {
        padding-top: 72px !important
    }

    .pr-sm-7 {
        padding-right: 72px !important
    }

    .pb-sm-7 {
        padding-bottom: 72px !important
    }

    .pl-sm-7 {
        padding-left: 72px !important
    }

    .px-sm-7 {
        padding-right: 72px !important;
        padding-left: 72px !important
    }

    .py-sm-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important
    }
}

@media (min-width: 544px) {
    .p-sm-8 {
        padding: 96px !important
    }

    .pt-sm-8 {
        padding-top: 96px !important
    }

    .pr-sm-8 {
        padding-right: 96px !important
    }

    .pb-sm-8 {
        padding-bottom: 96px !important
    }

    .pl-sm-8 {
        padding-left: 96px !important
    }

    .px-sm-8 {
        padding-right: 96px !important;
        padding-left: 96px !important
    }

    .py-sm-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important
    }
}

@media (min-width: 544px) {
    .p-sm-9 {
        padding: 144px !important
    }

    .pt-sm-9 {
        padding-top: 144px !important
    }

    .pr-sm-9 {
        padding-right: 144px !important
    }

    .pb-sm-9 {
        padding-bottom: 144px !important
    }

    .pl-sm-9 {
        padding-left: 144px !important
    }

    .px-sm-9 {
        padding-right: 144px !important;
        padding-left: 144px !important
    }

    .py-sm-9 {
        padding-top: 144px !important;
        padding-bottom: 144px !important
    }
}

@media (min-width: 544px) {
    .p-sm-10 {
        padding: 216px !important
    }

    .pt-sm-10 {
        padding-top: 216px !important
    }

    .pr-sm-10 {
        padding-right: 216px !important
    }

    .pb-sm-10 {
        padding-bottom: 216px !important
    }

    .pl-sm-10 {
        padding-left: 216px !important
    }

    .px-sm-10 {
        padding-right: 216px !important;
        padding-left: 216px !important
    }

    .py-sm-10 {
        padding-top: 216px !important;
        padding-bottom: 216px !important
    }
}

@media (min-width: 768px) {
    .p-md-0 {
        padding: 0 !important
    }

    .pt-md-0 {
        padding-top: 0 !important
    }

    .pr-md-0 {
        padding-right: 0 !important
    }

    .pb-md-0 {
        padding-bottom: 0 !important
    }

    .pl-md-0 {
        padding-left: 0 !important
    }

    .px-md-0 {
        padding-right: 0 !important;
        padding-left: 0 !important
    }

    .py-md-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important
    }
}

@media (min-width: 768px) {
    .p-md-1 {
        padding: 4px !important
    }

    .pt-md-1 {
        padding-top: 4px !important
    }

    .pr-md-1 {
        padding-right: 4px !important
    }

    .pb-md-1 {
        padding-bottom: 4px !important
    }

    .pl-md-1 {
        padding-left: 4px !important
    }

    .px-md-1 {
        padding-right: 4px !important;
        padding-left: 4px !important
    }

    .py-md-1 {
        padding-top: 4px !important;
        padding-bottom: 4px !important
    }
}

@media (min-width: 768px) {
    .p-md-2 {
        padding: 6px !important
    }

    .pt-md-2 {
        padding-top: 6px !important
    }

    .pr-md-2 {
        padding-right: 6px !important
    }

    .pb-md-2 {
        padding-bottom: 6px !important
    }

    .pl-md-2 {
        padding-left: 6px !important
    }

    .px-md-2 {
        padding-right: 6px !important;
        padding-left: 6px !important
    }

    .py-md-2 {
        padding-top: 6px !important;
        padding-bottom: 6px !important
    }
}

@media (min-width: 768px) {
    .p-md-3 {
        padding: 12px !important
    }

    .pt-md-3 {
        padding-top: 12px !important
    }

    .pr-md-3 {
        padding-right: 12px !important
    }

    .pb-md-3 {
        padding-bottom: 12px !important
    }

    .pl-md-3 {
        padding-left: 12px !important
    }

    .px-md-3 {
        padding-right: 12px !important;
        padding-left: 12px !important
    }

    .py-md-3 {
        padding-top: 12px !important;
        padding-bottom: 12px !important
    }
}

@media (min-width: 768px) {
    .p-md-4 {
        padding: 24px !important
    }

    .pt-md-4 {
        padding-top: 24px !important
    }

    .pr-md-4 {
        padding-right: 24px !important
    }

    .pb-md-4 {
        padding-bottom: 24px !important
    }

    .pl-md-4 {
        padding-left: 24px !important
    }

    .px-md-4 {
        padding-right: 24px !important;
        padding-left: 24px !important
    }

    .py-md-4 {
        padding-top: 24px !important;
        padding-bottom: 24px !important
    }
}

@media (min-width: 768px) {
    .p-md-5 {
        padding: 36px !important
    }

    .pt-md-5 {
        padding-top: 36px !important
    }

    .pr-md-5 {
        padding-right: 36px !important
    }

    .pb-md-5 {
        padding-bottom: 36px !important
    }

    .pl-md-5 {
        padding-left: 36px !important
    }

    .px-md-5 {
        padding-right: 36px !important;
        padding-left: 36px !important
    }

    .py-md-5 {
        padding-top: 36px !important;
        padding-bottom: 36px !important
    }
}

@media (min-width: 768px) {
    .p-md-6 {
        padding: 48px !important
    }

    .pt-md-6 {
        padding-top: 48px !important
    }

    .pr-md-6 {
        padding-right: 48px !important
    }

    .pb-md-6 {
        padding-bottom: 48px !important
    }

    .pl-md-6 {
        padding-left: 48px !important
    }

    .px-md-6 {
        padding-right: 48px !important;
        padding-left: 48px !important
    }

    .py-md-6 {
        padding-top: 48px !important;
        padding-bottom: 48px !important
    }
}

@media (min-width: 768px) {
    .p-md-7 {
        padding: 72px !important
    }

    .pt-md-7 {
        padding-top: 72px !important
    }

    .pr-md-7 {
        padding-right: 72px !important
    }

    .pb-md-7 {
        padding-bottom: 72px !important
    }

    .pl-md-7 {
        padding-left: 72px !important
    }

    .px-md-7 {
        padding-right: 72px !important;
        padding-left: 72px !important
    }

    .py-md-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important
    }
}

@media (min-width: 768px) {
    .p-md-8 {
        padding: 96px !important
    }

    .pt-md-8 {
        padding-top: 96px !important
    }

    .pr-md-8 {
        padding-right: 96px !important
    }

    .pb-md-8 {
        padding-bottom: 96px !important
    }

    .pl-md-8 {
        padding-left: 96px !important
    }

    .px-md-8 {
        padding-right: 96px !important;
        padding-left: 96px !important
    }

    .py-md-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important
    }
}

@media (min-width: 768px) {
    .p-md-9 {
        padding: 144px !important
    }

    .pt-md-9 {
        padding-top: 144px !important
    }

    .pr-md-9 {
        padding-right: 144px !important
    }

    .pb-md-9 {
        padding-bottom: 144px !important
    }

    .pl-md-9 {
        padding-left: 144px !important
    }

    .px-md-9 {
        padding-right: 144px !important;
        padding-left: 144px !important
    }

    .py-md-9 {
        padding-top: 144px !important;
        padding-bottom: 144px !important
    }
}

@media (min-width: 768px) {
    .p-md-10 {
        padding: 216px !important
    }

    .pt-md-10 {
        padding-top: 216px !important
    }

    .pr-md-10 {
        padding-right: 216px !important
    }

    .pb-md-10 {
        padding-bottom: 216px !important
    }

    .pl-md-10 {
        padding-left: 216px !important
    }

    .px-md-10 {
        padding-right: 216px !important;
        padding-left: 216px !important
    }

    .py-md-10 {
        padding-top: 216px !important;
        padding-bottom: 216px !important
    }
}

@media (min-width: 1004px) {
    .p-lg-0 {
        padding: 0 !important
    }

    .pt-lg-0 {
        padding-top: 0 !important
    }

    .pr-lg-0 {
        padding-right: 0 !important
    }

    .pb-lg-0 {
        padding-bottom: 0 !important
    }

    .pl-lg-0 {
        padding-left: 0 !important
    }

    .px-lg-0 {
        padding-right: 0 !important;
        padding-left: 0 !important
    }

    .py-lg-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important
    }
}

@media (min-width: 1004px) {
    .p-lg-1 {
        padding: 4px !important
    }

    .pt-lg-1 {
        padding-top: 4px !important
    }

    .pr-lg-1 {
        padding-right: 4px !important
    }

    .pb-lg-1 {
        padding-bottom: 4px !important
    }

    .pl-lg-1 {
        padding-left: 4px !important
    }

    .px-lg-1 {
        padding-right: 4px !important;
        padding-left: 4px !important
    }

    .py-lg-1 {
        padding-top: 4px !important;
        padding-bottom: 4px !important
    }
}

@media (min-width: 1004px) {
    .p-lg-2 {
        padding: 6px !important
    }

    .pt-lg-2 {
        padding-top: 6px !important
    }

    .pr-lg-2 {
        padding-right: 6px !important
    }

    .pb-lg-2 {
        padding-bottom: 6px !important
    }

    .pl-lg-2 {
        padding-left: 6px !important
    }

    .px-lg-2 {
        padding-right: 6px !important;
        padding-left: 6px !important
    }

    .py-lg-2 {
        padding-top: 6px !important;
        padding-bottom: 6px !important
    }
}

@media (min-width: 1004px) {
    .p-lg-3 {
        padding: 12px !important
    }

    .pt-lg-3 {
        padding-top: 12px !important
    }

    .pr-lg-3 {
        padding-right: 12px !important
    }

    .pb-lg-3 {
        padding-bottom: 12px !important
    }

    .pl-lg-3 {
        padding-left: 12px !important
    }

    .px-lg-3 {
        padding-right: 12px !important;
        padding-left: 12px !important
    }

    .py-lg-3 {
        padding-top: 12px !important;
        padding-bottom: 12px !important
    }
}

@media (min-width: 1004px) {
    .p-lg-4 {
        padding: 24px !important
    }

    .pt-lg-4 {
        padding-top: 24px !important
    }

    .pr-lg-4 {
        padding-right: 24px !important
    }

    .pb-lg-4 {
        padding-bottom: 24px !important
    }

    .pl-lg-4 {
        padding-left: 24px !important
    }

    .px-lg-4 {
        padding-right: 24px !important;
        padding-left: 24px !important
    }

    .py-lg-4 {
        padding-top: 24px !important;
        padding-bottom: 24px !important
    }
}

@media (min-width: 1004px) {
    .p-lg-5 {
        padding: 36px !important
    }

    .pt-lg-5 {
        padding-top: 36px !important
    }

    .pr-lg-5 {
        padding-right: 36px !important
    }

    .pb-lg-5 {
        padding-bottom: 36px !important
    }

    .pl-lg-5 {
        padding-left: 36px !important
    }

    .px-lg-5 {
        padding-right: 36px !important;
        padding-left: 36px !important
    }

    .py-lg-5 {
        padding-top: 36px !important;
        padding-bottom: 36px !important
    }
}

@media (min-width: 1004px) {
    .p-lg-6 {
        padding: 48px !important
    }

    .pt-lg-6 {
        padding-top: 48px !important
    }

    .pr-lg-6 {
        padding-right: 48px !important
    }

    .pb-lg-6 {
        padding-bottom: 48px !important
    }

    .pl-lg-6 {
        padding-left: 48px !important
    }

    .px-lg-6 {
        padding-right: 48px !important;
        padding-left: 48px !important
    }

    .py-lg-6 {
        padding-top: 48px !important;
        padding-bottom: 48px !important
    }
}

@media (min-width: 1004px) {
    .p-lg-7 {
        padding: 72px !important
    }

    .pt-lg-7 {
        padding-top: 72px !important
    }

    .pr-lg-7 {
        padding-right: 72px !important
    }

    .pb-lg-7 {
        padding-bottom: 72px !important
    }

    .pl-lg-7 {
        padding-left: 72px !important
    }

    .px-lg-7 {
        padding-right: 72px !important;
        padding-left: 72px !important
    }

    .py-lg-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important
    }
}

@media (min-width: 1004px) {
    .p-lg-8 {
        padding: 96px !important
    }

    .pt-lg-8 {
        padding-top: 96px !important
    }

    .pr-lg-8 {
        padding-right: 96px !important
    }

    .pb-lg-8 {
        padding-bottom: 96px !important
    }

    .pl-lg-8 {
        padding-left: 96px !important
    }

    .px-lg-8 {
        padding-right: 96px !important;
        padding-left: 96px !important
    }

    .py-lg-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important
    }
}

@media (min-width: 1004px) {
    .p-lg-9 {
        padding: 144px !important
    }

    .pt-lg-9 {
        padding-top: 144px !important
    }

    .pr-lg-9 {
        padding-right: 144px !important
    }

    .pb-lg-9 {
        padding-bottom: 144px !important
    }

    .pl-lg-9 {
        padding-left: 144px !important
    }

    .px-lg-9 {
        padding-right: 144px !important;
        padding-left: 144px !important
    }

    .py-lg-9 {
        padding-top: 144px !important;
        padding-bottom: 144px !important
    }
}

@media (min-width: 1004px) {
    .p-lg-10 {
        padding: 216px !important
    }

    .pt-lg-10 {
        padding-top: 216px !important
    }

    .pr-lg-10 {
        padding-right: 216px !important
    }

    .pb-lg-10 {
        padding-bottom: 216px !important
    }

    .pl-lg-10 {
        padding-left: 216px !important
    }

    .px-lg-10 {
        padding-right: 216px !important;
        padding-left: 216px !important
    }

    .py-lg-10 {
        padding-top: 216px !important;
        padding-bottom: 216px !important
    }
}

@media (min-width: 1280px) {
    .p-xl-0 {
        padding: 0 !important
    }

    .pt-xl-0 {
        padding-top: 0 !important
    }

    .pr-xl-0 {
        padding-right: 0 !important
    }

    .pb-xl-0 {
        padding-bottom: 0 !important
    }

    .pl-xl-0 {
        padding-left: 0 !important
    }

    .px-xl-0 {
        padding-right: 0 !important;
        padding-left: 0 !important
    }

    .py-xl-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important
    }
}

@media (min-width: 1280px) {
    .p-xl-1 {
        padding: 4px !important
    }

    .pt-xl-1 {
        padding-top: 4px !important
    }

    .pr-xl-1 {
        padding-right: 4px !important
    }

    .pb-xl-1 {
        padding-bottom: 4px !important
    }

    .pl-xl-1 {
        padding-left: 4px !important
    }

    .px-xl-1 {
        padding-right: 4px !important;
        padding-left: 4px !important
    }

    .py-xl-1 {
        padding-top: 4px !important;
        padding-bottom: 4px !important
    }
}

@media (min-width: 1280px) {
    .p-xl-2 {
        padding: 6px !important
    }

    .pt-xl-2 {
        padding-top: 6px !important
    }

    .pr-xl-2 {
        padding-right: 6px !important
    }

    .pb-xl-2 {
        padding-bottom: 6px !important
    }

    .pl-xl-2 {
        padding-left: 6px !important
    }

    .px-xl-2 {
        padding-right: 6px !important;
        padding-left: 6px !important
    }

    .py-xl-2 {
        padding-top: 6px !important;
        padding-bottom: 6px !important
    }
}

@media (min-width: 1280px) {
    .p-xl-3 {
        padding: 12px !important
    }

    .pt-xl-3 {
        padding-top: 12px !important
    }

    .pr-xl-3 {
        padding-right: 12px !important
    }

    .pb-xl-3 {
        padding-bottom: 12px !important
    }

    .pl-xl-3 {
        padding-left: 12px !important
    }

    .px-xl-3 {
        padding-right: 12px !important;
        padding-left: 12px !important
    }

    .py-xl-3 {
        padding-top: 12px !important;
        padding-bottom: 12px !important
    }
}

@media (min-width: 1280px) {
    .p-xl-4 {
        padding: 24px !important
    }

    .pt-xl-4 {
        padding-top: 24px !important
    }

    .pr-xl-4 {
        padding-right: 24px !important
    }

    .pb-xl-4 {
        padding-bottom: 24px !important
    }

    .pl-xl-4 {
        padding-left: 24px !important
    }

    .px-xl-4 {
        padding-right: 24px !important;
        padding-left: 24px !important
    }

    .py-xl-4 {
        padding-top: 24px !important;
        padding-bottom: 24px !important
    }
}

@media (min-width: 1280px) {
    .p-xl-5 {
        padding: 36px !important
    }

    .pt-xl-5 {
        padding-top: 36px !important
    }

    .pr-xl-5 {
        padding-right: 36px !important
    }

    .pb-xl-5 {
        padding-bottom: 36px !important
    }

    .pl-xl-5 {
        padding-left: 36px !important
    }

    .px-xl-5 {
        padding-right: 36px !important;
        padding-left: 36px !important
    }

    .py-xl-5 {
        padding-top: 36px !important;
        padding-bottom: 36px !important
    }
}

@media (min-width: 1280px) {
    .p-xl-6 {
        padding: 48px !important
    }

    .pt-xl-6 {
        padding-top: 48px !important
    }

    .pr-xl-6 {
        padding-right: 48px !important
    }

    .pb-xl-6 {
        padding-bottom: 48px !important
    }

    .pl-xl-6 {
        padding-left: 48px !important
    }

    .px-xl-6 {
        padding-right: 48px !important;
        padding-left: 48px !important
    }

    .py-xl-6 {
        padding-top: 48px !important;
        padding-bottom: 48px !important
    }
}

@media (min-width: 1280px) {
    .p-xl-7 {
        padding: 72px !important
    }

    .pt-xl-7 {
        padding-top: 72px !important
    }

    .pr-xl-7 {
        padding-right: 72px !important
    }

    .pb-xl-7 {
        padding-bottom: 72px !important
    }

    .pl-xl-7 {
        padding-left: 72px !important
    }

    .px-xl-7 {
        padding-right: 72px !important;
        padding-left: 72px !important
    }

    .py-xl-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important
    }
}

@media (min-width: 1280px) {
    .p-xl-8 {
        padding: 96px !important
    }

    .pt-xl-8 {
        padding-top: 96px !important
    }

    .pr-xl-8 {
        padding-right: 96px !important
    }

    .pb-xl-8 {
        padding-bottom: 96px !important
    }

    .pl-xl-8 {
        padding-left: 96px !important
    }

    .px-xl-8 {
        padding-right: 96px !important;
        padding-left: 96px !important
    }

    .py-xl-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important
    }
}

@media (min-width: 1280px) {
    .p-xl-9 {
        padding: 144px !important
    }

    .pt-xl-9 {
        padding-top: 144px !important
    }

    .pr-xl-9 {
        padding-right: 144px !important
    }

    .pb-xl-9 {
        padding-bottom: 144px !important
    }

    .pl-xl-9 {
        padding-left: 144px !important
    }

    .px-xl-9 {
        padding-right: 144px !important;
        padding-left: 144px !important
    }

    .py-xl-9 {
        padding-top: 144px !important;
        padding-bottom: 144px !important
    }
}

@media (min-width: 1280px) {
    .p-xl-10 {
        padding: 216px !important
    }

    .pt-xl-10 {
        padding-top: 216px !important
    }

    .pr-xl-10 {
        padding-right: 216px !important
    }

    .pb-xl-10 {
        padding-bottom: 216px !important
    }

    .pl-xl-10 {
        padding-left: 216px !important
    }

    .px-xl-10 {
        padding-right: 216px !important;
        padding-left: 216px !important
    }

    .py-xl-10 {
        padding-top: 216px !important;
        padding-bottom: 216px !important
    }
}

.f00-light {
    font-size: 40px !important;
    font-weight: 300 !important
}

@media (min-width: 768px) {
    .f00-light {
        font-size: 48px !important
    }
}

.f0-light {
    font-size: 32px !important;
    font-weight: 300 !important
}

@media (min-width: 768px) {
    .f0-light {
        font-size: 40px !important
    }
}

.f1-light {
    font-size: 26px !important;
    font-weight: 300 !important
}

@media (min-width: 768px) {
    .f1-light {
        font-size: 32px !important
    }
}

.f2-light {
    font-size: 22px !important;
    font-weight: 300 !important
}

@media (min-width: 768px) {
    .f2-light {
        font-size: 24px !important
    }
}

.f3-light {
    font-size: 18px !important;
    font-weight: 300 !important
}

@media (min-width: 768px) {
    .f3-light {
        font-size: 20px !important
    }
}

.text-small {
    font-size: 14px !important
}

.lead {
    margin-bottom: 30px;
    font-size: 20px;
    font-weight: 300;
    color: #555
}

.lh-condensed-ultra {
    line-height: 1 !important
}

.lh-condensed {
    line-height: 1.25 !important
}

.lh-default {
    line-height: 1.5 !important
}

.text-right {
    text-align: right !important
}

.text-left {
    text-align: left !important
}

.text-center {
    text-align: center !important
}

@media (min-width: 544px) {
    .text-sm-right {
        text-align: right !important
    }

    .text-sm-left {
        text-align: left !important
    }

    .text-sm-center {
        text-align: center !important
    }
}

@media (min-width: 768px) {
    .text-md-right {
        text-align: right !important
    }

    .text-md-left {
        text-align: left !important
    }

    .text-md-center {
        text-align: center !important
    }
}

@media (min-width: 1004px) {
    .text-lg-right {
        text-align: right !important
    }

    .text-lg-left {
        text-align: left !important
    }

    .text-lg-center {
        text-align: center !important
    }
}

@media (min-width: 1280px) {
    .text-xl-right {
        text-align: right !important
    }

    .text-xl-left {
        text-align: left !important
    }

    .text-xl-center {
        text-align: center !important
    }
}

.list-style-none {
    list-style: none !important
}

.text-shadow-dark {
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25), 0 1px 25px rgba(0, 0, 0, 0.75)
}

.text-shadow-light {
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5)
}

* {
    margin: 0;
    padding: 0;
    border: 0;
    box-sizing: border-box
}

*:before,
*:after {
    box-sizing: border-box
}

ol,
ul {
    list-style: none
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main,
audio,
canvas,
video {
    display: block;
    margin: 0;
    padding: 0
}

@font-face {
    font-family: 'Track';
    src: url("../fonts/Track-Webfont.eot");
    src: url("../fonts/Track-Webfontd41d.eot?#iefix") format("embedded-opentype"), url("../fonts/Track-Webfont.woff2") format("woff2"), url("../fonts/Track-Webfont.woff") format("woff"), url("../fonts/Track-Webfont.ttf") format("truetype");
    font-weight: normal;
    font-style: normal
}

@font-face {
    font-family: 'Titillium';
    src: url("../fonts/TitilliumWeb-Regular.eot");
    src: url("../fonts/TitilliumWeb-Regulard41d.eot?#iefix") format("embedded-opentype"), url("../fonts/TitilliumWeb-Regular.woff2") format("woff2"), url("../fonts/TitilliumWeb-Regular.woff") format("woff"), url("../fonts/TitilliumWeb-Regular.ttf") format("truetype");
    font-weight: normal;
    font-style: normal
}

@font-face {
    font-family: 'Titillium';
    src: url("../fonts/TitilliumWeb-Italic.eot");
    src: url("../fonts/TitilliumWeb-Italicd41d.eot?#iefix") format("embedded-opentype"), url("../fonts/TitilliumWeb-Italic.woff2") format("woff2"), url("../fonts/TitilliumWeb-Italic.woff") format("woff"), url("../fonts/TitilliumWeb-Italic.ttf") format("truetype");
    font-weight: normal;
    font-style: italic
}

@font-face {
    font-family: 'Titillium';
    src: url("../fonts/TitilliumWeb-SemiBold.eot");
    src: url("../fonts/TitilliumWeb-SemiBoldd41d.eot?#iefix") format("embedded-opentype"), url("../fonts/TitilliumWeb-SemiBold.woff2") format("woff2"), url("../fonts/TitilliumWeb-SemiBold.woff") format("woff"), url("../fonts/TitilliumWeb-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal
}

@font-face {
    font-family: 'Titillium';
    src: url("../fonts/TitilliumWeb-Bold.eot");
    src: url("../fonts/TitilliumWeb-Boldd41d.eot?#iefix") format("embedded-opentype"), url("../fonts/TitilliumWeb-Bold.woff2") format("woff2"), url("../fonts/TitilliumWeb-Bold.woff") format("woff"), url("../fonts/TitilliumWeb-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal
}

.h1,
.user-content h1 {
    display: block;
    font-size: 36px;
    line-height: 1.16;
    font-weight: 400;
    letter-spacing: 0;
    margin-bottom: 36px
}

@media (min-width: 768px) {

    .h1,
    .user-content h1 {
        font-size: 40px
    }
}

@media (min-width: 1004px) {

    .h1,
    .user-content h1 {
        font-size: 48px
    }
}

.h2,
.user-content h2 {
    display: block;
    font-size: 28px;
    line-height: 1.16;
    font-weight: 400;
    letter-spacing: 0;
    margin-bottom: 24px
}

@media (min-width: 768px) {

    .h2,
    .user-content h2 {
        font-size: 40px
    }
}

.h3,
.user-content h3 {
    display: block;
    font-size: 18px;
    line-height: 1.214;
    font-weight: 400;
    letter-spacing: 0;
    margin-bottom: 24px
}

@media (min-width: 768px) {

    .h3,
    .user-content h3 {
        font-size: 30px
    }
}

.h4,
.user-content h4 {
    display: block;
    font-size: 16px;
    line-height: 1.05;
    font-weight: 400;
    letter-spacing: 0;
    margin-bottom: 24px
}

@media (min-width: 768px) {

    .h4,
    .user-content h4 {
        font-size: 24px
    }
}

.h5,
.user-content h5 {
    display: block;
    font-size: 14px;
    line-height: 1.05;
    font-weight: 400;
    letter-spacing: 0;
    margin-bottom: 16px
}

@media (min-width: 768px) {

    .h5,
    .user-content h5 {
        font-size: 20px
    }
}

.h6,
.user-content h6 {
    display: block;
    font-size: 12px;
    line-height: 1.05;
    margin-bottom: 16px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase
}

@media (min-width: 768px) {

    .h6,
    .user-content h6 {
        font-size: 18px
    }
}

.alt-font {
    font-family: "Track", serif
}

.p,
p,
.user-content p {
    display: block;
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 18px;
    font-weight: 400;
    font-weight: 300;
    font-size: 14px;
    letter-spacing: 0;
    line-height: 28px
}

.p + .btn,
p + .btn,
.user-content p + .btn {
    margin-top: 18px
}

@media (min-width: 768px) {

    .p,
    p,
    .user-content p {
        font-size: 16px
    }
}

.p-lg,
.user-content p.p-lg {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5
}

@media (min-width: 768px) {

    .p-lg,
    .user-content p.p-lg {
        font-size: 18px
    }
}

@media (min-width: 1004px) {

    .p-lg,
    .user-content p.p-lg {
        font-size: 20px
    }
}

.p-sm,
small,
.user-content .p-sm {
    font-size: 13px;
    font-weight: 400;
    line-height: 1.3
}

address {
    font-style: normal
}

.button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 183px;
    height: 64px;
    padding: 4px 10px 0 0;
    background: url("../img/button-purple.svg") center/cover no-repeat;
    font-weight: 600;
    font-size: 16px;
    color: #fff;
    letter-spacing: 1px;
    text-align: center;
    text-transform: uppercase;
    transform-origin: center;
    perspective: 1000px;
    transform-style: preserve-3d;
    position: relative;
    transition: all 0.6s;
    z-index: 1
}

.button > * {
    transition: all 0.6s
}

.button:before {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(100% - 8px);
    height: calc(100% - 8px);
    background: rgba(255, 0, 0, 0.2);
    background: linear-gradient(90deg, #A065AA 0%, #4F72B8 100%);
    opacity: 0;
    z-index: -1;
    transition: opacity .4s ease-in-out
}

.button:after {
    content: '';
    width: 60%;
    left: 20%;
    bottom: -20px;
    position: absolute;
    border-radius: 30%;
    box-shadow: 0px 0px 30px 0px rgba(28, 35, 41, 0.3);
    background: rgba(28, 35, 41, 0.3);
    display: block;
    height: 20px;
    transform-origin: center;
    transform: scale(0)
}

.text-center .button {
    margin-left: auto;
    margin-right: auto
}

.button:hover {
    animation: levitateBtn 2s linear infinite
}

.button:hover:after {
    animation: levitateBtnShadow 2s linear infinite
}

.button:hover:before {
    opacity: 1
}

@keyframes levitateBtn {
    0% {
        transform: translateY(0) rotate(0);
        transform-origin: center
    }

    25% {
        transform: translateY(-2px)
    }

    50% {
        transform: translateY(-5px) rotate(0deg)
    }

    75% {
        transform: translateY(-2px)
    }

    100% {
        transform: translateY(0)
    }
}

@keyframes levitateBtnShadow {
    0% {
        transform: scale(0.5)
    }

    50% {
        transform: scale(0.2)
    }

    100% {
        transform: scale(0.5)
    }
}

@keyframes topLeft {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(-3deg)
    }
}

@keyframes fuckShitUp {
    0% {
        transform: skewX(0) translate3d(0, 0, 0) rotateZ(0)
    }

    25% {
        transform: skewX(0.5deg) rotateX(-10deg) rotateY(0.5deg)
    }

    75% {
        transform: skewX(-0.5deg) rotateX(10deg) rotateY(-0.5deg)
    }

    100% {
        transform: skewX(0) translate3d(0, 0, 0) rotateZ(0)
    }
}

@keyframes wobble {
    25% {
        transform: rotate(-5deg) scaleY(0.98)
    }

    50% {
        transform: rotate(0deg) scaleY(1)
    }

    75% {
        transform: rotate(5deg) scaleY(0.98)
    }
}

@keyframes wobble {
    0% {
        transform: scaleX(1) scaleY(1) rotateX(0)
    }

    06.25% {
        transform: scaleX(1.2) scaleY(.8)
    }

    18.75% {
        transform: scaleX(.8) scaleY(1.2)
    }

    31.25% {
        transform: scaleX(1.1) scaleY(.9) rotateY(180deg)
    }

    43.75% {
        transform: scaleX(.9) scaleY(1.1)
    }

    62.50% {
        transform: scaleX(1.05) scaleY(.95)
    }

    81.25% {
        transform: scaleX(.95) scaleY(1.05)
    }

    100% {
        transform: scaleX(1) scaleY(1)
    }
}

.button--sm {
    background: url("../img/button-purple-sm.svg") center/cover no-repeat;
    width: 150px;
    height: 44px;
    font-size: 14px;
    padding: 2px 6px 0 0
}

.button--sm:before {
    width: calc(100% - 6px);
    height: calc(100% - 6px)
}

.button--wide {
    font-size: 12px
}

.button--white {
    background: url("../img/button-white.svg") center/cover no-repeat
}

.button--white:hover {
    color: #00B29A
}

.button--white:before {
    background: #fff
}

.button--white:after {
    box-shadow: 0px 0px 30px 0px rgba(19, 25, 30, 0.1);
    background: rgba(19, 25, 30, 0.1)
}

.link {
    display: inline-block;
    position: relative;
    padding-bottom: 4px;
    overflow: hidden;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1px
}

.link:after {
    content: '';
    width: 200%;
    height: 2px;
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    background: linear-gradient(90deg, #005662 0%, #00B29A 50%);
    transition: transform .4s ease-in-out
}

.link:hover:after {
    transform: translate3d(50%, 0, 0)
}

.link--pink:after {
    background: linear-gradient(90deg, #a6150e 0%, #EE4D7A 50%)
}

.link--purple:after {
    background: linear-gradient(90deg, #56335c 0%, #4F72B8 50%)
}

.user-content p a {
    color: #FAA634;
    text-decoration: underline
}

.link-simple-teal {
    text-decoration: underline;
    color: #00B29A
}

.link-simple-teal:hover {
    text-decoration: underline;
    color: #4F72B8
}

html,
body {
    background: #13191E
}

body,
input,
button,
select,
textarea {
    font-family: "Titillium", mono, sans-serif;
    font-size: 16px;
    line-height: 1.5;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
    color: #fff
}

main#content {
    min-height: 600px
}

@media (min-width: 1004px) {
    main#content {
        min-height: 90vh
    }
}

a {
    color: inherit;
    text-decoration: none;
    transition: all .4s ease-in-out
}

a:hover {
    cursor: pointer;
    text-decoration: none
}

.a {
    transition: color .4s ease-in-out
}

.a:hover {
    color: #FAA634
}

a[href^="tel:"]:hover {
    cursor: default
}

[data-scroll-to],
[data-click-target] {
    cursor: pointer
}

img {
    height: auto;
    max-width: 100%;
    display: block
}

sup {
    vertical-align: super;
    font-size: smaller
}

picture > * {
    width: 100%;
    height: auto
}

::selection {
    color: #fff;
    background: #EE4D7A
}

::-moz-selection {
    color: #fff;
    background: #EE4D7A
}

body.schedule ::selection {
    color: #fff;
    background: #00B29A
}

body.schedule ::-moz-selection {
    color: #fff;
    background: #00B29A
}

body.speakers ::selection {
    color: #fff;
    background: #a065aa
}

body.speakers ::-moz-selection {
    color: #fff;
    background: #a065aa
}

.container {
    max-width: 1152px;
    width: 94%;
    margin-left: auto;
    margin-right: auto
}

.container-md {
    max-width: 768px
}

.container-wide {
    width: 94%;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto
}

.container-full {
    max-width: 100%;
    overflow: hidden
}

.container--thin {
    max-width: 780px
}

.bg-cube {
    position: relative;
    z-index: 1;
    transition: background .4s ease-in-out
}

.bg-cube:before {
    width: 60%;
    height: 80%;
    background: url("../img/cube-outline.svg") top left/auto no-repeat;
    display: block;
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.6s ease-in-out
}

@media (min-width: 768px) {
    .bg-cube:before {
        width: 40%;
        height: 60%
    }
}

.bg-cube.in-view {
    transition-delay: 0.2s
}

.bg-cube.in-view:before {
    transition-delay: 0.2s;
    opacity: 1
}

.bg-cube-lg {
    position: relative;
    z-index: 1
}

.bg-cube-lg:before {
    width: 25%;
    height: 90%;
    background: url("../img/svgs/xlg-bg-shape.svg") top left/cover no-repeat;
    display: block;
    content: '';
    position: absolute;
    top: 200px;
    right: 0%;
    z-index: -1;
    opacity: 1;
    transition: opacity 0.6s ease-in-out
}

.container-pattern-black {
    background: #13191E url("../img/pattern.svg") top left/auto repeat
}

.container-pattern-dark {
    background: #1C2329 url("../img/pattern.svg") top left/auto repeat
}

.container-pattern-orange {
    position: relative;
    z-index: 1
}

.container-pattern-orange:before,
.container-pattern-orange:after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.container-pattern-orange:before {
    background: linear-gradient(90deg, #FAA634 0%, #F4792B 100%);
    z-index: -2
}

.container-pattern-orange:after {
    background: url("../img/pattern-white.svg") top left/auto repeat;
    z-index: -1;
    opacity: 0.1
}

.container-pattern-pink {
    position: relative;
    z-index: 1
}

.container-pattern-pink:before,
.container-pattern-pink:after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.container-pattern-pink:before {
    background: linear-gradient(90deg, #EF4C45 0%, #EE4D7A 100%);
    z-index: -2
}

.container-pattern-pink:after {
    background: url("../img/pattern-white.svg") top left/auto repeat;
    z-index: -1;
    opacity: 0.1;
    left: 0
}

.container-pattern-pink .button--white:hover {
    color: #EE4D7A
}

.container-pattern-blue {
    position: relative;
    z-index: 1
}

.container-pattern-blue:before,
.container-pattern-blue:after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.container-pattern-blue:before {
    background: linear-gradient(90deg, #0099AE 0%, #00B29A 100%);
    z-index: -2
}

.container-pattern-blue:after {
    background: url("../img/pattern-white.svg") top left/auto repeat;
    z-index: -1;
    opacity: 0.1;
    left: 74%
}

.bg-cube-draw {
    overflow: hidden;
    position: relative;
    z-index: 1
}

.bg-cube-draw #cube-draw {
    position: absolute;
    bottom: 0;
    transform: translate3d(0, 40%, 0);
    right: 4%;
    width: 680px;
    max-width: 40%;
    z-index: -1
}

body {
    padding-top: 64px;
    transition: padding-top .4s ease-in-out
}

@media (min-width: 768px) {
    body {
        padding-top: 72px
    }
}

.site-header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    background: #1C2329
}

@media (min-width: 768px) {
    .site-header {
        background: #13191E
    }
}

.site-header.is-sticky .site-header__inner {
    height: 64px
}

.site-header.is-sticky .logo a {
    width: 116px
}

.site-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-around;
    height: 64px;
    transition: height .4s ease-in-out
}

@media (min-width: 768px) {
    .site-header__inner {
        justify-content: center;
        height: 72px
    }
}

.logo {
    flex-grow: 1;
    width: auto;
    margin: 0;
    position: relative
}

@media (min-width: 768px) {
    .logo {
        flex-grow: 0;
        width: 10%
    }
}

@media (min-width: 1004px) {
    .logo {
        width: 20%
    }
}

.logo a {
    display: block;
    width: 100%;
    max-width: 50px;
    transition: width .4s ease-in-out;
    position: relative
}

.logo img {
    width: 100%
}

.logo .logo-alt {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%
}

.logo .logo-alt img {
    animation: pulse 8s linear infinite;
    opacity: 0;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0
}

@keyframes pulse {
    0% {
        opacity: 0
    }

    10% {
        opacity: 1
    }

    40% {
        opacity: 1
    }

    50% {
        opacity: 0
    }

    100% {
        opacity: 0
    }
}

.home .logo a {
    display: block;
    width: 100%;
    max-width: 162px;
    transition: width .4s ease-in-out
}

#intro-icon-sm {
    position: absolute;
    width: 40px;
    height: 40px;
    right: calc(100% - 20px);
    top: 50%;
    margin-right: -17px;
    margin-top: -22px;
    transform-origin: center;
    opacity: 0
}

@media (min-width: 768px) {
    #intro-icon-sm {
        width: 50px;
        height: 50px;
        margin-top: -25px;
        right: 100%;
        margin-right: -47px
    }
}

.site-header-panel {
    flex-grow: 1
}

.site-header-panel > * {
    width: 100%;
    display: flex;
    justify-content: center
}

.site-header-panel .main-nav li.is-active a,
.site-header-panel .main-nav li:hover a {
    color: #EE4D7A
}

.site-header-panel .main-nav li.is-active a:before,
.site-header-panel .main-nav li:hover a:before {
    opacity: 1
}

.site-header-panel .main-nav li.is-active.item-teal a,
.site-header-panel .main-nav li:hover.item-teal a {
    color: #00B29A
}

.site-header-panel .main-nav li.is-active.item-purple a,
.site-header-panel .main-nav li:hover.item-purple a {
    color: #A065AA
}

.site-header-panel .main-nav li.is-active.item-green a,
.site-header-panel .main-nav li:hover.item-green a {
    color: #6ABB81
}

.site-header-panel .main-nav li.item-teal a:before {
    background: url("../img/svgs/cube-simple-blue.svg") center/cover no-repeat
}

.site-header-panel .main-nav li.item-purple a:before {
    background: url("../img/svgs/cube-simple-purple.svg") center/cover no-repeat
}

.site-header-panel .main-nav li.item-green a:before {
    background: url("../img/svgs/cube-simple-green.svg") center/cover no-repeat
}

.site-header-panel .main-nav a {
    display: block;
    font-weight: 400;
    font-size: 16px;
    color: #fff;
    letter-spacing: 0.5px;
    line-height: 1;
    transition: color .4s ease-in-out;
    text-decoration: none;
    padding: 8px;
    position: relative
}

.site-header-panel .main-nav a:before {
    content: '';
    width: 16px;
    height: 18px;
    display: block;
    position: absolute;
    left: -15px;
    top: 16px;
    background: url("../img/svgs/cube-simple-pink.svg") center/cover no-repeat;
    transition: opacity .4s ease-in-out;
    opacity: 0;
    animation: bouncesm 2s linear infinite
}

@media (min-width: 768px) {
    .site-header-panel .main-nav a:before {
        top: 7px
    }
}

@media (min-width: 1004px) {
    .site-header-panel .main-nav a {
        font-size: 16px
    }
}

.site-header-panel .main-nav a:hover:before {
    opacity: 1;
    animation: bouncesm 2s infinite linear
}

.site-header-panel li.current_page_item > a:after {
    transform: scaleY(1)
}

.site-header-panel .has-sub-nav a svg {
    display: none
}

.site-header-panel li.is-active > a {
    color: #fff
}

@media (min-width: 768px) {
    .site-header-panel {
        width: 70%;
        display: flex;
        align-items: center;
        justify-content: center
    }

    .site-header-panel .main-nav {
        display: flex;
        align-items: center;
        width: 94%;
        max-width: 620px
    }

    .site-header-panel .main-nav > * {
        flex-grow: 1
    }

    .site-header-panel .main-nav > li + li {
        margin-left: 16px
    }

    .site-header-panel .main-nav a {
        font-size: 12px
    }

    .site-header-panel .main-nav a:after {
        display: block
    }
}

@media (min-width: 1004px) {
    .site-header-panel {
        width: 60%
    }

    .site-header-panel .main-nav > li + li {
        margin-left: 36px
    }

    .site-header-panel .main-nav a {
        font-size: 14px
    }
}

@media (min-width: 1480px) {
    .site-header-panel .main-nav {
        max-width: 680px
    }

    .site-header-panel .main-nav a {
        font-size: 18px
    }

    .site-header-panel .main-nav a:before {
        top: 8px
    }
}

@keyframes bouncesm {
    0% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-2px)
    }

    100% {
        transform: translateY(0)
    }
}

.site-header-login {
    display: none
}

@media (min-width: 768px) {
    .site-header-login {
        display: flex;
        align-items: baseline;
        justify-content: flex-end;
        width: 20%;
        min-width: 150px
    }
}

.site-header-login .main-nav a {
    margin-right: 24px;
    font-size: 12px;
    font-weight: 500;
    color: #fff;
    transition: color .4s ease-in-out
}

@media (min-width: 1004px) {
    .site-header-login .main-nav a {
        font-size: 13px
    }
}

.site-header-login a.btn {
    margin-right: 0;
    font-size: 12px;
    max-width: 100px;
    min-width: 100px;
    white-space: nowrap;
    padding: 12px 4px 10px
}

@media (min-width: 1004px) {
    .site-header-login a.btn {
        font-size: 13px;
        max-width: 128px;
        min-width: 128px
    }
}

.site-header-panel__ft {
    display: none
}

@media (max-width: 767px) {
    body.menu-is-open {
        overflow: hidden
    }

    .site-header-panel {
        position: fixed;
        height: calc(100% + 64px);
        width: 100%;
        left: 0;
        background: #13191E;
        z-index: 10;
        bottom: 0;
        top: 64px;
        bottom: 64px;
        padding: 0 0 64px 0;
        overflow: scroll;
        transition: opacity .4s ease-in-out, transform .4s ease-in-out;
        opacity: 0;
        pointer-events: none
    }

    .site-header-panel:before {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 99px;
        height: 100%;
        z-index: -1;
        background: url("../img/pattern.svg") top left/auto repeat
    }

    .menu-is-open .site-header-panel {
        opacity: 1;
        pointer-events: inherit
    }

    .site-header-panel > * {
        width: 100%;
        min-height: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        padding-bottom: 64px
    }

    .site-header-panel .main-nav {
        width: 100%;
        padding: 36px 24px;
        display: block;
        flex-grow: 1;
        padding-left: 124px
    }

    .site-header-panel .main-nav a {
        display: block;
        width: 100%;
        padding: 16px 12px;
        font-weight: 400;
        font-size: 18px;
        transition: opacity .4s ease-in-out
    }

    .site-header-panel .main-nav a:hover {
        opacity: 0.4
    }

    .site-header-panel .site-header-panel__ft {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        left: 0;
        height: 56px;
        min-height: 56px;
        background: linear-gradient(90deg, #A065AA 0%, #4F72B8 100%);
        padding: 0 12px;
        z-index: 2;
        text-align: center
    }
}

*[data-animate-in="up"] {
    opacity: 0;
    transform: translate3d(0, 50px, 0);
    transition: opacity 1s ease-in, transform 0.6s ease
}

*[data-animate-in="up"].in-view {
    opacity: 1;
    transform: none
}

*[data-animate-in="left"] {
    transform: translate3d(-50%, 0, 0);
    transition: opacity 1s ease-in, transform 0.6s ease
}

*[data-animate-in="left"].in-view {
    opacity: 1;
    transform: none
}

*[data-animate-in="right"] {
    transform: translate3d(50%, 0, 0);
    transition: opacity 1s ease-in, transform 0.6s ease
}

*[data-animate-in="right"].in-view {
    opacity: 1;
    transform: none
}

*[data-animate-in="down"] {
    transform: translate3d(0, -24px, 0);
    transition: opacity 1s ease-in, transform 0.6s ease
}

*[data-animate-in="down"].in-view {
    opacity: 1;
    transform: none
}

*[data-animate-in="fade"] {
    opacity: 0;
    transition: opacity 0.6s ease-in
}

*[data-animate-in="fade"].in-view {
    transition-delay: 0.4s;
    opacity: 1
}

*[data-animate-in="fade-slow"] {
    opacity: 0;
    transition: opacity 1s ease-in
}

*[data-animate-in="fade-slow"].in-view {
    opacity: 1
}

@media screen and (prefers-reduced-motion: reduce) {
    [data-animate-in="up"] {
        opacity: 0;
        transform: translate3d(0, 10px, 0);
        transition: opacity 1s ease-in, transform 0.6s ease
    }
}

@media screen and (prefers-reduced-motion) {
    [data-animate-in="up"] {
        opacity: 0;
        transform: translate3d(0, 10px, 0);
        transition: opacity 1s ease-in, transform 0.6s ease
    }
}

@media (min-width: 1460px) {
    #intro .container {
        padding: 220px 0 !important
    }
}

#intro-icon {
    max-width: 122px;
    transform-origin: center
}

.burger {
    overflow: hidden;
    position: relative;
    width: 40px;
    height: 40px;
    z-index: 11;
    transition: opacity .4s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center
}

.burger:hover {
    cursor: pointer
}

@media (min-width: 768px) {
    .burger {
        display: none !important
    }
}

.burger > * {
    align-self: center;
    width: 18px;
    height: 11px;
    position: relative;
    margin: 0 auto;
    left: 0;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0)
}

.burger > * > * {
    position: absolute;
    display: block;
    height: 1px;
    width: 100%;
    background-color: #fff;
    margin: 0 auto;
    transition: all .4s ease-in-out;
    -webkit-backface-visibility: hidden;
    border-radius: 50px
}

.burger > * > *:first-child {
    top: 0
}

.burger > * > *:nth-child(2) {
    top: 50%;
    transform: translate3d(0, -25%, 0)
}

.burger > * > *:last-child {
    bottom: 0
}

.burger:hover > * > *:first-child {
    transform: translate3d(0, -1px, 0)
}

.burger:hover > * > *:last-child {
    transform: translate3d(0, 1px, 0)
}

.menu-is-open .burger > * > *:first-child {
    top: 50%;
    margin-top: -1px;
    transform: rotate(45deg)
}

.menu-is-open .burger > * > *:nth-child(2) {
    transform: rotate(-135deg);
    opacity: 0
}

.menu-is-open .burger > * > *:last-child {
    bottom: 50%;
    margin-top: 1px;
    transform: rotate(-45deg)
}

.circle-wrap {
    position: absolute;
    z-index: 0;
    width: 320%;
    padding-bottom: 320%;
    height: 0;
    transform-origin: center;
    opacity: 0.15
}

@media (min-width: 544px) {
    .circle-wrap {
        width: 200%;
        padding-bottom: 200%
    }
}

@media (min-width: 768px) {
    .circle-wrap {
        width: 140%;
        padding-bottom: 140%
    }
}

.page-section.in-view .svg-wrap {
    animation: rotate 20s linear infinite
}

.modal-wrap.is-active .modal-svg-wrap {
    animation: rotate 20s linear infinite
}

@media screen and (prefers-reduced-motion: reduce) {

    .page-section.in-view .svg-wrap,
    .modal-wrap.is-active .modal-svg-wrap {
        animation: none
    }
}

@media screen and (prefers-reduced-motion) {

    .page-section.in-view .svg-wrap,
    .modal-wrap.is-active .modal-svg-wrap {
        animation: none
    }
}

.page-section--speakers {
    overflow: hidden
}

.page-section--speakers header,
.page-section--speakers .speaker-list {
    z-index: 11;
    position: relative
}

.page-section--speakers .circle-wrap {
    top: 0;
    left: 20%;
    transform: translate3d(0, -30%, 0);
    opacity: 0.15;
    z-index: 0
}

.site-footer .circle-wrap {
    top: -300px;
    left: -300px;
    opacity: 0.15;
    z-index: 0;
    width: 600px;
    padding-bottom: 600px;
    animation: rotate 10s linear infinite;
    transform-origin: center
}

.site-footer .site-footer__circle-sm {
    position: absolute;
    right: 30px;
    top: 30px
}

@media (max-width: 543px) {

    .site-footer .circle-wrap,
    .site-footer .site-footer__circle-sm {
        display: none
    }
}

.speaker-list {
    display: flex;
    flex-wrap: wrap
}

.speaker-list > * {
    width: 50%
}

@media (min-width: 580px) {
    .speaker-list > * {
        width: 33%
    }
}

@media (min-width: 800px) {
    .speaker-list > * {
        width: 25%
    }
}

@media (min-width: 1100px) {
    .speaker-list > * {
        width: calc(100% / 6)
    }
}

.speaker-preview .speaker-info {
    text-align: center;
    padding: 0 8px
}

.speaker-preview .speaker-info h2 {
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 6px
}

.speaker-preview .speaker-info p {
    font-size: 14px;
    font-style: italic;
    line-height: 1.42
}

.speaker-preview .speaker-content-extra {
    display: none
}

.speaker-preview a:hover .speaker-image .hex-borders .stroke-thin {
    opacity: 0
}

.speaker-preview a:hover .speaker-image .hex-borders .stroke-thick {
    opacity: 1
}

.speaker-preview a:hover .speaker-image .hex-hover {
    opacity: 1
}

.speaker-image {
    margin: 0 auto;
    position: relative;
    width: 140px;
    height: 140px;
    overflow: hidden
}

@media (min-width: 400px) {
    .speaker-image {
        width: 180px;
        height: 180px
    }
}

.speaker-image .speaker-headshot {
    position: absolute;
    object-fit: cover;
    width: 100%;
    height: 100%;
    z-index: 1;
    filter: grayscale(100%)
}

.speaker-image .hex-borders,
.speaker-image .hex-hover,
.speaker-image .hex-border-alt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 2;
    opacity: 1;
    height: 100%;
    transition: opacity .4s ease-in-out
}

.speaker-image .hex-border-alt {
    z-index: 4
}

.speaker-image .hex-borders {
    z-index: 3
}

.speaker-image .hex-borders .stroke-thin {
    opacity: 1;
    transition: opacity 0.6s ease
}

.speaker-image .hex-borders .stroke-thick {
    opacity: 0;
    transition: opacity 0.6s ease;
    z-index: 4
}

.speaker-image .hex-hover {
    opacity: 0;
    transition: opacity 0.6s ease;
    mix-blend-mode: multiply
}

.modal .speaker-info h2 {
    display: block;
    font-size: 28px;
    line-height: 1.16;
    font-weight: 400;
    letter-spacing: 0;
    margin-bottom: 24px;
    margin-bottom: 12px
}

@media (min-width: 768px) {
    .modal .speaker-info h2 {
        font-size: 40px
    }
}

.modal .speaker-info p {
    font-size: 20px
}

.modal-image .speaker-image {
    width: 324px;
    height: 324px
}

@media (min-width: 1004px) {
    .modal-image .speaker-image {
        width: 404px;
        height: 404px
    }
}

@media (min-width: 1480px) {
    .modal-image .speaker-image {
        width: 484px;
        height: 484px
    }
}

@media (min-width: 1700px) {
    .modal-image .speaker-image {
        width: 684px;
        height: 684px
    }
}

.modal-image .speaker-image .hex-hover {
    opacity: 1
}

.isIE .speaker__image-wrap img,
.isEDGE .speaker__image-wrap img {
    object-fit: none;
    width: auto;
    max-width: 200%;
    left: 50%;
    transform: translate3d(-50%, 0, 0)
}

.speaker-talk {
    margin-top: 36px
}

.speaker-talk__time {
    font-family: "Track", serif;
    font-size: 18px
}

.schedule-wrap {
    border-top: 1px solid #1C2329;
    min-height: 500px
}

.schedule-header {
    position: sticky;
    top: 64px;
    background: #13191E;
    z-index: 8;
    padding: 8px 0
}

.schedule-header .schedule-header__tracks {
    display: none
}

@media (min-width: 768px) {
    .schedule-header {
        top: 72px
    }
}

@media (min-width: 1004px) {
    .schedule-header .schedule-header__tracks {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-right: 24px
    }

    .schedule-header .schedule-header__tracks > * {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-right: 20px
    }

    .schedule-header .schedule-header__tracks > * img {
        width: 12px
    }

    .schedule-header .schedule-header__tracks > * p {
        font-size: 12px;
        margin-bottom: 0
    }
}

.schedule-tabs > * {
    display: block;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding-bottom: 8px;
    position: relative;
    opacity: 0.5;
    transition: opacity .4s ease-in-out;
    font-size: 12px
}

@media (min-width: 768px) {
    .schedule-tabs > * {
        font-size: 14px
    }
}

.schedule-tabs > *:after {
    content: '';
    width: 100%;
    height: 2px;
    display: block;
    background: linear-gradient(90deg, #0099AE 0%, #00B29A 100%);
    position: absolute;
    bottom: 0;
    left: 0;
    transform-origin: center;
    transform: scaleX(0);
    transition: transform .4s ease-in-out
}

.schedule-tabs > *:hover,
.schedule-tabs > *.is-active {
    cursor: pointer;
    opacity: 1
}

.schedule-tabs > *:hover:after,
.schedule-tabs > *.is-active:after {
    transform: scaleX(1)
}

.schedule-tabs > *.is-active {
    font-weight: 600
}

.timeslot {
    border-bottom: 1px solid #1C2329;
    display: flex;
    align-items: stretch
}

.timeslot__time {
    font-size: 24px;
    padding: 16px 14px;
    width: 110px;
    min-width: 110px;
    max-width: 1010px;
    border-right: 1px solid #1C2329
}

.timeslot__time span {
    font-size: 50%;
    text-transform: uppercase
}

@media (min-width: 768px) {
    .timeslot__time {
        padding: 32px 0 32px 36px;
        font-size: 40px;
        width: 200px;
        min-width: 200px;
        max-width: 200px
    }
}

@media (min-width: 1480px) {
    .timeslot__time {
        width: 440px;
        min-width: 440px;
        max-width: 440px;
        padding-right: 72px;
        text-align: right
    }
}

.talks {
    width: 100%
}

@media (min-width: 1004px) {
    .talks {
        display: flex;
        flex-grow: 1
    }

    .talks .talk {
        display: flex;
        min-width: 33%;
        width: 33%;
        flex-grow: 1
    }

    .talks .talk.talk--full {
        min-width: 100%;
        width: 100%;
        justify-content: center;
        text-align: center
    }

    .talks .talk.talk--full .tag__tags {
        justify-content: center
    }
}

.talk {
    display: flex;
    align-items: flex-start;
    width: 100%;
    padding: 24px 18px
}

@media (min-width: 768px) {
    .talk {
        padding: 20px 36px
    }
}

.talk + .talk {
    border-top: 1px solid #1C2329
}

.talk + .talk.un-active {
    border-top: none !important
}

.talk .track-icon {
    margin-right: 12px;
    margin-top: 10px
}

.talk:first-child {
    border-top: 0
}

.talk .talk__modal-content-only {
    display: none
}

.talk .talk__authors {
    margin-bottom: 0;
    color: #9c9c9c;
    line-height: 1.5
}

.talk .talk__authors p {
    color: #9c9c9c;
    line-height: 1.5
}

@media (min-width: 1004px) {
    .talk + .talk {
        border-left: 1px solid #1C2329;
        border-top: none
    }
}

.talk .track-icon-sm {
    width: 24px
}

.talk.un-active > * {
    opacity: 0;
    height: 0 !important
}

.talk.un-active {
    pointer-events: none
}

a.talk {
    transition: opacity .4s ease-in-out
}

a.talk:hover {
    opacity: 0.6
}

@media (max-width: 543px) {
    a.talk .p-lg.talk__title {
        font-size: 14px
    }

    a.talk .talk__authors p {
        font-size: 12px
    }
}

.talk.talk--break {
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center
}

.talk.talk--break.un-active {
    display: none
}

@media (min-width: 768px) {
    .talk.talk--break {
        min-height: 124px
    }
}

.talk.talk--break h2 {
    text-transform: uppercase;
    opacity: 0.4
}

.tag__tags {
    font-size: 12px;
    display: flex;
    align-items: center;
    flex-wrap: wrap
}

.tag {
    display: flex;
    align-items: center;
    margin-top: 8px;
    margin-right: 12px
}

.tag img {
    margin-right: 4px;
    width: 12px
}

.modal .talk-title {
    display: block;
    font-size: 28px;
    line-height: 1.16;
    font-weight: 400;
    letter-spacing: 0;
    margin-bottom: 24px
}

@media (min-width: 768px) {
    .modal .talk-title {
        font-size: 40px
    }
}

.modal .talk__authors {
    font-size: 20px;
    margin-bottom: 16px
}

.modal .talk__modal-content-only {
    margin-bottom: 36px
}

.modal .tag__tags {
    font-size: 14px
}

.modal .tag__tags .tag {
    margin-right: 16px
}

.modal .tag__tags img {
    width: 14px
}

.track-icon {
    display: block;
    width: 10px;
    min-width: 10px;
    height: 10px;
    border-radius: 50%
}

.track-icon--teal {
    background: #00B29A
}

.track-icon--pink {
    background: #EE4D7A
}

.track-icon--purple {
    background: #A065AA
}

.schedule-tracks {
    border-top: 1px solid #1C2329;
    display: flex;
    align-items: stretch
}

.schedule-tracks.schedule-tracks--workshops {
    text-align: center
}

.schedule-tracks:before {
    content: 'Tracks';
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 110px;
    width: 110px;
    display: none
}

@media (min-width: 768px) {
    .schedule-tracks:before {
        min-width: 199px;
        width: 199px;
        font-size: 20px;
        display: flex
    }
}

@media (min-width: 1480px) {
    .schedule-tracks:before {
        width: 440px;
        min-width: 440px;
        max-width: 440px;
        padding-right: 100px;
        text-align: right;
        justify-content: flex-end
    }
}

.schedule-tracks > * {
    width: calc(100% / 3);
    padding: 24px 12px;
    border-left: 1px solid #1C2329
}

@media (min-width: 544px) {
    .schedule-tracks > * {
        padding: 24px 24px
    }
}

.schedule-tracks > * .h5 {
    font-size: 10px;
    font-family: "Track", serif
}

@media (min-width: 768px) {
    .schedule-tracks > * .h5 {
        font-size: 13px
    }
}

@media (min-width: 1004px) {
    .schedule-tracks > * .h5 {
        font-size: 15px
    }
}

.schedule-tracks > * p {
    margin-bottom: 0;
    line-height: 1.6
}

.schedule-tracks > * img {
    width: 24px
}

@media (min-width: 768px) {
    .schedule-tracks > * img {
        width: 38px
    }
}

.faq-group {
    overflow: hidden;
    margin-bottom: 24px;
    min-height: 64px;
    border-radius: 32px;
    color: #fff;
    transition: box-shadow 0.6s ease;
    position: relative;
    z-index: 2
}

.faq-group:hover {
    box-shadow: 0 6px 10px 0 rgba(42, 44, 67, 0.3)
}

.faq-group.is-active {
    box-shadow: 0 6px 10px 0 rgba(42, 44, 67, 0.3)
}

.faq-group.is-active .faq-group__bd {
    opacity: 1
}

.faq-group__hd {
    width: 100%;
    display: flex;
    align-items: center;
    padding: 24px 16px;
    border-radius: 100px;
    color: #fff;
    position: relative
}

@media (min-width: 768px) {
    .faq-group__hd {
        padding: 24px 36px
    }
}

.faq-group__hd:hover {
    cursor: pointer
}

.faq-group__hd .faq__close.modal__close {
    display: block;
    width: 44px;
    height: 44px;
    background: #fff;
    position: absolute;
    opacity: 1;
    transition: transform 0.6s ease;
    transform-origin: center;
    transform: rotate(45deg)
}

.faq-group__hd:hover .faq__close.modal__close,
.faq-group.is-active .faq__close.modal__close {
    transform: rotate(90deg)
}

.faq-group__bd {
    height: 0;
    opacity: 0;
    transition: opacity 0.6s ease
}

.faq-group__bd > * {
    padding: 30px 16px
}

@media (min-width: 768px) {
    .faq-group__bd > * {
        padding: 40px 36px 30px
    }
}

.page-nav {
    background: #13191E;
    border-bottom: 1px solid #1C2329;
    position: sticky;
    top: 64px;
    z-index: 8;
    overflow: hidden
}

@media (max-width: 539px) {
    .page-nav:after {
        position: absolute;
        top: 0;
        right: 0;
        width: 60px;
        display: block;
        background: linear-gradient(90deg, rgba(28, 35, 41, 0) 0%, #1C2329 100%);
        content: '';
        z-index: 2;
        height: 100%
    }
}

.page-nav ul.container {
    display: flex;
    align-items: flex-end
}

@media (max-width: 539px) {
    .page-nav ul.container {
        overflow-x: auto;
        position: relative
    }
}

.page-nav ul.container::-webkit-scrollbar {
    display: block;
    height: 2px
}

.page-nav ul.container::-webkit-scrollbar-thumb {
    background: #313d47
}

@media (max-width: 767px) {
    .page-nav ul.container {
        width: 100%;
        padding: 0 3%
    }
}

.page-nav li {
    padding-right: 24px
}

.page-nav li:nth-child(2) a:after {
    background: linear-gradient(90deg, #4F72B8 0%, #00B29A 100%)
}

.page-nav li:nth-child(3) a:after {
    background: linear-gradient(90deg, #6ABB81 0%, #FAA634 100%)
}

.page-nav li:nth-child(4) a:after {
    background: linear-gradient(90deg, #FAA634 0%, #F4792B 100%)
}

.page-nav a,
.page-nav li > * {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    padding: 24px 0;
    overflow: hidden;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    opacity: 0.5;
    font-weight: 400;
    transition: opacity .4s ease-in-out;
    font-size: 14px;
    white-space: nowrap
}

@media (min-width: 1004px) {

    .page-nav a,
    .page-nav li > * {
        font-size: 16px;
        padding: 16px 0
    }
}

.page-nav a:after,
.page-nav li > *:after {
    content: '';
    width: 100%;
    height: 2px;
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    background: linear-gradient(90deg, #A065AA 0%, #4F72B8 100%);
    transition: transform .4s ease-in-out;
    transform-origin: center;
    transform: scale(0)
}

.page-nav a:hover,
.page-nav a.is-active,
.page-nav li > *:hover,
.page-nav li > *.is-active {
    opacity: 1
}

.page-nav a:hover:after,
.page-nav a.is-active:after,
.page-nav li > *:hover:after,
.page-nav li > *.is-active:after {
    transform: scale(1)
}

.page-nav a.is-active,
.page-nav li > *.is-active {
    font-weight: 600
}

.logo-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start
}

.logo-list li {
    width: 33.333333%;
    padding: 20px 5px
}

@media (min-width: 544px) {
    .logo-list li {
        width: calc(100% / 6);
        flex-grow: 1;
        max-width: calc(100% / 6)
    }
}

.logo-list a {
    display: block;
    transition: opacity .4s ease-in-out
}

.logo-list a:hover {
    opacity: 0.7
}

.logo-list img {
    display: block;
    margin: 0 auto;
    max-width: 80%;
    max-height: 90px;
    width: auto
}

.ul,
.user-content > ul {
    list-style-type: none;
    list-style-position: outside
}

.ul li,
.user-content > ul li {
    position: relative;
    padding-left: 18px
}

.ul li + li,
.user-content > ul li + li {
    margin-top: 10px
}

.ul li:before,
.user-content > ul li:before {
    content: '';
    color: #F4792B;
    margin-right: 5px;
    position: absolute;
    top: 10px;
    left: 0;
    border-radius: 50%;
    width: 4px;
    height: 4px;
    display: block;
    background: #F4792B
}

.ul ul,
.user-content > ul ul {
    margin: 10px 0 10px 30px;
    list-style-type: none
}

.ul ul li:before,
.user-content > ul ul li:before {
    content: '-';
    color: #13191E
}

.ul ul li + li,
.user-content > ul ul li + li {
    margin-top: 5px
}

@media (min-width: 544px) {
    .ul--2up {
        display: flex;
        align-items: baseline;
        flex-wrap: wrap;
        max-width: 820px
    }

    .ul--2up > * {
        width: 50%
    }

    .ul--2up p {
        font-size: 20px
    }
}

.rotate-3d {
    transform-style: preserve-3d;
    transition: transform 4s ease;
    transform-origin: center;
    position: relative
}

.rotate-3d:hover img {
    animation: levitateRotate 4s linear 1 forwards
}

.rotate-3d:hover:after {
    animation: shadow 4s linear 1 forwards
}

.rotate-3d:after {
    content: '';
    display: block;
    width: 40%;
    height: 10px;
    left: 30%;
    position: absolute;
    bottom: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    box-shadow: 0px 0px 45px 0px rgba(255, 255, 255, 0.2);
    transform: scale(0)
}

.rotate-3d-wrap:hover img {
    animation: levitateRotate 4s linear infinite
}

.rotate-3d-wrap:hover:after {
    animation: shadow 4s linear infinite
}

@keyframes levitateRotate {
    0% {
        transform: translateY(-20px) rotateZ(0);
        transform-origin: center
    }

    20% {
        transform: translateY(-20px) rotateZ(0)
    }

    30% {
        transform: translateY(-25px) rotateZ(45deg)
    }

    40% {
        transform: translateY(-20px) rotateZ(90deg)
    }

    50% {
        transform: translateY(-25px) rotateZ(135deg)
    }

    60% {
        transform: translateY(-20px) rotateZ(180deg)
    }

    70% {
        transform: translateY(-25px) rotateZ(225deg)
    }

    80% {
        transform: translateY(-20px) rotateZ(270deg)
    }

    90% {
        transform: translateY(-20px) rotateZ(315deg)
    }

    100% {
        transform: translateY(-20px) rotateZ(360deg)
    }
}

@keyframes levitateRotate {
    0% {
        transform: translateY(0) rotateZ(0);
        transform-origin: center
    }

    50% {
        transform: translateY(-15px) rotateZ(180deg)
    }

    100% {
        transform: translateY(0) rotateZ(360deg)
    }
}

@keyframes shadow {
    0% {
        transform: scale(0);
        transform-origin: center
    }

    20% {
        transform: scale(0.9)
    }

    30% {
        transform: scale(1)
    }

    40% {
        transform: scale(0.9)
    }

    50% {
        transform: scale(1)
    }

    60% {
        transform: scale(0.9)
    }

    70% {
        transform: scale(1)
    }

    80% {
        transform: scale(0.9)
    }

    90% {
        transform: scale(0.45)
    }

    100% {
        transform: scale(0)
    }
}

.clip-svg {
    position: absolute;
    top: 0;
    left: 0
}

.hexagon-image {
    -webkit-clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
    clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
    -webkit-clip-path: url("#polygon-clip-hexagon");
    clip-path: url("#polygon-clip-hexagon")
}

.shape-levitate {
    position: relative;
    display: inline-block
}

.shape-levitate img {
    animation: levitate 3s linear infinite
}

.shape-levitate:after {
    content: '';
    width: 80%;
    left: 10%;
    bottom: -20px;
    position: absolute;
    border-radius: 50%;
    box-shadow: 0px 0px 45px 0px rgba(255, 255, 255, 0.4);
    background: rgba(255, 255, 255, 0.1);
    display: block;
    height: 20px;
    transform-origin: center;
    transform: scale(0.4);
    animation: levitateShadow 3s linear infinite
}

.shape-levitate--dark:after {
    box-shadow: 0px 0px 30px 0px rgba(28, 35, 41, 0.9);
    background: rgba(28, 35, 41, 0.2)
}

@keyframes levitate {
    0% {
        transform: translateY(0);
        transform-origin: center
    }

    50% {
        transform: translateY(-10px)
    }

    100% {
        transform: translateY(0)
    }
}

@keyframes levitateShadow {
    0% {
        transform: scale(0.4)
    }

    50% {
        transform: scale(1)
    }

    100% {
        transform: scale(0.4)
    }
}

.img-mask {
    position: relative;
    overflow: hidden;
    background: linear-gradient(90deg, #FAA634 0%, #F4792B 100%)
}

.img-mask:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    top: -2px;
    background: url("../img/experience/mask-lg.svg") center/cover no-repeat;
    z-index: 2
}

#cube-complex {
    overflow: hidden;
    min-width: 189px;
    min-height: 204px
}

#cube-complex svg {
    width: 109px;
    height: 124px;
    padding: 40px;
    box-sizing: content-box;
    transition: opacity 0.4s ease;
    transition-delay: 0.6s;
    opacity: 0
}

#cube-complex path {
    transition: transform 1s ease;
    transform-origin: center;
    transition-delay: 0.6s
}

#cube-complex #cube-top-left {
    transform: translate3d(-20px, -5px, 0)
}

#cube-complex #cube-bottom-left {
    transform: translate3d(15px, 25px, 0)
}

#cube-complex #cube-center {
    transform-origin: center;
    transform: scale(1.1)
}

#cube-complex #cube-right {
    transform: translate3d(20px, -20px, 0)
}

#cube-complex.in-view svg {
    opacity: 1
}

#cube-complex.in-view #cube-top-left,
#cube-complex.in-view #cube-bottom-left,
#cube-complex.in-view #cube-right {
    transform: translate3d(0, 0, 0)
}

#cube-complex.in-view #cube-center {
    transform: scale(1)
}

#cube-complex:hover #cube-top-left {
    transform: translate3d(-20px, -5px, 0)
}

#cube-complex:hover #cube-bottom-left {
    transform: translate3d(15px, 25px, 0)
}

#cube-complex:hover #cube-center {
    transform-origin: center;
    transform: scale(1.1)
}

#cube-complex:hover #cube-right {
    transform: translate3d(20px, -20px, 0)
}

.filter-wrap {
    transition: filter .4s ease-in-out, opacity .4s ease-in-out
}

body.filter-is-active .filter-wrap {
    opacity: 0.6
}

body.filter-is-active #filter-screen {
    opacity: 1;
    pointer-events: inherit
}

.filter-panel {
    background: #1C2329;
    width: 100%;
    max-width: 530px;
    position: fixed;
    top: 0;
    right: 0;
    height: 100%;
    z-index: 14;
    transform: translate3d(100%, 0, 0);
    transition: transform .4s ease-in-out;
    box-shadow: -2px 0 4px 0 rgba(0, 0, 0, 0.1)
}

.filter-panel.is-active {
    transform: translate3d(0, 0, 0)
}

.filter-panel.is-active .close-button.filter-panel__close {
    opacity: 1;
    pointer-events: inherit
}

#filter-screen {
    width: 100%;
    max-width: 100%;
    position: fixed;
    top: 0;
    right: 0;
    height: 100%;
    z-index: 13;
    display: block;
    opacity: 0;
    pointer-events: none
}

.filter-panel__hd {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 16px
}

.filter-panel__hd #js-filter-reset {
    margin-bottom: 0;
    opacity: 0.2;
    font-size: 16px;
    letter-spacing: 0.5px;
    transition: opacity .4s ease-in-out
}

.filter-panel__hd #js-filter-reset:hover {
    opacity: 0.6;
    cursor: pointer
}

.filter-panel__hd #js-filter-count {
    flex-grow: 1;
    text-align: center;
    margin-bottom: 0
}

@media (min-width: 544px) {
    .filter-panel__hd {
        padding: 8px 24px
    }
}

.close-button.filter-panel__close {
    position: relative;
    top: auto;
    right: auto;
    background: linear-gradient(90deg, #A065AA 0%, #4F72B8 100%);
    border: 0;
    width: 44px;
    height: 44px
}

.close-button.filter-panel__close:before,
.close-button.filter-panel__close:after {
    background: linear-gradient(90deg, #A065AA 0%, #4F72B8 100%)
}

.close-button.filter-panel__close span {
    display: block;
    width: 42px;
    height: 42px;
    top: 1px;
    left: 1px;
    position: absolute;
    background: #1C2329;
    border-radius: 50%;
    z-index: -1
}

.filter-toggle {
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.filter-toggle .filter-toggle-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid #1C2329;
    margin-right: 8px;
    position: relative;
    transition: border-color .4s ease-in-out
}

@media (min-width: 768px) {
    .filter-toggle .filter-toggle-icon {
        width: 44px;
        height: 44px
    }
}

.filter-toggle .filter-toggle-icon:after,
.filter-toggle .filter-toggle-icon:before,
.filter-toggle .filter-toggle-icon span:after {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    height: 1px;
    width: 14px;
    background: #EE4D7A;
    transform-origin: center;
    transform: translate3d(-50%, -50%, 0);
    transition: transform .4s ease-in-out, background .4s ease-in-out
}

@media (min-width: 768px) {

    .filter-toggle .filter-toggle-icon:after,
    .filter-toggle .filter-toggle-icon:before,
    .filter-toggle .filter-toggle-icon span:after {
        width: 18px;
        height: 2px
    }
}

.filter-toggle .filter-toggle-icon:after {
    margin-top: -5px
}

.filter-toggle .filter-toggle-icon:before {
    width: 12px
}

.filter-toggle .filter-toggle-icon span:after {
    margin-top: 5px;
    width: 4px
}

.filter-toggle p {
    margin-bottom: 0
}

.filter-toggle:hover {
    cursor: pointer
}

.filter-toggle:hover .filter-toggle-icon {
    border-color: #313d47
}

.filter-toggle:hover .filter-toggle-icon:after,
.filter-toggle:hover .filter-toggle-icon:before,
.filter-toggle:hover .filter-toggle-icon span:after {
    transform: translate3d(-50%, -50%, 0) scaleX(1.2);
    background: #00B29A
}

.filter-panel__bd {
    padding: 36px 16px
}

@media (min-width: 544px) {
    .filter-panel__bd {
        padding: 40px 24px
    }
}

.filter-panel__filters li {
    display: block
}

.filter-panel__filters .filter {
    display: inline-block;
    border: 1px solid #37434D;
    border-radius: 2px;
    margin: 0 12px 8px 0;
    padding: 5px 4px;
    transition: background .4s ease-in-out, border .4s ease-in-out, color .4s ease-in-out
}

.filter-panel__filters .filter:hover,
.filter-panel__filters .filter.is-active {
    color: #13191E;
    cursor: pointer
}

.filter-panel__filters .filter .tag {
    margin: 0;
    font-size: 12px;
    line-height: 1
}

.filter.is-active,
.filter:hover {
    background: #37434D;
    border-color: #37434D
}

*[data-tab]:hover {
    cursor: pointer
}

.tabs-content {
    position: relative
}

*[data-tab-bd] {
    display: none;
    opacity: 0;
    transition: opacity 1s ease
}

*[data-tab-bd].is-active {
    display: block;
    opacity: 1
}

.tabs__tabs {
    display: flex;
    align-items: stretch
}

.tabs__tabs > * {
    max-width: 50%;
    width: 300px;
    text-align: center;
    padding: 20px;
    color: #758592;
    opacity: 0.4;
    transition: color .4s ease-in-out, opacity .4s ease-in-out
}

.tabs__tabs > *.is-active {
    color: #F4792B;
    opacity: 1;
    background: #fff
}

.tabs__content {
    background: #fff;
    padding: 12px 24px
}

@media (min-width: 768px) {
    .tabs__content {
        padding: 24px 36px
    }
}

.tabs__content > * {
    position: absolute;
    top: 0;
    opacity: 0;
    transition: opacity .4s ease-in-out
}

.tabs__content > *.is-active {
    display: block;
    position: relative;
    opacity: 1
}

.video-tabs {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center
}

.video-tabs__tab {
    overflow: hidden;
    position: relative;
    opacity: 0.5;
    transition: opacity .4s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 24px;
    padding: 2px 0
}

.video-tabs__tab img {
    width: 18px;
    margin-right: 8px
}

.video-tabs__tab p {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 9px
}

@media (min-width: 768px) {
    .video-tabs__tab {
        margin-right: 36px;
        padding: 12px 0
    }

    .video-tabs__tab p {
        font-size: 16px
    }

    .video-tabs__tab img {
        width: 36px;
        margin-right: 12px
    }
}

.video-tabs__tab:after {
    content: '';
    width: 100%;
    height: 2px;
    display: block;
    background: linear-gradient(90deg, #0099AE 0%, #00B29A 100%);
    position: absolute;
    bottom: 0;
    left: 0;
    transform-origin: center;
    transform: scaleX(0);
    transition: transform .4s ease-in-out
}

.video-tabs__tab:hover,
.video-tabs__tab.is-active {
    cursor: pointer;
    opacity: 1
}

.video-tabs__tab:hover:after,
.video-tabs__tab.is-active:after {
    transform: scaleX(1)
}

.video-tabs__tab.is-active {
    font-weight: 600
}

.talk-sm {
    padding: 36px 24px;
    border-bottom: 1px solid #1C2329
}

@media (min-width: 1004px) {
    .talk-sm {
        padding: 24px 24px
    }
}

.talk-sm .talk-sm-time {
    font-family: "Track", serif;
    margin-bottom: 4px
}

.talk-sm .talk-sm-time span {
    font-size: 70%
}

.talk-sm a.talk,
.talk-sm .talk {
    padding: 0
}

.talk-sm .talk-title {
    font-size: 14px
}

.talk-sm .talk__authors p {
    font-size: 12px
}

@keyframes flipY {
    0% {
        transform: translateX(-50%) scale3d(1, 1, 1) rotatex(0deg) rotatey(0deg) rotatez(0deg)
    }

    20.25% {
        transform: translateX(-50%) scale3d(1, 1, 1) rotatex(0deg) rotatey(90deg) rotatez(0deg)
    }

    100% {
        transform: translateX(-50%) scale3d(1, 1, 1) rotatex(0deg) rotatey(90deg) rotatez(0deg)
    }
}

@keyframes flipY-innerCube {
    0% {
        transform: translateX(-50%) scale3d(0.5, 0.5, 0.5) rotatex(0deg) rotatey(0deg) rotatez(0deg)
    }

    20.25% {
        transform: translateX(-50%) scale3d(0.5, 0.5, 0.5) rotatex(0deg) rotatey(-90deg) rotatez(0deg)
    }

    100% {
        transform: translateX(-50%) scale3d(0.5, 0.5, 0.5) rotatex(0deg) rotatey(-90deg) rotatez(0deg)
    }
}

@keyframes flipY-innerShadow {
    0% {
        transform: translatex(-50%) rotatex(-90deg) translatez(-20px) rotatez(0deg)
    }

    20.25% {
        transform: translatex(-50%) rotatex(-90deg) translatez(-20px) rotatez(-90deg)
    }

    100% {
        transform: translatex(-50%) rotatex(-90deg) translatez(-20px) rotatez(-90deg)
    }
}

@keyframes flipY-outterShadow {
    0% {
        transform: translatex(-50%) rotatex(-90deg) translatez(105px) rotatez(0deg)
    }

    20.25% {
        transform: translatex(-50%) rotatex(-90deg) translatez(105px) rotatez(90deg)
    }

    100% {
        transform: translatex(-50%) rotatex(-90deg) translatez(105px) rotatez(90deg)
    }
}

@keyframes border-front {
    0% {
        border-width: 3px 5px 5px 3px
    }

    2.25% {
        border-width: 3px 5px 5px 3px
    }

    5.75% {
        border-width: 3px 3px 3px 3px
    }

    100% {
        border-width: 3px 3px 3px 3px
    }
}

@keyframes border-back {
    0% {
        border-width: 3px 3px 3px 3px
    }

    2.25% {
        border-width: 3px 3px 3px 3px
    }

    5.75% {
        border-width: 3px 3px 5px 5px
    }

    100% {
        border-width: 3px 3px 5px 5px
    }
}

@keyframes border-top {
    0% {
        border-width: 5px 5px 3px 3px
    }

    2.25% {
        border-width: 5px 5px 3px 3px
    }

    5.75% {
        border-width: 3px 5px 5px 3px
    }

    100% {
        border-width: 3px 5px 5px 3px
    }
}

@keyframes border-left {
    0% {
        border-width: 3px 3px 5px 5px
    }

    2.25% {
        border-width: 3px 3px 5px 5px
    }

    5.75% {
        border-width: 3px 5px 5px 3px
    }

    100% {
        border-width: 3px 5px 5px 3px
    }
}

@keyframes border-front-sm {
    0% {
        border-width: 2px 3px 3px 2px
    }

    2.25% {
        border-width: 2px 3px 3px 2px
    }

    5.75% {
        border-width: 2px 2px 2px 2px
    }

    100% {
        border-width: 2px 2px 2px 2px
    }
}

@keyframes border-back-sm {
    0% {
        border-width: 2px 2px 2px 2px
    }

    2.25% {
        border-width: 2px 2px 2px 2px
    }

    5.75% {
        border-width: 2px 2px 3px 3px
    }

    100% {
        border-width: 2px 2px 3px 3px
    }
}

@keyframes border-top-sm {
    0% {
        border-width: 3px 3px 2px 2px
    }

    2.25% {
        border-width: 3px 3px 2px 2px
    }

    5.75% {
        border-width: 2px 3px 3px 2px
    }

    100% {
        border-width: 2px 3px 3px 2px
    }
}

@keyframes border-left-sm {
    0% {
        border-width: 2px 2px 3px 3px
    }

    2.25% {
        border-width: 2px 2px 3px 3px
    }

    5.75% {
        border-width: 2px 3px 3px 2px
    }

    100% {
        border-width: 2px 3px 3px 2px
    }
}

@keyframes hoverY {
    0% {
        transform: translatey(0px)
    }

    100% {
        transform: translatey(-10px)
    }
}

@keyframes scaleBigShadow {
    0% {
        transform: scale3d(0.65, 0.65, 0.65)
    }

    100% {
        transform: scale3d(0.6, 0.6, 0.6)
    }
}

.cube-wrap {
    position: relative;
    width: 58px;
    height: 58px;
    transform-style: preserve-3d;
    transform: translateY(0) rotatex(-33.5deg) rotatey(45deg);
    margin-left: 20px;
    z-index: 1
}

.cube-wrap .cube-wrap__inner {
    transform-style: preserve-3d;
    animation: hoverY 2s infinite alternate;
    animation-timing-function: ease-in-out;
    backface-visibility: hidden;
    transform: translate3d(0, 0, 0)
}

.cube {
    position: absolute;
    width: 40px;
    height: 40px;
    left: 0;
    top: 0;
    transform-style: preserve-3d;
    animation: flipY 5.2s infinite;
    backface-visibility: hidden;
    display: inline-block
}

.cube .cube-side {
    position: absolute;
    width: 100%;
    height: 100%;
    text-align: center;
    background: #13191E;
    line-height: 100px;
    border: 2px solid #0099AE;
    border-image: linear-gradient(to top, #EF4C45, #EE4D7A) 1 3%;
    transform: translate3d(0, 0, 0);
    transform-style: preserve-3d;
    backface-visibility: hidden
}

.cube .cube-side.cube-side--front {
    transform: translate3d(0, 0, 20px);
    border-right-width: 5px;
    border-bottom-width: 5px;
    animation: border-front 5.2s infinite;
    animation-fill-mode: forwards
}

.cube .cube-side.cube-side--back {
    transform: rotateY(180deg) translate3d(0, 0, 20px);
    animation: border-back 5.2s infinite;
    animation-fill-mode: forwards
}

.cube .cube-side.cube-side--top {
    transform: rotatex(90deg) translate3d(0, 0, 20px);
    border-top-width: 5px;
    border-right-width: 5px;
    animation: border-top 5.2s infinite;
    animation-fill-mode: forwards;
    border-left-color: #00B29A;
    border-image: none;
    border-color: #EF4C45
}

@media (min-width: 768px) {
    .cube .cube-side.cube-side--top {
        transform: rotatex(90deg) translate3d(0, 0, 20px) scale(1.02);
        border-radius: 2px
    }
}

.cube .cube-side.cube-side--bottom {
    transform: rotatex(-90deg) translate3d(0, 0, 20px);
    border-image: linear-gradient(to right, #EF4C45, #EE4D7A) 1 3%
}

.cube .cube-side.cube-side--left {
    transform: rotateY(-90deg) translate3d(0, 0, 20px);
    border-left-width: 5px;
    border-bottom-width: 5px;
    animation: border-left 5.2s infinite;
    animation-fill-mode: forwards;
    border-color: #00B29A;
    border-image: linear-gradient(to right, #EF4C45, #EE4D7A) 1 3%
}

.cube .cube-side.cube-side--right {
    transform: rotateY(90deg) translate3d(0, 0, 20px);
    border-image: linear-gradient(to right, #EE4D7A, #EF4C45) 1 3%
}

.cube.cube--blue .cube-side {
    border-image: linear-gradient(to top, #4F72B8, #00B29A) 1 3%
}

.cube.cube--blue .cube-side.cube-side--top {
    border-image: none;
    border-color: #00B29A
}

.cube.cube--blue .cube-side.cube-side--bottom {
    border-image: linear-gradient(to right, #00B29A, #4F72B8) 1 3%
}

.cube.cube--blue .cube-side.cube-side--left {
    border-image: linear-gradient(to bottom, #00B29A, #4F72B8) 1 3%
}

.cube.cube--blue .cube-side.cube-side--right {
    border-image: linear-gradient(to bottom, #4F72B8, #00B29A) 1 3%
}

.cube.cube--purple .cube-side {
    border-image: linear-gradient(to top, #4F72B8, #A065AA) 1 3%
}

.cube.cube--purple .cube-side.cube-side--top {
    border-image: none;
    border-color: #A065AA
}

.cube.cube--purple .cube-side.cube-side--bottom {
    border-image: linear-gradient(to right, #A065AA, #4F72B8) 1 3%
}

.cube.cube--purple .cube-side.cube-side--left {
    border-image: linear-gradient(to bottom, #A065AA, #4F72B8) 1 3%
}

.cube.cube--purple .cube-side.cube-side--right {
    border-image: linear-gradient(to bottom, #4F72B8, #A065AA) 1 3%
}

.cube.cube--green .cube-side {
    border-image: linear-gradient(to top, #BDCE30, #6ABB81) 1 3%
}

.cube.cube--green .cube-side.cube-side--top {
    border-image: none;
    border-color: #6ABB81
}

.cube.cube--green .cube-side.cube-side--bottom {
    border-image: linear-gradient(to right, #6ABB81, #BDCE30) 1 3%
}

.cube.cube--green .cube-side.cube-side--left {
    border-image: linear-gradient(to bottom, #6ABB81, #BDCE30) 1 3%
}

.cube.cube--green .cube-side.cube-side--right {
    border-image: linear-gradient(to bottom, #BDCE30, #6ABB81) 1 3%
}

.cube-wrap--sm .cube {
    width: 30px;
    height: 30px
}

.cube-wrap--sm .cube .cube-side.cube-side--front {
    transform: translatez(15px);
    animation: border-front-sm 5.2s infinite
}

.cube-wrap--sm .cube .cube-side.cube-side--back {
    transform: rotateY(180deg) translatez(15px);
    animation: border-back-sm 5.2s infinite
}

.cube-wrap--sm .cube .cube-side.cube-side--top {
    transform: rotatex(90deg) translatez(15px);
    animation: border-top-sm 5.2s infinite
}

@media (min-width: 768px) {
    .cube-wrap--sm .cube .cube-side.cube-side--top {
        transform: rotatex(90deg) translate3d(0, 0, 15px) scale(1.03);
        border-radius: 2px
    }
}

.cube-wrap--sm .cube .cube-side.cube-side--bottom {
    transform: rotatex(-90deg) translatez(15px)
}

.cube-wrap--sm .cube .cube-side.cube-side--left {
    transform: rotateY(-90deg) translatez(15px);
    animation: border-left-sm 5.2s infinite;
    animation-fill-mode: forwards
}

.cube-wrap--sm .cube .cube-side.cube-side--right {
    transform: rotateY(90deg) translatez(15px)
}

.cube-shadow {
    display: inline-block;
    transform-style: preserve-3d;
    width: 40px;
    height: 40px;
    margin-top: -80px;
    transform: translatex(-50%) rotatex(-90deg) translatez(110px);
    animation: flipY-outterShadow 5.2s infinite
}

.cube-shadow:after {
    content: '';
    display: inline-block;
    position: absolute;
    width: 40px;
    height: 40px;
    background-color: rgba(28, 35, 41, 0.5);
    animation: scaleBigShadow 2s infinite alternate;
    animation-timing-function: ease-in-out;
    box-shadow: 0px 0px 45px 35px rgba(28, 35, 41, 0.5);
    transform-origin: center center;
    transform: scale3d(0.8, 0.8, 0.8)
}

#experience {
    position: relative;
    z-index: 1;
    overflow: inherit
}

#experience .experience-bg-shape {
    position: absolute;
    right: 0;
    top: 72px;
    z-index: -1;
    display: none
}

@media (min-width: 768px) {
    #experience .experience-bg-shape {
        left: auto;
        display: block
    }
}

#venue ::selection {
    color: #fff;
    background: #a065aa
}

#venue ::-moz-selection {
    color: #fff;
    background: #a065aa
}

.hero-split {
    overflow: hidden;
    width: 100%;
    padding: 56px 0;
    position: relative;
    z-index: 1
}

@media (min-width: 768px) {
    .hero-split {
        padding: 0
    }

    .hero-split .container {
        padding: 56px 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        height: calc(100vh - 112px)
    }
}

.hero-split__content {
    z-index: 2
}

.hero-split__content > * {
    max-width: 625px
}

@media (min-width: 768px) {
    .hero-split__content {
        width: 50%
    }
}

.hero-split__img {
    width: 100%;
    margin: 40px auto 0;
    position: relative;
    background: linear-gradient(90deg, #A065AA 0%, #4F72B8 100%)
}

.hero-split__img img.mask-sm {
    left: -5px;
    bottom: -5px;
    width: auto;
    height: auto;
    min-width: 105%;
    position: absolute
}

@media (min-width: 768px) {
    .hero-split__img {
        position: absolute;
        height: 100%;
        width: 50%;
        margin: 0;
        left: 50%;
        overflow: hidden
    }

    .hero-split__img img {
        max-width: 3000%;
        height: 100%;
        position: absolute;
        width: auto;
        right: 0
    }

    .hero-split__img img.mask-sm {
        left: -5px;
        bottom: -5px;
        width: auto;
        height: auto;
        min-width: 105%
    }
}

#beyond-universe {
    position: relative
}

#beyond-universe ::selection {
    color: #fff;
    background: #0099ae
}

#beyond-universe ::-moz-selection {
    color: #fff;
    background: #0099ae
}

.beyond-shapes {
    position: absolute;
    top: 36px;
    right: 12px;
    transform-origin: center;
    transition: transform .4s ease-in-out;
    transform: scale(0);
    z-index: -1
}

@media (min-width: 768px) {
    .beyond-shapes {
        top: 72px;
        right: 24px
    }
}

.beyond-shapes.in-view {
    transform: scale(1)
}

.event-block {
    background: #fff;
    display: block;
    position: relative;
    overflow: hidden;
    padding: 48px 16px 72px;
    border-radius: 2px;
    text-align: center;
    color: #13191E;
    height: 100%
}

.event-block img {
    max-width: 206px
}

@media (min-width: 768px) {
    .event-block {
        padding: 72px 24px 98px
    }
}

.event-block:before {
    content: '';
    width: 100%;
    height: 10px;
    left: 0;
    top: 0;
    position: absolute;
    display: block;
    border-radius: 2px 2px 0 0;
    background: linear-gradient(90deg, #0099AE 0%, #00B29A 100%)
}

.event-block:after {
    content: '';
    width: 100%;
    height: 98px;
    left: 0;
    bottom: 0;
    position: absolute;
    display: block;
    background: url("../img/pattern.svg") center/auto repeat;
    opacity: 0.04
}

.event-block .link {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translate3d(-50%, 0, 0);
    color: #0099AE;
    z-index: 4
}

.event-block .link:after {
    background: linear-gradient(90deg, #0099AE 0%, #00B29A 100%)
}

#transportation {
    position: relative
}

#transportation ::selection {
    color: #fff;
    background: #6abb81
}

#transportation ::-moz-selection {
    color: #fff;
    background: #6abb81
}

@media (min-width: 1004px) {
    #transportation {
        min-height: calc(100vh - 72px)
    }
}

@media (min-width: 1130px) {
    .hex-section {
        display: flex;
        min-height: 600px
    }

    .hex-section__intro {
        width: 40%
    }

    .hex-section__hex {
        width: 60%
    }
}

.hex-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    position: absolute;
    right: 16px;
    top: 36px;
    width: 767px;
    height: 576px
}

.hex-grid img {
    width: 278px;
    height: 320px;
    display: block
}

.hex-grid img:nth-child(2) {
    margin-left: 20px
}

.hex-grid img:nth-child(3) {
    transform: translate3d(-60%, -60px, 0)
}

.hex-grid img:nth-child(4) {
    transform: translate3d(-53%, -60px, 0)
}

@media (max-width: 1129px) {
    .hex-grid {
        position: relative;
        width: auto;
        height: auto
    }

    .hex-grid img {
        display: none
    }
}

.hex-content-1,
.hex-content-2 {
    padding: 24px 16px 24px 90px;
    width: 100%
}

@media (min-width: 1130px) {

    .hex-content-1,
    .hex-content-2 {
        padding: 16px;
        width: 278px;
        height: 320px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center
    }
}

.hex-content-1 p,
.hex-content-2 p {
    line-height: 20px
}

@media (min-width: 1130px) {
    .hex-content-1 {
        position: absolute;
        top: 0;
        right: 0
    }

    .hex-content-2 {
        position: absolute;
        bottom: 0;
        left: 44px
    }
}

#city-guide {
    position: relative;
    overflow: hidden;
    z-index: 1
}

#city-guide ::selection {
    background: #f4792b
}

#city-guide ::-moz-selection {
    background: #f4792b
}

#city-guide .city-guide-bg {
    position: absolute;
    bottom: 0;
    left: 0;
    transform: translate3d(-50%, 50%, 0);
    pointer-events: none;
    z-index: -1
}

#city-guide .city-guide-group-1 {
    position: absolute;
    top: 60%;
    left: 2%;
    pointer-events: none;
    z-index: -1;
    transform: scale(0);
    transform-origin: center;
    opacity: 0;
    transition: transform .4s ease-in-out, opacity .4s ease-in-out
}

#city-guide .city-guide-group-1.in-view {
    transform: scale(1);
    opacity: 1
}

#city-guide .city-guide-group-2 {
    position: absolute;
    top: 80%;
    right: 2%;
    pointer-events: none;
    z-index: -1;
    transform: scale(0);
    transform-origin: center;
    opacity: 0;
    transition: transform .4s ease-in-out, opacity .4s ease-in-out
}

#city-guide .city-guide-group-2.in-view {
    transform: scale(1);
    opacity: 1
}

@media (max-width: 979px) {

    #city-guide .city-guide-group-1,
    #city-guide .city-guide-group-2 {
        display: none
    }
}

.site-footer {
    overflow: hidden;
    padding: 48px 0 16px;
    color: #fff;
    z-index: 8;
    position: relative
}

.site-footer .container-wide {
    text-align: center
}

.site-footer small {
    font-size: 14px;
    color: #445563;
    letter-spacing: 0;
    line-height: 18px
}

@media (min-width: 768px) {
    .site-footer {
        padding: 72px 0 20px
    }

    .site-footer small {
        color: #fff
    }

    .site-footer .container-wide {
        display: flex;
        justify-content: space-between;
        align-items: flex-start
    }

    .site-footer .container-wide.site-footer__extra {
        align-items: center
    }
}

.site-footer .rotate-3d:after {
    background: rgba(28, 35, 41, 0.2);
    box-shadow: 0px 0px 30px 0px rgba(28, 35, 41, 0.5)
}

.site-footer .rotate-3d img:nth-child(1) {
    animation-delay: 0.6s
}

.site-footer .rotate-3d img:nth-child(2) {
    animation-delay: 0.4s
}

.site-footer .rotate-3d img:nth-child(3) {
    animation-delay: 0.5s
}

.site-footer .rotate-3d img:nth-child(5) {
    animation-delay: 0.1s
}

.site-footer__nav a {
    font-size: 16px;
    display: block;
    padding: 4px 0;
    transition: color .4s ease-in-out
}

.site-footer__nav a:hover {
    color: #F4792B
}

.site-footer__nav li {
    margin-bottom: 8px
}

@media (min-width: 768px) {
    .site-footer__nav {
        display: flex;
        align-items: baseline;
        justify-content: flex-end;
        flex-wrap: wrap;
        max-width: 720px
    }

    .site-footer__nav li {
        margin-bottom: 0;
        margin-left: 24px
    }
}

a.by-github {
    display: flex;
    justify-content: flex-start
}

@media (min-width: 768px) {
    a.by-github {
        justify-content: flex-start;
        order: -1
    }
}

a.by-github > * + * {
    margin-left: 8px;
    display: block
}

a.by-github:hover {
    color: #fff
}

.site-footer__social {
    text-align: center
}

.site-footer__social ul {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 24px 0
}

.site-footer__social li {
    margin: 0 12px
}

.site-footer__social a {
    display: block;
    padding: 4px;
    transition: opacity .4s ease-in-out
}

.site-footer__social a:hover {
    opacity: 0.4
}

.site-footer__social small {
    display: block
}

.site-footer__social small * {
    display: inline-block
}

@media (min-width: 768px) {
    .site-footer__social {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        order: 2;
        margin-top: 36px
    }

    .site-footer__social ul {
        margin: 0 16px 0 0
    }
}

.subscribe-form {
    max-width: 100%;
    width: 688px;
    margin: 0 auto
}

.subscribe-form .mce_inline_error {
    background: transparent !important;
    font-size: 12px;
    color: #fff;
    font-weight: 400 !important;
    margin: 5px 0 0 !important;
    text-align: left !important
}

.subscribe-form input.mce_inline_error {
    margin-top: 0 !important
}

.subscribe-form #mce-responses {
    padding-top: 32px
}

.subscribe-form-wrap {
    width: 100%;
    display: flex;
    align-items: stretch;
    position: relative;
    z-index: 1
}

@media (max-width: 767px) {
    .subscribe-form-wrap {
        border: 2px solid #A065AA;
        border-radius: 4px;
        padding: 0;
        margin: 0;
        height: 56px;
        border-image: linear-gradient(to right, #A065AA, #4F72B8) 1 3%
    }
}

@media (min-width: 768px) {
    .subscribe-form-wrap {
        background: url("../img/form-outline.svg") center/cover no-repeat;
        padding-top: 10px;
        padding-right: 10px;
        height: 64px
    }
}

.subscribe-form-wrap .mc-field-group {
    flex-grow: 1;
    height: 52px
}

.subscribe-form-wrap input[type=email] {
    border: 0;
    height: 52px;
    flex-grow: 1;
    border: none;
    outline: none;
    box-shadow: none;
    border-radius: none;
    width: 100%;
    background: transparent;
    padding: 0 12px;
    font-size: 16px
}

@media (min-width: 768px) {
    .subscribe-form-wrap input[type=email] {
        padding: 0 24px
    }
}

.subscribe-form-wrap button {
    height: 52px;
    background: transparent;
    width: 196px;
    text-align: center;
    font-weight: 600;
    letter-spacing: 1px;
    color: #fff;
    transition: opacity .4s ease-in-out;
    position: relative;
    z-index: 1
}

.subscribe-form-wrap button:hover {
    cursor: pointer
}

.subscribe-form-wrap button:hover:after {
    opacity: 1
}

.subscribe-form-wrap button:after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(90deg, #A065AA 0%, #4F72B8 50%);
    transition: opacity .4s ease-in-out;
    opacity: 0;
    z-index: -1
}

@media (max-width: 767px) {
    .subscribe-form-wrap button {
        width: 126px
    }

    .subscribe-form-wrap button:before {
        height: 100%;
        width: 2px;
        background: linear-gradient(90deg, #A065AA 0%, #4F72B8 100%);
        display: block;
        content: '';
        position: absolute;
        top: 0;
        left: 0
    }
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    pointer-events: none;
    transition: opacity 1s ease-out;
    transition-delay: 1s
}

@media (min-width: 768px) {
    .modal {
        display: flex;
        align-items: stretch
    }
}

.modal.is-active {
    overflow: auto;
    pointer-events: inherit
}

.modal.is-active .modal__close.close-button {
    transition-delay: 1s;
    opacity: 1;
    pointer-events: inherit
}

.modal.is-active .modal-content {
    transform: translate3d(0, 0, 0);
    pointer-events: inherit;
    opacity: 1
}

.modal.is-active .modal-content > * {
    transition-delay: 1s;
    opacity: 1
}

.modal.is-active .modal-image {
    transform: translate3d(0, 0, 0);
    pointer-events: inherit;
    opacity: 1
}

.modal.is-active .modal-image:before {
    opacity: 1;
    transition-delay: 0.4s
}

.modal.is-active .modal-image > * {
    transition-delay: 0.5s;
    opacity: 1
}

.modal.is-active .modal-image .stroke-thin {
    opacity: 0
}

.modal.is-active .modal-image .stroke-thick {
    opacity: 1
}

.modal-image {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 400px;
    background: #13191E url("../img/pattern.svg") top left/auto repeat;
    transition: transform 1s ease-out, opacity 1s ease-out;
    transform: translate3d(-100%, 0, 0);
    position: relative;
    opacity: 0;
    pointer-events: none
}

.modal-image:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    height: auto;
    bottom: 0
}

.modal-image > * {
    opacity: 0;
    transition: opacity 0.8s ease
}

.modal-image .stroke-thin {
    opacity: 0
}

.modal-image .stroke-thick {
    opacity: 1
}

@media (min-width: 768px) {
    .modal-image {
        width: 40%;
        min-width: 434px;
        height: 100%;
        display: block;
        padding: 84px 0;
        overflow: auto
    }
}

@media (min-width: 1700px) {
    .modal-image {
        padding: 184px 0;
        display: flex;
        align-items: center;
        justify-content: center
    }
}

.dubs-images {
    padding: 48px 0;
    height: auto
}

.dubs-images > * {
    display: flex;
    flex-wrap: wrap
}

.dubs-images > * .speaker-image {
    width: 160px;
    height: 160px
}

@media (min-width: 1004px) {
    .dubs-images > * .speaker-image {
        width: 260px;
        height: 260px
    }
}

.modal-content {
    position: relative;
    background: #13191E;
    flex-grow: 1;
    transition: transform 1s ease-out, opacity 1s ease-out;
    transform: translate3d(0, 100%, 0);
    opacity: 0;
    pointer-events: none;
    overflow: hidden
}

.modal-content > * {
    width: 760px;
    max-width: 90%;
    position: relative;
    z-index: 1;
    margin: 0 auto;
    padding: 36px 0;
    opacity: 0;
    transition: opacity 1s ease-out
}

@media (min-width: 1480px) {
    .modal-content > * {
        width: 960px
    }
}

@media (min-width: 768px) {
    .modal-content {
        padding: 84px 0;
        overflow: auto
    }
}

@media (min-width: 1700px) {
    .modal-content {
        display: flex;
        align-items: center;
        justify-content: center
    }
}

.modal-content:before {
    width: 25%;
    height: 100%;
    background: url("../img/svgs/lg-bg-shape.svg") top left/cover no-repeat;
    display: block;
    content: '';
    position: absolute;
    top: 0%;
    right: 0%;
    z-index: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s ease-in-out
}

.modal__close.close-button {
    pointer-events: none;
    opacity: 0;
    background: transparent;
    border: 1px solid #fff;
    top: 10px;
    right: 10px
}

.mt-7 {
    margin-top: 36px
}

@media (min-width: 768px) {
    .mt-7 {
        margin-top: 52px
    }
}

.mb-7 {
    margin-bottom: 36px
}

@media (min-width: 768px) {
    .mb-7 {
        margin-bottom: 52px
    }
}

.pt-7 {
    padding-top: 36px
}

@media (min-width: 768px) {
    .pt-7 {
        padding-top: 52px
    }
}

.pb-7 {
    padding-bottom: 36px
}

@media (min-width: 768px) {
    .pb-7 {
        padding-bottom: 52px
    }
}

.mt-8 {
    margin-top: 48px
}

@media (min-width: 768px) {
    .mt-8 {
        margin-top: 64px
    }
}

.mb-8 {
    margin-bottom: 48px
}

@media (min-width: 768px) {
    .mb-8 {
        margin-bottom: 64px
    }
}

.pt-8 {
    padding-top: 48px
}

@media (min-width: 768px) {
    .pt-8 {
        padding-top: 64px
    }
}

.pb-8 {
    padding-bottom: 48px
}

@media (min-width: 768px) {
    .pb-8 {
        padding-bottom: 64px
    }
}

.mt-9 {
    margin-top: 80px
}

@media (min-width: 768px) {
    .mt-9 {
        margin-top: 96px
    }
}

.mb-9 {
    margin-bottom: 80px
}

@media (min-width: 768px) {
    .mb-9 {
        margin-bottom: 96px
    }
}

.pt-9 {
    padding-top: 80px
}

@media (min-width: 768px) {
    .pt-9 {
        padding-top: 96px
    }
}

.pb-9 {
    padding-bottom: 80px
}

@media (min-width: 768px) {
    .pb-9 {
        padding-bottom: 96px
    }
}

.col {
    width: 100%
}

.close-button {
    position: fixed;
    z-index: 13;
    display: block;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.4s ease;
    background: transparent;
    border: 1px solid #fff;
    border-radius: 50%;
    top: 10px;
    right: 10px;
    width: 50px;
    height: 50px
}

.close-button:hover:before,
.close-button:hover:after {
    transform: translate3d(-50%, -50%, 0) rotate(0deg)
}

.close-button:before,
.close-button:after {
    content: '';
    display: block;
    width: 20px;
    height: 1px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform-origin: center;
    transition: transform 0.2s linear
}

.close-button:before {
    transform: translate3d(-50%, -50%, 0) rotate(45deg)
}

.close-button:after {
    transform: translate3d(-50%, -50%, 0) rotate(-45deg)
}

.close-button:hover {
    cursor: pointer
}

.has-accent:after {
    content: "";
    width: 100px;
    height: 2px;
    display: block;
    margin: 20px auto
}

.img-full {
    min-width: 100%
}

.watch-live-iframe {
    margin: 0 auto
}

.video-wrap {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    margin: 0 auto
}

.video-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.text-red {
    color: #EF4C45 !important
}

.text-yellow {
    color: #FAA634 !important
}

.text-blue {
    color: #4F72B8 !important
}

.text-purple {
    color: #A065AA !important
}

.text-cyan {
    color: #0099AE !important
}

.text-green {
    color: #6ABB81
}

.text-white {
    color: #fff
}

.text-black {
    color: #13191E
}

.text-orange {
    color: #F4792B !important
}

.border-bottom {
    border-bottom: 1px solid #1C2329 !important
}

.border-top {
    border-top: 1px solid #1C2329 !important
}

.text-center {
    text-align: center
}

.text-center p,
.text-center img,
.text-center .text-thin {
    margin-left: auto;
    margin-right: auto
}

.text-w-thin {
    max-width: 560px
}

.text-light {
    color: #767676
}

.text-right {
    text-align: right
}

@media (min-width: 768px) {
    .text-md-right {
        text-align: right
    }
}

.font-ss {
    font-family: "Titillium", mono, sans-serif
}

.sub {
    font-size: 60%;
    text-transform: uppercase
}

.text-italic {
    font-style: italic
}

.text-bold,
.text-500 {
    font-weight: 500
}

.text-400 {
    font-weight: 400
}

.text-300 {
    font-weight: 300
}

.text-flush {
    margin-bottom: 0
}

.text-flush + * {
    margin-top: 0
}

.text-lh-1 {
    line-height: 1
}

.bg-white {
    background: #fff;
    color: #13191E
}

.bg-light {
    background: #FAFCFD;
    color: #13191E
}

.bg-gray-dark {
    background: #1C2329
}

.bg-orange {
    background: linear-gradient(90deg, #FAA634 0%, #F4792B 100%)
}

.bg-purple {
    background: linear-gradient(90deg, #A065AA 0%, #4F72B8 100%)
}

.sr-only,
.screen-reader-text {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.flex-basis-0 {
    flex-basis: 0;
    flex-grow: 1
}

.is-hidden {
    display: none
}

iframe {
    overflow: scroll
}

.video-placeholder {
    background: #1C2329;
    width: 100%;
    height: 0;
    padding-bottom: 52%
}