@import url(https://fonts.googleapis.com/css2?family=Outfit:wght@100;200;300;400;500;600;700;800;900&display=swap);
@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/all.min.css);

*,
:after,
:before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

body,
html {
    padding: 0;
    margin: 0;
    font-family: Outfit, sans-serif;
    font-size: 16px;
    font-weight: 300;
    color: rgba(0, 0, 0, .5);
    line-height: 150%;
    -ms-scroll-chaining: none;
    overscroll-behavior: none
}

@media screen and (max-width:768px) {

    body,
    html {
        font-size: 15px
    }
}

::-moz-selection {
    color: inherit;
    background-color: transparent
}

::selection {
    color: inherit;
    background-color: transparent
}

.mil-wrapper {
    position: relative;
    overflow: visible;
    max-width: 100%
}

.container {
    pointer-events: all
}

.mil-relative {
    position: relative
}

.mil-o-hidden {
    overflow: hidden
}

.mil-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.mil-vert-between {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 100%
}

.mil-larr{
    transform: rotate(180deg);
}

@media screen and (max-width:992px) {
    .mil-mobile-hidden {
        display: none
    }
}

section {
    position: relative;
    overflow: hidden
}

.mil-h1,
.mil-h12,
.mil-h3,
.mil-h4,
.mil-h5,
.mil-h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Outfit, sans-serif;
    color: #000;
    font-weight: 500;
    line-height: 120%
}

@media screen and (max-width:768px) {

    .mil-h1 br,
    .mil-h12 br,
    .mil-h3 br,
    .mil-h4 br,
    .mil-h5 br,
    .mil-h6 br,
    h1 br,
    h2 br,
    h3 br,
    h4 br {
        display: none
    }
}

.mil-h1,
h1 {
    font-size: 70px
}

@media screen and (max-width:1400px) {

    .mil-h1,
    h1 {
        font-size: 70px
    }
}

@media screen and (max-width:1200px) {

    .mil-h1,
    h1 {
        font-size: 70px
    }
}

@media screen and (max-width:992px) {

    .mil-h1,
    h1 {
        font-size: 58px
    }
}

@media screen and (max-width:768px) {

    .mil-h1,
    h1 {
        font-size: 34px
    }
}

.mil-h2,
h2 {
    font-size: 60px;
    line-height: 120%
}

@media screen and (max-width:1200px) {

    .mil-h2,
    h2 {
        font-size: 48px
    }
}

@media screen and (max-width:992px) {

    .mil-h2,
    h2 {
        font-size: 44px
    }
}

@media screen and (max-width:768px) {

    .mil-h2,
    h2 {
        font-size: 36px
    }
}

.mil-h3,
h3 {
    font-size: 42px
}

@media screen and (max-width:1200px) {

    .mil-h3,
    h3 {
        font-size: 39px
    }
}

@media screen and (max-width:992px) {

    .mil-h3,
    h3 {
        font-size: 36px
    }
}

@media screen and (max-width:768px) {

    .mil-h3,
    h3 {
        font-size: 30px
    }
}

.mil-h4,
h4 {
    font-size: 28px
}

@media screen and (max-width:1200px) {

    .mil-h4,
    h4 {
        font-size: 26px
    }
}

@media screen and (max-width:992px) {

    .mil-h4,
    h4 {
        font-size: 24px
    }
}

@media screen and (max-width:768px) {

    .mil-h4,
    h4 {
        font-size: 22px
    }
}

.mil-h5,
h5 {
    font-size: 20px;
    line-height: 150%
}

@media screen and (max-width:768px) {
    .mil-h5 {
        font-size: 18px
    }
}

.mil-h6,
h6 {
    font-size: 18px;
    line-height: 150%
}

@media screen and (max-width:1200px) {
    .mil-h6 {
        font-size: 17px
    }
}

@media screen and (max-width:992px) {
    .mil-h6 {
        font-size: 16px
    }
}

@media screen and (max-width:768px) {
    .mil-h6 {
        font-size: 21px
    }
}

.mil-no-wrap {
    white-space: nowrap
}

blockquote {
    padding: 60px;
    background-color: rgba(0, 0, 0, .05);
    font-size: 18px;
    color: #000;
    font-style: italic;
    border-left: solid 4px #266cf1
}

@media screen and (max-width:768px) {
    blockquote {
        padding: 30px;
        font-size: 16px
    }
}

.mil-text-sm {
    font-size: 15px
}

.mil-text-lg {
    font-size: 18px;
    line-height: 170%
}

.mil-text-xl {
    font-size: 22px;
    line-height: 180%
}

@media screen and (max-width:768px) {
    .mil-text-xl {
        font-size: 20px
    }
}

.mil-upper {
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px
}

.mil-bold {
    font-weight: 500
}

.mil-thin {
    font-weight: 200
}

a {
    color: inherit;
    text-decoration: none
}

.mil-complex-title {
    line-height: normal
}

.mil-accent {
    color: #266cf1
}

.mil-light {
    color: #fff !important
}

.mil-light a {
    color: #fff !important
}

.mil-muted {
    color: rgba(255, 255, 255, .9)
}

.mil-dark {
    color: #000
}

.rgx-header-brand {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
    pointer-events: none
}

.rgx-header-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 10px 18px;
    color: var(--rgx-palette-primary);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1.8px;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
    pointer-events: all;
    -webkit-transition: background .3s ease, border-color .3s ease, box-shadow .3s ease, -webkit-transform .3s ease;
    transition: background .3s ease, border-color .3s ease, box-shadow .3s ease, -webkit-transform .3s ease;
    transition: background .3s ease, border-color .3s ease, box-shadow .3s ease, transform .3s ease;
    transition: background .3s ease, border-color .3s ease, box-shadow .3s ease, transform .3s ease, -webkit-transform .3s ease
}

.rgx-header-pill:hover {
    /* background: rgba(var(--rgx-palette-accent-rgb), .82);
    border-color: rgba(var(--rgx-palette-primary-rgb), .24);
    box-shadow: 0 12px 24px rgba(var(--rgx-palette-primary-rgb), .16);
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px) */
}

.rgx-nav-links {
    display: flex;
    gap: 4px;
    margin-right: auto;
    margin-left: 60px;
}

@media screen and (max-width:1200px) {
    .rgx-header-pill {
        display: none
    }

    .rgx-nav-links {
        display: none
    }

}

.mil-light-soft {
    color: rgba(255, 255, 255, .4)
}

.mil-dark-soft {
    color: rgba(0, 0, 0, .5)
}

.mil-marker {
    background-color: #266cf1;
    padding: 0 5px
}

.mil-center {
    text-align: center
}

.mil-left {
    text-align: left
}

.mil-right {
    text-align: right
}

@media screen and (max-width:576px) {
    .mil-sm-center {
        text-align: center
    }
}

.mil-suptitle {
    position: relative;
    display: block;
    margin-bottom: 40px
}

.mil-suptitle:before {
    content: "";
    position: absolute;
    right: calc(100% + 30px);
    top: 10px;
    width: 600px;
    height: 1px;
    background-color: #fff;
    opacity: .2
}

.mil-suptitle.mil-suptitle-right {
    text-align: right
}

.mil-suptitle.mil-suptitle-right:before {
    left: calc(100% + 30px)
}

@media screen and (max-width:768px) {
    .mil-suptitle.mil-suptitle-right {
        text-align: center
    }

    .mil-suptitle.mil-suptitle-right:before {
        display: none
    }
}

.mil-suptitle.mil-suptitle-dark:before {
    background-color: #000;
    opacity: .1
}

@media screen and (max-width:768px) {
    .mil-suptitle {
        margin-bottom: 60px
    }
}

.mil-divider {
    width: 100%;
    height: 1px;
    background-color: rgba(255, 255, 255, .1)
}

.mil-img-frame {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-bottom: 140%
}

.mil-img-frame img {
    scale: 0.8 !important;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.mil-link {
    cursor: pointer;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 12px !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 12px;
    min-width: fit-content;
    padding-left: 24px !important;
}

.mil-link .mil-arrow {
    border-radius: 50%;
    width: 40px;
    height: 40px;
    padding: 10px;
    background-color: rgba(var(--rgx-palette-primary-rgb), .14) !important;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-link.mil-muted .mil-arrow {
    background-color: rgba(var(--rgx-palette-primary-rgb), .14) !important;
}

.mil-link .mil-arrow {
    fill: rgb(255, 255, 255)
}

.mil-link.mil-accent svg {
    background-color: rgba(255, 255, 255, .1);
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-link.mil-accent svg path {
    fill: rgb(38, 108, 241)
}

.mil-link.mil-dark svg {
    background-color: rgba(0, 0, 0, .1);
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-link.mil-dark svg path {
    fill: rgb(0, 0, 0)
}

.mil-link:hover svg {
    -webkit-transform: scale(1.15);
    transform: scale(1.15)
}

.mil-link.mil-down-arrow svg {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.mil-link.mil-down-arrow:hover svg {
    -webkit-transform: scale(1.15) rotate(90deg);
    transform: scale(1.15) rotate(90deg)
}

.mil-link.mil-icon-left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.mil-link.mil-icon-left svg {
    margin-left: 0;
    margin-right: 15px;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.mil-link.mil-icon-left:hover svg {
    -webkit-transform: scale(1.15) rotate(180deg);
    transform: scale(1.15) rotate(180deg)
}

.mil-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px !important;
    opacity: 0.8 !important;
    color: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    width: 40px;
    height: 40px;
    background: linear-gradient(145deg, var(--rgx-palette-accent) 0, rgba(var(--rgx-palette-bg-rgb), .95) 100%) !important;
    box-shadow: var(--rgx-shadow-soft) !important;
    border-radius: 50%;
}

.mil-button {
    cursor: pointer;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 24px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: none;
    letter-spacing: 2px;
    font-size: 12px;
    background-color: #266cf1;
    color: #000;
    border-radius: 70px;
    padding: 0 15px 0 50px;
    height: 70px;
    text-transform: uppercase;
    font-weight: 500;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-button span {
    white-space: nowrap
}

.mil-button .mil-arrow {
    color: #266cf1 !important;
}

.mil-button svg {
    margin-left: 30px;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    padding: 10px;
    background-color: #000;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-button svg path {
    fill: rgb(38, 108, 241)
}

.mil-button.mil-icon-button {
    padding: 15px
}

.mil-button.mil-icon-button svg {
    margin-left: 0
}

.mil-button.mil-icon-button-sm {
    padding: 0;
    height: 40px;
    width: 40px;
    min-width: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    line-height: 1;
}

.mil-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: inherit;
    color: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    width: 40px;
    height: 40px;
    background: linear-gradient(145deg, var(--rgx-palette-accent) 0, rgba(var(--rgx-palette-bg-rgb), .95) 100%) !important;
    box-shadow: var(--rgx-shadow-soft) !important;
    border-radius: 50%;
}

.mil-button.mil-icon-button-sm svg {
    margin-left: 0;
    background-color: #266cf1
}

.mil-button.mil-icon-button-sm svg path {
    fill: rgb(0, 0, 0)
}

.mil-button:hover {
    -webkit-transform: scale(1.015);
    transform: scale(1.015);
    -webkit-filter: brightness(110%);
    filter: brightness(110%)
}

.mil-button:hover svg {
    -webkit-transform: scale(1.15);
    transform: scale(1.15)
}

.mil-button.mil-arrow-down svg {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.mil-button.mil-arrow-down:hover {
    -webkit-transform: scale(1.015);
    transform: scale(1.015);
    -webkit-filter: brightness(110%);
    filter: brightness(110%)
}

.mil-button.mil-arrow-down:hover svg {
    -webkit-transform: scale(1.15) rotate(90deg);
    transform: scale(1.15) rotate(90deg)
}

@media screen and (max-width:992px) {
    .mil-button {
        height: 60px;
        padding: 0 10px 0 40px
    }

    .mil-button svg {
        margin-left: 25px
    }
}

input,
textarea {
    position: relative;
    height: 60px;
    padding: 0 30px;
    width: 100%;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    font-family: Outfit, sans-serif;
    color: #000;
    border: none;
    border-bottom: solid 1px rgba(0, 0, 0, .2);
    margin-bottom: 30px;
    background: #ffffff8a;
}

input:focus,
textarea:focus {
    outline: inherit
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    color: rgba(0, 0, 0, .5)
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    color: rgba(0, 0, 0, .5)
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    color: rgba(0, 0, 0, .5)
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    color: rgba(0, 0, 0, .5)
}

input::placeholder,
textarea::placeholder {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    color: rgba(0, 0, 0, .5)
}

textarea {
    padding: 15px 30px;
    height: 200px
}

.mil-breadcrumbs {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative
}

.mil-breadcrumbs:before {
    content: "";
    position: absolute;
    right: calc(100% + 30px);
    top: 10px;
    width: 100vw;
    height: 1px;
    background-color: rgba(0, 0, 0, .1)
}

.mil-breadcrumbs li {
    list-style-type: none
}

.mil-breadcrumbs li:after {
    content: "/";
    margin: 0 15px;
    color: #000
}

.mil-breadcrumbs li a {
    color: #000;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    font-size: 12px;
    white-space: nowrap;
    -webkit-transition: .2s cubic-bezier(0, 0, .3642, 1);
    transition: .2s cubic-bezier(0, 0, .3642, 1)
}

.mil-breadcrumbs li a:hover {
    color: #266cf1
}

.mil-breadcrumbs li:last-child {
    margin-right: 0;
    cursor: not-allowed
}

.mil-breadcrumbs li:last-child a {
    opacity: .4;
    pointer-events: none
}

.mil-breadcrumbs li:last-child:after {
    display: none
}

.mil-breadcrumbs.mil-light:before {
    background-color: rgba(255, 255, 255, .1)
}

.mil-breadcrumbs.mil-light li:after {
    color: rgba(255, 255, 255, .9)
}

.mil-breadcrumbs.mil-light li a:hover {
    color: #266cf1 !important
}

.mil-breadcrumbs.mil-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.mil-dark-bg {
    position: relative
}

.mil-dark-bg:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    pointer-events: none;
    z-index: 2;
    -webkit-backdrop-filter: invert(100%);
    backdrop-filter: invert(100%)
}

.mil-dark-bg .mi-invert-fix {
    height: 100%;
    position: relative;
    pointer-events: none;
    z-index: 3
}

.mil-dark-bg .mi-invert-fix .container {
    pointer-events: all
}

.mil-soft-bg {
    background-color: #f2f2f2
}

.mil-mr-30 {
    margin-right: 30px
}

.mil-mb-5 {
    margin-bottom: 5px
}

.mil-mb-10 {
    margin-bottom: 10px
}

.mil-mb-15 {
    margin-bottom: 15px
}

.mil-mb-20 {
    margin-bottom: 15px
}

.mil-mb-30 {
    margin-bottom: 30px
}

.mil-mb-60 {
    margin-bottom: 60px
}

.mil-mb-90 {
    margin-bottom: 90px
}

.mil-mb-120 {
    margin-bottom: 120px
}

@media screen and (max-width:992px) {
    .mil-mb-120 {
        margin-bottom: 90px
    }
}

.mil-mt-suptitle-offset {
    margin-top: 70px
}

@media screen and (max-width:992px) {
    .mil-mt-suptitle-offset {
        margin-top: 30px
    }
}

.mil-p-120-120 {
    padding-top: 120px;
    padding-bottom: 120px
}

@media screen and (max-width:992px) {
    .mil-p-120-120 {
        padding-top: 90px;
        padding-bottom: 90px
    }
}

.mil-p-120-90 {
    padding-top: 120px;
    padding-bottom: 90px
}

@media screen and (max-width:992px) {
    .mil-p-120-90 {
        padding-top: 90px;
        padding-bottom: 60px
    }
}

.mil-p-0-120 {
    padding-bottom: 120px
}

@media screen and (max-width:992px) {
    .mil-p-0-120 {
        padding-bottom: 90px
    }
}

.mil-p-120-0 {
    padding-top: 120px
}

@media screen and (max-width:992px) {
    .mil-p-120-0 {
        padding-top: 90px
    }
}

.mil-p-120-60 {
    padding-top: 120px;
    padding-bottom: 60px
}

@media screen and (max-width:992px) {
    .mil-p-120-60 {
        padding-top: 90px;
        padding-bottom: 30px
    }
}

.mil-p-90-90 {
    padding-top: 90px;
    padding-bottom: 90px
}

@media screen and (max-width:992px) {
    .mil-p-90-90 {
        padding-top: 60px;
        padding-bottom: 60px
    }
}

.mil-p-90-120 {
    padding-top: 90px;
    padding-bottom: 120px
}

@media screen and (max-width:992px) {
    .mil-p-90-120 {
        padding-top: 60px;
        padding-bottom: 90px
    }
}

.mil-p-0-90 {
    padding-bottom: 90px
}

@media screen and (max-width:992px) {
    .mil-p-0-90 {
        padding-bottom: 60px
    }
}

.mil-p-0-30 {
    padding-bottom: 30px
}

@media screen and (max-width:992px) {
    .mil-p-0-30 {
        padding-bottom: 0
    }
}

.mil-p-120-30 {
    padding-top: 120px;
    padding-bottom: 30px
}

@media screen and (max-width:992px) {
    .mil-p-120-30 {
        padding-top: 90px;
        padding-bottom: 0
    }
}

.mil-adaptive-right {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

@media screen and (max-width:992px) {
    .mil-adaptive-right {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
}

.mil-btn-space {
    margin-right: 30px
}

@media screen and (max-width:500px) {
    .mil-btn-space {
        margin-right: 50px;
        margin-bottom: 30px
    }
}

/* ===== PRELOADER CONTAINER ===== */
.mil-preloader {
    position: fixed;
    z-index: 9;
    inset: 0;
    height: 100vh;
    background-color: #000;
    overflow: hidden;
    animation: rgx-preloader-exit .15s ease forwards 2s;
    contain: layout paint;
}

/* ===== SHIMMER (OPTIMIZED) ===== */
.mil-preloader:after {
    content: "";
    position: absolute;
    inset: -10%;
    /* reduced from -25% */
    background: linear-gradient(115deg,
            transparent 42%,
            rgba(255, 255, 255, 0.08) 50%,
            transparent 58%);
    transform: translate3d(-120%, 0, 0) skewX(-12deg);
    animation: rgx-preloader-shimmer 1.8s linear infinite;
    pointer-events: none;
    z-index: 0;
    will-change: transform;
}

/* ===== MAIN ANIMATION WRAPPER ===== */
.mil-preloader .mil-preloader-animation {
    position: relative;
    z-index: 1;
    height: 100vh;
    color: #fff;
    animation: rgx-preloader-float 2s ease-in-out infinite alternate;
    will-change: transform;
    transform: translateZ(0);
}

/* ===== CENTER CONTENT ===== */
.mil-preloader .mil-pos-abs {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* ===== TEXT ENTRY ===== */
.mil-preloader .mil-pos-abs p:not(.mil-reveal-box) {
    opacity: 0;
    margin-right: 15px;
    animation: rgx-preloader-line .4s ease forwards;
}

/* ===== DELAYS ===== */
.mil-animation-1 .mil-h3:nth-child(1) {
    animation-delay: .05s;
}

.mil-animation-1 .mil-h3:nth-child(2) {
    animation-delay: .15s;
}

.mil-animation-1 .mil-h3:nth-child(3) {
    animation-delay: .25s;
}

.mil-animation-2 .mil-h3 {
    animation-delay: .4s;
}

/* ===== POSITION OFFSET ===== */
.mil-animation-1 {
    transform: translateY(-20px);
}

.mil-animation-2 {
    transform: translateY(20px);
}

/* ===== REVEAL FRAME ===== */
.mil-reveal-frame {
    position: relative;
    padding: 0 30px;
}

/* 🚀 FIXED: NO MORE WIDTH ANIMATION */
.mil-reveal-box {
    position: absolute;
    inset: 0;
    background-color: #266cf1;
    transform: scaleX(0);
    transform-origin: left;
    opacity: 0;
    animation: revealX .8s ease forwards .25s;
}

/* ===== MOBILE OPTIMIZATION ===== */
@media (max-width: 768px) {
    .mil-preloader:after {
        display: none;
        /* removes laggy shimmer on phones */
    }
}

/* ===== KEYFRAMES ===== */

@keyframes rgx-preloader-line {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 🚀 TRANSFORM-BASED REVEAL (SMOOTH) */
@keyframes revealX {
    0% {
        opacity: 0;
        transform: scaleX(0);
    }

    30% {
        opacity: 1;
    }

    70% {
        transform: scaleX(1);
    }

    100% {
        transform: scaleX(0);
    }
}

/* SHIMMER */
@keyframes rgx-preloader-shimmer {
    0% {
        transform: translate3d(-120%, 0, 0) skewX(-12deg);
    }

    100% {
        transform: translate3d(120%, 0, 0) skewX(-12deg);
    }
}

/* FLOAT */
@keyframes rgx-preloader-float {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-4px);
    }
}

/* EXIT */
@keyframes rgx-preloader-exit {

    0%,
    80% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }
}

.mil-ball {
    width: 20px;
    height: 20px;
    position: fixed;
    z-index: 10;
    background-color: #000;
    border-radius: 50%;
    pointer-events: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    opacity: .1;
    display: none !important
}

.mil-ball .mil-icon-1 {
    position: absolute;
    width: 40px;
    height: 40px;
    -webkit-transform: scale(0);
    transform: scale(0)
}

.mil-ball .mil-icon-1 svg {
    fill: rgba(255, 255, 255, 0.9)
}

.mil-ball .mil-choose-text,
.mil-ball .mil-more-text {
    position: absolute;
    width: 100%;
    text-align: center;
    display: block;
    color: rgba(255, 255, 255, .9);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    -webkit-transform: scale(0);
    transform: scale(0)
}

.mil-ball.mil-accent .mil-icon-1 svg {
    fill: rgb(0, 0, 0)
}

.mil-ball.mil-accent .mil-choose-text,
.mil-ball.mil-accent .mil-more-text {
    color: #000
}

@media screen and (max-width:1200px) {
    .mil-ball {
        display: none
    }
}

.mil-hidden-elements .mil-arrow,
.mil-hidden-elements .mil-dodecahedron,
.mil-hidden-elements .mil-lines {
    display: none
}

::-webkit-scrollbar {
    display: none
}

.mil-progress-track {
    position: fixed;
    z-index: 10;
    top: 0;
    right: 0;
    width: 4px;
    height: 100%;
    background-color: #000
}

.mil-progress-track .mil-progress {
    width: 4px;
    height: 0;
    background-color: #266cf1
}

@media screen and (max-width:992px) {
    .mil-progress-track {
        display: none
    }
}

.mil-logo {
    font-size: 32px;
    font-weight: 500;
    line-height: 100%
}

@media screen and (max-width:992px) {
    .mil-logo {
        font-size: 24px
    }
}

.mil-frame {
    padding: 24px 60px 60px 60px;
    position: fixed;
    z-index: 10;
    pointer-events: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    height: 100%
}

@media screen and (max-width:1200px) {
    .mil-frame {
        padding: 24px
    }
}

@media screen and (max-width:1200px) {
    .mil-frame {
        padding: 0;
        height: 90px
    }
}

.mil-frame .mil-frame-top {
    position: relative;
    z-index: 0;
    isolation: isolate
}

.mil-frame .mil-frame-top:before {
    content: "";
    position: absolute;
    inset: -16px -20px;
    border: 1px solid transparent;
    border-radius: 28px;
    background: linear-gradient(135deg, rgba(var(--rgx-palette-bg-rgb), 0) 0, rgba(var(--rgx-palette-accent-rgb), 0) 100%);
    opacity: 0;
    pointer-events: none;
    box-shadow: none;
    -webkit-backdrop-filter: blur(0);
    backdrop-filter: blur(0);
    -webkit-transition: background .3s ease, opacity .3s ease, border-color .3s ease, box-shadow .3s ease, -webkit-backdrop-filter .3s ease, backdrop-filter .3s ease;
    transition: background .3s ease, opacity .3s ease, border-color .3s ease, box-shadow .3s ease, -webkit-backdrop-filter .3s ease, backdrop-filter .3s ease;
    z-index: -1
}

.mil-frame.mil-header-stuck .mil-frame-top:before {
    background: linear-gradient(135deg, rgba(var(--rgx-palette-bg-rgb), .86) 0, rgba(var(--rgx-palette-accent-rgb), .62) 100%);
    border-color: rgba(var(--rgx-palette-primary-rgb), .18);
    opacity: 1;
    box-shadow: 0 12px 28px rgba(var(--rgx-palette-primary-rgb), .14);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
}

@media screen and (max-width:1200px) {
    .mil-frame .mil-frame-top {
        height: 90px;
        background-color: var(--rgx-palette-primary);
        border-bottom: solid 1px rgba(255, 255, 255, .1);
        padding: 0 24px;
        -webkit-backdrop-filter: blur(8px);
        backdrop-filter: blur(8px);
        isolation: auto
    }

    .mil-frame .mil-frame-top:before {
        display: none
    }

    .mil-frame .mil-frame-top .mil-logo {
        color: #fff
    }

    .mil-frame .mil-frame-top .mil-menu-btn span,
    .mil-frame .mil-frame-top .mil-menu-btn span:after,
    .mil-frame .mil-frame-top .mil-menu-btn span:before {
        background: #fff
    }
}

.mil-frame.mil-header-stuck .mil-frame-top:before {
    background: linear-gradient(135deg, rgba(var(--rgx-palette-bg-rgb), .86) 0, rgba(var(--rgx-palette-accent-rgb), .62) 100%);
    border-color: rgba(var(--rgx-palette-primary-rgb), .18);
    opacity: 1;
    box-shadow: 0 12px 28px rgba(var(--rgx-palette-primary-rgb), .14);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px)
}

.mil-frame .mil-frame-bottom {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

@media screen and (max-width:1200px) {
    .mil-frame .mil-frame-bottom {
        display: none
    }
}

.mil-frame .mil-frame-bottom .mil-current-page {
    pointer-events: none;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 12px;
    width: 300px;
    color: rgba(var(--rgx-palette-bg-rgb), .95);
    display: inline-flex;
    align-items: center;
    -webkit-transform: rotate(-90deg) translateX(138px) translateY(-138px);
    transform: rotate(-90deg) translateX(138px) translateY(-138px)
}

.mil-frame .mil-frame-bottom .mil-current-page a {
    display: none !important;
    padding: 6px 14px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .2);
    background: rgba(var(--rgx-palette-primary-rgb), .82);
    box-shadow: 0 10px 18px rgba(var(--rgx-palette-primary-rgb), .2)
}

.mil-frame .mil-frame-bottom .mil-back-to-top {
    width: 300px;
    -webkit-transform: rotate(-90deg) translateX(130px) translateY(130px);
    transform: rotate(-90deg) translateX(130px) translateY(130px);
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.mil-frame .mil-frame-bottom .mil-back-to-top.visible {
    pointer-events: all;
    opacity: 1;
}

.mil-frame .mil-frame-bottom .mil-back-to-top .mil-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 6px 16px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .2);
    background: rgb(17 33 64 / 31%);
    color: rgba(var(--rgx-palette-bg-rgb), .95);
    box-shadow: 0 10px 18px rgba(var(--rgx-palette-primary-rgb), .22)
}

.mil-frame .mil-frame-bottom .mil-back-to-top .mil-link span {
    color: var(--rgx-on-dark-soft)
}

.mil-frame .mil-frame-bottom .mil-back-to-top .mil-link span.mil-arrow {
    color: var(--rgx-palette-primary);
    opacity: 0.5;
}

.mil-frame-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.mil-frame .mil-frame-top {
    pointer-events: auto
}

.mil-frame-top .mil-logo {
    pointer-events: all;
    color: #000
}

.mil-menu-btn {
    pointer-events: all;
    height: 28px;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: 0 0;
    border: 0;
    padding: 0;
    font: inherit;
    -webkit-appearance: none;
    appearance: none;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

@media screen and (max-width:992px) {
    .mil-menu-btn {
        -webkit-transform: scale(.85);
        transform: scale(.85)
    }
}

.mil-menu-btn span,
.mil-menu-btn span:after,
.mil-menu-btn span:before {
    content: "";
    display: block;
    width: 28px;
    height: 2.5px;
    background: #000;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: inherit;
    transition: inherit
}

.mil-menu-btn span {
    position: relative
}

.mil-menu-btn span:after,
.mil-menu-btn span:before {
    position: absolute
}

.mil-menu-btn span:before {
    top: -9px
}

.mil-menu-btn span:after {
    width: 18px;
    top: 9px
}

.mil-menu-btn.mil-active span {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.mil-menu-btn.mil-active span:before {
    -webkit-transform: translate(0, 9px) rotate(-90deg);
    transform: translate(0, 9px) rotate(-90deg)
}

.mil-menu-btn.mil-active span:after {
    opacity: 0;
    width: 24px;
    -webkit-transform: translate(0, -9px) rotate(-90deg);
    transform: translate(0, -9px) rotate(-90deg)
}

.mil-menu-frame {
    position: fixed;
    z-index: 9;
    width: 100%;
    height: 100vh;
    background-color: #000;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}


@media screen and (max-width:1200px) {

    .mil-menu-frame {
        top: 90px
    }
}

.mil-menu-frame .container {
    pointer-events: none
}

.mil-menu-frame .mil-frame-top {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 24px 60px;
    z-index: 9;
}

@media screen and (max-width:1200px) {
    .mil-menu-frame .mil-frame-top {
        display: none
    }
}

.mil-menu-frame .mil-main-menu {
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px);
    opacity: 0;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

@media screen and (max-width:1200px) {
    .mil-menu-frame .mil-main-menu {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }
}

.mil-menu-frame .mil-menu-right-frame {
    padding-left: 60px;
    position: relative;
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    border-left: solid 1px rgba(255, 255, 255, .1);
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-menu-frame .mil-menu-right-frame .mil-menu-right {
    padding-bottom: 60px
}

.mil-menu-frame .mil-menu-right-frame .mil-animation-in {
    position: absolute;
    top: -320px;
    right: 0;
    opacity: 0;
    -webkit-transform: translateY(-60px);
    transform: translateY(-60px);
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

@media screen and (max-width:1200px) {
    .mil-menu-frame .mil-menu-right-frame {
        display: none
    }
}

@media screen and (max-height:800px) {
    .mil-menu-frame .mil-menu-right-frame {
        display: none
    }
}

.mil-menu-frame.mil-active {
    opacity: 1;
    pointer-events: all
}

body.is-menu-open .mil-menu-frame {
    opacity: 1 !important;
    pointer-events: all !important
}

body.is-menu-open .mil-menu-frame .container {
    pointer-events: all !important
}

.mil-menu-frame.mil-active .container {
    pointer-events: all
}

.mil-menu-frame.mil-active .mil-main-menu {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s
}

.mil-menu-frame.mil-active .mil-menu-right-frame {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition-delay: 0.6s;
    transition-delay: 0.6s
}

.mil-menu-frame.mil-active .mil-menu-right-frame .mil-animation-in {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition-delay: 0.8s;
    transition-delay: 0.8s
}

.mil-menu-list li {
    list-style-type: none;
    margin-bottom: 15px
}

.mil-menu-list li:last-child {
    margin-bottom: 0
}

.mil-menu-list li a {
    display: block;
    -webkit-transition: .2s cubic-bezier(0, 0, .3642, 1);
    transition: .2s cubic-bezier(0, 0, .3642, 1)
}

.mil-menu-list li a:hover {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
    color: #fff
}

.mil-menu-list.mil-hori-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.mil-menu-list.mil-hori-list li {
    margin-bottom: 0;
    margin-right: 30px
}

.mil-menu-list.mil-dark li a {
    color: #000
}

.mil-main-menu {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.mil-main-menu ul {
    padding: 0;
    margin: 0
}

.mil-main-menu ul li {
    margin-bottom: 40px
}

.mil-main-menu ul li:last-child {
    margin-bottom: 0
}

.mil-main-menu ul li a {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 500;
    color: rgba(255, 255, 255, .8);
    font-size: 34px;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

@media screen and (max-width:992px) {
    .mil-main-menu ul li a {
        font-size: 26px
    }
}

.mil-main-menu ul li a:before {
    content: "";
    position: absolute;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, .4);
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-main-menu ul li a:hover {
    color: #fff
}

.mil-main-menu ul li a.mil-active {
    padding-left: 25px
}

.mil-main-menu ul li a.mil-active:before {
    -webkit-transform: scale(1);
    transform: scale(1);
    background-color: #266cf1
}

.mil-main-menu ul li.mil-active>a {
    color: #266cf1
}

.mil-main-menu ul li.mil-active>a:hover {
    color: #266cf1 !important;
    -webkit-filter: brightness(110%);
    filter: brightness(110%)
}

.mil-main-menu ul li.mil-has-children>a:hover {
    color: #fff;
    padding-left: 25px
}

.mil-main-menu ul li.mil-has-children>a:hover:before {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.mil-main-menu ul li.mil-has-children ul {
    padding-left: 25px;
    overflow: hidden;
    max-height: 0;
    -webkit-transition: .6s cubic-bezier(0, 0, .3642, 1);
    transition: .6s cubic-bezier(0, 0, .3642, 1)
}

.mil-main-menu ul li.mil-has-children ul li {
    margin-bottom: 5px
}

.mil-main-menu ul li.mil-has-children ul li:first-child {
    margin-top: 40px
}

.mil-main-menu ul li.mil-has-children ul li a {
    display: block;
    font-size: 12px;
    color: rgba(255, 255, 255, .4);
    letter-spacing: 2px;
    font-weight: 500;
    text-transform: uppercase
}

.mil-main-menu ul li.mil-has-children ul li a:before {
    display: none
}

.mil-main-menu ul li.mil-has-children ul li a:hover {
    color: rgba(255, 255, 255, .8);
    -webkit-transform: translateX(5px);
    transform: translateX(5px)
}

.mil-main-menu ul li.mil-has-children ul.mil-active {
    max-height: 200px
}

@media screen and (max-width:1200px) {
    .mil-main-menu {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .mil-main-menu ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .mil-main-menu ul li {
        margin-bottom: 30px
    }

    .mil-main-menu ul li a {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .mil-main-menu ul li a:before {
        display: none
    }

    .mil-main-menu ul li a.mil-active {
        padding-left: 0 !important
    }

    .mil-main-menu ul li.mil-has-children ul {
        padding-left: 0
    }

    .mil-main-menu ul li.mil-has-children ul li:first-child {
        margin-top: 30px
    }
}

.mil-banner {
    height: 100vh
}

.mil-banner .container {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.mil-banner .mil-banner-content {
    width: 100%;
    padding-bottom: 120px;
    position: relative
}

@media screen and (max-width:992px) {
    .mil-banner .mil-banner-content {
        padding-bottom: 90px
    }
}

.mil-banner .mil-lines-place {
    position: absolute;
    left: 0;
    bottom: calc(100% + 120px)
}

.mil-inner-banner .mil-banner-content {
    padding: 50px 0 0 0
}

@media screen and (max-width:1200px) {
    .mil-inner-banner .mil-banner-content {
        padding: 80px 0 0 0
    }
}

.mil-banner-personal {
    height: 100vh;
    background-color: rgba(0, 0, 0, .1)
}

.mil-banner-personal .mil-banner-content {
    position: relative;
    padding-top: 90px
}

@media screen and (max-width:992px) {
    .mil-banner-personal .mil-banner-content {
        padding-top: 180px
    }
}

.mil-banner-personal .mil-banner-content .mil-personal-text {
    margin-bottom: 300px
}

@media screen and (max-width:992px) {
    .mil-banner-personal .mil-banner-content .mil-personal-text {
        margin-bottom: 80px;
        text-align: center
    }
}

.mil-banner-personal .mil-banner-content .mil-banner-panel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 60px 0 90px;
    background-color: #fff;
    height: 180px;
    position: absolute;
    top: calc(100vh - 180px);
    left: 0;
    width: 100%
}

@media screen and (max-width:992px) {
    .mil-banner-personal .mil-banner-content .mil-banner-panel {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        height: auto;
        padding: 60px 30px
    }

    .mil-banner-personal .mil-banner-content .mil-banner-panel .mil-h5 {
        margin-bottom: 60px;
        text-align: center;
        width: 80%
    }
}

.mil-banner-personal .mil-banner-content .mil-banner-panel .mil-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.mil-banner-personal .mil-banner-content .mil-banner-panel .mil-right .mil-social-frame {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-right: 30px;
    padding: 0 50px;
    background-color: rgba(0, 0, 0, .1);
    height: 70px;
    border-radius: 70px;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-banner-personal .mil-banner-content .mil-banner-panel .mil-right .mil-social-frame:hover {
    -webkit-transform: scale(1.015);
    transform: scale(1.015)
}

@media screen and (max-width:992px) {
    .mil-banner-personal .mil-banner-content .mil-banner-panel .mil-right {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .mil-banner-personal .mil-banner-content .mil-banner-panel .mil-right .mil-social-frame {
        margin-right: 0;
        margin-bottom: 30px;
        height: 60px
    }
}

.mil-banner-personal .mil-banner-content .mil-banner-panel .mil-button {
    margin: 0 !important
}

@media screen and (max-width:992px) {
    .mil-banner-personal .mil-banner-content .mil-banner-panel {
        bottom: 0;
        top: auto
    }
}

@media screen and (max-width:768px) {
    .mil-banner-personal .mil-banner-content .mil-banner-panel {
        position: static;
        margin-bottom: 90px
    }
}

@media screen and (max-width:992px) {
    .mil-banner-personal {
        height: auto
    }
}

.mil-portrait-frame {
    position: relative
}

.mil-portrait-frame img {
    position: relative;
    bottom: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.mil-portrait-frame .mil-nimbus {
    background: radial-gradient(50% 50% at 50% 50%, #266cf1 0, rgba(38, 108, 241, 0) 100%);
    width: 100%;
    padding-bottom: 100%;
    position: absolute;
    opacity: .6
}

@media screen and (max-width:768px) {
    .mil-portrait-frame {
        height: 400px
    }

    .mil-portrait-frame img {
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: top;
        object-position: top
    }
}

.mil-circle-text {
    position: absolute;
    right: 0;
    bottom: 90px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 140px;
    height: 140px
}

.mil-circle-text .mil-ct-svg {
    -webkit-transform: scale(2);
    transform: scale(2);
    width: 140px;
    height: 140px
}

.mil-circle-text .mil-ct-svg text {
    fill: rgba(255, 255, 255, 0.4);
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 500;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-circle-text .mil-button {
    position: absolute
}

.mil-circle-text:hover svg text {
    fill: rgb(255, 255, 255)
}

@media screen and (max-width:992px) {
    .mil-circle-text {
        display: none
    }
}

@-webkit-keyframes move {
    from {
        -webkit-transform: translateY(-75px);
        transform: translateY(-75px)
    }

    50% {
        -webkit-transform: translateY(75px);
        transform: translateY(75px)
    }

    to {
        -webkit-transform: translateY(-75px);
        transform: translateY(-75px)
    }
}

@keyframes move {
    from {
        -webkit-transform: translateY(-75px);
        transform: translateY(-75px)
    }

    50% {
        -webkit-transform: translateY(75px);
        transform: translateY(75px)
    }

    to {
        -webkit-transform: translateY(-75px);
        transform: translateY(-75px)
    }
}

.mil-lines-place .mil-lines {
    opacity: .05;
    pointer-events: none
}

@media screen and (max-width:992px) {
    .mil-lines-place .mil-lines {
        display: none
    }
}

.mil-lines-place .mil-lines line,
.mil-lines-place .mil-lines path,
.mil-lines-place .mil-lines rect {
    stroke: rgb(0, 0, 0)
}

.mil-lines-place .mil-lines .mil-move {
    -webkit-animation: move 10s linear infinite;
    animation: move 10s linear infinite
}

.mil-lines-place.mil-light .mil-lines {
    opacity: .2
}

.mil-lines-place.mil-light .mil-lines line,
.mil-lines-place.mil-light .mil-lines path,
.mil-lines-place.mil-light .mil-lines rect {
    stroke: rgb(255, 255, 255)
}

.mil-animation-frame {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    -webkit-animation: jump 10s linear infinite;
    animation: jump 10s linear infinite;
    pointer-events: none
}

.mil-animation {
    position: absolute;
    display: inline-block;
    width: 300px;
    height: 300px;
    opacity: .2;
    pointer-events: none
}

.mil-position-1 {
    top: 100px;
    right: 100px
}

.mil-position-1 .mil-pentagon div {
    border-top: .1px solid #fff
}

.mil-position-2 {
    top: -60px;
    left: 15%
}

.mil-position-2 .mil-pentagon div {
    border-top: 1px solid #fff
}

.mil-position-2 .mil-dodecahedron {
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

@media screen and (max-width:1400px) {
    .mil-position-2 {
        display: none
    }
}

.mil-position-3 {
    bottom: -100px;
    right: 35%
}

.mil-position-3 .mil-pentagon div {
    border-top: 1px solid #fff
}

.mil-position-3 .mil-dodecahedron {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

@media screen and (max-width:1400px) {
    .mil-position-3 {
        display: none
    }
}

.mil-position-4 {
    top: -60px;
    right: 20%
}

.mil-position-4 .mil-pentagon div {
    border-top: .1px solid #fff
}

.mil-position-4 .mil-dodecahedron {
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

@media screen and (max-width:1400px) {
    .mil-position-4 {
        display: none
    }
}

.mil-position-4.mil-dark .mil-pentagon div {
    border-top: .1px solid #000
}

.mil-dodecahedron {
    position: relative;
    left: 100px;
    top: 40px;
    width: 100px;
    height: 223px;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-animation: rotate 100s infinite linear;
    animation: rotate 100s infinite linear
}

@-webkit-keyframes rotate {
    from {
        -webkit-transform: rotateX(0) rotateY(360deg) rotateZ(360deg);
        transform: rotateX(0) rotateY(360deg) rotateZ(360deg)
    }

    to {
        -webkit-transform: rotateX(360deg) rotateY(0) rotateZ(-360deg);
        transform: rotateX(360deg) rotateY(0) rotateZ(-360deg)
    }
}

@keyframes rotate {
    from {
        -webkit-transform: rotateX(0) rotateY(360deg) rotateZ(360deg);
        transform: rotateX(0) rotateY(360deg) rotateZ(360deg)
    }

    to {
        -webkit-transform: rotateX(360deg) rotateY(0) rotateZ(-360deg);
        transform: rotateX(360deg) rotateY(0) rotateZ(-360deg)
    }
}

.mil-pentagon {
    position: absolute;
    width: 100px
}

.mil-pentagon:first-child {
    -webkit-transform: rotateY(.2turn) translateZ(69px) rotateX(26.5deg);
    transform: rotateY(.2turn) translateZ(69px) rotateX(26.5deg)
}

.mil-pentagon:nth-child(6) {
    bottom: 0;
    -webkit-transform: rotateY(.2turn) translateZ(-69px) rotateX(206.5deg);
    transform: rotateY(.2turn) translateZ(-69px) rotateX(206.5deg)
}

.mil-pentagon:nth-child(2) {
    -webkit-transform: rotateY(.4turn) translateZ(69px) rotateX(26.5deg);
    transform: rotateY(.4turn) translateZ(69px) rotateX(26.5deg)
}

.mil-pentagon:nth-child(7) {
    bottom: 0;
    -webkit-transform: rotateY(.4turn) translateZ(-69px) rotateX(206.5deg);
    transform: rotateY(.4turn) translateZ(-69px) rotateX(206.5deg)
}

.mil-pentagon:nth-child(3) {
    -webkit-transform: rotateY(.6turn) translateZ(69px) rotateX(26.5deg);
    transform: rotateY(.6turn) translateZ(69px) rotateX(26.5deg)
}

.mil-pentagon:nth-child(8) {
    bottom: 0;
    -webkit-transform: rotateY(.6turn) translateZ(-69px) rotateX(206.5deg);
    transform: rotateY(.6turn) translateZ(-69px) rotateX(206.5deg)
}

.mil-pentagon:nth-child(4) {
    -webkit-transform: rotateY(.8turn) translateZ(69px) rotateX(26.5deg);
    transform: rotateY(.8turn) translateZ(69px) rotateX(26.5deg)
}

.mil-pentagon:nth-child(9) {
    bottom: 0;
    -webkit-transform: rotateY(.8turn) translateZ(-69px) rotateX(206.5deg);
    transform: rotateY(.8turn) translateZ(-69px) rotateX(206.5deg)
}

.mil-pentagon:nth-child(5) {
    -webkit-transform: rotateY(1turn) translateZ(69px) rotateX(26.5deg);
    transform: rotateY(1turn) translateZ(69px) rotateX(26.5deg)
}

.mil-pentagon:nth-child(10) {
    bottom: 0;
    -webkit-transform: rotateY(1turn) translateZ(-69px) rotateX(206.5deg);
    transform: rotateY(1turn) translateZ(-69px) rotateX(206.5deg)
}

.mil-pentagon:nth-child(11) {
    -webkit-transform: translateZ(69px) rotateX(-90deg);
    transform: translateZ(69px) rotateX(-90deg)
}

.mil-pentagon:nth-child(12) {
    bottom: 0;
    -webkit-transform: translateZ(-69px) rotateX(90deg);
    transform: translateZ(-69px) rotateX(90deg)
}

.mil-pentagon div {
    position: absolute;
    width: 100px;
    height: 69px;
    -webkit-transform-origin: bottom;
    transform-origin: bottom
}

.mil-pentagon div:first-child {
    -webkit-transform: rotate(.2turn);
    transform: rotate(.2turn)
}

.mil-pentagon div:nth-child(2) {
    -webkit-transform: rotate(.4turn);
    transform: rotate(.4turn)
}

.mil-pentagon div:nth-child(3) {
    -webkit-transform: rotate(.6turn);
    transform: rotate(.6turn)
}

.mil-pentagon div:nth-child(4) {
    -webkit-transform: rotate(.8turn);
    transform: rotate(.8turn)
}

.mil-pentagon div:nth-child(5) {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn)
}

@-webkit-keyframes jump {
    0% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    50% {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }

    100% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }
}

@keyframes jump {
    0% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    50% {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }

    100% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }
}

.mil-about-quote {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.mil-about-quote .mil-avatar {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    position: relative
}

.mil-about-quote .mil-avatar:after {
    content: ' " ';
    color: #000;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #266cf1;
    position: absolute;
    bottom: 0;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 12px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 36px
}

.mil-about-quote .mil-avatar img {
    border-radius: 50%;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: top;
    object-position: top
}

.mil-about-quote .mil-quote {
    padding-left: 30px;
    width: calc(100% - 90px)
}

@media screen and (max-width:992px) {
    .mil-about-quote .mil-avatar {
        width: 70px;
        height: 70px
    }

    .mil-about-quote .mil-avatar:after {
        padding-top: 7px;
        width: 25px;
        height: 25px;
        font-size: 24px
    }

    .mil-about-quote .mil-quote {
        font-size: 16px;
        padding-left: 30px;
        width: calc(100% - 70px)
    }
}

.mil-about-photo {
    position: relative
}

.mil-about-photo .mil-lines-place {
    position: absolute;
    top: -120px;
    left: -27%
}

.mil-infinite-show .swiper-wrapper {
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear
}

.mil-partner-frame {
    display: block
}

.mil-partner-frame img {
    width: 100%
}

.mil-complex-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.mil-complex-text .mil-button {
    margin-left: 30px
}

@media screen and (max-width:768px) {
    .mil-complex-text {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .mil-complex-text .mil-button {
        margin-left: 0;
        margin-top: 60px
    }
}

.mil-text-image {
    height: 80px;
    width: 250px;
    display: inline-block;
    overflow: hidden;
    border-radius: 70px;
    margin-right: 30px
}

.mil-text-image img {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-text-image:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

@media screen and (max-width:768px) {
    .mil-text-image {
        display: none
    }
}

.mil-service-card-sm {
    position: relative;
    display: block;
    padding: 60px 30px
}

.mil-service-card-sm p {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-service-card-sm .mil-button {
    -webkit-transform: scale(.3);
    transform: scale(.3);
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    opacity: .4
}

.mil-service-card-sm:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 4px;
    width: 0;
    background-color: #266cf1;
    -webkit-transition: .6s cubic-bezier(0, 0, .3642, 1);
    transition: .6s cubic-bezier(0, 0, .3642, 1)
}

.mil-service-card-sm:hover p {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.mil-service-card-sm:hover .mil-button {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    opacity: 1
}

.mil-service-card-sm:hover:before {
    width: 100%
}

@media screen and (max-width:992px) {
    .mil-service-card-sm p {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    .mil-service-card-sm .mil-button {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-filter: grayscale(0);
        filter: grayscale(0);
        opacity: 1
    }
}

.mil-services-grid {
    border-top: solid 1px rgba(255, 255, 255, .1)
}

.mil-services-grid .mil-services-grid-item {
    border-right: solid 1px rgba(255, 255, 255, .1)
}

.mil-services-grid .mil-services-grid-item:first-child {
    border-left: solid 1px rgba(255, 255, 255, .1)
}

@media screen and (max-width:992px) {
    .mil-services-grid {
        padding-bottom: 90px
    }

    .mil-services-grid .mil-services-grid-item {
        border-bottom: solid 1px rgba(255, 255, 255, .1)
    }

    .mil-services-grid .mil-services-grid-item:nth-child(3) {
        border-left: solid 1px rgba(255, 255, 255, .1)
    }
}

@media screen and (max-width:768px) {
    .mil-services-grid {
        padding-bottom: 90px
    }

    .mil-services-grid .mil-services-grid-item {
        border-left: solid 1px rgba(255, 255, 255, .1);
        border-bottom: solid 1px rgba(255, 255, 255, .1)
    }
}

.mil-service-card-lg {
    display: block
}

.mil-service-card-lg .mil-descr {
    padding-right: 30px
}

.mil-service-card-lg.mil-offset {
    margin-top: 60px;
    margin-bottom: 60px
}

@media screen and (max-width:992px) {
    .mil-service-card-lg.mil-offset {
        margin-top: 0
    }
}

@media screen and (max-width:992px) {
    .mil-service-card-lg {
        margin-bottom: 60px
    }
}

.mil-service-card-lg.mil-other-card {
    overflow: hidden;
    position: relative;
    border: solid 1px #e5e5e5;
    padding: 60px;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-service-card-lg.mil-other-card .mil-descr {
    padding-right: 0
}

.mil-service-card-lg.mil-other-card:hover {
    background-color: #266cf1
}

.mil-service-card-lg.mil-other-card:hover .mil-link .mil-arrow {
    background-color: #000
}

.mil-service-card-lg.mil-other-card:hover .mil-link .mil-arrow path {
    fill: rgb(38, 108, 241)
}

@media screen and (max-width:1200px) {
    .mil-service-card-lg.mil-other-card {
        padding: 30px
    }
}

.mil-service-list li {
    border-bottom: solid 1px rgba(255, 255, 255, .1);
    list-style-type: none;
    padding: 15px 0;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    font-size: 12px
}

.mil-service-list li:first-child {
    border-top: solid 1px rgba(255, 255, 255, .1)
}

.mil-service-list.mil-light li {
    color: rgba(255, 255, 255, .6)
}

.mil-service-list.mil-dark li {
    border-bottom: solid 1px rgba(0, 0, 0, .1)
}

.mil-service-list.mil-dark li:first-child {
    border-top: solid 1px rgba(0, 0, 0, .1)
}

.mil-team-card {
    position: relative;
    overflow: hidden;
    padding-bottom: 130%
}

.mil-team-card:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 4px;
    width: 0;
    background-color: #266cf1;
    -webkit-transition: .6s cubic-bezier(0, 0, .3642, 1);
    transition: .6s cubic-bezier(0, 0, .3642, 1)
}

.mil-team-card img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: top;
    object-position: top;
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-team-card.mil-offset-card {
    -webkit-transform: translateY(60px);
    transform: translateY(60px)
}

@media screen and (max-width:992px) {
    .mil-team-card.mil-offset-card {
        -webkit-transform: none;
        transform: none
    }
}

.mil-team-card .mil-description {
    opacity: 0;
    text-align: center;
    background-color: rgba(0, 0, 0, .8);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 60px 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    pointer-events: none;
    -webkit-transition: .6s cubic-bezier(0, 0, .3642, 1);
    transition: .6s cubic-bezier(0, 0, .3642, 1)
}

.mil-team-card .mil-description .mil-secrc-text {
    opacity: 0;
    -webkit-transform: translateY(15px);
    transform: translateY(15px);
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1);
    -webkit-transition-delay: 0s;
    transition-delay: 0s
}

.mil-team-card .mil-description .mil-secrc-text a {
    color: #fff;
    -webkit-transition: .2s cubic-bezier(0, 0, .3642, 1);
    transition: .2s cubic-bezier(0, 0, .3642, 1)
}

.mil-team-card .mil-description .mil-secrc-text a:hover {
    color: #266cf1
}

.mil-team-card:hover img {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.mil-team-card:hover:after {
    width: 100%
}

.mil-team-card:hover .mil-description {
    opacity: 1;
    pointer-events: all
}

.mil-team-card:hover .mil-description .mil-secrc-text {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s
}

.mil-team-list {
    position: relative
}

.mil-team-list .mil-lines-place {
    position: absolute;
    top: -120px;
    left: -22.5%
}

.mil-social-icons {
    padding: 0;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.mil-social-icons.mil-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.mil-social-icons li {
    list-style-type: none;
    margin-right: 15px
}

.mil-social-icons li:last-child {
    margin-right: 0
}

.mil-social-icons li a {
    color: #fff;
    font-size: 18px;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-social-icons li a:hover {
    color: #266cf1
}

.mil-social-icons.mil-dark li a {
    color: #000
}

.mil-social-icons.mil-dark li a:hover {
    color: #266cf1
}

.mil-revi-pagination {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media screen and (max-width:992px) {
    .mil-revi-pagination {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.mil-revi-pagination .swiper-pagination-bullet {
    padding: 0;
    width: 110px;
    height: 110px;
    padding: 10px;
    opacity: 1;
    border: none;
    background-color: transparent;
    margin: 0 !important;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1) !important;
    transition: .4s cubic-bezier(0, 0, .3642, 1) !important
}

@media screen and (max-width:992px) {
    .mil-revi-pagination .swiper-pagination-bullet {
        width: 90px;
        height: 90px
    }
}

.mil-revi-pagination .swiper-pagination-bullet:nth-child(2n) {
    margin-top: 30px !important
}

@media screen and (max-width:992px) {
    .mil-revi-pagination .swiper-pagination-bullet:nth-child(2n) {
        margin-top: 0 !important
    }
}

.mil-revi-pagination .swiper-pagination-bullet:hover {
    -webkit-box-shadow: inset 0 0 0 4px #fff;
    box-shadow: inset 0 0 0 4px #fff
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot {
    background-color: red;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    background-size: cover;
    background-position: top;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1) !important;
    transition: .4s cubic-bezier(0, 0, .3642, 1) !important
}

@media screen and (max-width:992px) {
    .mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot {
        width: 70px;
        height: 70px
    }
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-1 {
    background-image: url(../img/photo/customers/p5.jfif)
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-2 {
    background-image: url(../img/photo/customers/p2.jfif)
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-3 {
    background-image: url(../img/photo/customers/p4.jfif)
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-4 {
    background-image: url(../img/photo/customers/p3.jfif)
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-5 {
    background-image: url(../img/photo/customers/p6.jfif)
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-6 {
    background-image: url(../img/photo/customers/p1.jfif)
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-7 {
    background-image: url(../img/photo/customers/p7.jfif)
}

.mil-revi-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    -webkit-box-shadow: inset 0 0 0 4px #266cf1;
    box-shadow: inset 0 0 0 4px #266cf1
}

.mil-quote-icon {
    display: block;
    margin: 0 auto;
    width: 40px;
    height: 40px;
    margin-bottom: 15px
}

.mil-quote-icon path {
    fill: rgb(38, 108, 241)
}

.mil-slider-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.mil-slider-nav .mil-slider-arrow {
    width: 40px;
    height: 40px;
    /* padding: 10px; */
    background-color: #000;
    border-radius: 50%;
    cursor: pointer;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-slider-nav .mil-slider-arrow svg path {
    fill: rgb(38, 108, 241)
}

.mil-slider-nav .mil-slider-arrow.mil-prev {
    margin-right: 10px;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.mil-slider-nav .mil-slider-arrow.swiper-button-disabled {
    opacity: .1;
    cursor: not-allowed
}

.mil-slider-nav .mil-slider-arrow:hover {
    -webkit-transform: scale(1.15);
    transform: scale(1.15)
}

.mil-slider-nav .mil-slider-arrow:hover.mil-prev {
    -webkit-transform: rotate(180deg) scale(1.15);
    transform: rotate(180deg) scale(1.15)
}

.mil-slider-nav.mil-reviews-nav {
    position: absolute;
    top: 160px;
    left: 0;
    width: 100%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    z-index: 1;
}

@media screen and (max-width:992px) {
    .mil-slider-nav.mil-reviews-nav {
        top: 0
    }
}

.mil-slider-nav.mil-soft .mil-slider-arrow {
    background-color: #e5e5e5
}

.mil-slider-nav.mil-soft .mil-slider-arrow svg path {
    fill: rgb(0, 0, 0)
}

.mil-blog-card {
    display: block
}

.mil-blog-card .mil-cover-frame {
    position: relative;
    overflow: hidden;
    padding-bottom: 65%;
    margin-bottom: 30px
}

.mil-blog-card .mil-cover-frame img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-blog-card .mil-post-descr {
    padding: 30px 30px 0 0
}

.mil-blog-card .mil-post-descr .mil-post-text {
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.mil-blog-card:hover .mil-cover-frame img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.mil-blog-card.mil-blog-card-hori {
    padding-top: 60px;
    border-top: solid 1px #e5e5e5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.mil-blog-card.mil-blog-card-hori .mil-cover-frame {
    margin-bottom: 0;
    width: 450px;
    padding-bottom: 27%
}

.mil-blog-card.mil-blog-card-hori .mil-post-descr {
    width: calc(100% - 450px);
    padding: 0;
    padding-left: 60px
}

@media screen and (max-width:992px) {
    .mil-blog-card.mil-blog-card-hori {
        display: block;
        padding-top: 0;
        border: none
    }

    .mil-blog-card.mil-blog-card-hori .mil-cover-frame {
        width: 100%;
        padding-bottom: 65%;
        margin-bottom: 30px
    }

    .mil-blog-card.mil-blog-card-hori .mil-post-descr {
        width: 100%;
        padding: 30px 30px 0 0
    }
}

.mil-labels {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0
}

.mil-labels .mil-label {
    margin-right: 15px
}

.mil-labels .mil-label:last-child {
    margin-right: 0
}

.mil-pagination {
    padding-top: 60px;
    border-top: solid 1px rgba(0, 0, 0, .1);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 20px
}

.mil-pagination-btn {
    display: inline-block;
    width: 40px;
    height: 40px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, .1);
    color: #000;
    text-align: center;
    line-height: 40px;
    text-decoration: none;
    margin-right: 10px
}

.mil-pagination-btn.mil-active {
    background-color: #266cf1
}

.mil-category-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.mil-category-list li {
    list-style-type: none;
    margin-right: 10px
}

.mil-category-list li:last-child {
    margin-right: 0
}

.mil-category-list li a {
    height: 40px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: transparent;
    padding: 0 20px;
    border-radius: 40px;
    color: #000;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-category-list li a:hover {
    background-color: #e5e5e5
}

.mil-category-list li a.mil-active {
    background-color: #266cf1
}

@media screen and (max-width:768px) {
    .mil-category-list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .mil-category-list li {
        margin-right: 0;
        margin-bottom: 10px;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    .mil-category-list li:last-child {
        margin-bottom: 0
    }

    .mil-category-list li a {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
}

.mil-footer-menu {
    margin-bottom: 120px
}

.mil-footer-menu ul li {
    list-style-type: none;
    margin-bottom: 30px
}

.mil-footer-menu ul li a {
    display: block;
    font-weight: 500;
    font-size: 28px;
    color: rgba(255, 255, 255, .9);
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-footer-menu ul li a:hover {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
    color: #266cf1
}

@media screen and (max-width:768px) {
    .mil-footer-menu ul li a {
        font-size: 22px
    }
}

.mil-footer-menu ul li.mil-active a {
    color: #266cf1
}

.mil-footer-menu ul li.mil-active a:hover {
    -webkit-transform: none;
    transform: none
}

@media screen and (max-width:768px) {
    .mil-footer-menu {
        margin-bottom: 60px
    }
}

.mil-subscribe-form {
    position: relative;
    height: 70px;
    width: 100%
}

.mil-subscribe-form input {
    height: 100%;
    width: 100%;
    background-color: rgba(255, 255, 255, .1);
    color: #000;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px;
    border: none;
    border-radius: 70px;
    padding: 0 0 0 50px;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-subscribe-form input::-webkit-input-placeholder {
    color: grey;
    font-family: Outfit, sans-serif;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px
}

.mil-subscribe-form input::-moz-placeholder {
    color: grey;
    font-family: Outfit, sans-serif;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px
}

.mil-subscribe-form input:-ms-input-placeholder {
    color: grey;
    font-family: Outfit, sans-serif;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px
}

.mil-subscribe-form input::-ms-input-placeholder {
    color: grey;
    font-family: Outfit, sans-serif;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px
}

.mil-subscribe-form input::placeholder {
    color: grey;
    font-family: Outfit, sans-serif;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px
}

.mil-subscribe-form input:focus {
    background-color: #fff;
    outline: inherit
}

.mil-subscribe-form input:hover {
    background-color: #fff
}

.mil-subscribe-form .mil-button {
    position: absolute;
    top: 15px;
    right: 15px
}

.mil-subscribe-form.mil-subscribe-form-2 input {
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, .1)
}

.mil-portfolio-item {
    display: block
}

.mil-portfolio-item .mil-cover-frame {
    position: relative;
    overflow: hidden;
    margin-bottom: 30px
}

.mil-portfolio-item .mil-cover-frame .mil-cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.mil-portfolio-item .mil-cover-frame .mil-cover img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-portfolio-item .mil-cover-frame.mil-vert {
    padding-bottom: 130%
}

.mil-portfolio-item .mil-cover-frame.mil-hori {
    padding-bottom: 65%
}

.mil-portfolio-item:hover .mil-cover-frame .mil-cover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.mil-portfolio-item.mil-slider-item .mil-cover-frame {
    margin-bottom: 30px;
    height: calc(100vh - 360px)
}

@media screen and (max-width:992px) {
    .mil-portfolio-item.mil-slider-item .mil-cover-frame {
        height: auto;
        padding-bottom: 100%
    }
}

.mil-portfolio-item.mil-slider-item .mil-descr {
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 180px;
    background-color: #f2f2f2;
    padding: 0 60px
}

@media screen and (max-width:992px) {
    .mil-portfolio-item.mil-slider-item .mil-descr {
        padding: 30px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        height: auto
    }

    .mil-portfolio-item.mil-slider-item .mil-descr .mil-descr-text {
        margin-bottom: 30px
    }
}

.mil-portfolio-item.mil-slider-item:hover .mil-cover-frame .mil-cover img {
    -webkit-transform: none;
    transform: none
}

.swiper-slide .mil-portfolio-item .mil-descr {
    pointer-events: none
}

.swiper-slide.swiper-slide-active .mil-portfolio-item .mil-descr {
    pointer-events: all
}

.mil-portfolio {
    position: relative
}

.mil-portfolio .mil-lines-place {
    position: absolute;
    left: 40.7%
}

.mil-portfolio .mil-lines-place.mil-lines-long {
    top: 1289px
}

.mil-portfolio-slider-frame {
    z-index: 0;
    padding-top: 150px
}

@media screen and (max-width:992px) {
    .mil-portfolio-slider-frame {
        padding-top: 180px
    }
}

.mil-portfolio-nav {
    background-color: #f2f2f2;
    width: 100%;
    padding: 0 60px;
    height: 180px;
    position: absolute;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

/* Disable animations on main page when GSAP is not loaded */
body[data-no-gsap] .mil-up,
body[data-no-gsap] .mil-scale,
body[data-no-gsap] .mil-rotate,
body[data-no-gsap] .mil-parallax {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
}

body[data-no-gsap] *[style*="opacity:0"],
body[data-no-gsap] *[style*="opacity: 0"] {
    opacity: 1 !important;
    transform: none !important;
}

/* Ensure arrow icons show properly when GSAP is disabled */
body[data-no-gsap] .mil-arrow-place svg {
    opacity: 1 !important;
    display: inline-block !important;
    visibility: visible !important;
}

body[data-no-gsap] .mil-arrow {
    opacity: 1 !important;
    display: inline-block !important;
    visibility: visible !important;
}

.mil-portfolio-nav .mil-portfolio-btns-frame {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0 15px;
    height: 70px;
    border-radius: 70px;
    background-color: #fff
}

@media screen and (max-width:992px) {
    .mil-portfolio-nav {
        position: static;
        height: auto;
        padding: 30px 0 90px;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        background-color: #fff
    }

    .mil-portfolio-nav .mil-portfolio-btns-frame {
        width: 100%;
        height: auto;
        padding: 0
    }
}

.swiper-portfolio-pagination {
    white-space: nowrap;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding: 0 15px
}

.mil-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    height: 120px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: solid 1px rgba(0, 0, 0, .1);
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 2px;
    font-weight: 500
}

@media screen and (max-width:768px) {
    .mil-info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        height: auto;
        padding: 30px
    }
}

.mil-works-nav {
    padding-top: 60px;
    border-top: solid 1px rgba(0, 0, 0, .1);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.mil-works-nav .mil-disabled {
    opacity: .2;
    cursor: not-allowed
}

@media screen and (max-width:768px) {
    .mil-works-nav {
        padding-top: 0;
        border-top: none;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .mil-works-nav .mil-link {
        display: none
    }

    .mil-works-nav .mil-link:last-child {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}

.mil-map-frame {
    background-color: #e5e5e5;
    pointer-events: all;
    height: 600px;
    position: relative;
    overflow: hidden
}

.mil-map-frame .mil-map {
    position: absolute;
    top: -25%;
    left: -25%;
    width: 150%;
    height: 150%;
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-map-frame .mil-map iframe {
    width: 100%;
    height: 100%
}

.mil-accordion-group {
    border-bottom: solid 1px rgba(0, 0, 0, .2);
    margin-bottom: 30px
}

.mil-accordion-group .mil-accordion-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    padding: 0;
    background: 0 0;
    border: 0;
    text-align: left;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
    margin-bottom: 30px
}

.mil-accordion-group .mil-accordion-menu .mil-symbol {
    border-radius: 50%;
    width: 40px;
    height: 40px;
    color: #000;
    background-color: #e5e5e5;
    font-size: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative
}

.mil-accordion-group .mil-accordion-menu .mil-symbol .mil-minus,
.mil-accordion-group .mil-accordion-menu .mil-symbol .mil-plus {
    position: absolute
}

.mil-accordion-group .mil-accordion-menu .mil-symbol .mil-minus {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px)
}

.mil-accordion-group .mil-accordion-menu .mil-accordion-head {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    color: #000
}

.mil-accordion-content {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height .35s ease;
    transition: max-height .35s ease;
    will-change: max-height
}

.mil-accordion-group .mil-symbol .mil-minus {
    opacity: 0
}

.mil-accordion-group.is-open .mil-symbol .mil-minus {
    opacity: 1
}

.mil-accordion-group.is-open .mil-symbol .mil-plus {
    opacity: 0
}

.mil-price-card {
    display: block;
    width: 100%;
    border-top: solid 1px rgba(255, 255, 255, .1);
    border-bottom: solid 1px rgba(255, 255, 255, .1);
    padding: 60px 0 30px;
    padding: 60px 24px 30px;
    border-radius: 24px
}

.mil-price-card .mil-price-number {
    padding-top: 10px;
    line-height: 70%;
    font-size: 54px;
    font-weight: 500
}

.mil-price-card .mil-price-number .mil-thin {
    font-weight: 200;
    font-size: 18px
}

.mil-404-banner .mil-animation-frame {
    z-index: 2
}

.mil-404-frame {
    padding-top: 100px;
    height: 100vh;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.mil-404-text {
    display: block;
    text-align: center;
    color: #fff
}

.mil-scale-frame {
    -webkit-transform: scale(2.3);
    transform: scale(2.3);
    text-align: center;
    margin-bottom: 90px
}

@media screen and (max-width:530px) {
    .mil-scale-frame {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
        margin-bottom: 50px
    }
}

.mil-404 {
    position: relative;
    color: #fff;
    font-size: 6em;
    font-weight: 500;
    animation: glitch-skew 1s infinite linear alternate-reverse
}

.mil-404::before {
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    left: 2px;
    text-shadow: -2px 0 #266cf1;
    clip: rect(44px, 450px, 56px, 0);
    animation: glitch-anim 5s infinite linear alternate-reverse
}

.mil-404::after {
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    left: -2px;
    text-shadow: -2px 0 #999, 2px 2px #e5e5e5;
    animation: glitch-anim2 1s infinite linear alternate-reverse
}

@-webkit-keyframes glitch-anim {
    0% {
        clip: rect(49px, 9999px, 31px, 0);
        -webkit-transform: skew(.04deg);
        transform: skew(.04deg)
    }

    5% {
        clip: rect(63px, 9999px, 92px, 0);
        -webkit-transform: skew(.18deg);
        transform: skew(.18deg)
    }

    10% {
        clip: rect(86px, 9999px, 74px, 0);
        -webkit-transform: skew(.4deg);
        transform: skew(.4deg)
    }

    15% {
        clip: rect(85px, 9999px, 19px, 0);
        -webkit-transform: skew(.57deg);
        transform: skew(.57deg)
    }

    20% {
        clip: rect(64px, 9999px, 75px, 0);
        -webkit-transform: skew(.96deg);
        transform: skew(.96deg)
    }

    25% {
        clip: rect(77px, 9999px, 17px, 0);
        -webkit-transform: skew(.61deg);
        transform: skew(.61deg)
    }

    30% {
        clip: rect(16px, 9999px, 76px, 0);
        -webkit-transform: skew(.81deg);
        transform: skew(.81deg)
    }

    35% {
        clip: rect(5px, 9999px, 61px, 0);
        -webkit-transform: skew(.56deg);
        transform: skew(.56deg)
    }

    40% {
        clip: rect(79px, 9999px, 81px, 0);
        -webkit-transform: skew(.05deg);
        transform: skew(.05deg)
    }

    45% {
        clip: rect(20px, 9999px, 97px, 0);
        -webkit-transform: skew(.56deg);
        transform: skew(.56deg)
    }

    50% {
        clip: rect(33px, 9999px, 100px, 0);
        -webkit-transform: skew(.16deg);
        transform: skew(.16deg)
    }

    55% {
        clip: rect(19px, 9999px, 76px, 0);
        -webkit-transform: skew(.93deg);
        transform: skew(.93deg)
    }

    60% {
        clip: rect(29px, 9999px, 59px, 0);
        -webkit-transform: skew(.58deg);
        transform: skew(.58deg)
    }

    65% {
        clip: rect(19px, 9999px, 95px, 0);
        -webkit-transform: skew(.83deg);
        transform: skew(.83deg)
    }

    70% {
        clip: rect(88px, 9999px, 30px, 0);
        -webkit-transform: skew(.39deg);
        transform: skew(.39deg)
    }

    75% {
        clip: rect(43px, 9999px, 45px, 0);
        -webkit-transform: skew(.6deg);
        transform: skew(.6deg)
    }

    80% {
        clip: rect(30px, 9999px, 4px, 0);
        -webkit-transform: skew(.89deg);
        transform: skew(.89deg)
    }

    85% {
        clip: rect(4px, 9999px, 96px, 0);
        -webkit-transform: skew(1deg);
        transform: skew(1deg)
    }

    90% {
        clip: rect(4px, 9999px, 91px, 0);
        -webkit-transform: skew(.2deg);
        transform: skew(.2deg)
    }

    95% {
        clip: rect(48px, 9999px, 80px, 0);
        -webkit-transform: skew(.41deg);
        transform: skew(.41deg)
    }

    100% {
        clip: rect(10px, 9999px, 58px, 0);
        -webkit-transform: skew(.91deg);
        transform: skew(.91deg)
    }
}

@keyframes glitch-anim {
    0% {
        clip: rect(49px, 9999px, 31px, 0);
        -webkit-transform: skew(.04deg);
        transform: skew(.04deg)
    }

    5% {
        clip: rect(63px, 9999px, 92px, 0);
        -webkit-transform: skew(.18deg);
        transform: skew(.18deg)
    }

    10% {
        clip: rect(86px, 9999px, 74px, 0);
        -webkit-transform: skew(.4deg);
        transform: skew(.4deg)
    }

    15% {
        clip: rect(85px, 9999px, 19px, 0);
        -webkit-transform: skew(.57deg);
        transform: skew(.57deg)
    }

    20% {
        clip: rect(64px, 9999px, 75px, 0);
        -webkit-transform: skew(.96deg);
        transform: skew(.96deg)
    }

    25% {
        clip: rect(77px, 9999px, 17px, 0);
        -webkit-transform: skew(.61deg);
        transform: skew(.61deg)
    }

    30% {
        clip: rect(16px, 9999px, 76px, 0);
        -webkit-transform: skew(.81deg);
        transform: skew(.81deg)
    }

    35% {
        clip: rect(5px, 9999px, 61px, 0);
        -webkit-transform: skew(.56deg);
        transform: skew(.56deg)
    }

    40% {
        clip: rect(79px, 9999px, 81px, 0);
        -webkit-transform: skew(.05deg);
        transform: skew(.05deg)
    }

    45% {
        clip: rect(20px, 9999px, 97px, 0);
        -webkit-transform: skew(.56deg);
        transform: skew(.56deg)
    }

    50% {
        clip: rect(33px, 9999px, 100px, 0);
        -webkit-transform: skew(.16deg);
        transform: skew(.16deg)
    }

    55% {
        clip: rect(19px, 9999px, 76px, 0);
        -webkit-transform: skew(.93deg);
        transform: skew(.93deg)
    }

    60% {
        clip: rect(29px, 9999px, 59px, 0);
        -webkit-transform: skew(.58deg);
        transform: skew(.58deg)
    }

    65% {
        clip: rect(19px, 9999px, 95px, 0);
        -webkit-transform: skew(.83deg);
        transform: skew(.83deg)
    }

    70% {
        clip: rect(88px, 9999px, 30px, 0);
        -webkit-transform: skew(.39deg);
        transform: skew(.39deg)
    }

    75% {
        clip: rect(43px, 9999px, 45px, 0);
        -webkit-transform: skew(.6deg);
        transform: skew(.6deg)
    }

    80% {
        clip: rect(30px, 9999px, 4px, 0);
        -webkit-transform: skew(.89deg);
        transform: skew(.89deg)
    }

    85% {
        clip: rect(4px, 9999px, 96px, 0);
        -webkit-transform: skew(1deg);
        transform: skew(1deg)
    }

    90% {
        clip: rect(4px, 9999px, 91px, 0);
        -webkit-transform: skew(.2deg);
        transform: skew(.2deg)
    }

    95% {
        clip: rect(48px, 9999px, 80px, 0);
        -webkit-transform: skew(.41deg);
        transform: skew(.41deg)
    }

    100% {
        clip: rect(10px, 9999px, 58px, 0);
        -webkit-transform: skew(.91deg);
        transform: skew(.91deg)
    }
}

@-webkit-keyframes glitch-anim2 {
    0% {
        clip: rect(97px, 9999px, 84px, 0);
        -webkit-transform: skew(.55deg);
        transform: skew(.55deg)
    }

    5% {
        clip: rect(82px, 9999px, 21px, 0);
        -webkit-transform: skew(.04deg);
        transform: skew(.04deg)
    }

    10% {
        clip: rect(51px, 9999px, 99px, 0);
        -webkit-transform: skew(.93deg);
        transform: skew(.93deg)
    }

    15% {
        clip: rect(42px, 9999px, 97px, 0);
        -webkit-transform: skew(.03deg);
        transform: skew(.03deg)
    }

    20% {
        clip: rect(27px, 9999px, 25px, 0);
        -webkit-transform: skew(.86deg);
        transform: skew(.86deg)
    }

    25% {
        clip: rect(69px, 9999px, 5px, 0);
        -webkit-transform: skew(.95deg);
        transform: skew(.95deg)
    }

    30% {
        clip: rect(38px, 9999px, 67px, 0);
        -webkit-transform: skew(.33deg);
        transform: skew(.33deg)
    }

    35% {
        clip: rect(8px, 9999px, 90px, 0);
        -webkit-transform: skew(.67deg);
        transform: skew(.67deg)
    }

    40% {
        clip: rect(34px, 9999px, 31px, 0);
        -webkit-transform: skew(.33deg);
        transform: skew(.33deg)
    }

    45% {
        clip: rect(1px, 9999px, 25px, 0);
        -webkit-transform: skew(.71deg);
        transform: skew(.71deg)
    }

    50% {
        clip: rect(45px, 9999px, 40px, 0);
        -webkit-transform: skew(.38deg);
        transform: skew(.38deg)
    }

    55% {
        clip: rect(84px, 9999px, 96px, 0);
        -webkit-transform: skew(.3deg);
        transform: skew(.3deg)
    }

    60% {
        clip: rect(68px, 9999px, 59px, 0);
        -webkit-transform: skew(.35deg);
        transform: skew(.35deg)
    }

    65% {
        clip: rect(93px, 9999px, 48px, 0);
        -webkit-transform: skew(.25deg);
        transform: skew(.25deg)
    }

    70% {
        clip: rect(19px, 9999px, 40px, 0);
        -webkit-transform: skew(.97deg);
        transform: skew(.97deg)
    }

    75% {
        clip: rect(76px, 9999px, 56px, 0);
        -webkit-transform: skew(.79deg);
        transform: skew(.79deg)
    }

    80% {
        clip: rect(22px, 9999px, 82px, 0);
        -webkit-transform: skew(.48deg);
        transform: skew(.48deg)
    }

    85% {
        clip: rect(30px, 9999px, 63px, 0);
        -webkit-transform: skew(.91deg);
        transform: skew(.91deg)
    }

    90% {
        clip: rect(68px, 9999px, 44px, 0);
        -webkit-transform: skew(.4deg);
        transform: skew(.4deg)
    }

    95% {
        clip: rect(12px, 9999px, 36px, 0);
        -webkit-transform: skew(.61deg);
        transform: skew(.61deg)
    }

    100% {
        clip: rect(24px, 9999px, 5px, 0);
        -webkit-transform: skew(.96deg);
        transform: skew(.96deg)
    }
}

@keyframes glitch-anim2 {
    0% {
        clip: rect(97px, 9999px, 84px, 0);
        -webkit-transform: skew(.55deg);
        transform: skew(.55deg)
    }

    5% {
        clip: rect(82px, 9999px, 21px, 0);
        -webkit-transform: skew(.04deg);
        transform: skew(.04deg)
    }

    10% {
        clip: rect(51px, 9999px, 99px, 0);
        -webkit-transform: skew(.93deg);
        transform: skew(.93deg)
    }

    15% {
        clip: rect(42px, 9999px, 97px, 0);
        -webkit-transform: skew(.03deg);
        transform: skew(.03deg)
    }

    20% {
        clip: rect(27px, 9999px, 25px, 0);
        -webkit-transform: skew(.86deg);
        transform: skew(.86deg)
    }

    25% {
        clip: rect(69px, 9999px, 5px, 0);
        -webkit-transform: skew(.95deg);
        transform: skew(.95deg)
    }

    30% {
        clip: rect(38px, 9999px, 67px, 0);
        -webkit-transform: skew(.33deg);
        transform: skew(.33deg)
    }

    35% {
        clip: rect(8px, 9999px, 90px, 0);
        -webkit-transform: skew(.67deg);
        transform: skew(.67deg)
    }

    40% {
        clip: rect(34px, 9999px, 31px, 0);
        -webkit-transform: skew(.33deg);
        transform: skew(.33deg)
    }

    45% {
        clip: rect(1px, 9999px, 25px, 0);
        -webkit-transform: skew(.71deg);
        transform: skew(.71deg)
    }

    50% {
        clip: rect(45px, 9999px, 40px, 0);
        -webkit-transform: skew(.38deg);
        transform: skew(.38deg)
    }

    55% {
        clip: rect(84px, 9999px, 96px, 0);
        -webkit-transform: skew(.3deg);
        transform: skew(.3deg)
    }

    60% {
        clip: rect(68px, 9999px, 59px, 0);
        -webkit-transform: skew(.35deg);
        transform: skew(.35deg)
    }

    65% {
        clip: rect(93px, 9999px, 48px, 0);
        -webkit-transform: skew(.25deg);
        transform: skew(.25deg)
    }

    70% {
        clip: rect(19px, 9999px, 40px, 0);
        -webkit-transform: skew(.97deg);
        transform: skew(.97deg)
    }

    75% {
        clip: rect(76px, 9999px, 56px, 0);
        -webkit-transform: skew(.79deg);
        transform: skew(.79deg)
    }

    80% {
        clip: rect(22px, 9999px, 82px, 0);
        -webkit-transform: skew(.48deg);
        transform: skew(.48deg)
    }

    85% {
        clip: rect(30px, 9999px, 63px, 0);
        -webkit-transform: skew(.91deg);
        transform: skew(.91deg)
    }

    90% {
        clip: rect(68px, 9999px, 44px, 0);
        -webkit-transform: skew(.4deg);
        transform: skew(.4deg)
    }

    95% {
        clip: rect(12px, 9999px, 36px, 0);
        -webkit-transform: skew(.61deg);
        transform: skew(.61deg)
    }

    100% {
        clip: rect(24px, 9999px, 5px, 0);
        -webkit-transform: skew(.96deg);
        transform: skew(.96deg)
    }
}

@-webkit-keyframes glitch-skew {
    0% {
        -webkit-transform: skew(3deg);
        transform: skew(3deg)
    }

    10% {
        -webkit-transform: skew(2deg);
        transform: skew(2deg)
    }

    20% {
        -webkit-transform: skew(0);
        transform: skew(0)
    }

    30% {
        -webkit-transform: skew(0);
        transform: skew(0)
    }

    40% {
        -webkit-transform: skew(2deg);
        transform: skew(2deg)
    }

    50% {
        -webkit-transform: skew(-1deg);
        transform: skew(-1deg)
    }

    60% {
        -webkit-transform: skew(-3deg);
        transform: skew(-3deg)
    }

    70% {
        -webkit-transform: skew(-1deg);
        transform: skew(-1deg)
    }

    80% {
        -webkit-transform: skew(-1deg);
        transform: skew(-1deg)
    }

    90% {
        -webkit-transform: skew(4deg);
        transform: skew(4deg)
    }

    100% {
        -webkit-transform: skew(-3deg);
        transform: skew(-3deg)
    }
}

@keyframes glitch-skew {
    0% {
        -webkit-transform: skew(3deg);
        transform: skew(3deg)
    }

    10% {
        -webkit-transform: skew(2deg);
        transform: skew(2deg)
    }

    20% {
        -webkit-transform: skew(0);
        transform: skew(0)
    }

    30% {
        -webkit-transform: skew(0);
        transform: skew(0)
    }

    40% {
        -webkit-transform: skew(2deg);
        transform: skew(2deg)
    }

    50% {
        -webkit-transform: skew(-1deg);
        transform: skew(-1deg)
    }

    60% {
        -webkit-transform: skew(-3deg);
        transform: skew(-3deg)
    }

    70% {
        -webkit-transform: skew(-1deg);
        transform: skew(-1deg)
    }

    80% {
        -webkit-transform: skew(-1deg);
        transform: skew(-1deg)
    }

    90% {
        -webkit-transform: skew(4deg);
        transform: skew(4deg)
    }

    100% {
        -webkit-transform: skew(-3deg);
        transform: skew(-3deg)
    }
}

.mil-image-frame {
    position: relative;
    overflow: hidden
}

.mil-image-frame>img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.mil-image-frame.mil-horizontal {
    padding-bottom: 65%
}

.mil-image-frame.mil-vertical {
    padding-bottom: 140%
}

.mil-image-frame.mil-square {
    padding-bottom: 100%
}

.mil-image-frame.mil-fw {
    padding-bottom: 50%
}

.mil-image-frame .mil-zoom-btn {
    opacity: 0;
    -webkit-transform: translateY(15px);
    transform: translateY(15px);
    position: absolute;
    top: 30px;
    right: 30px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: rgba(255, 255, 255, .8);
    -webkit-transition: .4s cubic-bezier(0, 0, .3642, 1);
    transition: .4s cubic-bezier(0, 0, .3642, 1)
}

.mil-image-frame .mil-zoom-btn:hover {
    background-color: #fff
}

.mil-image-frame .mil-zoom-btn img {
    height: 17px;
    width: 17px
}

.mil-image-frame:hover .mil-zoom-btn {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    z-index: 2
}

.mil-frame {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: .6s;
    transition: .6s
}

.mil-curtain {
    position: fixed;
    pointer-events: none;
    z-index: 4;
    background-color: #000;
    opacity: 0;
    width: 100%;
    height: 100vh;
    -webkit-transition: .6s;
    transition: .6s
}

.mil-main-transition {
    -webkit-transition: .6s;
    transition: .6s;
    margin-top: 0;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s
}

.mil-main-transition .mil-animation-frame {
    opacity: 1;
    margin-top: 0;
    -webkit-transition: .6s;
    transition: .6s;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s
}

.mil-main-transition .mil-lines-place {
    opacity: 1;
    margin-top: 0;
    -webkit-transition: .6s;
    transition: .6s;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s
}

html.is-animating .mil-frame {
    opacity: 0;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
    -webkit-transform: scale(.9);
    transform: scale(.9)
}

@media screen and (max-width:1200px) {
    html.is-animating .mil-frame {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1
    }
}

html.is-animating .mil-curtain {
    opacity: 1;
    pointer-events: all
}

html.is-animating .mil-main-transition {
    margin-top: .1px
}

html.is-animating .mil-main-transition .mil-animation-frame {
    opacity: 0;
    margin-top: -90px;
    -webkit-transition-delay: 0s;
    transition-delay: 0s
}

html.is-animating .mil-main-transition .mil-lines-place {
    opacity: 0;
    margin-top: 90px;
    -webkit-transition-delay: 0s;
    transition-delay: 0s
}

html.is-animating .mil-menu-frame {
    opacity: 0;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s
}

.rgx-banner-content {
    width: 100%;
    padding-bottom: 6px
}

.mil-banner.mil-dark-bg {
    min-height: 100vh;
    height: auto
}

.mil-banner.mil-dark-bg .container {
    min-height: 100vh;
    height: auto;
    align-items: center;
    padding-top: 108px;
    padding-bottom: 52px
}

.mil-banner.mil-dark-bg .mil-banner-content.rgx-banner-content {
    padding-bottom: 0
}

.rgx-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, 520px);
    gap: clamp(22px, 3vw, 40px);
    align-items: center
}

.rgx-hero-copy {
    max-width: 590px
}

.rgx-hero-copy h1 {
    font-size: clamp(38px, 5vw, 72px);
    line-height: 1.02
}

.rgx-hero-copy p {
    max-width: 52ch;
    font-size: 15px;
    line-height: 1.65
}

.rgx-cta-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px
}

.rgx-hero-copy .mil-button,
.rgx-hero-copy .mil-link {
    margin: 0
}

.rgx-kpis {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    list-style: none
}

.rgx-kpi {
    padding: 12px 12px 10px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 10px;
    background: rgba(255, 255, 255, .04);
    backdrop-filter: blur(2px)
}

.rgx-kpi-value {
    display: block;
    margin-bottom: 4px;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    line-height: 1
}

.rgx-kpi-label {
    font-size: 11px;
    color: #b8b8c2;
    letter-spacing: .6px;
    text-transform: uppercase
}

.rgx-trust-line {
    margin: 16px 0 0;
    color: #a3a3ab;
    font-size: 12px;
    letter-spacing: .3px
}

.rgx-trust-line strong {
    color: #fff;
    font-weight: 600
}

/* Import Premium Metrics Hero Styles */
@import url('./metrics-hero.css');

.rgx-logistics-hero {
    --rgx-primary: #266CF1;
    --rgx-secondary: #CFDEFD;
    --rgx-success: #266CF1;
    --rgx-warning: #266CF1;
    --rgx-bg-secondary: #E7ECF4;
    --rgx-bg-tertiary: #CFDEFD;
    --rgx-text-primary: #ffffff;
    --rgx-text-secondary: #5D6C89;
    --rgx-border: #A8B8D6;
    position: relative;
    width: 100%;
    max-width: 520px;
    max-height: 530px;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 18px;
    overflow: visible;
    backdrop-filter: blur(4px);
    background: radial-gradient(circle at 15% 85%, rgba(var(--rgx-palette-action-rgb), .16) 0, transparent 54%), radial-gradient(circle at 85% 20%, rgba(var(--rgx-palette-accent-rgb), .16) 0, transparent 52%), rgba(0, 0, 0, .55);
    box-shadow: 0 24px 40px rgba(0, 0, 0, .24);
    color: var(--rgx-text-primary);
    display: flex;
    flex-direction: column;
    gap: 14px
}

.rgx-logistics-hero::after {
    content: "";
    position: absolute;
    top: -60%;
    left: -40%;
    width: 90%;
    height: 180%;
    background: linear-gradient(120deg, rgba(255, 255, 255, .15), transparent 60%);
    transform: rotate(18deg);
    pointer-events: none;
    opacity: .45
}

.rgx-grid-background {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(var(--rgx-border) 1px, transparent 1px), linear-gradient(90deg, var(--rgx-border) 1px, transparent 1px);
    background-size: 30px 30px;
    opacity: .24;
    pointer-events: none
}

.rgx-panel-title {
    position: static;
    z-index: 6;
    font-size: 11px;
    color: #112140;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 20px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    background: rgba(18, 20, 26, .9);
    justify-self: center;
    width: 100%;
    max-width: 280px;
    white-space: nowrap
}

.rgx-panel-header {
    position: relative;
    z-index: 6;
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 14px;
    align-items: stretch;
    margin-bottom: 6px;
    padding: 0 2px
}

.rgx-panel-header .rgx-panel-title,
.rgx-panel-header .rgx-reset-btn,
.rgx-panel-header .rgx-status-indicator {
    height: 40px;
    min-height: 40px;
    box-sizing: border-box
}

.rgx-main {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 0
}

.rgx-status-indicator {
    position: static;
    z-index: 6;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border: 1px solid var(--rgx-border);
    border-radius: 8px;
    background: rgba(28, 28, 30, .92);
    font-size: 11px;
    opacity: 0;
    transform: translateY(-6px);
    transition: opacity .25s ease, transform .25s ease;
    white-space: nowrap
}

.rgx-status-indicator.show {
    opacity: 1;
    transform: translateY(0)
}

.rgx-status-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgb(var(--rgx-palette-primary-rgb));
    animation: rgxBlink 1.5s infinite
}

.rgx-warehouse-label {
    margin-bottom: 10px;
    font-size: 11px;
    color: var(--rgx-text-secondary);
    letter-spacing: 1px;
    text-transform: uppercase
}

.rgx-warehouse-box {
    width: 100%;
    min-height: 180px;
    position: relative;
    padding: 16px;
    border: 1px solid var(--rgx-border);
    border-radius: 12px;
    background: rgba(28, 28, 30, .9);
    cursor: pointer;
    transition: border-color .25s ease, transform .25s ease
}

.rgx-warehouse-box:hover {
    border-color: var(--rgx-primary);
    transform: translateY(-2px)
}

.rgx-box-icon {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(193, 223, 255, .95);
    transition: opacity .25s ease;
    z-index: 2
}

.rgx-box-icon svg {
    width: 72px;
    height: 72px;
    padding: 14px;
    border: 1px solid rgba(var(--rgx-palette-action-rgb), .5);
    border-radius: 14px;
    background: rgba(var(--rgx-palette-action-rgb), .14);
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round
}

.rgx-box-content {
    opacity: 0;
    transition: opacity .25s ease
}

.rgx-warehouse-box.opened .rgx-box-content {
    opacity: 1
}

.rgx-warehouse-box.opened .rgx-box-icon {
    opacity: 0
}

.rgx-item-list {
    list-style: none;
    font-size: 12px
}

.rgx-item-list li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 9px 0;
    border-bottom: 1px solid var(--rgx-border)
}

.rgx-item-status {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--rgx-success)
}

.rgx-map-section {
    width: 100%;
    min-height: 420px;
    border: 1px solid var(--rgx-border);
    border-radius: 12px;
    overflow: visible;
    background: rgba(28, 28, 30, .9);
    transition: transform .25s ease, border-color .25s ease;
    position: relative;
    display: flex;
    flex-direction: column
}

.rgx-logistics-hero:hover .rgx-map-section {
    transform: translateY(-2px);
    border-color: rgba(var(--rgx-palette-action-rgb), .55)
}

.rgx-animations-hero {
    position: relative;
    /* width: 100%; */
    /* max-width: 520px;
    max-height: 530px; */
    width: 650px;
    max-width: 42vw;
    /* height: 585px; */
    margin: auto;
    padding: 12px 12px 14px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .24);
    border-radius: 38px;
    overflow: visible;
    backdrop-filter: blur(4px);
    background: linear-gradient(145deg, rgba(var(--rgx-palette-bg-rgb), .98) 0, rgba(var(--rgx-palette-accent-rgb), .84) 48%, rgba(var(--rgx-palette-primary-rgb), .2) 100%);
    box-shadow: 0 24px 42px rgba(var(--rgx-palette-primary-rgb), .18), inset 0 1px 0 rgba(var(--rgx-palette-bg-rgb), .62);
    /* color: var(--rgx-text-primary);
    display: grid;
    grid-template-columns: 30% 1fr;
    grid-template-rows: auto 1fr;
    gap: 0;
    isolation: isolate; */
}

.rgx-animations-hero::before {
    content: "";
    position: absolute;
    inset: 5px;
    border-radius: 33px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .46);
    pointer-events: none;
    z-index: 2;
}

.rgx-animations-hero::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 8px;
    width: 112px;
    height: 4px;
    border-radius: 999px;
    background: rgba(var(--rgx-palette-primary-rgb), .24);
    transform: translateX(-50%);
    pointer-events: none;
    z-index: 2;
}

.rgx-animation-notch {
    position: relative;
    z-index: 3;
    grid-column: 1 / -1;
    width: 100px;
    height: 8px;
    margin: 2px auto 12px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(var(--rgx-palette-primary-rgb), .2), rgba(var(--rgx-palette-primary-rgb), .1));
    box-shadow: inset 0 1px 2px rgba(var(--rgx-palette-primary-rgb), .22);
}

.rgx-animation-notch::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 14px;
    width: 26px;
    height: 4px;
    border-radius: 999px;
    background: rgba(var(--rgx-palette-primary-rgb), .2);
    transform: translateY(-50%);
}

.rgx-animation-notch::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 14px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(var(--rgx-palette-primary-rgb), .48);
    transform: translateY(-50%);
}

.rgx-tablet-body {
    position: relative;
    z-index: 3;
    grid-column: 1;
    grid-row: 2;
    padding: 14px 12px 12px;
    border-radius: 0;
    border: none;
    background: transparent;
    box-shadow: none;
    transition: opacity .2s ease, transform .2s ease;
    border-right: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    display: none;
}

.rgx-animation-container {
    position: relative;
    width: 100%;
    grid-column: 2;
    grid-row: 2;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background: none;
    border-radius: 0;
    box-shadow: none;
    z-index: 3;
    flex-direction: column;
    /* box-shadow: inset -5px -1px 20px 7px #00000017; */
    border-radius: 18px;
    box-shadow: inset 0 1px 2px rgba(var(--rgx-palette-primary-rgb), .22);
}

.rgx-animation-gif {
    position: relative;
    z-index: 3;
    width: 100%;
    height: 100%;
    object-fit: contain;
    animation: fadeInOut 12s ease-in-out;
    border-radius: 8px 8px 24px 24px;
}

.rgx-mobile-simple-hero {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    overflow: visible;
}

.rgx-mobile-simple-hero::before,
.rgx-mobile-simple-hero::after,
.rgx-mobile-simple-hero .rgx-animation-notch {
    display: none;
}

.rgx-mobile-simple-hero .rgx-animation-container {
    width: 100%;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    border-radius: 0;
    display: flex;
    justify-content: flex-end;
}

.rgx-mobile-hero-slideshow {
    position: relative;
    width: min(100%, 720px);
    height: clamp(380px, 42vw, 620px);
    margin-left: auto;
    display: block;
    overflow: visible;
    border-radius: 0;
}

.rgx-mobile-hero-slide {
    position: absolute;
    inset: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity .8s ease;
    will-change: opacity;
    pointer-events: none;
}

.rgx-mobile-hero-slide.is-active {
    opacity: 1;
    pointer-events: auto;
}

.rgx-mobile-hero-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center center;
    border-radius: 0;
}

.rgx-mobile-hero-slide--right {
    justify-content: flex-end;
}

.rgx-mobile-hero-slide--right img {
    object-position: right center;
}

.rgx-mobile-hero-slide--tablet {
    justify-content: flex-start;
    align-items: stretch;
}

.rgx-mobile-hero-slide--tablet img {
    width: auto;
    height: 100%;
    max-width: none;
    object-position: right center;
}

.rgx-tablet-body {
    position: relative;
    z-index: 3;
    padding: 14px 12px 12px;
    border-radius: 0;
    border: none;
    border-right: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    background: transparent;
    box-shadow: none;
    transition: opacity .2s ease, transform .2s ease;
    display: grid;
    align-items: center;
    align-content: center;
    box-shadow: inset -5px -1px 20px 7px #00000017;
    border-radius: 18px;
    margin-right: 2px;
}

.rgx-tablet-body.is-updating {
    opacity: .64;
    transform: translateY(1px)
}

.rgx-tablet-body p {
    margin: 0 0 8px;
    font-size: 12.5px;
    line-height: 1.48;
    color: rgba(var(--rgx-palette-primary-rgb), .84)
}

.rgx-tablet-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 4px;
    border-bottom: 1px solid rgba(var(--rgx-palette-primary-rgb), .12)
}

.rgx-tablet-header p {
    margin: 0;
    font-size: 12px;
    font-weight: 600;
    line-height: 20px;
}

.rgx-tablet-status {
    display: inline-flex;
    align-items: center;
    font-size: 10px;
    padding: 0 8px;
    background: rgba(var(--rgx-palette-action-rgb), .12);
    border: 1px solid rgba(var(--rgx-palette-action-rgb), .24);
    border-radius: 4px;
    color: rgba(var(--rgx-palette-action-rgb), .84);
    margin-left: 12px;
    height: 20px;
}

.rgx-driver-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(var(--rgx-palette-action-rgb), .2);
    color: rgba(var(--rgx-palette-action-rgb), .84);
    font-weight: 700;
    font-size: 14px;
    flex-shrink: 0
}

.rgx-tablet-driver {
    display: flex;
    gap: 8px;
    align-items: center;
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(var(--rgx-palette-primary-rgb), .12)
}

.rgx-driver-info {
    flex: 1;
    min-width: 0
}

.rgx-driver-info p {
    margin: 0 0 3px;
    font-size: 11.5px;
    font-weight: 600;
    color: rgba(var(--rgx-palette-primary-rgb), .84)
}

.rgx-driver-info span {
    font-size: 10px;
    color: rgba(var(--rgx-palette-primary-rgb), .62)
}

.rgx-tablet-stop {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(var(--rgx-palette-primary-rgb), .08)
}

.rgx-stop-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: rgba(var(--rgx-palette-action-rgb), .12);
    color: rgba(var(--rgx-palette-action-rgb), .84);
    font-weight: 700;
    font-size: 12px;
    flex-shrink: 0
}

.rgx-stop-details {
    flex: 1;
    min-width: 0
}

.rgx-stop-details p {
    margin: 0 0 2px;
    font-size: 11px;
    font-weight: 600;
    color: rgba(var(--rgx-palette-primary-rgb), .84)
}

.rgx-stop-details span {
    font-size: 9.5px;
    color: rgba(var(--rgx-palette-primary-rgb), .62)
}

.rgx-tablet-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 10px;
    color: rgba(var(--rgx-palette-primary-rgb), .62)
}

.rgx-animation-gif[style*="display:none"] {
    animation: none;
}

@keyframes fadeInOut {
    0% {
        opacity: 0;
    }

    10% {
        opacity: 1;
    }

    90% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.rgx-map-header {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 8px 16px;
    border-bottom: 1px solid var(--rgx-border);
    font-size: 11px;
    letter-spacing: 1px;
    text-transform: uppercase
}

.rgx-map-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    justify-content: space-between
}

.rgx-live-tracking {
    color: var(--rgx-text-secondary);
    font-size: 10px
}

.rgx-trip-toggle {
    height: 24px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    background: rgba(18, 20, 26, .9);
    font-size: 10px;
    letter-spacing: .8px;
    text-transform: uppercase;
    padding: 2px 10px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: border-color .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease
}

.rgx-trip-toggle:hover {
    border-color: rgba(var(--rgx-palette-action-rgb), .7);
    background: rgba(var(--rgx-palette-action-rgb), .12)
}

.rgx-trip-toggle.is-open {
    border-color: rgba(var(--rgx-palette-action-rgb), .85);
    background: linear-gradient(180deg, rgba(var(--rgx-palette-action-rgb), .3), rgba(var(--rgx-palette-action-rgb), .16));
    box-shadow: 0 0 0 1px rgba(var(--rgx-palette-action-rgb), .28), 0 8px 16px rgba(var(--rgx-palette-action-rgb), .22)
}

.rgx-trip-toggle-icon {
    width: 6px;
    height: 6px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    transition: transform .2s ease
}

.rgx-trip-toggle.is-open .rgx-trip-toggle-icon {
    transform: rotate(-135deg) translateY(-1px)
}

.rgx-trip-dropdown {
    position: absolute;
    top: 56px;
    left: 12px;
    right: 12px;
    z-index: 9;
    padding: 10px 12px;
    border: 1px solid var(--rgx-border);
    border-radius: 12px;
    background: rgba(20, 22, 29, .9);
    box-shadow: 0 14px 28px rgba(0, 0, 0, .35);
    max-height: 360px;
    opacity: 1;
    overflow: hidden;
    transition: max-height .25s ease, opacity .2s ease, padding .25s ease, border-color .25s ease, transform .2s ease;
    transform: translateY(0)
}

.rgx-trip-dropdown.is-collapsed {
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    opacity: 0;
    border-color: transparent;
    transform: translateY(-4px);
    pointer-events: none
}

.rgx-trip-dropdown .rgx-warehouse-box {
    min-height: auto;
    padding: 10px 12px;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(28, 28, 30, .92);
    transform: none
}

.rgx-trip-dropdown .rgx-item-list li:last-child {
    border-bottom: 0
}

.rgx-map-title {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .6px
}

.rgx-map-canvas {
    position: relative;
    flex: 1;
    min-height: 330px;
    overflow: hidden;
    background-color: #d7d5cd
}

.rgx-route-builder-popup {
    position: absolute;
    top: 10px;
    left: 500px;
    transform: translateX(calc(-100% - 12px));
    z-index: 12;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    pointer-events: none;
    max-width: calc(100vw - 24px)
}

.rgx-route-builder-toggle {
    pointer-events: auto;
    height: 30px;
    padding: 0 13px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .36);
    background: rgba(var(--rgx-palette-bg-rgb), .92);
    color: var(--rgx-palette-primary);
    font-size: 10px;
    letter-spacing: .8px;
    text-transform: uppercase;
    font-weight: 600;
    cursor: pointer;
    transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease
}

.rgx-route-builder-toggle:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, .16);
    background: rgba(var(--rgx-palette-accent-rgb), .72)
}

.rgx-route-builder-panel {
    pointer-events: auto;
    width: min(750px, calc(100vw - 40px));
    max-height: calc(100% - 20px);
    overflow: auto;
    padding: 12px;
    border-radius: 12px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .36);
    background: linear-gradient(180deg, rgba(var(--rgx-palette-bg-rgb), .98), rgba(var(--rgx-palette-accent-rgb), .76));
    box-shadow: 0 16px 34px rgba(0, 0, 0, .24);
    backdrop-filter: blur(6px);
    display: flex;
    flex-direction: column;
    gap: 10px
}

.rgx-route-builder-popup:not(.is-open) .rgx-route-builder-panel {
    display: none
}

.rgx-route-builder-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-bottom: 2px
}

.rgx-route-builder-head strong {
    font-size: 11px;
    letter-spacing: .8px;
    text-transform: uppercase;
    color: var(--rgx-palette-primary)
}

.rgx-route-builder-close {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .26);
    background: rgba(var(--rgx-palette-primary-rgb), .08);
    color: var(--rgx-palette-primary);
    cursor: pointer;
    line-height: 1;
    font-size: 14px
}

.rgx-route-builder-row {
    display: grid;
    gap: 6px;
    padding: 8px;
    border-radius: 10px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .14);
    background: rgba(var(--rgx-palette-bg-rgb), .55)
}

.rgx-route-builder-row label {
    font-size: 10px;
    letter-spacing: .7px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-primary-rgb), .74)
}

.rgx-route-builder-actions button,
.rgx-route-builder-row input[type=range],
.rgx-route-builder-row input[type=text],
.rgx-route-builder-row select {
    width: 100%;
    margin: 0;
    height: 20px
}

.rgx-route-builder-row input[type=text],
.rgx-route-builder-row select {
    height: 30px;
    border-radius: 8px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .24);
    background: rgba(var(--rgx-palette-bg-rgb), .95);
    color: var(--rgx-palette-primary);
    padding: 0 8px;
    font-size: 12px
}

.rgx-route-builder-row input[type=range] {
    accent-color: var(--rgx-palette-action)
}

.rgx-route-builder-range-wrap {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 8px
}

.rgx-route-builder-range-wrap span {
    min-width: 38px;
    text-align: right;
    font-size: 12px;
    color: var(--rgx-palette-primary);
    font-variant-numeric: tabular-nums
}

.rgx-route-builder-point-grid {
    gap: 8px
}

.rgx-route-builder-controls {
    display: grid;
    gap: 6px;
    max-height: 230px;
    overflow: auto;
    padding-right: 2px
}

.rgx-route-builder-control {
    display: grid;
    grid-template-columns: 64px 1fr 40px;
    gap: 8px;
    align-items: center
}

.rgx-route-builder-control-label {
    font-size: 10px;
    color: rgba(var(--rgx-palette-primary-rgb), .72)
}

.rgx-route-builder-control-value {
    text-align: right;
    font-size: 11px;
    color: var(--rgx-palette-primary)
}

.rgx-route-builder-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px
}

.rgx-route-builder-actions button {
    height: 30px;
    border-radius: 8px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .26);
    background: rgba(var(--rgx-palette-primary-rgb), .12);
    color: var(--rgx-palette-primary);
    font-size: 10px;
    letter-spacing: .6px;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease
}

.rgx-route-builder-actions button:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 14px rgba(0, 0, 0, .14);
    border-color: rgba(var(--rgx-palette-primary-rgb), .45)
}

.rgx-route-builder-copy-status {
    min-height: 14px;
    font-size: 10px;
    color: rgba(var(--rgx-palette-primary-rgb), .68)
}

.rgx-route-builder-copy-status.is-success {
    color: #177e49
}

.rgx-route-builder-copy-status.is-error {
    color: #c0392b
}

.rgx-map-motion {
    position: absolute;
    inset: 0;
    background-color: #d7d5cd;
    background-image: url(../img/468x377.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%
}

.rgx-map-motion>svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 1
}

.rgx-point {
    position: absolute;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-weight: 700;
    z-index: 3
}

.rgx-point-a {
    top: 22%;
    left: 18%;
    background: var(--rgx-primary);
    box-shadow: 0 0 18px rgba(var(--rgx-palette-action-rgb), .45);
    animation: rgxPulse 2s infinite;
    color: var(--rgx-palette-accent)
}

.rgx-point-b {
    right: 18%;
    bottom: 20%;
    background: var(--rgx-success);
    box-shadow: 0 0 18px rgba(var(--rgx-palette-action-rgb), .45);
    animation: rgxPulse 2s infinite .4s
}

.rgx-route-line {
    position: absolute;
    stroke: var(--rgx-primary);
    stroke-width: 2;
    fill: none;
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    filter: drop-shadow(0 0 8px rgba(var(--rgx-palette-action-rgb), .6));
    z-index: 1
}

.rgx-route-line.animate {
    animation: rgxDrawRoute var(--rgx-route-draw-duration, 2s) linear forwards
}

.rgx-vehicle {
    position: absolute;
    padding: 4px;
    width: 22px;
    height: 22px;
    z-index: 2;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    line-height: 1;
    font-family: "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif;
    background: var(--rgx-warning);
    box-shadow: 0 0 15px rgba(38, 108, 241, .6);
    opacity: 0;
    transform: scaleX(-1)
}

.rgx-vehicle img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block
}

.rgx-vehicle.moving {
    animation: rgxMoveVehicle 4s ease-in-out forwards
}

.rgx-eta-panel {
    position: static;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 0 0 22px;
    opacity: 0;
    transform: translateY(14px);
    transition: opacity .25s ease, transform .25s ease
}

.rgx-eta-panel.show {
    opacity: 1;
    transform: translateY(0)
}

.rgx-eta-item {
    text-align: left;
    min-width: 0;
    padding: 14px 16px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 12px;
    background: rgba(28, 28, 30, .92);
    color: #fff;
    position: relative;
    overflow: hidden;
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease
}

.rgx-eta-item::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent 0, rgba(255, 255, 255, .09) 52%, transparent 100%);
    opacity: 0;
    transform: translateX(-14px);
    transition: opacity .22s ease, transform .22s ease;
    pointer-events: none
}

.rgx-eta-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 22px rgba(0, 0, 0, .28)
}

.rgx-eta-item:hover::after {
    opacity: 1;
    transform: translateX(0)
}

.rgx-eta-item:first-child {
    border-color: rgba(38, 108, 241, .62);
    background: linear-gradient(180deg, rgba(38, 108, 241, .16), rgba(28, 28, 30, .92))
}

.rgx-eta-item:first-child .rgx-eta-label {
    color: rgba(38, 109, 241, .6)
}

.rgx-eta-item:first-child .rgx-eta-value {
    color: var(--rgx-warning)
}

.rgx-eta-item:first-child:hover {
    border-color: rgba(38, 108, 241, .86);
    box-shadow: 0 10px 22px rgba(38, 108, 241, .2)
}

.rgx-eta-item:nth-child(2):hover {
    border-color: rgba(var(--rgx-palette-action-rgb), .6)
}

.rgx-eta-item:nth-child(3):hover {
    border-color: rgba(var(--rgx-palette-action-rgb), .6)
}

.rgx-eta-label {
    margin-bottom: 5px;
    font-size: 10px;
    color: rgba(255, 255, 255, .78);
    letter-spacing: 1px;
    text-transform: uppercase
}

.rgx-eta-value {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    white-space: nowrap;
    transition: transform .2s ease
}

.rgx-eta-item:hover .rgx-eta-value {
    transform: translateX(2px)
}

.rgx-eta-value.success {
    color: var(--rgx-success)
}

.rgx-reset-btn {
    position: static;
    z-index: 6;
    border: 1px solid var(--rgx-border);
    border-radius: 8px;
    background: rgba(28, 28, 30, .92);
    color: var(--rgx-text-primary);
    font-size: 10px;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 8px 12px;
    cursor: pointer;
    transition: border-color .25s ease;
    white-space: nowrap
}

.rgx-reset-btn:hover {
    border-color: var(--rgx-primary)
}

.rgx-hero-copy .mil-button:focus-visible,
.rgx-hero-copy .mil-link:focus-visible,
.rgx-reset-btn:focus-visible,
.rgx-warehouse-box:focus-visible {
    outline: 2px solid #266CF1;
    outline-offset: 2px
}

.rgx-custom-cursor {
    position: absolute;
    width: 22px;
    height: 22px;
    z-index: 7;
    border: 2px solid var(--rgx-primary);
    border-radius: 50%;
    box-shadow: 0 0 14px rgba(var(--rgx-palette-action-rgb), .45);
    pointer-events: none;
    opacity: 0;
    transform: translate(-50%, -50%) scale(1);
    transition: opacity .2s ease, transform .15s ease
}

.rgx-custom-cursor::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--rgx-primary);
    transform: translate(-50%, -50%)
}

.rgx-custom-cursor.show {
    opacity: 1
}

@keyframes rgxDrawRoute {
    to {
        stroke-dashoffset: 0
    }
}

@keyframes rgxMoveVehicle {
    0% {
        opacity: 0
    }

    5% {
        opacity: 1
    }

    100% {
        opacity: 1
    }
}

@keyframes rgxPulse {

    0%,
    100% {
        transform: scale(1)
    }

    50% {
        transform: scale(1.18)
    }
}

@keyframes rgxBlink {

    0%,
    100%,
    50% {
        opacity: 1
    }

    25%,
    75% {
        opacity: .35
    }
}

@media (max-width:1400px) {
    .rgx-hero-grid {
        grid-template-columns: minmax(0, 1fr) minmax(320px, 480px);
        gap: 30px
    }

    .rgx-hero-copy {
        max-width: 560px
    }
}

@media (max-width:1200px) {

    .mil-banner.mil-dark-bg .container,
    .mil-banner.mil-dark-bg {
        min-height: 90vh;
    }

    .rgx-hero-copy {
        max-width: min(680px, 100%)
    }

    .rgx-hero-copy h1 {
        font-size: clamp(42px, 7.2vw, 48px)
    }

    .mil-p-120-30 {
        padding-top: 80px;
        padding-bottom: 24px;
    }

    .rgx-hero-copy p,
    .rgx-trust-line {
        max-width: 62ch
    }

    .rgx-logistics-hero {
        width: 100%;
        margin: 0 auto;
        min-height: auto
    }

    .rgx-animations-hero {
        grid-template-columns: 35% 1fr
    }

    .rgx-kpis {
        max-width: 520px
    }

    .rgx-animations-hero {
        width: 100%;
        overflow: hidden
    }

    .rgx-mobile-simple-hero {
        overflow: visible;
        background: transparent
    }

    .rgx-mobile-hero-slideshow {
        width: min(100%, 680px);
        height: clamp(360px, 48vw, 560px)
    }
}

@media (max-width:992px) {
    .rgx-hero-grid {
        grid-template-columns: 1fr;
        gap: 28px;
        align-items: start
    }

    .rgx-hero-copy {
        max-width: 100%
    }

    .rgx-hero-copy h1 {
        font-size: clamp(36px, 8.2vw, 56px);
        line-height: 1.04
    }

    .rgx-hero-copy p {
        max-width: 100%;
        font-size: 14.5px;
        line-height: 1.62
    }

    .rgx-cta-row {
        gap: 12px;
        margin-bottom: 20px
    }

    .rgx-logistics-hero {
        min-height: auto;
        padding: 22px;
        gap: 12px
    }

    .rgx-animations-hero {
        grid-template-columns: 40% 1fr;
        max-width: 60%;
    }

    .rgx-mobile-hero-slideshow {
        width: min(100%, 620px);
        height: clamp(340px, 70vw, 520px)
    }

    .rgx-panel-header {
        gap: 10px
    }

    .rgx-map-section {
        min-height: 360px
    }

    .rgx-route-builder-panel {
        width: min(520px, calc(100vw - 32px));
        max-height: min(70vh, calc(100% - 16px))
    }

    .rgx-route-builder-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .rgx-kpis {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .mil-banner.mil-dark-bg .container {
        padding-top: 96px;
        padding-bottom: 44px
    }
}

@media (max-width:767px) {
    .rgx-banner-content {
        padding-bottom: 0
    }

    .rgx-hero-grid {
        gap: 20px
    }

    .rgx-hero-copy h1 {
        font-size: clamp(32px, 11.5vw, 46px);
        line-height: 1.06
    }

    .rgx-hero-copy p {
        font-size: 14px;
        line-height: 1.58
    }

    .rgx-cta-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        margin-bottom: 16px
    }

    .rgx-logistics-hero {
        min-height: auto;
        padding: 18px;
        gap: 10px
    }

    .rgx-main {
        grid-template-columns: 1fr;
        gap: 8px;
        margin-top: 0
    }

    .rgx-warehouse-box {
        min-height: 160px
    }

    .rgx-map-section {
        min-height: 320px
    }

    .rgx-route-builder-popup {
        top: 8px;
        left: 12px;
        right: 12px;
        transform: none;
        gap: 6px;
        width: auto;
        max-width: calc(100vw - 24px);
        flex-direction: column;
        align-items: stretch
    }

    .rgx-route-builder-panel {
        width: 100%;
        max-height: 70vh
    }

    .rgx-route-builder-actions {
        grid-template-columns: 1fr
    }

    .rgx-map-header {
        flex-wrap: wrap;
        gap: 8px;
        min-height: 0;
        padding: 12px 14px
    }

    .rgx-map-meta {
        width: 100%;
        justify-content: space-between;
        gap: 8px
    }

    .rgx-eta-panel {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
        margin-bottom: 12px
    }

    .rgx-eta-item {
        min-height: 68px;
        padding: 8px 9px;
        border-radius: 10px;
        gap: 3px
    }

    .rgx-eta-label {
        font-size: 10px;
        letter-spacing: .6px
    }

    .rgx-eta-value {
        font-size: 16px
    }

    .rgx-kpis {
        grid-template-columns: 1fr
    }

    .rgx-reset-btn {
        justify-self: start
    }

    .rgx-panel-title {
        justify-self: start;
        max-width: none
    }

    .rgx-status-indicator {
        display: none
    }

    .rgx-panel-header {
        grid-template-columns: auto 1fr;
        gap: 8px;
        margin-bottom: 4px;
        padding: 0
    }

    .rgx-animations-hero {
        max-width: 80%;
        grid-template-columns: 1fr
    }

    .rgx-animation-notch {
        grid-column: 1 / -1
    }

    .rgx-tablet-body {
        grid-column: 1 / -1;
        grid-row: auto;
        border-right: none;
        border-bottom: 1px solid rgba(var(--rgx-palette-primary-rgb), .12)
    }

    .rgx-animation-container {
        grid-column: 1 / -1;
        grid-row: auto;
        min-height: auto;
    }

    .rgx-mobile-simple-hero {
        max-width: 100%;
        padding: 0
    }

    .rgx-mobile-hero-slideshow {
        width: 100%;
        height: clamp(330px, 92vw, 500px)
    }

    .mil-banner.mil-dark-bg .container {
        padding-top: 120px;
        padding-bottom: 34px
    }
}

@media (max-width:575px) {
    .rgx-hero-copy h1 {
        font-size: clamp(28px, 12vw, 38px)
    }

    .rgx-hero-copy p {
        font-size: 13.5px
    }

    .rgx-trust-line {
        font-size: 11px;
        line-height: 1.45
    }

    .rgx-logistics-hero {
        min-height: auto;
        padding: 14px;
        border-radius: 14px
    }

    .rgx-eta-panel {
        gap: 5px;
        margin-bottom: 10px
    }

    .rgx-eta-item {
        min-height: 60px;
        padding: 7px 8px;
        border-radius: 9px;
        gap: 2px
    }

    .rgx-eta-label {
        font-size: 10px;
        letter-spacing: .5px
    }

    .rgx-eta-value {
        font-size: 14px;
        font-weight: 500
    }

    .rgx-panel-header {
        gap: 8px;
        margin-bottom: 6px
    }

    .rgx-reset-btn {
        padding: 7px 10px;
        font-size: 9px
    }

    .rgx-panel-title {
        padding: 0 12px;
        font-size: 9px;
        letter-spacing: .8px
    }

    .rgx-map-section {
        min-height: 280px;
        border-radius: 12px
    }

    .rgx-map-header {
        padding: 10px 12px;
        font-size: 10px
    }

    .rgx-trip-dropdown {
        top: 50px;
        left: 10px;
        right: 10px;
        max-height: 300px;
        padding: 10px
    }

    .rgx-trip-dropdown .rgx-warehouse-box {
        min-height: 140px;
        padding: 10px
    }

    .rgx-item-list {
        font-size: 11px
    }

    .rgx-item-list li {
        padding: 7px 0
    }

    .rgx-animations-hero {
        max-width: 100%;
        padding: 10px 10px 12px
    }

    .rgx-mobile-simple-hero {
        padding: 0;
        background: transparent;
        box-shadow: none
    }

    .rgx-mobile-hero-slideshow {
        width: 100%;
        height: clamp(310px, 110vw, 460px)
    }

    .rgx-tablet-body {
        padding: 12px 10px;
        font-size: 10px
    }

    .rgx-tablet-header p {
        font-size: 11px
    }

    .rgx-driver-info p {
        font-size: 10px
    }

    .rgx-driver-info span {
        font-size: 9px
    }

    .rgx-stop-details p {
        font-size: 10px
    }

    .rgx-stop-details span {
        font-size: 8.5px
    }

    .rgx-tablet-meta {
        font-size: 9px
    }
}

@media (max-width:420px) {
    .rgx-hero-copy h1 {
        font-size: 27px
    }

    .rgx-map-meta {
        align-items: flex-start;
        gap: 6px
    }

    .rgx-trip-toggle {
        align-self: flex-start
    }

    .rgx-eta-item {
        min-height: 56px;
        padding: 6px 7px
    }

    .rgx-eta-value {
        font-size: 13px;
        font-weight: 500
    }
}

@media (prefers-reduced-motion:reduce) {

    .rgx-point-a,
    .rgx-point-b,
    .rgx-status-dot {
        animation: none !important
    }

    .rgx-custom-cursor,
    .rgx-eta-panel,
    .rgx-route-line,
    .rgx-route-line.animate,
    .rgx-status-indicator {
        transition: none !important;
        animation: none !important
    }
}

:root {
    --rgx-palette-bg: #E7ECF4;
    --rgx-palette-primary: #112140;
    --rgx-palette-action: #266CF1;
    --rgx-palette-accent: #CFDEFD;
    --rgx-on-dark: #E7ECF4;
    --rgx-on-dark-soft: rgba(231, 236, 244, 0.78);
    --rgx-palette-bg-rgb: 231, 236, 244;
    --rgx-palette-primary-rgb: 17, 33, 64;
    --rgx-palette-action-rgb: 38, 108, 241;
    --rgx-palette-accent-rgb: 207, 222, 253;
    --rgx-shadow-soft: 0 8px 18px rgba(var(--rgx-palette-primary-rgb), 0.12);
    --rgx-shadow-medium: 0 14px 30px rgba(var(--rgx-palette-primary-rgb), 0.18);
    --rgx-shadow-strong: 0 22px 40px rgba(var(--rgx-palette-primary-rgb), 0.22);
    --rgx-surface-gradient: linear-gradient(165deg, rgba(var(--rgx-palette-bg-rgb), 0.94) 0%, rgba(var(--rgx-palette-accent-rgb), 0.72) 100%);
    --rgx-ui-gradient: linear-gradient(135deg, var(--rgx-palette-action) 0%, rgba(var(--rgx-palette-action-rgb), 0.88) 100%)
}

.mil-banner.mil-dark-bg {
    background: radial-gradient(circle at 12% 16%, rgba(var(--rgx-palette-accent-rgb), .92) 0, transparent 44%), linear-gradient(135deg, var(--rgx-palette-bg) 0, var(--rgx-palette-accent) 100%)
}

.mil-banner.mil-dark-bg:before {
    -webkit-backdrop-filter: none;
    backdrop-filter: none
}

.mil-banner.mil-dark-bg .mil-muted {
    color: rgba(var(--rgx-palette-primary-rgb), .95)
}

.mil-banner.mil-dark-bg .mil-light-soft,
.mil-banner.mil-dark-bg .rgx-trust-line {
    color: rgba(var(--rgx-palette-primary-rgb), .72)
}

.mil-banner.mil-dark-bg .rgx-trust-line strong {
    color: var(--rgx-palette-primary)
}

.mil-banner.mil-dark-bg .rgx-hero-copy .mil-button {
    background-color: var(--rgx-palette-action);
    color: var(--rgx-palette-bg)
}

.mil-banner.mil-dark-bg .rgx-hero-copy .mil-button svg {
    background-color: var(--rgx-palette-accent)
}

.mil-banner.mil-dark-bg .rgx-hero-copy .mil-button svg path {
    fill: var(--rgx-palette-action)
}

.mil-banner.mil-dark-bg .rgx-hero-copy .mil-link {
    color: var(--rgx-palette-action)
}

.mil-banner.mil-dark-bg .rgx-hero-copy .mil-link .mil-arrow {
    background-color: rgba(var(--rgx-palette-primary-rgb), .12)
}

.mil-banner.mil-dark-bg .rgx-hero-copy .mil-link .mil-arrow path {
    fill: var(--rgx-palette-action)
}

.rgx-logistics-hero {
    --rgx-primary: var(--rgx-palette-action);
    --rgx-secondary: var(--rgx-palette-accent);
    --rgx-success: var(--rgx-palette-action);
    --rgx-warning: var(--rgx-palette-action);
    --rgx-bg-secondary: var(--rgx-palette-bg);
    --rgx-bg-tertiary: var(--rgx-palette-accent);
    --rgx-text-primary: var(--rgx-palette-primary);
    --rgx-text-secondary: rgba(var(--rgx-palette-primary-rgb), 0.72);
    --rgx-border: rgba(var(--rgx-palette-primary-rgb), 0.24);
    border-color: rgba(var(--rgx-palette-primary-rgb), .26);
    background: radial-gradient(circle at 15% 85%, rgba(var(--rgx-palette-accent-rgb), .74) 0, transparent 54%), radial-gradient(circle at 85% 20%, rgba(var(--rgx-palette-primary-rgb), .14) 0, transparent 52%), var(--rgx-palette-bg);
    box-shadow: 0 24px 40px rgba(var(--rgx-palette-primary-rgb), .16)
}

.rgx-logistics-hero::after {
    background: linear-gradient(120deg, rgba(255, 255, 255, .38), transparent 60%)
}

.rgx-kpi {
    border-color: rgba(var(--rgx-palette-primary-rgb), .16);
    background: rgba(var(--rgx-palette-accent-rgb), .45)
}

.rgx-eta-value,
.rgx-kpi-value,
.rgx-map-title,
.rgx-panel-title,
.rgx-reset-btn,
.rgx-trip-toggle {
    color: var(--rgx-palette-primary)
}

.rgx-kpi-label {
    color: rgba(var(--rgx-palette-primary-rgb), .72)
}

.rgx-eta-item,
.rgx-map-section,
.rgx-panel-title,
.rgx-reset-btn,
.rgx-status-indicator,
.rgx-trip-dropdown,
.rgx-trip-dropdown .rgx-warehouse-box,
.rgx-trip-toggle,
.rgx-warehouse-box {
    border-color: var(--rgx-border);
    background: rgba(var(--rgx-palette-bg-rgb), .9)
}

.rgx-box-icon {
    color: rgba(var(--rgx-palette-primary-rgb), .9)
}

.rgx-box-icon svg {
    border-color: rgba(var(--rgx-palette-primary-rgb), .3);
    background: rgba(var(--rgx-palette-accent-rgb), .62)
}

.rgx-map-canvas {
    background-color: #d7d5cd
}

.rgx-map-motion {
    background-color: #d7d5cd;
    background-image: url(../img/468x377.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%
}

.rgx-logistics-hero:hover .rgx-map-section,
.rgx-reset-btn:hover,
.rgx-warehouse-box:hover {
    border-color: rgba(var(--rgx-palette-primary-rgb), .58)
}

.rgx-trip-toggle:hover {
    border-color: rgba(var(--rgx-palette-primary-rgb), .62);
    background: rgba(var(--rgx-palette-accent-rgb), .62)
}

.rgx-trip-toggle.is-open {
    border-color: rgba(var(--rgx-palette-primary-rgb), .78);
    background: linear-gradient(180deg, rgba(var(--rgx-palette-accent-rgb), .88), rgba(var(--rgx-palette-bg-rgb), .94));
    box-shadow: 0 0 0 1px rgba(var(--rgx-palette-primary-rgb), .18), 0 8px 16px rgba(var(--rgx-palette-primary-rgb), .2)
}

.rgx-point-a {
    box-shadow: 0 0 18px rgba(var(--rgx-palette-primary-rgb), .42)
}

.rgx-point-b {
    color: var(--rgx-bg-tertiary);
    box-shadow: 0 0 18px rgba(var(--rgx-palette-accent-rgb), .94)
}

.rgx-route-line {
    filter: drop-shadow(0 0 8px rgba(var(--rgx-palette-primary-rgb), .5))
}

.rgx-vehicle {
    color: var(--rgx-palette-primary);
    box-shadow: 0 0 15px rgba(var(--rgx-palette-accent-rgb), .95)
}

.rgx-eta-item {
    color: var(--rgx-palette-primary)
}

.rgx-eta-item:first-child {
    background: linear-gradient(180deg, rgba(var(--rgx-palette-accent-rgb), .84), rgba(var(--rgx-palette-bg-rgb), .94))
}

.rgx-eta-item:first-child .rgx-eta-label,
.rgx-eta-label {
    color: rgba(var(--rgx-palette-primary-rgb), .72)
}

.rgx-eta-item:first-child .rgx-eta-value {
    color: var(--rgx-palette-primary)
}

.rgx-eta-item:first-child:hover,
.rgx-eta-item:nth-child(2):hover,
.rgx-eta-item:nth-child(3):hover {
    border-color: rgba(var(--rgx-palette-primary-rgb), .62)
}

.rgx-hero-copy .mil-button:focus-visible,
.rgx-hero-copy .mil-link:focus-visible,
.rgx-reset-btn:focus-visible,
.rgx-warehouse-box:focus-visible {
    outline-color: var(--rgx-palette-primary)
}

.rgx-custom-cursor {
    box-shadow: 0 0 14px rgba(var(--rgx-palette-primary-rgb), .45)
}

.mil-wrapper,
body {
    background: radial-gradient(circle at 12% 8%, rgba(var(--rgx-palette-accent-rgb), .78) 0, transparent 42%), radial-gradient(circle at 88% 92%, rgba(var(--rgx-palette-primary-rgb), .1) 0, transparent 46%), var(--rgx-palette-bg) !important;
    color: rgba(var(--rgx-palette-primary-rgb), .76) !important
}

section {
    background: 0 0 !important
}

.mil-soft-bg {
    background: linear-gradient(180deg, rgba(var(--rgx-palette-bg-rgb), .96) 0, rgba(var(--rgx-palette-accent-rgb), .46) 100%) !important
}

.mil-banner.mil-dark-bg,
.mil-curtain,
.mil-dark-bg,
.mil-menu-frame,
.mil-preloader {
    background: radial-gradient(circle at 18% 18%, rgba(var(--rgx-palette-accent-rgb), .82) 0, transparent 45%), linear-gradient(140deg, var(--rgx-palette-bg) 0, var(--rgx-palette-accent) 100%) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .45) !important
}

.mil-frame {
    background: 0 0 !important;
    box-shadow: none !important
}

.mil-dark-bg:before {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important
}

.mil-breadcrumbs li a,
.mil-dark,
.mil-light,
.mil-main-menu ul li a,
.mil-muted,
h1,
h2,
h3,
h4,
h5,
h6,
li,
p {
    color: var(--rgx-palette-primary) !important
}

.mil-dark-soft,
.mil-light-soft {
    color: rgba(var(--rgx-palette-primary-rgb), .72) !important
}

.mil-accent {
    color: var(--rgx-palette-action) !important
}

.mil-marker {
    background-color: var(--rgx-palette-action) !important
}

.mil-button {
    background: var(--rgx-ui-gradient) !important;
    color: var(--rgx-palette-bg) !important;
    box-shadow: var(--rgx-shadow-medium) !important
}

.mil-button svg {
    background: linear-gradient(145deg, var(--rgx-palette-accent) 0, rgba(var(--rgx-palette-bg-rgb), .95) 100%) !important;
    box-shadow: var(--rgx-shadow-soft) !important
}

.mil-button svg path {
    fill: var(--rgx-palette-action) !important
}

.mil-link,
.mil-link.mil-accent,
.mil-link.mil-dark {
    color: var(--rgx-palette-primary) !important
}

.mil-link .mil-arrow,
.mil-link.mil-accent svg {
    background-color: rgba(var(--rgx-palette-primary-rgb), .14) !important;
    box-shadow: var(--rgx-shadow-soft) !important
}

.mil-link.mil-dark svg {
    background-color: var(--rgx-on-dark-soft) !important;
    box-shadow: var(--rgx-shadow-soft) !important
}

.mil-link .mil-arrow path,
.mil-link.mil-accent svg path,
.mil-link.mil-dark svg path {
    fill: var(--rgx-palette-primary) !important
}

.mil-link.mil-accent {
    color: var(--rgx-palette-action) !important
}

.mil-link.mil-accent svg path {
    fill: var(--rgx-palette-action) !important
}

input,
select,
textarea {
    color: var(--rgx-palette-primary) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .42) !important
}

input::placeholder,
textarea::placeholder {
    color: rgba(var(--rgx-palette-primary-rgb), .55) !important
}

.mil-breadcrumbs:before,
.mil-divider,
.mil-suptitle:before {
    background-color: rgba(var(--rgx-palette-primary-rgb), .18) !important
}

.mil-breadcrumbs li:after,
.mil-breadcrumbs.mil-light li:after {
    color: rgba(var(--rgx-palette-primary-rgb), .72) !important
}

.mil-breadcrumbs li a:hover,
.mil-breadcrumbs.mil-light li a:hover,
.mil-main-menu ul li a:hover {
    color: rgba(var(--rgx-palette-primary-rgb), .78) !important
}

.mil-banner-panel,
.mil-blog-card,
.mil-bottom-panel,
.mil-footer,
.mil-icon-box,
.mil-price-card,
.mil-project-card,
.mil-reviev-card,
.mil-service-card-sm,
.mil-team-card,
.mil-top-panel {
    background: var(--rgx-surface-gradient) !important;
    border-color: rgba(var(--rgx-palette-primary-rgb), .22) !important
}

footer.mil-dark-bg {
    background: var(--rgx-palette-primary) !important
}

footer.mil-dark-bg .mil-h5,
footer.mil-dark-bg .mil-h6,
footer.mil-dark-bg .mil-muted,
footer.mil-dark-bg a,
footer.mil-dark-bg h1,
footer.mil-dark-bg h2,
footer.mil-dark-bg h3,
footer.mil-dark-bg h4,
footer.mil-dark-bg li,
footer.mil-dark-bg p {
    color: var(--rgx-on-dark) !important
}

footer.mil-dark-bg .mil-dark-soft,
footer.mil-dark-bg .mil-light-soft {
    color: var(--rgx-on-dark-soft) !important
}

footer.mil-dark-bg .mil-link .mil-arrow {
    background-color: rgba(var(--rgx-palette-bg-rgb), .16) !important
}

footer.mil-dark-bg .mil-link .mil-arrow path {
    fill: var(--rgx-on-dark) !important
}

footer.mil-dark-bg .mil-footer-menu ul li a:hover,
footer.mil-dark-bg .mil-footer-menu ul li.mil-active a,
footer.mil-dark-bg .mil-menu-list li a:hover,
footer.mil-dark-bg .mil-social-icons li a:hover {
    color: var(--rgx-palette-action) !important
}

footer.mil-dark-bg .mil-subscribe-form input {
    color: var(--rgx-on-dark) !important;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .24) !important;
    border-bottom-color: rgba(var(--rgx-palette-bg-rgb), .24) !important;
    background: rgba(var(--rgx-palette-bg-rgb), .14) !important;
    box-shadow: none !important
}

footer.mil-dark-bg .mil-subscribe-form input::placeholder {
    color: rgba(var(--rgx-palette-bg-rgb), .72) !important
}

footer.mil-dark-bg .mil-subscribe-form input:focus,
footer.mil-dark-bg .mil-subscribe-form input:hover {
    background: rgba(var(--rgx-palette-bg-rgb), .2) !important
}

.mil-button:hover {
    box-shadow: var(--rgx-shadow-strong) !important
}

.mil-main-menu ul li a:before {
    background-color: rgba(var(--rgx-palette-primary-rgb), .32) !important
}

.mil-main-menu ul li a.mil-active:before {
    background-color: var(--rgx-palette-action) !important
}

.mil-main-menu ul li.mil-active>a,
.mil-main-menu ul li.mil-active>a:hover {
    color: var(--rgx-palette-action) !important
}

.mil-revi-pagination .swiper-pagination-bullet:hover {
    -webkit-box-shadow: inset 0 0 0 4px rgba(var(--rgx-palette-action-rgb), .28) !important;
    box-shadow: inset 0 0 0 4px rgba(var(--rgx-palette-action-rgb), .28) !important
}

.mil-revi-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    -webkit-box-shadow: inset 0 0 0 4px var(--rgx-palette-action) !important;
    box-shadow: inset 0 0 0 4px var(--rgx-palette-action) !important
}

.mil-quote-icon path {
    fill: var(--rgx-palette-action) !important
}

.mil-404::before {
    text-shadow: -2px 0 rgba(var(--rgx-palette-primary-rgb), .92) !important
}

.mil-404::after {
    text-shadow: -2px 0 rgba(var(--rgx-palette-primary-rgb), .46), 2px 2px rgba(var(--rgx-palette-accent-rgb), .82) !important
}

.rgx-item-status,
.rgx-status-dot {
    background: var(--rgx-palette-action) !important
}

#pricing .rgx-price-card .mil-link .mil-arrow path {
    fill: var(--rgx-palette-action) !important
}

#pricing .rgx-price-card .mil-link {
    border-radius: 999px;
    padding: 0 15px 0 50px;
    height: 56px
}

#pricing .rgx-price-card-featured {
    border-color: rgba(var(--rgx-palette-action-rgb), .52) !important;
    background: linear-gradient(170deg, rgba(var(--rgx-palette-bg-rgb), .98) 0, rgba(var(--rgx-palette-accent-rgb), .94) 46%, rgba(var(--rgx-palette-action-rgb), .12) 100%) !important;
    box-shadow: 0 20px 36px rgb(17 33 64 / 8%)
}

#pricing .rgx-price-card-featured::after {
    content: "Most Popular";
    position: absolute;
    top: 16px;
    right: 16px;
    padding: 5px 11px;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .8px;
    text-transform: uppercase;
    border-radius: 999px;
    color: var(--rgx-palette-bg);
    background: var(--rgx-ui-gradient)
}

#pricing .rgx-price-card-featured .mil-price-number {
    color: var(--rgx-palette-action) !important
}

#pricing .rgx-price-card-featured .mil-link {
    background: var(--rgx-ui-gradient);
    color: var(--rgx-palette-bg) !important
}

#pricing .rgx-price-card-featured .mil-link .mil-arrow {
    background-color: rgba(var(--rgx-palette-bg-rgb), .2) !important
}

#pricing .rgx-price-card-featured .mil-link .mil-arrow path {
    fill: var(--rgx-palette-bg) !important
}

@media screen and (max-width:992px) {
    #pricing .rgx-price-card {
        min-height: 0;
        padding: 30px 24px 22px
    }
}

@media screen and (max-width:576px) {
    #pricing .rgx-price-card {
        padding: 26px 20px 20px;
        border-radius: 14px
    }

    #pricing .rgx-price-card .mil-price-number {
        font-size: 38px
    }

    #pricing .rgx-price-card-featured::after {
        top: 12px;
        right: 12px;
        font-size: 9px;
        padding: 4px 9px
    }
}

#platform-walkthrough {
    position: relative
}

#platform-walkthrough::after,
#platform-walkthrough::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 1px;
    pointer-events: none;
    background: linear-gradient(180deg, transparent 0, rgba(var(--rgx-palette-primary-rgb), .12) 12%, rgba(var(--rgx-palette-primary-rgb), .12) 88%, transparent 100%)
}

#platform-walkthrough::before {
    left: clamp(18px, 8vw, 176px)
}

#platform-walkthrough::after {
    right: clamp(18px, 8vw, 176px)
}

#platform-walkthrough .container {
    position: relative;
    z-index: 2
}

.rgx-story-block {
    position: relative
}

.rgx-story-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 22px;
    align-items: end
}

.rgx-story-head-copy {
    max-width: 680px
}

.rgx-story-head-copy h3 {
    margin: 0 0 18px;
    font-size: clamp(36px, 4.4vw, 58px);
    line-height: 1.04;
    letter-spacing: -.5px
}

.rgx-story-head-copy p {
    margin: 0;
    max-width: 58ch;
    font-size: 15px;
    line-height: 1.6
}

.rgx-scale-header .mil-link,
.rgx-story-head-action .mil-link {
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .2);
    border-radius: 999px;
    min-height: 70px;
    padding: 0 16px 0 44px;
    white-space: nowrap
}

.rgx-scale-header .mil-link .mil-arrow,
.rgx-story-head-action .mil-link .mil-arrow {
    background: rgba(var(--rgx-palette-primary-rgb), .2) !important
}

.rgx-story-kicker {
    margin: 0 0 14px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-primary-rgb), .72)
}

.rgx-story-kicker::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    box-shadow: 0 0 0 4px rgba(var(--rgx-palette-primary-rgb), .05)
}

.rgx-story-kicker-plan::before {
    background: #266cf1
}

.rgx-story-kicker-dispatch::before {
    background: #5a6cf7
}

.rgx-story-kicker-track::before {
    background: #17b891
}

.rgx-story-kicker-improve::before {
    background: #ff8a3d
}

.rgx-story-kicker-manage::before {
    background: #17b891
}

.rgx-story-kicker-delight::before {
    background: #ff8a3d
}

.rgx-story-kicker-scale::before {
    background: #4f6ef7
}

.rgx-plan-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-auto-rows: minmax(90px, auto);
    gap: 18px
}

.rgx-story-card {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 22px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .14);
    border-radius: 18px;
    background: linear-gradient(165deg, rgba(var(--rgx-palette-bg-rgb), .95) 0, rgba(var(--rgx-palette-accent-rgb), .55) 100%);
    overflow: hidden
}

.rgx-story-card .mil-h6 {
    margin: 0;
    font-size: 11px;
    letter-spacing: 1.1px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-primary-rgb), .68)
}

.rgx-story-card p {
    margin: 0;
    color: rgba(var(--rgx-palette-primary-rgb), .88);
    font-size: 15px;
    line-height: 1.55
}

.rgx-plan-card-route {
    grid-column: 1/span 4;
    grid-row: 1/span 2;
    min-height: 420px;
    border-color: rgba(var(--rgx-palette-primary-rgb), .22);
    background: radial-gradient(circle at 12% 16%, rgba(var(--rgx-palette-accent-rgb), .82) 0, transparent 52%), linear-gradient(165deg, rgba(var(--rgx-palette-bg-rgb), .96) 0, rgba(var(--rgx-palette-accent-rgb), .64) 100%)
}

.rgx-plan-card-spoke {
    grid-column: 5/span 2;
    grid-row: 1/span 2;
    min-height: 420px;
    border-color: rgba(var(--rgx-palette-primary-rgb), .3);
    position: relative;
    background: radial-gradient(circle at 20% 10%, rgba(var(--rgx-palette-bg-rgb), .14) 0, transparent 48%), linear-gradient(165deg, rgba(var(--rgx-palette-primary-rgb), .92) 0, rgba(var(--rgx-palette-action-rgb), .8) 100%)
}

.rgx-plan-card-spoke .mil-h6,
.rgx-plan-card-spoke p {
    color: #fff !important
}

.rgx-plan-card-spoke p {
    max-width: 26ch
}

.rgx-plan-badge {
    margin-top: 6px;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    max-width: 260px;
    padding: 8px 16px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .24);
    background: rgba(var(--rgx-palette-bg-rgb), .14);
    color: rgba(var(--rgx-palette-bg-rgb), .96);
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4
}

.rgx-plan-badge::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #7bffcf;
    box-shadow: 0 0 0 4px rgba(123, 255, 207, .2)
}

.rgx-spoke-stats {
    margin-top: 10px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px
}

.rgx-spoke-stats>div {
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .2);
    border-radius: 10px;
    background: rgba(var(--rgx-palette-bg-rgb), .14);
    padding: 9px 9px 8px
}

.rgx-spoke-stats strong {
    display: block;
    margin-bottom: 3px;
    font-size: 15px;
    line-height: 1.1;
    color: rgba(var(--rgx-palette-bg-rgb), .96)
}

.rgx-spoke-stats span {
    display: block;
    font-size: 9px;
    line-height: 1.2;
    letter-spacing: .7px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-bg-rgb), .78)
}

.rgx-spoke-image {
    margin: 10px -22px -22px;
    min-height: 150px;
    overflow: hidden;
    border-radius: 16px 16px 0 0;
    border-top: 1px solid rgba(var(--rgx-palette-bg-rgb), .18);
    position: relative
}

.rgx-spoke-image img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    display: block;
    opacity: .76;
    filter: saturate(.72) contrast(.94)
}

.rgx-spoke-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(var(--rgx-palette-primary-rgb), .04) 0, rgba(var(--rgx-palette-primary-rgb), .5) 100%)
}

.rgx-spoke-image-overlay {
    position: absolute;
    left: 10px;
    bottom: 10px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .28);
    background: rgba(var(--rgx-palette-primary-rgb), .64);
    color: rgba(var(--rgx-palette-bg-rgb), .95);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .2px
}

.rgx-plan-card-driver {
    grid-column: 1/span 2;
    grid-row: 3/span 2;
    min-height: 300px;
    background: radial-gradient(circle at 12% 12%, rgba(var(--rgx-palette-accent-rgb), .7), transparent 58%), linear-gradient(155deg, rgba(var(--rgx-palette-bg-rgb), .96), rgba(var(--rgx-palette-accent-rgb), .6))
}

.rgx-plan-card-zones {
    grid-column: 3/span 2;
    grid-row: 3/span 2;
    min-height: 300px;
    background: radial-gradient(circle at 86% 14%, rgba(var(--rgx-palette-accent-rgb), .62), transparent 60%), linear-gradient(150deg, rgba(var(--rgx-palette-bg-rgb), .96), rgba(var(--rgx-palette-accent-rgb), .56))
}

.rgx-plan-card-custom {
    grid-column: 5/span 2;
    grid-row: 3/span 2;
    min-height: 260px;
    border-color: rgba(var(--rgx-palette-primary-rgb), .22);
    background: radial-gradient(circle at 16% 18%, rgba(var(--rgx-palette-accent-rgb), .64), transparent 60%), linear-gradient(155deg, rgba(var(--rgx-palette-bg-rgb), .96), rgba(var(--rgx-palette-accent-rgb), .54))
}

.rgx-plan-card-custom .rgx-plan-badge {
    border-color: rgba(var(--rgx-palette-primary-rgb), .18);
    background: rgba(var(--rgx-palette-bg-rgb), .82);
    color: rgba(var(--rgx-palette-primary-rgb), .9)
}

.rgx-plan-card-custom .rgx-plan-badge::before {
    background: #ff8a3d;
    box-shadow: 0 0 0 4px rgba(255, 138, 61, .18)
}

.rgx-plan-card-custom .rgx-spoke-stats>div {
    border-color: rgba(var(--rgx-palette-primary-rgb), .18);
    background: rgba(var(--rgx-palette-bg-rgb), .78)
}

.rgx-plan-card-custom .rgx-spoke-stats strong {
    color: rgba(var(--rgx-palette-primary-rgb), .9)
}

.rgx-plan-card-custom .rgx-spoke-stats span {
    color: rgba(var(--rgx-palette-primary-rgb), .6)
}

.rgx-plan-card-custom .rgx-spoke-image {
    border-top-color: rgba(var(--rgx-palette-primary-rgb), .12)
}

.rgx-plan-card-custom .rgx-spoke-image img {
    opacity: .9;
    filter: saturate(.92) contrast(.98);
    max-height: 300px
}

.rgx-plan-card-custom .rgx-spoke-image::after {
    background: linear-gradient(180deg, rgba(var(--rgx-palette-primary-rgb), .02) 0, rgba(var(--rgx-palette-primary-rgb), .22) 100%)
}

.rgx-plan-card-custom .rgx-spoke-image-overlay {
    border-color: rgba(var(--rgx-palette-primary-rgb), .2);
    background: rgba(var(--rgx-palette-bg-rgb), .88);
    color: rgba(var(--rgx-palette-primary-rgb), .9)
}

.rgx-plan-card-custom .rgx-custom-table {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    min-width: 180px;
    border-radius: 12px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .18);
    background: rgba(var(--rgx-palette-bg-rgb), .92);
    box-shadow: 0 12px 24px rgba(var(--rgx-palette-primary-rgb), .14);
    overflow: hidden
}

.rgx-plan-card-custom .rgx-custom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 12px;
    border-bottom: 1px solid rgba(var(--rgx-palette-primary-rgb), .12)
}

.rgx-plan-card-custom .rgx-custom-row:last-child {
    border-bottom: 0
}

.rgx-plan-card-custom .rgx-custom-row span {
    font-size: 10px;
    letter-spacing: .6px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-primary-rgb), .7)
}

.rgx-plan-card-custom .rgx-custom-row strong {
    font-size: 14px;
    color: rgba(var(--rgx-palette-primary-rgb), .95)
}

.rgx-plan-card-custom,
.rgx-plan-card-driver,
.rgx-plan-card-zones {
    position: relative;
    border-color: rgba(var(--rgx-palette-primary-rgb), .22);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease
}

.rgx-plan-card-custom:hover,
.rgx-plan-card-driver:hover,
.rgx-plan-card-zones:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 34px rgba(var(--rgx-palette-primary-rgb), .16)
}

.rgx-plan-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px
}

.rgx-route-map {
    position: relative;
    min-height: 248px;
    margin-top: auto;
    border-radius: 16px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .2);
    overflow: hidden;
    isolation: isolate;
    background: rgba(var(--rgx-palette-accent-rgb), .48);
    box-shadow: 0 18px 28px rgba(var(--rgx-palette-primary-rgb), .12)
}

.rgx-route-map>img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    display: block
}

.rgx-route-map-gradient {
    position: absolute;
    inset: 0;
    z-index: 2;
    background: linear-gradient(180deg, rgba(var(--rgx-palette-primary-rgb), .12) 0, rgba(var(--rgx-palette-primary-rgb), .02) 36%, rgba(var(--rgx-palette-primary-rgb), .48) 100%)
}

.rgx-route-map-head {
    position: absolute;
    top: 12px;
    left: 12px;
    right: 12px;
    z-index: 3;
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

.rgx-route-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 11px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .36);
    background: rgba(var(--rgx-palette-primary-rgb), .58);
    color: rgba(var(--rgx-palette-bg-rgb), .95);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: .2px
}

.rgx-route-pill-soft {
    background: rgba(var(--rgx-palette-bg-rgb), .82);
    color: rgba(var(--rgx-palette-primary-rgb), .86);
    border-color: rgba(var(--rgx-palette-primary-rgb), .16)
}

.rgx-route-map-footer {
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 12px;
    z-index: 3;
    display: flex;
    gap: 8px
}

.rgx-route-map-footer>div {
    flex: 1 1 0;
    min-width: 0;
    border-radius: 12px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .28);
    background: rgba(var(--rgx-palette-primary-rgb), .58);
    padding: 10px 11px
}

.rgx-route-map-footer strong {
    display: block;
    margin-bottom: 3px;
    font-size: 17px;
    line-height: 1;
    color: rgba(var(--rgx-palette-bg-rgb), .96)
}

.rgx-route-map-footer span {
    display: block;
    font-size: 10px;
    line-height: 1.25;
    letter-spacing: .8px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-bg-rgb), .8)
}

.rgx-route-map polyline {
    fill: none;
    stroke: rgba(var(--rgx-palette-action-rgb), 0.9);
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 8 10
}

.rgx-route-list {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 3;
    display: grid;
    gap: 6px;
    min-width: 120px
}

.rgx-route-list span {
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .16);
    border-radius: 999px;
    padding: 4px 9px;
    font-size: 11px;
    color: rgba(var(--rgx-palette-primary-rgb), .82);
    background: rgba(var(--rgx-palette-bg-rgb), .88)
}

.rgx-route-node {
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid rgba(var(--rgx-palette-bg-rgb), .95);
    background: rgba(var(--rgx-palette-action-rgb), .95);
    z-index: 3
}

.rgx-route-node-a {
    left: 7%;
    top: 74%
}

.rgx-route-node-b {
    left: 20%;
    top: 49%
}

.rgx-route-node-c {
    left: 36%;
    top: 56%
}

.rgx-route-node-d {
    left: 52%;
    top: 33%
}

.rgx-route-node-e {
    left: 68%;
    top: 43%
}

.rgx-route-node-f {
    left: 87%;
    top: 21%
}

.rgx-driver-preview,
.rgx-proof-image {
    margin-top: auto;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .14)
}

.rgx-driver-preview {
    min-height: 155px
}

.rgx-driver-preview img,
.rgx-proof-image img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    display: block
}

.rgx-plan-media {
    position: relative;
    margin-top: auto;
    min-height: 180px;
    border-radius: 14px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .18);
    overflow: hidden;
    isolation: isolate;
    background: rgba(var(--rgx-palette-accent-rgb), .6);
    box-shadow: 0 16px 26px rgba(var(--rgx-palette-primary-rgb), .12)
}

.rgx-plan-card-custom .rgx-plan-media,
.rgx-plan-card-driver .rgx-plan-media,
.rgx-plan-card-zones .rgx-plan-media {
    max-height: 280px
}

.rgx-plan-media img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    display: block;
    filter: saturate(1.02) contrast(.98)
}

.rgx-plan-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(var(--rgx-palette-primary-rgb), .02) 0, rgba(var(--rgx-palette-primary-rgb), .55) 100%)
}

.rgx-plan-media-tag {
    position: absolute;
    left: 12px;
    bottom: 12px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .35);
    background: rgba(var(--rgx-palette-primary-rgb), .7);
    color: rgba(var(--rgx-palette-bg-rgb), .96);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .2px
}

.rgx-plan-media-overlay {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .4);
    background: rgba(var(--rgx-palette-primary-rgb), .64);
    color: rgba(var(--rgx-palette-bg-rgb), .95);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .2px
}

.rgx-plan-media-overlay .rgx-plan-media-time {
    font-weight: 500;
    opacity: .82
}

.rgx-plan-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #7bffcf;
    box-shadow: 0 0 0 3px rgba(123, 255, 207, .22)
}

.rgx-manage-grid {
    display: flex;
    flex-wrap: nowrap;
    gap: 18px;
    overflow-x: auto;
    overflow-y: hidden;
    align-items: stretch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none
}

.rgx-manage-grid .rgx-story-card {
    min-height: 320px;
    border-color: rgba(var(--rgx-palette-primary-rgb), .22);
    flex: 0 0 calc(50% - 40px);
    min-width: 280px;
    scroll-snap-align: start
}

.rgx-manage-grid::-webkit-scrollbar {
    display: none
}

.rgx-manage-card {
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease
}

.rgx-manage-card.is-active {
    transform: translateY(-2px);
    border-color: rgba(var(--rgx-palette-primary-rgb), .28)
}

.rgx-manage-card {
    background: radial-gradient(circle at 16% 18%, rgba(var(--rgx-palette-accent-rgb), .64), transparent 60%), linear-gradient(155deg, rgba(var(--rgx-palette-bg-rgb), .96), rgba(var(--rgx-palette-accent-rgb), .54))
}

.rgx-track-map {
    position: relative;
    margin-top: auto;
    max-height: 230px;
    min-height: 230px;
    margin: 10px -22px -22px;
    border-radius: 16px 16px 0 0;
    border-top: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    background: rgba(var(--rgx-palette-bg-rgb), .92);
    overflow: hidden
}

.rgx-manage-image img,
.rgx-track-map img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    display: block
}

.rgx-manage-proof .rgx-proof-image {
    max-height: 230px;
    min-height: 230px
}

.rgx-proof-image {
    position: relative;
    margin: 10px -22px -22px;
    border-radius: 16px 16px 0 0;
    border-top: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    overflow: hidden
}

.rgx-proof-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(var(--rgx-palette-primary-rgb), .04), rgba(var(--rgx-palette-primary-rgb), .3))
}

.rgx-manage-image {
    margin-top: auto;
    max-height: 230px;
    min-height: 230px;
    margin: 10px -22px -22px;
    border-radius: 16px 16px 0 0;
    border-top: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    overflow: hidden;
    background: rgba(var(--rgx-palette-bg-rgb), .92)
}

.rgx-controls-list {
    margin-top: auto;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .14);
    border-radius: 12px;
    background: rgba(var(--rgx-palette-bg-rgb), .88);
    overflow: hidden
}

.rgx-controls-list div {
    padding: 10px 12px;
    border-bottom: 1px solid rgba(var(--rgx-palette-primary-rgb), .1);
    font-size: 12px;
    color: rgba(var(--rgx-palette-primary-rgb), .8)
}

.rgx-controls-list div:last-child {
    border-bottom: 0
}

.rgx-manage-controls {
    background: radial-gradient(circle at 16% 18%, rgba(var(--rgx-palette-accent-rgb), .64), transparent 60%), linear-gradient(155deg, rgba(var(--rgx-palette-bg-rgb), .96), rgba(var(--rgx-palette-accent-rgb), .54))
}

.rgx-manage-nav {
    margin-top: 14px;
    display: flex;
    justify-content: flex-end;
    gap: 10px
}

.rgx-manage-nav-btn {
    appearance: none;
    -webkit-appearance: none;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .16);
    background: rgba(var(--rgx-palette-bg-rgb), .86);
    color: rgba(var(--rgx-palette-primary-rgb), .7);
    font-size: 12px;
    cursor: pointer;
    transition: transform .2s ease, border-color .2s ease, background-color .2s ease
}

.rgx-manage-nav-btn:hover {
    border-color: rgba(var(--rgx-palette-primary-rgb), .35);
    background: rgba(var(--rgx-palette-bg-rgb), .98)
}

.rgx-manage-nav-btn:focus-visible {
    outline: 2px solid rgba(var(--rgx-palette-primary-rgb), .6);
    outline-offset: 2px
}

.rgx-delight-block {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 370px);
    gap: 32px;
    align-items: center;
    padding: 34px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .14);
    border-radius: 24px;
    background: linear-gradient(160deg, rgba(var(--rgx-palette-bg-rgb), .96) 0, rgba(var(--rgx-palette-accent-rgb), .52) 100%);
    box-shadow: 0 18px 34px rgba(var(--rgx-palette-primary-rgb), .08)
}

.rgx-delight-copy h3 {
    margin: 0 0 16px;
    font-size: clamp(34px, 4.3vw, 56px);
    line-height: 1.04
}

.rgx-delight-copy p {
    margin: 0 0 18px;
    max-width: 54ch
}

.rgx-delight-list {
    display: grid;
    gap: 10px;
    max-width: 460px
}

.rgx-delight-list button {
    appearance: none;
    -webkit-appearance: none;
    position: relative;
    display: grid;
    gap: 4px;
    width: 100%;
    text-align: left;
    border: none;
    border-radius: 12px;
    padding: 14px 15px 14px 21px;
    background: rgba(var(--rgx-palette-bg-rgb), .84);
    color: rgba(var(--rgx-palette-primary-rgb), .86);
    font-size: 14px;
    line-height: 1.35;
    cursor: pointer;
    overflow: hidden;
    transition: background-color .2s ease
}

.rgx-delight-list button::after,
.rgx-delight-list button::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 999px;
    pointer-events: none
}

.rgx-delight-list button::before {
    width: 3px;
    height: 100%;
    background: rgba(var(--rgx-palette-primary-rgb), .14)
}

.rgx-delight-list button::after {
    width: 3px;
    height: 100%;
    background: #ff8a3d;
    transform: scaleY(0);
    transform-origin: top;
    transition: transform .55s ease
}

.rgx-delight-item-title {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 14px;
    line-height: 1.25;
    font-weight: 600;
    color: rgba(var(--rgx-palette-primary-rgb), .92)
}

.rgx-delight-item-meta {
    display: block;
    font-size: 11px;
    line-height: 1.35;
    color: rgba(var(--rgx-palette-primary-rgb), .66)
}

.rgx-delight-list button:hover {
    background: rgba(var(--rgx-palette-bg-rgb), .94)
}

.rgx-delight-list button.is-active {
    background: rgba(255, 138, 61, .08)
}

.rgx-delight-list button.is-active::after,
.rgx-delight-list button.is-auto-advancing::after {
    transform: scaleY(1)
}

.rgx-delight-chip {
    margin-left: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 2px 8px;
    background: rgba(255, 138, 61, .2);
    color: #b8571a;
    font-size: 10px;
    letter-spacing: .8px;
    text-transform: uppercase
}

.rgx-phone-mock {
    position: relative;
    width: min(100%, 348px);
    margin: 0 auto;
    padding: 12px 12px 14px;
    border-radius: 38px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .24);
    background: linear-gradient(145deg, rgba(var(--rgx-palette-bg-rgb), .98) 0, rgba(var(--rgx-palette-accent-rgb), .84) 48%, rgba(var(--rgx-palette-primary-rgb), .2) 100%);
    box-shadow: 0 24px 42px rgba(var(--rgx-palette-primary-rgb), .18), inset 0 1px 0 rgba(var(--rgx-palette-bg-rgb), .62);
    isolation: isolate
}

.rgx-phone-mock::before {
    content: "";
    position: absolute;
    inset: 5px;
    border-radius: 33px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .46);
    pointer-events: none;
    z-index: 1
}

.rgx-phone-mock::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 8px;
    width: 112px;
    height: 4px;
    border-radius: 999px;
    background: rgba(var(--rgx-palette-primary-rgb), .24);
    transform: translateX(-50%);
    pointer-events: none;
    z-index: 2
}

.rgx-phone-notch {
    position: relative;
    z-index: 3;
    width: 122px;
    height: 18px;
    margin: 2px auto 12px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(var(--rgx-palette-primary-rgb), .2), rgba(var(--rgx-palette-primary-rgb), .1));
    box-shadow: inset 0 1px 2px rgba(var(--rgx-palette-primary-rgb), .22)
}

.rgx-phone-notch::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 14px;
    width: 26px;
    height: 4px;
    border-radius: 999px;
    background: rgba(var(--rgx-palette-primary-rgb), .2);
    transform: translateY(-50%)
}

.rgx-phone-notch::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 14px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(var(--rgx-palette-primary-rgb), .48);
    transform: translateY(-50%)
}

.rgx-phone-map {
    position: relative;
    z-index: 3;
    min-height: 200px;
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .14);
    background: linear-gradient(180deg, rgba(var(--rgx-palette-bg-rgb), .08), rgba(var(--rgx-palette-primary-rgb), .34)), url(../img/photo/mob-map.png) center/cover no-repeat;
    box-shadow: inset 0 -24px 30px rgba(var(--rgx-palette-primary-rgb), .2)
}

.rgx-phone-body {
    position: relative;
    z-index: 3;
    margin-top: 10px;
    padding: 14px 12px 12px;
    border-radius: 18px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    background: rgba(var(--rgx-palette-bg-rgb), .9);
    box-shadow: 0 10px 18px rgba(var(--rgx-palette-primary-rgb), .1);
    transition: opacity .2s ease, transform .2s ease
}

.rgx-phone-body.is-updating {
    opacity: .64;
    transform: translateY(1px)
}

.rgx-phone-body p {
    margin: 0 0 8px;
    font-size: 12.5px;
    line-height: 1.48;
    color: rgba(var(--rgx-palette-primary-rgb), .84)
}

.rgx-phone-body ul {
    margin: 0;
    padding: 10px 0 0;
    list-style: none;
    border-top: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    display: grid;
    gap: 7px
}

.rgx-phone-body li {
    position: relative;
    padding-left: 14px;
    font-size: 11.5px;
    color: rgba(var(--rgx-palette-primary-rgb), .74)
}

.rgx-phone-body li::before {
    content: "";
    position: absolute;
    top: .55em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(var(--rgx-palette-action-rgb), .74)
}

.rgx-phone-actions {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px dashed rgba(var(--rgx-palette-primary-rgb), .14);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px
}

.rgx-phone-actions span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .16);
    background: rgba(var(--rgx-palette-bg-rgb), .86);
    font-size: 10.5px;
    font-weight: 600;
    color: rgba(var(--rgx-palette-primary-rgb), .72)
}

.rgx-phone-actions span:last-child {
    background: rgba(var(--rgx-palette-action-rgb), .12);
    border-color: rgba(var(--rgx-palette-action-rgb), .24);
    color: rgba(var(--rgx-palette-action-rgb), .84)
}

.rgx-scale-panel {
    position: relative;
    overflow: hidden;
    padding: 38px;
    border-radius: 26px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .14);
    background: radial-gradient(circle at 8% 16%, rgba(var(--rgx-palette-accent-rgb), .54), transparent 42%), linear-gradient(180deg, rgba(var(--rgx-palette-bg-rgb), .96), rgba(var(--rgx-palette-accent-rgb), .58));
    box-shadow: 0 20px 34px rgba(var(--rgx-palette-primary-rgb), .1)
}

.rgx-scale-panel::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(var(--rgx-palette-primary-rgb), .06) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--rgx-palette-primary-rgb), .06) 1px, transparent 1px);
    background-size: 210px 210px;
    pointer-events: none
}

.rgx-scale-chart,
.rgx-scale-header,
.rgx-scale-metrics {
    position: relative;
    z-index: 2
}

.rgx-scale-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px;
    align-items: start;
    margin-bottom: 24px
}

.rgx-scale-header h3 {
    margin: 0 0 14px;
    font-size: clamp(34px, 4.2vw, 56px);
    line-height: 1.04
}

.rgx-scale-header p {
    margin: 0;
    max-width: 56ch;
    font-size: 15px;
    line-height: 1.58
}

.rgx-scale-chart {
    position: relative;
    min-height: 250px;
    border-radius: 18px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .14);
    background: linear-gradient(180deg, rgba(var(--rgx-palette-bg-rgb), .74), rgba(var(--rgx-palette-accent-rgb), .38));
    overflow: hidden;
    cursor: crosshair
}

.rgx-scale-chart svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%
}

.rgx-scale-chart polyline {
    fill: none;
    stroke: rgba(var(--rgx-palette-action-rgb), 0.64);
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round
}

.rgx-scale-chart-points {
    position: absolute;
    inset: 0
}

.rgx-scale-chart-point {
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid rgba(var(--rgx-palette-bg-rgb), .95);
    background: rgba(var(--rgx-palette-action-rgb), .62);
    transform: translate(-50%, -50%);
    box-shadow: 0 0 0 0 rgba(var(--rgx-palette-action-rgb), .22);
    transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
    pointer-events: auto
}

.rgx-scale-chart-point.is-active {
    transform: translate(-50%, -50%) scale(1.24);
    background: rgba(var(--rgx-palette-action-rgb), 1);
    box-shadow: 0 0 0 6px rgba(var(--rgx-palette-action-rgb), .18)
}

.rgx-scale-chart-tag {
    position: absolute;
    left: var(--rgx-tag-left, 0);
    top: var(--rgx-tag-top, 0);
    transform: none;
    padding: 10px 12px;
    border-radius: 12px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .16);
    background: rgba(var(--rgx-palette-bg-rgb), .9);
    font-size: 12px;
    line-height: 1.35;
    color: rgba(var(--rgx-palette-primary-rgb), .86);
    box-shadow: 0 12px 20px rgba(var(--rgx-palette-primary-rgb), .12);
    max-width: calc(100% - 16px);
    white-space: nowrap;
    pointer-events: none;
    transition: left .16s ease, top .16s ease;
    z-index: 6
}

.rgx-scale-chart-tag strong {
    display: block;
    font-size: 12px;
    line-height: 1.35;
    font-weight: 700;
    color: rgba(var(--rgx-palette-primary-rgb), .92)
}

.rgx-scale-chart-tag span {
    display: block;
    color: rgba(var(--rgx-palette-primary-rgb), .62)
}

.rgx-scale-metrics {
    margin-top: 24px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) 1.35fr;
    gap: 14px;
    align-items: end
}

.rgx-scale-metrics>div {
    padding: 8px 0
}

.rgx-scale-metrics strong {
    display: block;
    margin-bottom: 6px;
    font-size: clamp(30px, 3.3vw, 44px);
    line-height: 1;
    color: rgba(var(--rgx-palette-primary-rgb), .96)
}

.rgx-scale-metrics span {
    display: block;
    font-size: 12px;
    line-height: 1.5;
    color: rgba(var(--rgx-palette-primary-rgb), .72)
}

.rgx-scale-metrics blockquote {
    margin: 0;
    padding: 0 0 0 14px;
    border-left: 2px solid rgba(var(--rgx-palette-action-rgb), .4);
    color: rgba(var(--rgx-palette-primary-rgb), .78);
    font-size: 13px;
    line-height: 1.6
}

.rgx-scale-cite {
    margin: 4px 0 0;
    font-size: 11px;
    line-height: 1.5;
    color: rgba(var(--rgx-palette-primary-rgb), .58)
}

.rgx-feature-hub,
.rgx-feature-page {
    position: relative;
    overflow: hidden
}

.rgx-feature-hero {
    position: relative;
    overflow: hidden
}

.rgx-feature-hub .container,
.rgx-feature-page .container {
    position: relative;
    z-index: 2
}

.rgx-feature-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
    gap: 24px;
    align-items: stretch
}

.rgx-feature-hero-copy h1 {
    margin: 0 0 18px;
    font-size: clamp(42px, 5vw, 74px);
    line-height: .98;
    letter-spacing: -.8px
}

.rgx-feature-hero-copy p {
    max-width: 62ch
}

.rgx-feature-hero-panel {
    display: grid;
    gap: 18px;
    padding: 28px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .16);
    border-radius: 26px;
    background: linear-gradient(165deg, rgba(var(--rgx-palette-bg-rgb), .94) 0, rgba(var(--rgx-palette-accent-rgb), .58) 100%);
    box-shadow: 0 20px 34px rgba(var(--rgx-palette-primary-rgb), .1)
}

.rgx-feature-page .rgx-feature-hero-panel {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none
}

.rgx-feature-hero-panel-label {
    display: inline-flex;
    margin-bottom: 6px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.3px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-primary-rgb), .74)
}

.rgx-feature-hero-points {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 12px
}

.rgx-feature-hero-points li {
    position: relative;
    padding-left: 20px;
    font-size: 14px;
    line-height: 1.6;
    color: rgba(var(--rgx-palette-primary-rgb), .84)
}

.rgx-feature-hero-points li::before {
    content: "";
    position: absolute;
    top: 8px;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--rgx-palette-action);
    box-shadow: 0 0 0 6px rgba(var(--rgx-palette-action-rgb), .14)
}

.rgx-feature-side-nav {
    position: fixed;
    top: 50%;
    left: clamp(12px, calc((100vw - 1280px) / 2 + 12px), 36px);
    z-index: 24;
    display: flex;
    flex-direction: column;
    gap: 14px;
    transform: translateY(-50%)
}

.rgx-feature-side-nav a {
    position: relative;
    display: block;
    width: 18px;
    height: 18px;
    min-height: 18px;
    padding: 0;
    border-radius: 999px;
    color: transparent;
    font-size: 0;
    line-height: 0;
    overflow: visible;
    transition: transform .2s ease
}

.rgx-feature-side-nav a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    transform: translate(-50%, -50%);
    background: rgba(var(--rgx-palette-primary-rgb), .24);
    box-shadow: 0 0 0 6px rgba(var(--rgx-palette-primary-rgb), .08);
    transition: background .2s ease, box-shadow .2s ease, transform .2s ease
}

.rgx-feature-side-nav a::after {
    content: attr(data-label);
    position: absolute;
    top: 50%;
    left: calc(100% + 14px);
    padding: 10px 14px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    border-radius: 999px;
    background: rgba(var(--rgx-palette-bg-rgb), .72);
    box-shadow: 0 16px 34px rgba(var(--rgx-palette-primary-rgb), .12);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    white-space: nowrap;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-primary-rgb), .78);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-50%) translateX(-6px);
    transition: opacity .2s ease, transform .2s ease
}

.rgx-feature-side-nav a:hover {
    transform: translateX(2px)
}

.rgx-feature-side-nav a.is-active {
    transform: scale(1.02)
}

.rgx-feature-side-nav a.is-active::before {
    background: var(--rgx-palette-action);
    box-shadow: 0 0 0 6px rgba(var(--rgx-palette-action-rgb), .16);
    transform: translate(-50%, -50%) scale(1.12)
}

.rgx-feature-side-nav a:hover::after,
.rgx-feature-side-nav a.is-revealed::after,
.rgx-feature-side-nav a:focus-visible::after {
    opacity: 1;
    transform: translateY(-50%) translateX(0)
}

.rgx-feature-side-nav a:hover::before,
.rgx-feature-side-nav a:focus-visible::before {
    background: rgba(var(--rgx-palette-action-rgb), .8);
    box-shadow: 0 0 0 7px rgba(var(--rgx-palette-action-rgb), .14)
}

.rgx-feature-side-nav a:focus-visible {
    outline: none
}

.rgx-feature-hero-panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px
}

.rgx-feature-hero-panel-head strong {
    display: block;
    font-size: 16px;
    line-height: 1.2;
    color: rgba(var(--rgx-palette-primary-rgb), .96)
}

.rgx-feature-hero-panel-head span {
    display: block;
    margin-top: 5px;
    font-size: 12px;
    line-height: 1.5;
    color: rgba(var(--rgx-palette-primary-rgb), .68)
}

.rgx-feature-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px
}

.rgx-feature-stat {
    padding: 12px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    border-radius: 14px;
    background: rgba(var(--rgx-palette-bg-rgb), .72)
}

.rgx-feature-stat strong {
    display: block;
    margin-bottom: 4px;
    font-size: 18px;
    line-height: 1.1;
    color: rgba(var(--rgx-palette-primary-rgb), .95)
}

.rgx-feature-stat span {
    display: block;
    font-size: 10px;
    line-height: 1.45;
    letter-spacing: .7px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-primary-rgb), .65)
}

.rgx-feature-toc {
    display: grid;
    gap: 10px
}

.rgx-feature-toc a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 58px;
    padding: 14px 16px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    border-radius: 16px;
    background: rgba(var(--rgx-palette-bg-rgb), .78);
    color: rgba(var(--rgx-palette-primary-rgb), .9);
    transition: transform .2s ease, border-color .2s ease, background-color .2s ease
}

.rgx-feature-toc a strong {
    display: block;
    margin-bottom: 2px;
    font-size: 14px;
    line-height: 1.3
}

.rgx-feature-toc a span {
    display: block;
    font-size: 11px;
    line-height: 1.45;
    color: rgba(var(--rgx-palette-primary-rgb), .64)
}

.rgx-feature-toc a:hover {
    transform: translateY(-1px);
    border-color: rgba(var(--rgx-palette-primary-rgb), .22);
    background: rgba(var(--rgx-palette-bg-rgb), .94)
}

.rgx-feature-index-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px
}

.rgx-feature-index-card {
    display: grid;
    gap: 16px;
    padding: 24px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .14);
    border-radius: 24px;
    background: linear-gradient(160deg, rgba(var(--rgx-palette-bg-rgb), .96), rgba(var(--rgx-palette-accent-rgb), .56));
    box-shadow: 0 18px 30px rgba(var(--rgx-palette-primary-rgb), .08)
}

.rgx-feature-index-card.is-dark {
    background: linear-gradient(160deg, rgba(var(--rgx-palette-primary-rgb), .94), rgba(var(--rgx-palette-action-rgb), .82));
    border-color: rgba(var(--rgx-palette-bg-rgb), .14)
}

.rgx-feature-index-card.is-dark .mil-h5,
.rgx-feature-index-card.is-dark p,
.rgx-feature-index-card.is-dark .mil-link {
    color: #fff !important
}

.rgx-feature-index-card-media {
    position: relative;
    min-height: 212px;
    border-radius: 18px;
    overflow: visible;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    background: rgba(var(--rgx-palette-bg-rgb), .8)
}

.rgx-feature-index-card-media img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    display: block
}

.rgx-feature-index-card-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(var(--rgx-palette-primary-rgb), .04), rgba(var(--rgx-palette-primary-rgb), .26))
}

.rgx-feature-section {
    padding: 30px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .14);
    border-radius: 26px;
    background: linear-gradient(165deg, rgba(var(--rgx-palette-bg-rgb), .96), rgba(var(--rgx-palette-accent-rgb), .58));
    box-shadow: 0 18px 30px rgba(var(--rgx-palette-primary-rgb), .08);
    scroll-margin-top: 80px
}

.rgx-feature-section-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(290px, .95fr);
    gap: 22px;
    align-items: start
}

.rgx-feature-section-copy {
    display: grid;
    gap: 16px
}

.rgx-feature-section-copy h3 {
    margin: 0;
    font-size: clamp(30px, 3.8vw, 52px);
    line-height: 1.04;
    letter-spacing: -.5px
}

.rgx-feature-section-copy p {
    margin: 0;
    max-width: 60ch;
    font-size: 15px;
    line-height: 1.65
}

.rgx-feature-pill-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px
}

.rgx-feature-pill {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    background: rgba(var(--rgx-palette-bg-rgb), .82);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-primary-rgb), .72)
}

.rgx-feature-point-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px
}

.rgx-feature-point-list li {
    position: relative;
    padding-left: 18px;
    font-size: 14px;
    line-height: 1.6;
    color: rgba(var(--rgx-palette-primary-rgb), .84)
}

.rgx-feature-point-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .68em;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ff8a3d;
    box-shadow: 0 0 0 4px rgba(255, 138, 61, .12)
}

.rgx-feature-aside {
    display: grid;
    gap: 14px
}

.rgx-feature-detail-card {
    display: grid;
    gap: 12px;
    padding: 20px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    border-radius: 18px;
    background: rgba(var(--rgx-palette-bg-rgb), .88)
}

.rgx-feature-detail-card strong {
    font-size: 12px;
    letter-spacing: .8px;
    text-transform: uppercase;
    color: rgba(var(--rgx-palette-primary-rgb), .62)
}

.rgx-feature-detail-card p {
    margin: 0;
    font-size: 14px;
    line-height: 1.55;
    color: rgba(var(--rgx-palette-primary-rgb), .86)
}

.rgx-feature-detail-image {
    position: relative;
    min-height: 260px;
    overflow: visible;
    border-radius: 22px;
    border: 1px solid rgba(var(--rgx-palette-primary-rgb), .12);
    background: rgba(var(--rgx-palette-bg-rgb), .76)
}

.rgx-feature-detail-image img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    display: block
}

.rgx-feature-detail-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(var(--rgx-palette-primary-rgb), .05), rgba(var(--rgx-palette-primary-rgb), .24))
}

.rgx-feature-detail-badge {
    position: absolute;
    left: 14px;
    bottom: 14px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid rgba(var(--rgx-palette-bg-rgb), .22);
    background: rgba(var(--rgx-palette-primary-rgb), .62);
    color: rgba(var(--rgx-palette-bg-rgb), .95);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .2px
}

.rgx-feature-page .mil-link,
.rgx-feature-page .mil-button,
.rgx-feature-hub .mil-link,
.rgx-feature-hub .mil-button {
    white-space: nowrap
}

@media screen and (max-width:1200px) {

    .rgx-feature-hero-grid,
    .rgx-feature-section-grid {
        grid-template-columns: 1fr
    }

    .rgx-feature-hero-panel {
        order: 2
    }
}

@media screen and (max-width:1024px) {
    .rgx-feature-side-nav {
        display: none
    }
}

@media screen and (max-width:768px) {
    .rgx-feature-hero-copy h1 {
        font-size: clamp(34px, 10vw, 46px)
    }

    .rgx-feature-hero-panel,
    .rgx-feature-section {
        padding: 20px;
        border-radius: 20px
    }

    .rgx-feature-detail-image {
        min-height: 190px
    }

    .rgx-feature-section-copy h3 {
        font-size: clamp(28px, 9vw, 38px)
    }
}

@media (prefers-reduced-motion:reduce) {

    .rgx-delight-list button,
    .rgx-manage-card,
    .rgx-manage-nav-btn,
    .rgx-phone-body,
    .rgx-plan-card-custom,
    .rgx-plan-card-driver,
    .rgx-plan-card-zones,
    .rgx-scale-chart-point,
    .rgx-scale-chart-tag {
        transition: none !important
    }
}

@media screen and (max-width:1200px) {
    .rgx-plan-card-custom .rgx-spoke-image img {
        max-height: 236px;
    }
}

@media screen and (max-width:992px) {
    .rgx-story-head {
        grid-template-columns: 1fr
    }

    .rgx-story-head-action {
        justify-self: start
    }

    .rgx-plan-grid {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }

    .rgx-plan-grid article {
        width: 45%;
    }

    .rgx-plan-card-route {
        width: 92% !important;
    }

    .rgx-manage-grid {
        overflow-x: auto
    }

    .rgx-manage-nav {
        margin-top: 10px
    }

    .rgx-phone-mock {
        width: min(100%, 332px)
    }

    .rgx-scale-header {
        grid-template-columns: 1fr
    }

    .rgx-scale-header .mil-link {
        justify-self: start
    }

    .rgx-scale-metrics {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .rgx-scale-metrics blockquote {
        grid-column: 1/-1
    }
}

@media screen and (max-width:767px) {

    #platform-walkthrough::after,
    #platform-walkthrough::before {
        display: none
    }

    #platform-walkthrough .mil-p-120-60 {
        padding-top: 88px;
        padding-bottom: 42px
    }

    .rgx-story-block.mil-mb-120 {
        margin-bottom: 78px
    }

    .rgx-story-head {
        gap: 16px
    }

    .rgx-delight-copy h3,
    .rgx-scale-header h3,
    .rgx-story-head-copy h3 {
        font-size: clamp(30px, 10vw, 42px)
    }

    .rgx-scale-header p,
    .rgx-story-head-copy p {
        font-size: 14px
    }

    .rgx-plan-grid {
        grid-template-columns: 1fr
    }

    .rgx-manage-grid {
        overflow-x: auto
    }

    .rgx-manage-grid .rgx-story-card {
        flex-basis: 100%;
        min-width: 100%
    }

    .rgx-delight-block {
        grid-template-columns: 1fr;
        padding: 28px
    }

    .rgx-manage-grid .rgx-story-card {
        flex-basis: calc(100% - 40px);
        min-height: 250px
    }

    .rgx-story-card {
        padding: 18px;
        border-radius: 16px;
        width: 100% !important;
    }

    .rgx-spoke-image {
        margin: 8px -18px -18px;
        min-height: 140px
    }

    .rgx-route-map {
        min-height: 170px
    }

    .rgx-track-map {
        margin: 8px -18px -18px
    }

    .rgx-manage-image,
    .rgx-proof-image {
        margin: 8px -18px -18px
    }

    .rgx-plan-media {
        min-height: 150px;
        border-radius: 12px
    }

    .rgx-plan-media-tag {
        left: 10px;
        bottom: 10px;
        min-height: 24px;
        padding: 0 8px;
        font-size: 10px
    }

    .rgx-plan-card-head {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px
    }

    .rgx-plan-media-overlay {
        top: 10px;
        right: 10px;
        font-size: 9px
    }

    .rgx-plan-card-custom .rgx-plan-media,
    .rgx-plan-card-driver .rgx-plan-media,
    .rgx-plan-card-zones .rgx-plan-media {
        min-height: 140px
    }

    .rgx-route-map-head {
        top: 10px;
        left: 10px;
        right: 10px;
        gap: 6px
    }

    .rgx-route-pill {
        min-height: 24px;
        padding: 0 9px;
        font-size: 10px
    }

    .rgx-route-map-footer {
        left: 10px;
        right: 10px;
        bottom: 10px;
        gap: 6px
    }

    .rgx-route-map-footer>div {
        border-radius: 10px;
        padding: 8px 9px
    }

    .rgx-route-map-footer strong {
        font-size: 14px
    }

    .rgx-route-map-footer span {
        font-size: 9px;
        letter-spacing: .6px
    }

    .rgx-delight-block {
        padding: 20px;
        border-radius: 18px
    }

    .rgx-delight-list button {
        padding: 12px 13px 12px 19px;
        font-size: 13px
    }

    .rgx-delight-item-title {
        font-size: 13px
    }

    .rgx-delight-item-meta {
        font-size: 10px
    }

    .rgx-spoke-stats>div {
        border-radius: 9px;
        padding: 8px 8px 7px
    }

    .rgx-spoke-stats strong {
        font-size: 13px
    }

    .rgx-spoke-stats span {
        font-size: 8px;
        letter-spacing: .5px
    }

    .rgx-spoke-image-overlay {
        min-height: 24px;
        padding: 0 8px;
        font-size: 10px
    }

    .rgx-delight-chip {
        margin-left: 6px;
        font-size: 9px;
        letter-spacing: .6px
    }

    .rgx-phone-mock {
        width: min(100%, 300px);
        padding: 10px 10px 12px;
        border-radius: 32px
    }

    .rgx-phone-mock::before {
        inset: 4px;
        border-radius: 28px
    }

    .rgx-phone-mock::after {
        width: 94px;
        bottom: 6px
    }

    .rgx-phone-notch {
        width: 104px;
        height: 15px;
        margin-bottom: 10px
    }

    .rgx-phone-map {
        min-height: 170px;
        border-radius: 18px
    }

    .rgx-phone-body {
        margin-top: 8px;
        padding: 11px 10px 10px;
        border-radius: 14px
    }

    .rgx-phone-body p {
        font-size: 11px
    }

    .rgx-phone-body li {
        padding-left: 12px;
        font-size: 10px
    }

    .rgx-phone-actions {
        margin-top: 8px;
        padding-top: 8px;
        gap: 6px
    }

    .rgx-phone-actions span {
        min-height: 26px;
        font-size: 9px
    }

    .rgx-scale-panel {
        padding: 22px;
        border-radius: 20px
    }

    .rgx-scale-chart {
        min-height: 190px
    }

    .rgx-scale-chart-tag {
        padding: 8px 10px;
        font-size: 11px
    }

    .rgx-scale-metrics {
        grid-template-columns: 1fr;
        gap: 8px
    }

    .rgx-scale-metrics strong {
        font-size: 30px
    }

    .rgx-scale-metrics blockquote {
        margin-top: 6px
    }

    .rgx-scale-cite {
        margin-top: -2px;
        font-size: 10px
    }

    .rgx-scale-header .mil-link,
    .rgx-story-head-action .mil-link {
        min-height: 42px;
        padding-left: 40px
    }
}
