.elementor-widget-sju-kv-academy-section,
.elementor-widget-sju-kv-academy-section > .elementor-widget-container {
    width: 100%;
}

.sju-kv-academy,
.sju-kv-academy * {
    box-sizing: border-box;
}

.sju-kv-academy {
    --sju-academy-navy: #07183f;
    --sju-academy-blue: #315cf4;
    --sju-academy-red: #d7192d;
    --sju-academy-image-x: 50%;
    --sju-academy-image-y: 50%;
    position: relative;
    isolation: isolate;
    width: 100%;
    overflow: clip;
    color: var(--sju-academy-navy);
    background-color: #f6f9ff;
    font-family: "Inter", Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.sju-kv-academy::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        radial-gradient(circle at 85% 8%, rgba(49, 92, 244, .1), transparent 28%),
        radial-gradient(circle at 8% 72%, rgba(215, 25, 45, .045), transparent 25%),
        linear-gradient(rgba(49, 92, 244, .024) 1px, transparent 1px),
        linear-gradient(90deg, rgba(49, 92, 244, .024) 1px, transparent 1px);
    background-size: auto, auto, 42px 42px, 42px 42px;
}

.sju-kv-academy__inner {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: clamp(24px, 2.8vw, 38px);
    border: 1px solid rgba(91, 120, 173, .16);
    border-radius: 28px;
    background: rgba(255, 255, 255, .91);
    box-shadow: 0 26px 72px rgba(28, 57, 112, .1);
}

.sju-kv-academy__hero {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    align-items: stretch;
    gap: clamp(22px, 2.5vw, 34px);
}

.sju-kv-academy__journey,
.sju-kv-academy__media-column {
    min-width: 0;
}

.sju-kv-academy__journey {
    display: flex;
    flex-direction: column;
}

.sju-kv-academy__header {
    max-width: 560px;
}

.sju-kv-academy__eyebrow,
.sju-kv-academy__path-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--sju-academy-red);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.sju-kv-academy__eyebrow::before {
    content: "";
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 12px solid var(--sju-academy-red);
    filter: drop-shadow(0 4px 8px rgba(215, 25, 45, .18));
}

.sju-kv-academy__title {
    margin: 18px 0 0;
    color: var(--sju-academy-navy);
    font-family: "Space Grotesk", "Inter", Arial, sans-serif;
    font-size: clamp(44px, 3.45vw, 54px);
    font-weight: 700;
    line-height: 1.02;
    letter-spacing: -.048em;
    text-wrap: balance;
}

.sju-kv-academy__title span,
.sju-kv-academy__title strong {
    display: block;
}

.sju-kv-academy__title strong {
    margin-top: 5px;
    color: var(--sju-academy-blue);
    font-weight: inherit;
}

.sju-kv-academy__lede {
    display: grid;
    gap: 7px;
    margin: 26px 0 0;
    color: #344765;
    font-size: 16px;
    line-height: 1.5;
}

.sju-kv-academy__lede strong {
    color: var(--sju-academy-navy);
    font-weight: 600;
}

.sju-kv-academy__host-note {
    max-width: 525px;
    margin: 9px 0 0;
    color: #344765;
    font-size: 16px;
    line-height: 1.52;
}

.sju-kv-academy__optional {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 36px;
    margin-top: 15px;
    padding: 7px 12px;
    border: 1px solid rgba(215, 25, 45, .15);
    border-radius: 10px;
    color: var(--sju-academy-red);
    background: rgba(215, 25, 45, .065);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
}

.sju-kv-academy__optional i {
    display: grid;
    place-items: center;
    width: 18px;
    height: 18px;
    border: 1.5px solid currentColor;
    border-radius: 50%;
    font-size: 9px;
    font-style: normal;
}

.sju-kv-academy__invite {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 18px;
    margin-top: 23px;
    padding: 21px 22px;
    border: 1px solid rgba(91, 120, 173, .13);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(237, 244, 255, .98), rgba(255, 255, 255, .96));
    box-shadow: 0 16px 40px rgba(28, 57, 112, .07);
}

.sju-kv-academy__invite-icon {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(145deg, #4c79ff, #1748db);
    box-shadow: 0 14px 28px rgba(49, 92, 244, .25), inset 0 1px 0 rgba(255, 255, 255, .32);
}

.sju-kv-academy__invite-icon svg {
    width: 27px;
    height: 27px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.sju-kv-academy__invite h3 {
    margin: 1px 0 0;
    color: var(--sju-academy-navy);
    font-family: "Space Grotesk", "Inter", sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -.025em;
}

.sju-kv-academy__invite-content > p {
    margin: 7px 0 0;
    color: #53647e;
    font-size: 13px;
    line-height: 1.5;
}

.sju-kv-academy__invite ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px 14px;
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.sju-kv-academy__invite li {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: var(--sju-academy-navy);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
}

.sju-kv-academy__invite li span {
    flex: 0 0 auto;
    color: var(--sju-academy-blue);
    font-size: 19px;
    line-height: .8;
}

.sju-kv-academy__invite .sju-kv-academy__invite-note {
    margin-top: 13px;
    padding-top: 12px;
    border-top: 1px solid rgba(78, 105, 153, .12);
    color: #485b78;
    font-size: 12px;
    font-weight: 600;
}

.sju-kv-academy__media-column {
    position: relative;
    display: grid;
    min-height: 100%;
}

.sju-kv-academy__image-wrap {
    position: relative;
    min-width: 0;
    height: 100%;
    min-height: 560px;
    margin: 0;
    overflow: hidden;
    border: 1px solid rgba(93, 120, 172, .18);
    border-radius: 22px;
    background: #dfe8f6;
    box-shadow: 0 24px 60px rgba(31, 61, 118, .16);
}

.sju-kv-academy__image-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, transparent 58%, rgba(4, 18, 48, .3)),
        linear-gradient(90deg, transparent 48%, rgba(4, 18, 48, .06));
}

.sju-kv-academy__image-wrap img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: var(--sju-academy-image-x) var(--sju-academy-image-y);
}

.sju-kv-academy__image-wrap figcaption {
    position: absolute;
    z-index: 2;
    top: 17px;
    left: 17px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, .46);
    border-radius: 999px;
    color: #fff;
    background: rgba(5, 25, 65, .64);
    box-shadow: 0 10px 28px rgba(4, 17, 44, .2);
    backdrop-filter: blur(12px);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .09em;
}

.sju-kv-academy__image-wrap figcaption::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #5de6ff;
    box-shadow: 0 0 12px #5de6ff;
}

.sju-kv-academy__image-placeholder {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    background:
        radial-gradient(circle at 70% 28%, rgba(255,255,255,.82), transparent 24%),
        linear-gradient(135deg, #dce9ff, #a7c3ff 58%, #789ff8);
}

.sju-kv-academy__image-placeholder i {
    width: 140px;
    height: 76px;
    border: 10px solid rgba(255, 255, 255, .9);
    border-radius: 36px 36px 48px 48px;
    box-shadow: 0 18px 50px rgba(14, 57, 135, .24);
}

.sju-kv-academy__future {
    position: absolute;
    z-index: 3;
    right: 18px;
    bottom: 18px;
    display: flex;
    align-items: center;
    gap: 14px;
    max-width: min(390px, calc(100% - 36px));
    padding: 15px 17px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 17px;
    color: #fff;
    background: linear-gradient(135deg, rgba(13, 55, 126, .96), rgba(4, 21, 57, .96));
    box-shadow: 0 18px 45px rgba(2, 12, 34, .32);
    backdrop-filter: blur(10px);
}

.sju-kv-academy__future-icon {
    display: grid;
    place-items: center;
    flex: 0 0 50px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(145deg, #4e7dff, #1551ec);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .3), 0 12px 25px rgba(22, 76, 226, .34);
}

.sju-kv-academy__future-icon svg {
    width: 27px;
    height: 27px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.sju-kv-academy__future h3 {
    margin: 0;
    color: #fff;
    font-family: "Space Grotesk", "Inter", sans-serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.25;
}

.sju-kv-academy__brand-lockup {
    display: flex;
    align-items: center;
    gap: 6px;
    width: fit-content;
    max-width: 100%;
    margin-top: 8px;
    padding: 5px 7px;
    border-radius: 8px;
    background: rgba(255, 255, 255, .94);
}

.sju-kv-academy__brand-lockup img {
    display: block;
    width: auto;
    max-width: 66px;
    height: 17px;
    object-fit: contain;
}

.sju-kv-academy__brand-lockup img:first-child {
    max-width: 82px;
    height: 21px;
}

.sju-kv-academy__brand-lockup span {
    flex: 0 0 auto;
    color: #91a0ba;
    font-size: 11px;
    font-weight: 700;
}

.sju-kv-academy__features-block {
    margin-top: 26px;
}

.sju-kv-academy__features-block > h3 {
    margin: 0 0 12px;
    color: var(--sju-academy-blue);
    font-family: "Space Grotesk", "Inter", sans-serif;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.sju-kv-academy__features {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.sju-kv-academy__feature {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    align-items: start;
    gap: 14px;
    min-width: 0;
    min-height: 154px;
    padding: 18px 17px;
    border: 1px solid rgba(102, 126, 168, .18);
    border-radius: 17px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 13px 32px rgba(28, 57, 112, .07);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.sju-kv-academy__feature:hover {
    transform: translateY(-3px);
    border-color: rgba(49, 92, 244, .28);
    box-shadow: 0 19px 42px rgba(28, 57, 112, .11);
}

.sju-kv-academy__feature-icon {
    display: grid;
    place-items: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(145deg, #4d7cff, #1852e7);
    box-shadow: 0 12px 26px rgba(49, 92, 244, .22), inset 0 1px 0 rgba(255, 255, 255, .32);
    font-size: 20px;
}

.sju-kv-academy__feature-icon svg {
    width: 22px;
    height: 22px;
    fill: currentColor;
}

.sju-kv-academy__feature h4 {
    margin: 2px 0 0;
    color: var(--sju-academy-navy);
    font-family: "Space Grotesk", "Inter", sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.28;
    letter-spacing: -.02em;
}

.sju-kv-academy__feature p {
    margin: 14px 0 0;
    color: #5b6b84;
    font-size: 13px;
    line-height: 1.52;
}

.sju-kv-academy__path {
    margin-top: 24px;
    padding: 21px 22px 18px;
    border: 1px solid rgba(84, 113, 166, .16);
    border-radius: 19px;
    background: linear-gradient(135deg, rgba(247, 250, 255, .98), rgba(255, 255, 255, .96));
    box-shadow: 0 15px 38px rgba(29, 58, 112, .07);
}

.sju-kv-academy__path-label {
    color: var(--sju-academy-blue);
    letter-spacing: .045em;
}

.sju-kv-academy__path-label::before {
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: currentColor;
}

.sju-kv-academy__path ol {
    position: relative;
    display: grid;
    gap: 6px;
    margin: 13px 0 0;
    padding: 0;
    list-style: none;
}

.sju-kv-academy__path ol::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 24px;
    bottom: 24px;
    left: 28px;
    width: 2px;
    background: linear-gradient(var(--sju-academy-blue), #b8c9ff);
}

.sju-kv-academy__path li {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto 20px;
    align-items: center;
    gap: 12px;
    min-width: 0;
    min-height: 52px;
    padding: 7px 13px 7px 9px;
    border: 1px solid rgba(91, 120, 173, .09);
    border-radius: 11px;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 7px 20px rgba(25, 54, 106, .035);
}

.sju-kv-academy__path-number {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(145deg, #4172ff, #1c55ec);
    box-shadow: 0 8px 20px rgba(49, 92, 244, .22);
    font-family: "Space Grotesk", sans-serif;
    font-size: 14px;
    font-weight: 800;
}

.sju-kv-academy__path li:nth-child(4) .sju-kv-academy__path-number {
    background: linear-gradient(145deg, #315cf4, #0f43d7);
    box-shadow: 0 10px 24px rgba(49, 92, 244, .3);
}

.sju-kv-academy__path-copy {
    color: var(--sju-academy-navy);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
}

.sju-kv-academy__path small {
    padding: 4px 8px;
    border-radius: 999px;
    color: var(--sju-academy-blue);
    background: rgba(49, 92, 244, .08);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .07em;
}

.sju-kv-academy__path-chevron {
    color: var(--sju-academy-blue);
    font-size: 26px;
    font-weight: 500;
    line-height: 1;
    text-align: right;
}

.sju-kv-academy__path-note {
    margin: 17px 0 0;
    color: #405271;
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
}

@media (max-width: 1100px) {
    .sju-kv-academy__inner {
        padding: 25px;
    }

    .sju-kv-academy__hero {
        grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
        gap: 22px;
    }

    .sju-kv-academy__title {
        font-size: clamp(40px, 4.15vw, 47px);
    }

    .sju-kv-academy__invite {
        grid-template-columns: 50px minmax(0, 1fr);
        gap: 14px;
        padding: 18px;
    }

    .sju-kv-academy__invite-icon {
        width: 50px;
        height: 50px;
    }

    .sju-kv-academy__invite ul {
        grid-template-columns: 1fr;
    }

    .sju-kv-academy__features {
        gap: 11px;
    }

    .sju-kv-academy__feature {
        grid-template-columns: 44px minmax(0, 1fr);
        gap: 11px;
        padding: 16px 14px;
    }

    .sju-kv-academy__feature-icon {
        width: 44px;
        height: 44px;
    }
}

@media (max-width: 900px) {
    .sju-kv-academy__hero {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .sju-kv-academy__header {
        max-width: 720px;
    }

    .sju-kv-academy__invite ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sju-kv-academy__image-wrap {
        height: clamp(390px, 60vw, 540px);
        min-height: 0;
    }

    .sju-kv-academy__features {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 13px;
    }

    .sju-kv-academy__feature {
        min-height: 132px;
    }
}

@media (max-width: 767px) {
    .sju-kv-academy__inner {
        padding: 19px;
        border-radius: 21px;
    }

    .sju-kv-academy__eyebrow,
    .sju-kv-academy__path-label {
        font-size: 11px;
    }

    .sju-kv-academy__eyebrow::before {
        border-top-width: 7px;
        border-bottom-width: 7px;
        border-left-width: 10px;
    }

    .sju-kv-academy__title {
        margin-top: 14px;
        font-size: clamp(36px, 10.4vw, 44px);
        line-height: 1.03;
    }

    .sju-kv-academy__lede {
        margin-top: 22px;
        font-size: 15px;
    }

    .sju-kv-academy__host-note {
        font-size: 15px;
    }

    .sju-kv-academy__invite {
        margin-top: 19px;
    }

    .sju-kv-academy__image-wrap {
        height: clamp(310px, 78vw, 430px);
        border-radius: 17px;
    }

    .sju-kv-academy__future {
        right: 12px;
        bottom: 12px;
        max-width: calc(100% - 24px);
    }

    .sju-kv-academy__features-block {
        margin-top: 21px;
    }

    .sju-kv-academy__feature h4 {
        font-size: 15px;
    }

    .sju-kv-academy__path {
        margin-top: 18px;
        padding: 17px 15px 15px;
        border-radius: 16px;
    }

    .sju-kv-academy__path ol::before {
        left: 23px;
    }

    .sju-kv-academy__path li {
        grid-template-columns: 32px minmax(0, 1fr) auto 15px;
        gap: 9px;
        min-height: 49px;
        padding: 7px 9px 7px 7px;
    }

    .sju-kv-academy__path-number {
        width: 32px;
        height: 32px;
        font-size: 12px;
    }

    .sju-kv-academy__path-copy {
        font-size: 13px;
    }

    .sju-kv-academy__path-chevron {
        font-size: 21px;
    }

    .sju-kv-academy__path-note {
        font-size: 13px;
    }
}

@media (max-width: 520px) {
    .sju-kv-academy__inner {
        padding: 15px;
    }

    .sju-kv-academy__invite {
        grid-template-columns: 44px minmax(0, 1fr);
        gap: 12px;
        padding: 16px 14px;
    }

    .sju-kv-academy__invite-icon {
        width: 44px;
        height: 44px;
    }

    .sju-kv-academy__invite-icon svg {
        width: 22px;
        height: 22px;
    }

    .sju-kv-academy__invite ul {
        grid-template-columns: 1fr;
    }

    .sju-kv-academy__future {
        gap: 10px;
        padding: 12px;
    }

    .sju-kv-academy__future-icon {
        flex-basis: 42px;
        width: 42px;
        height: 42px;
    }

    .sju-kv-academy__future h3 {
        font-size: 14px;
    }

    .sju-kv-academy__brand-lockup img {
        max-width: 54px;
        height: 14px;
    }

    .sju-kv-academy__brand-lockup img:first-child {
        max-width: 68px;
        height: 18px;
    }

    .sju-kv-academy__features {
        grid-template-columns: 1fr;
    }

    .sju-kv-academy__feature {
        min-height: 0;
    }

    .sju-kv-academy__path li {
        grid-template-columns: 32px minmax(0, 1fr) auto;
    }

    .sju-kv-academy__path-chevron {
        display: none;
    }

    .sju-kv-academy__path small {
        padding-inline: 6px;
        font-size: 8px;
    }
}

@media (max-width: 340px) {
    .sju-kv-academy__title {
        font-size: 34px;
    }

    .sju-kv-academy__path-copy {
        font-size: 12px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sju-kv-academy__feature {
        transition: none;
    }

    .sju-kv-academy__feature:hover {
        transform: none;
    }
}
