/* Syne - Bold (700) */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/syne-v24-latin-700.woff2') format('woff2');
}

/* Work Sans - Regular (400) */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/work-sans-v24-latin-regular.woff2') format('woff2');
}

/* Work Sans - Italic (400) */
@font-face {
  font-family: 'Work Sans';
  font-style: italic;
  font-weight: 400;
  src: url('/fonts/work-sans-v24-latin-italic.woff2') format('woff2');
}

/* Work Sans - Medium (500) */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 500;
  src: url('/fonts/work-sans-v24-latin-500.woff2') format('woff2');
}

/* Work Sans - Medium Italic (500) */
@font-face {
  font-family: 'Work Sans';
  font-style: italic;
  font-weight: 500;
  src: url('/fonts/work-sans-v24-latin-500italic.woff2') format('woff2');
}

/* Work Sans - SemiBold (600) */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 600;
  src: url('/fonts/work-sans-v24-latin-600.woff2') format('woff2');
}

/* Work Sans - SemiBold Italic (600) */
@font-face {
  font-family: 'Work Sans';
  font-style: italic;
  font-weight: 600;
  src: url('/fonts/work-sans-v24-latin-600italic.woff2') format('woff2');
}

html {
    scroll-behavior: smooth;
}

body {
    background: #17003c;
    font-size: 1rem;
    color: #f5f5f5;
    font-weight: 400;
    font-family: "Work Sans", sans-serif;
    line-height: 1.4;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a {
    color: #6300ff;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

a:hover {
    text-decoration: none;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

*::-moz-selection {
    background: aqua;
    color: #17003c;
    text-decoration-color: #17003c;
}

*::selection {
    background: aqua;
    color: #17003c;
    -webkit-text-decoration-color: #17003c;
    text-decoration-color: #17003c;
}

body.admin-bar.home .header {
    top: 32px;
}

body.admin-bar:not(.home) .header {
    top: 32px;
}

.cursor-pointer {
    cursor: pointer;
}

/* === COLOR UTILITIES (Backgrounds) === */
.bg-primary {
    background: #6300ff !important;
}

.bg-primary-light {
    background: #a56eff !important;
}

.bg-primary-dark {
    background: #4200ab !important;
}

.bg-secondary {
    background: #39ff14 !important;
}

.bg-secondary-light {
    background: #fe86ac !important;
}

.bg-secondary-dark {
    background: #c62256 !important;
}

.bg-accent {
    background: aqua !important;
}

.bg-accent-light {
    background: rgba(93, 80, 198, .1) !important;
}

.bg-accent-dark {
    background: #473d99 !important;
}

.bg-white {
    background: #fff !important;
}

.bg-dark {
    background: #17003c !important;
}

.bg-grey-1 {
    background: #262626 !important;
}

.bg-grey-2 {
    background: #424142 !important;
}

.bg-grey-3 {
    background: #7f7f7f !important;
}

.bg-grey-4 {
    background: #b6b6b6 !important;
}

.bg-grey-5 {
    background: #d7d7d7 !important;
}

.bg-grey-6 {
    background: #f5f5f5 !important;
}

/* === COLOR UTILITIES (Text) === */
.color-primary {
    color: #6300ff;
}

.color-primary-light {
    color: #a56eff;
}

.color-primary-dark {
    color: #4200ab;
}

.color-secondary {
    color: #39ff14;
}

.color-secondary-light {
    color: #fe86ac;
}

.color-secondary-dark {
    color: #c62256;
}

.color-accent {
    color: aqua;
}

.color-accent-light {
    color: rgba(93, 80, 198, .1);
}

.color-accent-dark {
    color: #473d99;
}

.color-white {
    color: #fff;
}

.color-dark {
    color: #17003c;
}

.color-grey-1 {
    color: #262626;
}

.color-grey-2 {
    color: #424142;
}

.color-grey-3 {
    color: #7f7f7f;
}

.color-grey-4 {
    color: #b6b6b6;
}

.color-grey-5 {
    color: #d7d7d7;
}

.color-grey-6 {
    color: #f5f5f5;
}

/* === SPACING UTILITIES (Padding Top) === */
.pad-t-0 {
    padding-top: 0px;
}

@media screen and (max-width: 575px) {
    .pad-t-0 {
        padding-top: 0px !important;
    }
}

.mar-t-0 {
    margin-top: 0px;
}

@media screen and (max-width: 575px) {
    .mar-t-0 {
        margin-top: 0px !important;
    }
}

.pad-t-1 {
    padding-top: 1.5rem;
}

@media screen and (max-width: 575px) {
    .pad-t-1 {
        padding-top: 1rem !important;
    }
}

.mar-t-1 {
    margin-top: 1.5rem;
}

@media screen and (max-width: 575px) {
    .mar-t-1 {
        margin-top: 1rem !important;
    }
}

.pad-t-2 {
    padding-top: 2.5rem;
}

@media screen and (max-width: 575px) {
    .pad-t-2 {
        padding-top: 1.6666666667rem !important;
    }
}

.mar-t-2 {
    margin-top: 2.5rem;
}

@media screen and (max-width: 575px) {
    .mar-t-2 {
        margin-top: 1.6666666667rem !important;
    }
}

.pad-t-3 {
    padding-top: 4rem;
}

@media screen and (max-width: 575px) {
    .pad-t-3 {
        padding-top: 2.6666666667rem !important;
    }
}

.mar-t-3 {
    margin-top: 4rem;
}

@media screen and (max-width: 575px) {
    .mar-t-3 {
        margin-top: 2.6666666667rem !important;
    }
}

.pad-t-4 {
    padding-top: 5rem;
}

@media screen and (max-width: 575px) {
    .pad-t-4 {
        padding-top: 3.3333333333rem !important;
    }
}

.mar-t-4 {
    margin-top: 5rem;
}

@media screen and (max-width: 575px) {
    .mar-t-4 {
        margin-top: 3.3333333333rem !important;
    }
}

.pad-t-5 {
    padding-top: 7.5rem;
}

@media screen and (max-width: 575px) {
    .pad-t-5 {
        padding-top: 5rem !important;
    }
}

.mar-t-5 {
    margin-top: 7.5rem;
}

@media screen and (max-width: 575px) {
    .mar-t-5 {
        margin-top: 5rem !important;
    }
}

/* === SPACING UTILITIES (Padding Bottom) === */
.pad-b-0 {
    padding-bottom: 0px;
}

@media screen and (max-width: 575px) {
    .pad-b-0 {
        padding-bottom: 0px !important;
    }
}

.mar-b-0 {
    margin-bottom: 0px;
}

@media screen and (max-width: 575px) {
    .mar-b-0 {
        margin-bottom: 0px !important;
    }
}

.pad-b-1 {
    padding-bottom: 1.5rem;
}

@media screen and (max-width: 575px) {
    .pad-b-1 {
        padding-bottom: 1rem !important;
    }
}

.mar-b-1 {
    margin-bottom: 1.5rem;
}

@media screen and (max-width: 575px) {
    .mar-b-1 {
        margin-bottom: 1rem !important;
    }
}

.pad-b-2 {
    padding-bottom: 2.5rem;
}

@media screen and (max-width: 575px) {
    .pad-b-2 {
        padding-bottom: 1.6666666667rem !important;
    }
}

.mar-b-2 {
    margin-bottom: 2.5rem;
}

@media screen and (max-width: 575px) {
    .mar-b-2 {
        margin-bottom: 1.6666666667rem !important;
    }
}

.pad-b-3 {
    padding-bottom: 4rem;
}

@media screen and (max-width: 575px) {
    .pad-b-3 {
        padding-bottom: 2.6666666667rem !important;
    }
}

.mar-b-3 {
    margin-bottom: 4rem;
}

@media screen and (max-width: 575px) {
    .mar-b-3 {
        margin-bottom: 2.6666666667rem !important;
    }
}

.pad-b-4 {
    padding-bottom: 5rem;
}

@media screen and (max-width: 575px) {
    .pad-b-4 {
        padding-bottom: 3.3333333333rem !important;
    }
}

.mar-b-4 {
    margin-bottom: 5rem;
}

@media screen and (max-width: 575px) {
    .mar-b-4 {
        margin-bottom: 3.3333333333rem !important;
    }
}

.pad-b-5 {
    padding-bottom: 7.5rem;
}

@media screen and (max-width: 575px) {
    .pad-b-5 {
        padding-bottom: 5rem !important;
    }
}

.mar-b-5 {
    margin-bottom: 7.5rem;
}

@media screen and (max-width: 575px) {
    .mar-b-5 {
        margin-bottom: 5rem !important;
    }
}

/* === SPACING UTILITIES (Padding Top/Bottom) === */
.pad-0 {
    padding: 0px 0;
}

@media screen and (max-width: 575px) {
    .pad-0 {
        padding: 0px 0 !important;
    }
}

.mar-0 {
    margin: 0px 0;
}

@media screen and (max-width: 575px) {
    .mar-0 {
        margin: 0px 0 !important;
    }
}

.pad-1 {
    padding: 1.5rem 0;
}

@media screen and (max-width: 575px) {
    .pad-1 {
        padding: 1rem 0 !important;
    }
}

.mar-1 {
    margin: 1.5rem 0;
}

@media screen and (max-width: 575px) {
    .mar-1 {
        margin: 1rem 0 !important;
    }
}

.pad-2 {
    padding: 2.5rem 0;
}

@media screen and (max-width: 575px) {
    .pad-2 {
        padding: 1.6666666667rem 0 !important;
    }
}

.mar-2 {
    margin: 2.5rem 0;
}

@media screen and (max-width: 575px) {
    .mar-2 {
        margin: 1.6666666667rem 0 !important;
    }
}

.pad-3 {
    padding: 4rem 0;
}

@media screen and (max-width: 575px) {
    .pad-3 {
        padding: 2.6666666667rem 0 !important;
    }
}

.mar-3 {
    margin: 4rem 0;
}

@media screen and (max-width: 575px) {
    .mar-3 {
        margin: 2.6666666667rem 0 !important;
    }
}

.pad-4 {
    padding: 5rem 0;
}

@media screen and (max-width: 575px) {
    .pad-4 {
        padding: 3.3333333333rem 0 !important;
    }
}

.mar-4 {
    margin: 5rem 0;
}

@media screen and (max-width: 575px) {
    .mar-4 {
        margin: 3.3333333333rem 0 !important;
    }
}

.pad-5 {
    padding: 7.5rem 0;
}

@media screen and (max-width: 575px) {
    .pad-5 {
        padding: 5rem 0 !important;
    }
}

.mar-5 {
    margin: 7.5rem 0;
}

@media screen and (max-width: 575px) {
    .mar-5 {
        margin: 5rem 0 !important;
    }
}

.pad-0 {
    padding: 0px 0;
}

@media screen and (max-width: 575px) {
    .pad-0 {
        padding: 0px 0 !important;
    }
}

.mar-0 {
    margin: 0px 0;
}

@media screen and (max-width: 575px) {
    .mar-0 {
        margin: 0px 0 !important;
    }
}

.pad-1 {
    padding: 1.5rem 0;
}

@media screen and (max-width: 575px) {
    .pad-1 {
        padding: 1rem 0 !important;
    }
}

.mar-1 {
    margin: 1.5rem 0;
}

@media screen and (max-width: 575px) {
    .mar-1 {
        margin: 1rem 0 !important;
    }
}

.pad-2 {
    padding: 2.5rem 0;
}

@media screen and (max-width: 575px) {
    .pad-2 {
        padding: 1.6666666667rem 0 !important;
    }
}

.mar-2 {
    margin: 2.5rem 0;
}

@media screen and (max-width: 575px) {
    .mar-2 {
        margin: 1.6666666667rem 0 !important;
    }
}

.pad-3 {
    padding: 4rem 0;
}

@media screen and (max-width: 575px) {
    .pad-3 {
        padding: 2.6666666667rem 0 !important;
    }
}

.mar-3 {
    margin: 4rem 0;
}

@media screen and (max-width: 575px) {
    .mar-3 {
        margin: 2.6666666667rem 0 !important;
    }
}

.pad-4 {
    padding: 5rem 0;
}

@media screen and (max-width: 575px) {
    .pad-4 {
        padding: 3.3333333333rem 0 !important;
    }
}

.mar-4 {
    margin: 5rem 0;
}

@media screen and (max-width: 575px) {
    .mar-4 {
        margin: 3.3333333333rem 0 !important;
    }
}

.pad-5 {
    padding: 7.5rem 0;
}

@media screen and (max-width: 575px) {
    .pad-5 {
        padding: 5rem 0 !important;
    }
}

.mar-5 {
    margin: 7.5rem 0;
}

@media screen and (max-width: 575px) {
    .mar-5 {
        margin: 5rem 0 !important;
    }
}

/* === TYPOGRAPHY & HEADERS === */
.header-all,
.header-6,
.header-5,
.header-4,
.header-3,
.header-2,
.header-1 {
    font-weight: 600;
    margin-bottom: 1.5rem;
    margin-top: 0;
    line-height: 1.4;
}

.header-1 {
    font-size: 3rem;
}

@media screen and (max-width: 767px) {
    .header-1 {
        font-size: 2.1875rem;
    }
}

.header-2 {
    font-size: 2.18rem;
}

@media screen and (max-width: 767px) {
    .header-2 {
        font-size: 1.875rem;
    }
}

.header-3 {
    font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
    .header-3 {
        font-size: 1.25rem;
    }
}

.header-4 {
    font-size: 1.25rem;
}

.header-5 {
    font-size: 1rem;
}

.header-6 {
    font-size: .87rem;
}

.page-body p {
    font-size: 1rem;
}

/* === TITLE BLOCK (.titulos) === */
.titulos {
    margin-bottom: 4rem;
}

@media screen and (max-width: 991px) {
    .titulos {
        margin-bottom: 2.5rem;
    }
}

@media screen and (max-width: 420px) {
    .titulos {
        margin-bottom: 1.5rem;
    }
}

.titulos--center {
    text-align: center;
}

@media screen and (min-width: 992px) {
    .titulos--50 {
        width: 50%;
        margin-left: auto;
        margin-right: auto;
    }
}

@media screen and (min-width: 992px) {
    .titulos--60 {
        width: 60%;
        margin-left: auto;
        margin-right: auto;
        text-wrap: balance;
    }
}

@media screen and (min-width: 992px) {
    .titulos--70 {
        width: 70%;
        margin-left: auto;
        margin-right: auto;
        text-wrap: balance;
    }
}

@media screen and (min-width: 992px) {
    .titulos--80 {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
}

.titulos--light {
    color: #fff;
}

.titulos--deg {
    background: lime;
    background: -webkit-gradient(linear, right top, left top, from(#00ff00), to(#00ffff));
    background: -o-linear-gradient(right, #00ff00 0%, #00ffff 100%);
    background: linear-gradient(to left, #00ff00 0%, #00ffff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
}

@media screen and (min-width: 992px) {
    .titulos--deg {
        white-space: nowrap;
    }
}

.titulos__pretitulo {
    font-size: 1.25rem;
    font-weight: 600;
    color: #6300ff;
    margin-bottom: .9rem;
}

@media screen and (max-width: 767px) {
    .titulos__pretitulo {
        font-size: 1rem;
    }
}

.titulos__titulo {
    font-family: "Syne", sans-serif;
    font-weight: 600;
    font-size: 3rem;
}

@media screen and (max-width: 767px) {
    .titulos__titulo {
        font-size: 1.875rem;
    }
}

/* === HEADER (Sticky Nav) === */
.header {
    padding: 1.5rem 0px;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 2;
    width: 100%;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.header--sticky {
    background: #17003c;
    padding: .75rem 0px;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .15);
    box-shadow: 0 0 20px rgba(0, 0, 0, .15);
}

.header__container {
    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;
    gap: 2.5rem;
}

@media screen and (max-width: 991px) {
    .header__container {
        gap: 1rem;
    }
}

@media screen and (min-width: 1200px) {
    .header__burger {
        display: none;
    }
}

.header__burger i {
    font-size: 1.5rem;
    color: #fff;
}

.header__logo img {
    width: 180px;
}

@media screen and (max-width: 767px) {
    .header__logo img {
        width: 120px;
    }
}

.header__right {
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2.5rem;
}

@media screen and (max-width: 1199px) {
    .header__nav {
        display: none;
    }
}

.header__cta .boton {
    padding: .2rem .6rem;
    font-size: .9rem;
}

/* === TS PARTICLES (Background) === */
#tsparticles {
    position: absolute;
    inset: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%;
}

#tsparticles canvas {
    position: absolute !important;
    display: block;
    position: absolute;
    inset: 0;
}

/* === HERO SECTION === */
.hero {
    background: #17003c;
    position: relative;
}

.hero__video {
    position: absolute;
    inset: 0;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    bottom: 0;
    -o-object-fit: cover;
    object-fit: cover;
    mix-blend-mode: difference;
}

.hero__container {
    -ms-touch-action: auto;
    touch-action: auto;
    position: relative;
    z-index: 1;
    padding: 10rem 1rem;
    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;
    text-align: center;
    color: #fff;
}

@media screen and (max-width: 1399px) {
    .hero__container {
        padding: 9rem 1rem;
    }
}

@media screen and (max-width: 767px) {
    .hero__container {
        height: 500px;
    }
}

.hero__content {
    text-align: center;
}

.hero__pretitle {
    font-size: 1.25rem;
}

.hero__pretitle span {
    background: lime;
    background: -webkit-gradient(linear, right top, left top, from(#00ff00), to(#00ffff));
    background: -o-linear-gradient(right, #00ff00 0%, #00ffff 100%);
    background: linear-gradient(to left, #00ff00 0%, #00ffff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
}

.hero__title {
    font-size: 6rem;
    font-family: "Syne", sans-serif;
    margin-bottom: .75rem;
}

@media screen and (max-width: 1399px) {
    .hero__title {
        font-size: 4.35rem;
    }
}

@media screen and (max-width: 767px) {
    .hero__title {
        font-size: 2.18rem;
    }
}

.hero__subtitle {
    font-size: 1.5rem;
    line-height: 1.5;
    background: lime;
    background: -webkit-gradient(linear, right top, left top, from(#00ff00), to(#00ffff));
    background: -o-linear-gradient(right, #00ff00 0%, #00ffff 100%);
    background: linear-gradient(to left, #00ff00 0%, #00ffff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
}

@media screen and (max-width: 1399px) {
    .hero__subtitle {
        font-size: 1.25rem;
    }
}

@media screen and (max-width: 767px) {
    .hero__subtitle {
        font-size: 1rem;
        margin-top: 1rem;
    }
}

.hero__actions {
    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;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1.5rem;
    margin-top: 2.5rem;
}

/* === FOOTER === */
.footer {
    padding: 5rem 0;
    background: #17003c;
    -webkit-box-shadow: 0 50vh 0 50vh #17003c;
    box-shadow: 0 50vh 0 50vh #17003c;
}

.footer__container {
    padding-top: 4rem;
    border-top: 1px solid #fff;
}

.footer__cols {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4rem;
}

@media screen and (max-width: 991px) {
    .footer__cols {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.footer__bottom {
    margin-top: 4rem;
    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;
    font-size: .9rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 991px) {
    .footer__left {
        margin-bottom: 1rem;
    }
}

.footer__left img {
    width: 200px;
    height: auto;
}

@media screen and (max-width: 767px) {
    .footer__left img {
        width: 150px;
    }
}

.footer__right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 4rem;
    color: #fff;
}

@media screen and (max-width: 991px) {
    .footer__right {
        gap: 1rem;
    }
}

@media screen and (max-width: 767px) {
    .footer__right {
        font-size: .75rem;
    }
}

.footer__right #toTop {
    font-weight: 600;
    cursor: pointer;
}

.footer__right a {
    font-weight: 400;
    text-decoration: none;
    color: #fff;
    text-decoration: underline;
}

.widget-footer__title {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 1rem;
    color: #fff;
}

.widget-footer .menu {
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
    font-size: 1rem;
}

.widget-footer .menu .menu-item {
    margin-bottom: .5rem;
}

.widget-footer .menu .menu-item a {
    text-decoration: none;
    color: #fff;
}

.widget-footer--partners {
    margin-left: auto;
}

@media screen and (max-width: 991px) {
    .widget-footer--partners {
        margin-left: initial;
    }
}

.partners-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.partners-footer__item {
    position: relative;
}

.partners-footer__item img {
    width: auto;
    max-height: 65px;
}

@media screen and (max-width: 767px) {
    .partners-footer__item img {
        max-height: 55px;
    }
}

.partners-footer__item--sn img {
    max-height: 40px;
}

@media screen and (max-width: 767px) {
    .partners-footer__item--sn img {
        max-height: 30px;
    }
}

.nav-legal__items {
    list-style: none;
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1rem;
    margin: 0;
    padding: 0;
}

/* === NAVIGATION === */
.nav-primary__items {
    list-style: none;
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 2.5rem;
    margin: 0;
    padding: 0;
}

.nav-primary__items .menu-item a {
    text-decoration: none;
    color: #fff;
}

.offside {
    background: #6300ff;
}

.offside .btn-close {
    color: #fff;
    -webkit-filter: invert(1) grayscale(1);
    filter: invert(1) grayscale(1);
}

.offside .offcanvas-body {
    padding: 1.5rem;
}

.offside__logo img {
    max-width: 150px;
}

.nav-off {
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #fff;
}

.nav-off__items {
    list-style: none;
    text-decoration: none;
    margin: 0;
    padding: 0;
}

.nav-off__items .menu-item a {
    font-size: 2.18rem;
    text-decoration: none;
    color: #fff;
    font-weight: 500;
}

/* === CARD ICONS === */
.card-ico {
    width: 60px;
    height: 60px;
    aspect-ratio: 1/1;
    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;
    border-radius: .625rem;
}

.card-ico .style-svg,
.card-ico img {
    width: 40%;
    height: auto;
    fill: #fff;
}

.card-ico--primary {
    background: #6300ff;
}

.card-ico--primary .style-svg,
.card-ico--primary img {
    width: 50%;
    height: auto;
    fill: #fff;
}

.card-ico--dark {
    background: #17003c;
}

.card-ico--dark .style-svg,
.card-ico--dark img {
    width: 50%;
    height: auto;
    fill: #fff;
}

.card-ico--white {
    background: #fff;
}

.card-ico--white .style-svg,
.card-ico--white img {
    width: 50%;
    height: auto;
    fill: #17003c;
}

.card-ico--accent {
    background: aqua;
}

.card-ico--accent .style-svg,
.card-ico--accent img {
    width: 50%;
    height: auto;
    fill: #17003c;
}

.card-ico--deg {
    background: -o-linear-gradient(230deg, #39ff14 0%, #00ffff 100%);
    background: linear-gradient(220deg, #39ff14 0%, #00ffff 100%);
}

.card-ico--deg .style-svg,
.card-ico--deg img {
    width: 50%;
    height: auto;
    fill: #17003c;
}

/* === STORYBOOK COLOR PALETTE (Development utility, likely unused in production) === */
.scolor__item {
    margin-right: 2rem;
    margin-bottom: 2rem;
}

.scolor__item div {
    width: 100px;
    height: 100px;
    border-radius: .3rem;
    border: 1px solid #b6b6b6;
}

.scolor small {
    font-size: .7rem !important;
}

.sespacio {
    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;
}

/* === PAGE TITLE / BREADCRUMBS === */
.page-title {
    padding-top: 5rem;
    padding-bottom: 1.5rem;
    background-color: #17003c;
    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;
}

@media screen and (max-width: 767px) {
    .page-title {
        padding-top: 6.5rem;
        padding-bottom: 1.5rem;
    }
}

.page-title__breadcrumbs {
    text-align: center;
    font-size: .75rem;
    color: #fff;
    margin-bottom: .75rem;
}

.page-title__breadcrumbs a {
    color: aqua;
    text-decoration: none;
}

.page-title__h {
    color: #fff;
    font-size: 4.35rem;
    font-family: "Syne", sans-serif;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .page-title__h {
        font-size: 2.18rem;
    }
}

/* === BUTTONS === */
.boton {
    padding: .9rem 1.475rem;
    font-size: 1rem;
    border-radius: 50px;
    font-weight: 500;
    text-align: center;
    cursor: pointer;
    border: 0;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
    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;
    text-decoration: none;
    border-width: 2px;
    border-style: solid;
}

.boton--lg {
    padding: 1.125rem 1.9375rem;
}

@media screen and (max-width: 767px) {
    .boton--lg {
        padding: 1rem 1.475rem;
    }
}

.boton--sm {
    padding: .37rem 1em;
    font-size: .9rem;
}

.boton--icoEnd i {
    margin-left: .5rem;
}

.boton--icoStart i {
    margin-right: .5rem;
}

.boton--primary {
    background: #6300ff;
    color: #fff;
    border-color: #6300ff;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--primary:hover {
    background: #5900e6;
    border-color: #5900e6;
    color: #fff;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--primary-outline {
    color: #424142;
    border-color: #6300ff;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--primary-outline:hover {
    background: #5900e6;
    border-color: #5900e6;
    color: #fff;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--secondary {
    background: #39ff14;
    color: #fff;
    border-color: #39ff14;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--secondary:hover {
    background: #27fa00;
    border-color: #27fa00;
    color: #fff;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--secondary-outline {
    color: #424142;
    border-color: #39ff14;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--secondary-outline:hover {
    background: #27fa00;
    border-color: #27fa00;
    color: #fff;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--accent {
    background: aqua;
    color: #fff;
    border-color: aqua;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--accent:hover {
    background: #00e6e6;
    border-color: #00e6e6;
    color: #fff;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--accent-outline {
    color: aqua;
    border-color: aqua;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--accent-outline:hover {
    background: #00e6e6;
    border-color: #00e6e6;
    color: #fff;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--white {
    background: #fff;
    color: #424142;
    border-color: #fff;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--white:hover {
    background: #f2f2f2;
    border-color: #f2f2f2;
    color: #424142;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--white-outline {
    color: #424142;
    border-color: #fff;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--white-outline:hover {
    background: #f2f2f2;
    border-color: #f2f2f2;
    color: #424142;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--dark {
    background: #17003c;
    color: #fff;
    border-color: #17003c;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--dark:hover {
    background: #0d0023;
    border-color: #0d0023;
    color: #fff;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--dark-outline {
    color: #17003c;
    border-color: #17003c;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--dark-outline:hover {
    background: #0d0023;
    border-color: #0d0023;
    color: #fff;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--whatsapp {
    background: #128c7e;
    color: #fff;
    border-color: #128c7e;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--whatsapp:hover {
    background: #0f756a;
    border-color: #0f756a;
    color: #fff;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--whatsapp-outline {
    color: #424142;
    border-color: #128c7e;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.boton--whatsapp-outline:hover {
    background: #0f756a;
    border-color: #0f756a;
    color: #fff;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

/* === LINKS & CONTENT === */
.link {
    text-decoration: underline;
    color: #424142;
}

.link--light {
    color: #fff;
}

.link--small {
    font-size: .9rem;
}

.content-body {
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .content-body {
        font-size: .9rem;
    }
}

.content-body ul {
    list-style: none;
    padding-left: 0;
    padding-left: 1.5rem;
}

.content-body ul li {
    margin-bottom: 8px;
    position: relative;
    padding-left: 1.5rem;
}

.content-body ul li::before {
    content: "";
    font-family: "unicons-line";
    font-size: 1rem;
    color: #6300ff;
    position: absolute;
    left: 0;
    top: 2px;
}

/* === PAGE & POST ENTRY CONTENT === */
.page__entry,
.post__entry {
    line-height: 1.7;
}

.page__entry h1,
.page__entry h2,
.page__entry h3,
.page__entry h4,
.page__entry h5,
.page__entry h6,
.post__entry h1,
.post__entry h2,
.post__entry h3,
.post__entry h4,
.post__entry h5,
.post__entry h6 {
    line-height: 1.6;
    margin-bottom: 1.5rem;
    color: #fff;
    font-family: "Syne", sans-serif;
    font-weight: 500;
}

.page__entry a,
.post__entry a {
    color: aqua;
    text-decoration: none;
}

.page__entry p,
.page__entry ol,
.page__entry ul,
.post__entry p,
.post__entry ol,
.post__entry ul {
    font-size: 1.1rem;
}

@media print {

    .page__entry p,
    .page__entry ol,
    .page__entry ul,
    .post__entry p,
    .post__entry ol,
    .post__entry ul {
        font-size: 10pt;
    }
}

.page__entry p,
.page__entry ol,
.page__entry ul,
.page__entry blockquote,
.post__entry p,
.post__entry ol,
.post__entry ul,
.post__entry blockquote {
    margin-bottom: 1.5rem;
}

.page__entry ul li,
.post__entry ul li {
    margin-bottom: 10px;
}

.page__entry h2,
.post__entry h2 {
    font-size: 2.2rem;
    font-weight: 400;
}

@media screen and (max-width: 575px) {
    .page__entry h2,
    .post__entry h2 {
        font-size: 1.8rem;
        line-height: 1.3;
    }
}

.page__entry h2 strong,
.post__entry h2 strong {
    font-weight: 400;
}

.page__entry h3,
.post__entry h3 {
    font-size: 1.5rem;
}

@media screen and (max-width: 575px) {
    .page__entry h3,
    .post__entry h3 {
        font-size: 1.4rem;
        line-height: 1.3;
    }
}

.page__entry .wp-block-pullquote,
.post__entry .wp-block-pullquote {
    padding: 2rem 0 !important;
    text-align: left !important;
    margin-bottom: 0 !important;
}

.page__entry .wp-block-image,
.post__entry .wp-block-image {
    margin: 2rem 0;
}

@media print {
    .page__entry .wp-block-image,
    .post__entry .wp-block-image {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
}

.page__entry .wp-block-image img,
.post__entry .wp-block-image img {
    width: 100%;
    height: auto;
    border-radius: .625rem !important;
    -webkit-box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
    box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
}

.page__entry .wp-block-image figcaption,
.post__entry .wp-block-image figcaption {
    text-align: center;
}

.page__entry .wp-block-gallery,
.post__entry .wp-block-gallery {
    margin: 1.8rem 0;
}

.page__entry .wp-block-gallery .blocks-gallery-item,
.post__entry .wp-block-gallery .blocks-gallery-item {
    margin-bottom: 0;
}

.page__entry .wp-block-gallery img,
.post__entry .wp-block-gallery img {
    width: 100%;
    height: auto;
}

.page__entry .wp-block-gallery figcaption,
.post__entry .wp-block-gallery figcaption {
    text-align: center;
}

.post__entry .wp-block-heading {
    margin-top: 3rem;
}

.post__entry .wp-block-heading:nth-child(1) {
    margin-top: 0;
}

/* === ARTICLE & SHARING === */
.article {
    padding: 4rem 0;
    padding-bottom: 7.5rem;
}

@media screen and (max-width: 991px) {
    .article {
        padding: 2rem 0;
    }
}

@media print {
    .article {
        padding-top: 0;
    }
}

.article__grid {
    display: grid;
    grid-template-columns: 15% 1fr 15%;
    gap: 3rem;
}

@media screen and (max-width: 991px) {
    .article__grid {
        grid-template-columns: 1fr;
    }
}

@media print {
    .article__grid {
        display: block;
    }
}

.article__share {
    position: relative;
    text-align: right;
}

@media screen and (max-width: 991px) {
    .article__share {
        text-align: left;
    }
}

@media screen and (max-width: 575px) {
    .article__share {
        display: none;
    }
}

@media print {
    .article__share {
        display: none;
    }
}

.article__time {
    display: block;
    width: 100%;
    margin-bottom: 2.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #fff;
}

.article__author {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
    .article__author {
        font-size: .9rem;
    }
}

.article__avatar {
    margin-right: 1rem;
}

@media screen and (max-width: 767px) {
    .article__avatar {
        margin-right: .5rem;
    }
}

.article__avatar .avatar {
    border-radius: 50px;
    border: 1px solid #fff;
}

@media screen and (max-width: 767px) {
    .article__avatar .avatar {
        width: 50px;
        height: auto;
    }
}

.article__autor {
    font-weight: bold;
}

.article__autor a {
    color: #fff;
}

.article__sidebar {
    margin-top: 6rem;
}

@media print {
    .article__sidebar {
        display: none;
    }
}

.galeria {
    margin-top: 3rem;
}

.galeria__content {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 5px;
}

@media screen and (max-width: 575px) {
    .galeria__content {
        grid-template-columns: 1fr 1fr;
    }
}

.galeria__item {
    position: relative;
}

.galeria__img {
    width: 100%;
    height: auto;
}

/* === CONTACT FORM (WPCF7) === */
.wpcf7 {
    margin: 0rem 0 2rem;
}

.wpcf7 .form-group {
    margin-bottom: 1.125rem;
}

.wpcf7 .form-label {
    font-weight: 500;
    font-size: 1rem;
    margin-bottom: .4rem !important;
}

.wpcf7 .form-control {
    width: 100%;
    padding: .975rem .75rem;
    font-size: 1rem;
}

.wpcf7 .form-control::-webkit-input-placeholder {
    color: rgba(0, 0, 0, .3);
}

.wpcf7 .form-control::-moz-placeholder {
    color: rgba(0, 0, 0, .3);
}

.wpcf7 .form-control:-ms-input-placeholder {
    color: rgba(0, 0, 0, .3);
}

.wpcf7 .form-control::-ms-input-placeholder {
    color: rgba(0, 0, 0, .3);
}

.wpcf7 .form-control::placeholder {
    color: rgba(0, 0, 0, .3);
}

.wpcf7 .wpcf7-not-valid-tip {
    font-size: 12px;
    color: red;
}

.wpcf7-acceptance {
    font-size: .9rem;
    color: #7f7f7f;
    color: rgba(0, 0, 0, .4);
}

.wpcf7-acceptance .wpcf7-list-item {
    margin-left: 0;
}

.wpcf7-response-output {
    margin: 2em .5em 1em;
    padding: .5em 1em;
    border-radius: 8px;
}

.wpcf7-mail-sent-ok {
    border: 2px solid #398f14;
    background-color: #398f14;
    color: #fff;
}

.wpcf7-mail-sent-ng {
    border: 2px solid red;
    background-color: red;
    color: #fff;
}

.wpcf7-spam-blocked {
    border: 2px solid orange;
    background-color: orange;
}

.wpcf7-acceptance-missig {
    border: 2px solid orange !important;
    background-color: orange !important;
}

.gdpr-text {
    font-size: .7rem;
    color: #7f7f7f;
    color: rgba(0, 0, 0, .4);
    padding-bottom: 1.5rem;
    display: block;
}

.gdpr-text a {
    color: #7f7f7f;
}

.wpcf7-acceptance a {
    color: #7f7f7f;
}

.gdpr-aceptance-dark .wpcf7-list-item-label {
    color: #fff;
}

.gdpr-aceptance-dark .wpcf7-list-item-label a {
    color: #fff;
}

.form-dark .wpcf7-list-item-label {
    color: #fff;
}

.form-dark .wpcf7-list-item-label a {
    color: #fff;
}

/* === VIDEO PLAYER & SECTION === */
.video {
    padding: 4rem 0;
    background: #17003c;
}

.video video {
    width: 100%;
    height: auto;
    border-radius: .625rem;
    -webkit-box-shadow: 0 0 7.5rem rgba(0, 0, 0, .3);
    box-shadow: 0 0 7.5rem rgba(0, 0, 0, .3);
}

.video-player {
    width: 100%;
    height: auto;
    border-radius: .625rem;
    -webkit-box-shadow: 0 0 7.5rem rgba(0, 0, 0, .3);
    box-shadow: 0 0 7.5rem rgba(0, 0, 0, .3);
}

.video {
    padding: 4rem 0;
    background: #17003c;
}

@media screen and (max-width: 767px) {
    .video {
        padding: 2.5rem 0;
    }
}

.video__container {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 4rem;
}

@media screen and (max-width: 991px) {
    .video__container {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

.video__headers {
    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: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media screen and (max-width: 767px) {
    .video__headers {
        text-align: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.video__pretitle {
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
    font-weight: 600;
}

@media screen and (max-width: 767px) {
    .video__pretitle {
        font-size: 1rem;
        margin-bottom: 1rem;
    }
}

.video__title {
    font-size: 2.18rem;
    color: #fff;
    font-family: "Syne", sans-serif;
    margin-bottom: 1.5rem;
    text-wrap: balance;
}

@media screen and (max-width: 767px) {
    .video__title {
        font-size: 1.25rem;
        text-wrap: balance;
    }
}

.video__title--sm {
    font-size: 1.5rem;
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .video__title--sm {
        font-size: 1.125rem;
        text-wrap: balance;
    }
}

.video__container--col {
    grid-template-columns: 1fr;
}

.video__container--col .video__headers {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}

/* === WHAT SECTION (.what) === */
.what {
    padding: 7.5rem 0;
    background-color: #17003c;
}

@media screen and (max-width: 767px) {
    .what {
        padding: 4rem 0;
    }
}

.what__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.what__slider {
    margin-top: 5rem;
}

/* === FEATURES SECTION (.features) === */
.features {
    background-color: #f5f5f5;
    padding: 5rem 0;
    background-color: #17003c;
}

@media screen and (max-width: 767px) {
    .features {
        padding: 4rem 0;
    }
}

.features__container {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 4rem 2.5rem;
}

@media screen and (max-width: 1199px) {
    .features__container {
        grid-template-columns: 1fr;
    }
}

.features__left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: .75rem;
}

@media screen and (max-width: 1199px) {
    .features__left {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.features__right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -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;
}

@media screen and (max-width: 1199px) {
    .features__right {
        text-align: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.features__claim {
    font-size: 2.18rem;
    font-weight: 600;
    color: #fff;
    font-family: "Syne", sans-serif;
}

.features__actions {
    margin-top: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .features__actions {
        width: 100%;
    }
}

/* === NEWS HOME / POST GRID === */
.news-home {
    padding: 5rem 0;
    padding-bottom: 0;
}

.feat-card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: centerr;
    -ms-flex-align: centerr;
    align-items: centerr;
    background-color: #fff;
    -webkit-box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
    box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
    border-radius: .625rem;
    padding: .75rem;
    gap: 1rem;
    max-width: 350px;
}

@media screen and (max-width: 767px) {
    .feat-card {
        width: 100%;
        max-width: initial;
        padding: .375rem;
    }
}

@media screen and (max-width: 767px) {
    .feat-card__ico .card-ico {
        width: 50px;
        height: 50px;
    }
}

.feat-card__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #424142;
}

.feat-card__title {
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .feat-card__title {
        font-size: 1rem;
        line-height: 1.4;
    }
}

.feat-card__title strong {
    font-weight: 600;
}

.feat-card__description {
    font-size: .9rem;
}

/* === WHAT FEATURES ANIMATION & LAYOUT === */
@-webkit-keyframes show {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes show {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.wfeat {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 7.5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    color: #fff;
}

@media screen and (max-width: 991px) {
    .wfeat {
        gap: 4rem;
    }
}

@media screen and (max-width: 767px) {
    .wfeat {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 4rem;
    }
}

@media screen and (min-width: 992px) {
    .wfeat {
        max-width: 992px;
    }
}

.wfeat__item {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -webkit-animation-name: show;
    animation-name: show;
    view-timeline-name: --image;
    animation-timeline: --image;
    view-timeline-axis: block;
    animation-range: entry 50% cover 80%;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@media screen and (min-width: 992px) {
    .wfeat__item {
        height: 14rem;
    }
}

@media screen and (max-width: 991px) {
    .wfeat__item {
        grid-template-columns: 1fr;
        height: initial;
    }
}

.wfeat__ico {
    margin-bottom: 1.5rem;
}

.wfeat__ico .style-svg {
    width: 50px;
    height: auto;
}

.wfeat__ico .style-svg path {
    fill: #fff;
}

@media screen and (max-width: 767px) {
    .wfeat__ico .style-svg {
        width: 30px;
        margin-top: 8px;
    }
}

.wfeat__title {
    font-size: 2.18rem;
    font-weight: 600;
    font-family: "Syne", sans-serif;
    margin-bottom: 0;
}

@media screen and (max-width: 991px) {
    .wfeat__title {
        font-size: 1.5rem;
    }
}

.wfeat__left {
    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;
}

.wfeat__right {
    padding-left: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    position: relative;
}

@media screen and (max-width: 991px) {
    .wfeat__right {
        padding-left: 0;
        padding-top: 1rem;
        margin-top: 1rem;
    }
}

.wfeat__right::before {
    content: "";
    position: absolute;
    background: -o-linear-gradient(230deg, #39ff14 0%, #00ffff 100%);
    background: linear-gradient(220deg, #39ff14 0%, #00ffff 100%);
    width: 1px;
    top: 0;
    left: 0;
    bottom: 0;
}

@media screen and (max-width: 991px) {
    .wfeat__right::before {
        width: 100%;
        height: 1px;
        left: 0;
        top: 0;
        right: 0;
        bottom: initial;
    }
}

.wfeat__subtitle {
    font-size: 1.5rem;
    text-wrap: balance;
}

@media screen and (max-width: 991px) {
    .wfeat__subtitle {
        font-size: 1rem;
    }
}

/* === BENEFITS SLIDER (.wslide) === */
.wslide {
    background-color: #6300ff;
    padding: 1.5rem;
    color: #fff;
    border-radius: .625rem;
    -webkit-box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
    box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
    margin-left: .5rem;
    margin-right: .5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
}

.wslide__ico .uil {
    font-size: 2.18rem;
}

.slick-slider .slick-dots {
    bottom: -50px;
}

.slick-slider .slick-dots li button::before {
    color: #fff;
}

.slick-slider .slick-track {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
}

.slick-slider .slick-slide {
    height: inherit !important;
}

.benefits {
    padding-top: 5rem;
    padding-bottom: 5rem;
    background: #17003c;
}

/* === SFOR (Solutions For - likely unused here) === */
.sfor {
    background-color: #17003c;
    padding: 7.5rem 0;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .sfor {
        padding: 4rem 0;
    }
}

.sfor__cols {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.5rem;
}

@media screen and (max-width: 991px) {
    .sfor__cols {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 4rem;
    }
}

.sfor__col {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.sfor__title {
    margin-bottom: 2.5rem;
    font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
    .sfor__title {
        margin-bottom: 1.5rem;
    }
}

.sfor__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 16px 8px;
}

.sfor__item {
    background-color: #fff;
    border-radius: 4px;
    color: #473d99;
    padding: 1px 8px;
    position: relative;
    padding-left: 28px;
    overflow: hidden;
    font-size: 1rem;
}

.sfor__item::before {
    left: 0;
    bottom: 0;
    top: 0;
    width: 1.5rem;
    content: "✓";
    font-size: 1rem;
    color: #fff;
    position: absolute;
    background: #6300ff;
    left: 0;
    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;
    padding-top: 4px;
}

/* === BUILTON (Partner Logos) === */
.builton {
    padding: 5rem 0;
    background-color: #f5f5f5;
}

.builton__logos {
    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;
    gap: 2.5rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.builton__logo img {
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    width: 100%;
    height: auto;
    max-height: 40px;
    max-width: 130px;
}

@media screen and (max-width: 767px) {
    .builton__logo img {
        max-height: 30px;
        max-width: 90px;
    }
}

/* === CTA SECTION === */
.cta {
    padding: 7.5rem 0;
    background: #17003c;
}

@media screen and (max-width: 767px) {
    .cta {
        padding: 4rem 0;
    }
}

@media screen and (max-width: 575px) {
    .cta {
        padding: 2.5rem 0;
    }
}

.cta__box {
    background: -o-linear-gradient(230deg, #39ff14 0%, #00ffff 100%);
    background: linear-gradient(220deg, #39ff14 0%, #00ffff 100%);
    border-radius: .625rem;
    -webkit-box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
    box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
    padding: 4rem;
    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;
}

@media screen and (max-width: 767px) {
    .cta__box {
        padding: 2.5rem 1.5rem;
    }
}

.cta__description {
    text-align: center;
}

@media screen and (min-width: 992px) {
    .cta__description {
        max-width: 40%;
    }
}

@media screen and (max-width: 767px) {
    .cta__description {
        font-size: .9rem;
        margin-bottom: 1rem;
    }
}

.cta__title {
    font-size: 3.45rem;
    color: #17003c;
    text-align: center;
}

@media screen and (min-width: 992px) {
    .cta__title {
        max-width: 70%;
    }
}

@media screen and (max-width: 991px) {
    .cta__title {
        font-size: 2.18rem;
    }

    .cta__title br {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .cta__title {
        font-size: 2.18rem;
    }
}

.cta__actions {
    margin-top: 1.5rem;
    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;
    gap: 1.5rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

/* === H SECTION (Header/Hero variant) === */
.h {
    padding: 2.5rem 0 4rem;
    background: #17003c;
}

@media screen and (max-width: 767px) {
    .h {
        padding: 1.5rem 0 2.5rem;
    }
}

.h__container {
    color: #fff;
}

.h__header {
    width: 50%;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 1199px) {
    .h__header {
        width: 70%;
    }
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
    .h__header {
        width: 100%;
    }
}

@media screen and (max-width: 991px) {
    .h__header {
        width: 100%;
        margin-bottom: 1.5rem;
    }
}

.h__title {
    font-size: 3rem;
    font-family: "Syne", sans-serif;
    text-wrap: balance;
    margin-bottom: 1rem;
}

@media screen and (max-width: 1199px) {
    .h__title {
        font-size: 2.18rem;
    }
}

@media screen and (max-width: 767px) {
    .h__title {
        font-size: 1.875rem;
    }
}

.h__actions {
    margin-top: 1.5rem;
}

.h__cover {
    margin-left: 15rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: -15rem;
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
    .h__cover {
        margin-top: -10rem;
    }
}

@media screen and (max-width: 991px) {
    .h__cover {
        margin-left: 0;
        margin-top: 0;
    }
}

.h__cover video,
.h__cover img {
    width: 100%;
    height: auto;
    border-radius: .625rem;
    -webkit-box-shadow: 0 0 7.5rem rgba(0, 0, 0, .3);
    box-shadow: 0 0 7.5rem rgba(0, 0, 0, .3);
}

.h__video {
    position: relative;
    z-index: 0;
    overflow: hidden;
    border-radius: .625rem;
    -webkit-box-shadow: 0 0 7.5rem rgba(0, 0, 0, .3);
    box-shadow: 0 0 7.5rem rgba(0, 0, 0, .3);
}

.h__video::before {
    position: absolute;
    content: "";
    inset: 0;
    background: red;
    background: -o-linear-gradient(330deg, rgba(23, 0, 60, 0.8) 0%, rgba(23, 0, 60, 0) 100%);
    background: linear-gradient(120deg, rgba(23, 0, 60, 0.8) 0%, rgba(23, 0, 60, 0) 100%);
    z-index: 1;
}

.h__video video {
    width: 100%;
    height: auto;
}

.h__mockup {
    width: 50%;
    margin-top: -12rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
}

@media screen and (min-width: 1200px) and (max-width: 1399px) {
    .h__mockup {
        margin-top: -6rem;
    }
}

@media screen and (max-width: 1199px) {
    .h__mockup {
        margin-top: -8rem;
    }
}

@media screen and (max-width: 767px) {
    .h__mockup {
        margin-top: 2.5rem;
        width: 100%;
    }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .h__mockup {
        margin-top: -7.5rem;
        width: 80%;
    }
}

.h__mockup img {
    width: 100%;
    height: auto;
}

/* === CONTACT PAGE (.pcontact) === */
.pcontact {
    padding: 7.5rem 0;
    background: #17003c;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .pcontact {
        padding-top: 2.5rem;
        text-align: center;
    }
}

.pcontact__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.pcontact__grid {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 5rem;
}

@media screen and (max-width: 991px) {
    .pcontact__grid {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
}

.pcontact__title {
    margin-bottom: 2.5rem;
    font-size: 2.18rem;
    font-family: "Syne", sans-serif;
    margin-bottom: 1.5rem;
    background: lime;
    background: -webkit-gradient(linear, right top, left top, from(#00ff00), to(#00ffff));
    background: -o-linear-gradient(right, #00ff00 0%, #00ffff 100%);
    background: linear-gradient(to left, #00ff00 0%, #00ffff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
}

.pcontact__claim {
    font-size: 1.5rem;
    font-family: "Syne", sans-serif;
    margin-bottom: 1.5rem;
}

.pcontact__description {
    margin-bottom: 2.5rem;
    font-size: 1rem;
}

.pcontact__form {
    margin-top: 2.5rem;
}

.pcontact__cover img {
    width: 100%;
    height: auto;
    border-radius: .625rem;
    -webkit-box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
    box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
}

.pcontact__email {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 1rem;
    color: #17003c;
    text-decoration: none;
    background-color: #fff;
    padding: .5rem;
    padding-right: 1.5rem;
    border-radius: 50px;
    font-size: 1.25rem;
    font-weight: 500;
}

@media screen and (max-width: 767px) {
    .pcontact__email {
        font-size: 1rem;
    }
}

.pcontact__email i {
    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;
    background: -o-linear-gradient(230deg, #39ff14 0%, #00ffff 100%);
    background: linear-gradient(220deg, #39ff14 0%, #00ffff 100%);
    color: #17003c;
    width: 50px;
    height: 50px;
    border-radius: 50px;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .pcontact__email i {
        width: 35px;
        height: 35px;
    }
}

/* === PRODUCT PAGE (.product) === */
.product {
    padding: 7.5rem 0;
    background: #17003c;
}

@media screen and (max-width: 767px) {
    .product {
        padding: 4rem 0;
    }
}

.product__cols {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 5rem;
}

@media screen and (max-width: 991px) {
    .product__cols {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
}

.product__item {
    margin-bottom: 2.5rem;
    background-color: #fff;
    -webkit-box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
    box-shadow: 0px 8px 16px rgba(30, 0, 40, .08) !important;
    padding: 2.5rem;
    border-radius: .625rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}

@media screen and (max-width: 1399px) {
    .product__item {
        padding: 1.5rem;
    }
}

@media screen and (max-width: 767px) {
    .product__item {
        padding: 1rem;
        -webkit-box-shadow: initial !important;
        box-shadow: initial !important;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 1rem;
    }
}

.product__title {
    font-size: 2.18rem;
    font-family: "Syne", sans-serif;
    font-weight: 600;
    color: #17003c;
    margin-bottom: 1rem;
}

@media screen and (max-width: 1399px) {
    .product__title {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 767px) {
    .product__title {
        font-size: 1.5rem;
    }
}

.product__content .content-body {
    margin-left: -1.5rem;
}

.product__content .content-body li {
    color: #424142;
}

.product__right {
    position: relative;
}

.product__right img {
    width: 100%;
    height: auto;
    mix-blend-mode: multiply;
}

.product__right-content {
    position: -webkit-sticky;
    position: sticky;
    top: 2.5rem;
    bottom: 1.5rem;
}

.product__actions {
    margin-top: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.product__slides {
    margin-top: 5rem;
}

/* === SOLUTIONS SECTION (SLS) === */
.sls {
    margin-bottom: 4rem;
}

.sls__item {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 4rem;
}

@media screen and (max-width: 767px) {
    .sls__item {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

.sls__cover img {
    width: 100%;
    height: auto;
}

.sls__content {
    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: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.sls__pretitle {
    font-weight: 500;
}

.sls__title {
    font-size: 2.18rem;
    font-family: "Syne", sans-serif;
    color: #fff;
    margin-bottom: 1.5rem;
}

@media screen and (max-width: 1399px) {
    .sls__title {
        font-size: 2.18rem;
    }
}

@media screen and (max-width: 767px) {
    .sls__title {
        font-size: 1.5rem;
    }
}

.sls__description p {
    color: #f5f5f5;
}

/* === SOLUTION SUB-PAGE (.psol) === */
.psol {
    background: #17003c;
    padding: 5rem 0;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .psol {
        padding-top: 1.5rem;
    }
}

.psol__container {
    display: grid;
    grid-template-columns: 1fr;
    gap: 7.5rem;
}

@media screen and (max-width: 767px) {
    .psol__container {
        gap: 2.5rem;
    }
}

.psol__group {
    margin-bottom: 2.5rem;
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 4rem;
}

@media screen and (max-width: 991px) {
    .psol__group {
        grid-template-columns: 1fr;
    }
}

.psol__picture {
    position: relative;
}

.psol__picture img {
    position: -webkit-sticky;
    position: sticky;
    z-index: 1;
    top: 4rem;
    width: 100%;
    height: auto;
}

.psol__head {
    margin-bottom: 2.5rem;
}

.psol__title {
    font-size: 3.45rem;
    font-family: "Syne", sans-serif;
}

@media screen and (max-width: 767px) {
    .psol__title {
        font-size: 2.18rem;
    }
}

/* === CASE STUDIES (.case) === */
.case {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4rem;
}

.case__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2.5rem;
}

@media screen and (max-width: 991px) {
    .case__item {
        gap: 1rem;
    }
}

.case__item-ico {
    padding-top: .75rem;
}

.case__head {
    margin-bottom: 1.5rem;
}

.case__title {
    font-size: 2.18rem;
    font-weight: 500;
    margin-bottom: .5rem;
    background: lime;
    background: -webkit-gradient(linear, right top, left top, from(#00ff00), to(#00ffff));
    background: -o-linear-gradient(right, #00ff00 0%, #00ffff 100%);
    background: linear-gradient(to left, #00ff00 0%, #00ffff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
}

@media screen and (max-width: 767px) {
    .case__title {
        font-size: 1.5rem;
    }
}

.case__description-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

@media screen and (max-width: 991px) {
    .case__description-items {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.case__description-item {
    padding: 1rem;
    background-color: rgba(255, 255, 255, .1490196078);
    border-radius: .625rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.case__details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: .5rem;
}

.case__detail {
    background: #fff;
    padding: .375rem .75rem;
    border-radius: .3rem;
    color: #424142;
    font-weight: 500;
    font-size: .9rem;
}

.case__detail::before {
    content: "✓";
    color: #424142;
}

/* === ABOUT PAGE (General) === */
.sabout {
    padding: 7.5rem 0;
}

@media screen and (max-width: 767px) {
    .sabout {
        padding: 4rem 0;
    }
}

.sabout__cols {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 5rem;
}

@media screen and (max-width: 991px) {
    .sabout__cols {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
}

.sabout__title {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    color: #6300ff;
}

.sabout__subtitle {
    font-size: 1rem;
    color: #7f7f7f;
    line-height: 1.6;
}

.pabout {
    padding: 5rem 0;
    background: #17003c;
}

/* === ABOUT PAGE (RABOUT) === */
.rabout {
    padding-top: 2.5rem;
}

.rabout__items {
    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;
    gap: 7.5rem;
}

.rabout__item {
    display: grid;
    grid-template-columns: 1fr 1fr;
    color: #fff;
}

@media screen and (min-width: 992px) {
    .rabout__item {
        max-width: 992px;
    }
}

@media screen and (max-width: 991px) {
    .rabout__item {
        grid-template-columns: 1fr;
    }
}

@media screen and (min-width: 992px) {
    .rabout__left {
        padding-right: 4rem;
        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: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
}

@media screen and (max-width: 991px) {
    .rabout__left {
        margin-bottom: 1.5rem;
    }
}

.rabout__title {
    font-size: 1.5rem;
    font-family: "Syne", sans-serif;
    margin-bottom: 1rem;
    background: lime;
    background: -webkit-gradient(linear, right top, left top, from(#00ff00), to(#00ffff));
    background: -o-linear-gradient(right, #00ff00 0%, #00ffff 100%);
    background: linear-gradient(to left, #00ff00 0%, #00ffff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
}

@media screen and (max-width: 991px) {
    .rabout__title {
        font-size: 1.25rem;
    }
}

.rabout__subtitle {
    font-size: 1.5rem;
    font-family: "Syne", sans-serif;
}

.rabout__right {
    position: relative;
}

@media screen and (min-width: 992px) {
    .rabout__right {
        padding-bottom: 2.5rem;
        padding-left: 4rem;
        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: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
}

@media screen and (max-width: 991px) {
    .rabout__right {
        padding-top: 2.5rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem;
    }
}

@media screen and (max-width: 575px) {
    .rabout__right {
        gap: 1.125rem;
    }
}

.rabout__right::before {
    content: "";
    position: absolute;
    background: -o-linear-gradient(230deg, #39ff14 0%, #00ffff 100%);
    background: linear-gradient(220deg, #39ff14 0%, #00ffff 100%);
    width: 1px;
    top: 0;
    left: 0;
    bottom: 0;
}

@media screen and (max-width: 991px) {
    .rabout__right::before {
        width: 100%;
        height: 1px;
        left: 0;
        top: 0;
        right: 0;
        bottom: initial;
    }
}

.rabout__ico {
    margin-bottom: 1.5rem;
}

.rabout__ico .style-svg path {
    fill: #fff;
}

.rabout__content {
    line-height: 1.6;
}

.rabout__content p:last-child {
    margin-bottom: 0;
}

.about-partners {
    background-color: #17003c;
    padding: 5rem 0;
}

@media screen and (max-width: 767px) {
    .about-partners {
        padding: 2.5rem 0;
    }
}

.about-partners__items {
    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;
    gap: 4rem;
}

@media screen and (max-width: 767px) {
    .about-partners__items {
        gap: 2.5rem;
    }
}

.about-partners__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.about-partners__item .style-svg {
    width: 100%;
    max-width: 160px;
    max-height: 42px;
}

.about-partners__item .style-svg path {
    fill: #fff !important;
}

/* === BLOG / NEWS GRID === */
.ze-blog {
    padding: 2.5rem 0;
}

.post-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 3rem 3rem;
    margin-bottom: 3rem;
}

@media screen and (max-width: 991px) {
    .post-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
}

@media screen and (max-width: 767px) {
    .post-grid {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
}

.post-grid__item {
    text-align: center;
}

@media screen and (max-width: 991px) {
    .post-grid__item {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 2rem;
        text-align: left;
    }
}

@media screen and (max-width: 575px) {
    .post-grid__item {
        grid-template-columns: 1fr 1.5fr;
        gap: 1rem !important;
    }
}

.post-grid__pic img {
    aspect-ratio: 16/11;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-box-shadow: 0 0 7.5rem rgba(0, 0, 0, .3);
    box-shadow: 0 0 7.5rem rgba(0, 0, 0, .3);
    border-radius: .625rem;
}

@media screen and (max-width: 767px) {
    .post-grid__pic img {
        border-radius: .3rem;
    }
}

.post-grid__content {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    color: #d7d7d7;
}

@media screen and (max-width: 991px) {
    .post-grid__content {
        width: initial;
        margin: initial;
    }
}

.post-grid__tax {
    font-size: .9rem;
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: .5rem;
}

@media screen and (max-width: 575px) {
    .post-grid__tax {
        margin-top: -5px;
        margin-botton: .3rem;
    }
}

.post-grid__title {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    font-weight: 600;
    font-family: "Syne", sans-serif;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .post-grid__title {
        font-size: 1rem;
        font-family: "Work Sans", sans-serif;
    }
}

.post-grid__title a {
    color: #fff;
    text-decoration: none;
}

.post-grid__meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: .9rem;
    margin-bottom: 1rem;
}

@media screen and (max-width: 991px) {
    .post-grid__meta {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
}

.post-grid__autor {
    color: #d7d7d7;
}

.post-grid__autor a {
    color: #d7d7d7;
    text-decoration: none;
}

.post-grid__line {
    padding: 0 .5rem;
}

.post-grid__time {
    font-size: .75rem;
    font-weight: 400;
}

.post-grid__time i {
    margin-right: .2rem;
}

/* === SHARING POST STICKY ICONS === */
.share-post {
    position: -webkit-sticky;
    position: sticky;
    top: 6.5rem;
    margin-top: 5rem;
    margin-right: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
}

@media screen and (max-width: 991px) {
    .share-post {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        gap: 1rem;
        margin-top: 0;
        margin: 0;
    }
}

.share-post__logo {
    width: 38px;
    height: auto;
    margin-bottom: 6px;
    opacity: 1;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.share-post__logo path {
    fill: #fff;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.share-post__logo:hover path {
    fill: aqua;
    -webkit-transition: .2s all ease-in-out;
    -o-transition: .2s all ease-in-out;
    transition: .2s all ease-in-out;
}

.grid-related__header {
    margin-bottom: 2.5rem;
}

/* === FOOTER NEWS HOME (FNH) / FEATURED POST (FP) === */
.fnh {
    padding: 2.5rem 0;
}

.fnh__container {
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
}

.fp {
    position: relative;
    background: rgba(255, 255, 255, .1);
    background: -o-linear-gradient(137deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(313deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0) 100%);
    display: grid;
    grid-template-columns: 1.5fr 3fr;
    gap: 2.5rem;
    padding: 1.5rem;
    padding: 1rem;
    border-radius: .625rem;
}

@media screen and (max-width: 767px) {
    .fp {
        grid-template-columns: 1fr;
        gap: 1rem;
        background: -o-linear-gradient(137deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0.05) 100%);
        background: linear-gradient(313deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0.05) 100%);
    }
}

.fp a {
    text-decoration: none;
}

.fp__label {
    position: absolute;
    top: -0.75rem;
    right: 1.5rem;
    background: -o-linear-gradient(230deg, #39ff14 0%, #00ffff 100%);
    background: linear-gradient(220deg, #39ff14 0%, #00ffff 100%);
    color: #17003c;
    border-radius: .3rem;
    font-size: .9rem;
    padding: 1px 8px;
    font-weight: 500;
}

.fp__pic {
    margin: 0;
    padding: 0;
}

.fp__pic img {
    width: 100%;
    height: auto;
    border-radius: .3rem;
}

.fp__date {
    display: block;
    font-size: .9rem;
    margin-bottom: 1rem;
}

.fp__title {
    font-size: 1.5rem;
    font-family: "Syne", sans-serif;
}

.fp__title a {
    color: #fff;
}

.fp__actions {
    margin-top: 1rem;
}

.tpt {
    background: rgba(255, 255, 255, .1);
    padding: .5rem .75rem;
    padding-right: 1.125rem;
    border-radius: .625rem;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none;
    gap: 1rem;
    margin-bottom: 1.5rem;
    -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, .2);
    box-shadow: 0 0 30px rgba(0, 0, 0, .2);
}

@media screen and (max-width: 991px) {
    .tpt {
        text-align: left;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
}

.tpt__label {
    background: -o-linear-gradient(230deg, #39ff14 0%, #00ffff 100%);
    background: linear-gradient(220deg, #39ff14 0%, #00ffff 100%);
    color: #17003c;
    border-radius: .3rem;
    font-size: .9rem;
    padding: 1px 8px;
    font-weight: 500;
}

.tpt__title {
    color: #fff !important;
    font-size: .9rem;
    font-weight: 500;
}

.wfeat .wfeat__ico .style-svg {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

@media screen and (max-width: 767px) {
    .tpt__title {
        font-size: .75rem;
    }
}
