.sm27-home,
.sm27-home * {
    box-sizing: border-box;
}


.sm27-home {
    --sm-red: #5A1725;
    --sm-red-2: #5A1725;
    --sm-ink: #111318;
    --sm-muted: #6d7178;
    --sm-soft: #f5f5f7;
    --sm-white: rgba(255,255,255,.82);
    --sm-line: rgba(17,19,24,.09);
    --sm-shadow: 0 24px 80px rgba(15,18,24,.10);
    --sm-shadow-soft: 0 12px 35px rgba(15,18,24,.07);
    --sm-ease: cubic-bezier(.22,1,.36,1);

    position: relative;
    overflow: clip;
    isolation: isolate;

    color: var(--sm-ink);
    background: var(--sm-soft);

    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "SF Pro Display",
        "SF Pro Text",
        Inter,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}


.sm27-home a {
    text-decoration: none;
}


.sm27-home img {
    max-width: 100%;
}


.sm27-home button,
.sm27-home a {
    -webkit-tap-highlight-color: transparent;
}


.sm27-shell {
    width:
        min(
            1200px,
            calc(100% - 56px)
        );

    margin-inline: auto;
}






.sm27-hero {
    position: relative;

    min-height:
        min(
            920px,
            100svh
        );

    display:
        flex;

    align-items:
        flex-end;

    overflow:
        hidden;

    background:
        #170607;

    border-radius:
        0 0 42px 42px;
}


.sm27-hero-media,
.sm27-hero-image,
.sm27-hero-overlay {
    position:
        absolute;

    inset:
        0;
}


.sm27-hero-media {
    overflow:
        hidden;
}


.sm27-hero-overlay {
    z-index:
        1;

    background:

        radial-gradient(
            circle at 72% 20%,
            rgba(255,255,255,.18),
            transparent 23%
        ),

        linear-gradient(
            180deg,
            rgba(7,0,0,.06) 0%,
            rgba(7,0,0,.12) 28%,
            rgba(7,0,0,.48) 63%,
            rgba(7,0,0,.94) 100%
        ),

        linear-gradient(
            90deg,
            rgba(84,4,13,.28),
            transparent 54%,
            rgba(0,0,0,.16)
        );
}


.sm27-hero-noise {
    position:
        absolute;

    inset:
        0;

    z-index:
        2;

    opacity:
        .055;

    pointer-events:
        none;

    background-image:
        url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
}


.sm27-hero-content {
    position:
        relative;

    z-index:
        4;

    width:
        min(
            1200px,
            calc(100% - 56px)
        );

    margin-inline:
        auto;

    padding:
        0 0 76px;
}


.sm27-hero-kicker {
    display:
        inline-flex;

    align-items:
        center;

    gap:
        8px;

    min-height:
        35px;

    padding:
        0 13px;

    border:
        1px solid
        rgba(255,255,255,.23);

    border-radius:
        999px;

    background:
        rgba(255,255,255,.105);

    color:
        rgba(255,255,255,.94);

    font-size:
        10px;

    font-weight:
        800;

    letter-spacing:
        .11em;

    text-transform:
        uppercase;

    backdrop-filter:
        blur(22px)
        saturate(145%);

    -webkit-backdrop-filter:
        blur(22px)
        saturate(145%);
}


.sm27-hero-title {
    max-width:
        780px;

    margin:
        22px 0 0;

    color:
        #fff;

    font-size:
        clamp(
            4.35rem,
            8vw,
            7.4rem
        );

    font-weight:
        820;

    line-height:
        .92;

    letter-spacing:
        -.072em;

    text-wrap:
        balance;
}


.sm27-hero-title span {
    display:
        block;

    color:
        rgba(255,255,255,.92);
}


.sm27-hero-description {
    max-width:
        560px;

    margin:
        25px 0 29px;

    color:
        rgba(255,255,255,.80);

    font-size:
        15px;

    line-height:
        1.72;
}


.sm27-actions {
    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        10px;
}


.sm27-action {
    min-height:
        47px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        8px;

    padding:
        0 18px;

    border-radius:
        15px;

    font-size:
        12px;

    font-weight:
        800;

    transition:
        transform .42s var(--sm-ease),
        background .42s var(--sm-ease),
        box-shadow .42s var(--sm-ease),
        border-color .42s var(--sm-ease);
}


.sm27-action-primary {
    color:
        #fff !important;

    background:
        var(--sm-red);

    box-shadow:
        0 16px 36px rgba(81,0,10,.28),
        inset 0 1px 0 rgba(255,255,255,.18);
}


.sm27-action-secondary {
    color:
        #fff !important;

    border:
        1px solid
        rgba(255,255,255,.28);

    background:
        rgba(255,255,255,.11);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.18);

    backdrop-filter:
        blur(18px)
        saturate(140%);

    -webkit-backdrop-filter:
        blur(18px)
        saturate(140%);
}


.sm27-action-primary:hover,
.sm27-action-secondary:hover {
    transform:
        translateY(-3px);
}


.sm27-action-primary:hover {
    color:
        #fff !important;

    background:
        var(--sm-red-2);
}


.sm27-action-secondary:hover {
    color:
        #fff !important;

    background:
        rgba(255,255,255,.18);
}


.sm27-hero-scroll {
    position:
        absolute;

    right:
        42px;

    bottom:
        37px;

    z-index:
        4;

    display:
        flex;

    flex-direction:
        column;

    align-items:
        center;

    gap:
        7px;

    color:
        rgba(255,255,255,.70);

    font-size:
        9px;

    font-weight:
        800;

    letter-spacing:
        .12em;

    text-transform:
        uppercase;
}


.sm27-scroll-pill {
    width:
        22px;

    height:
        34px;

    display:
        flex;

    justify-content:
        center;

    padding-top:
        6px;

    border:
        1px solid
        rgba(255,255,255,.54);

    border-radius:
        999px;

    background:
        rgba(255,255,255,.08);

    backdrop-filter:
        blur(12px);

    -webkit-backdrop-filter:
        blur(12px);
}


.sm27-scroll-pill::before {
    content:
        "";

    width:
        3px;

    height:
        7px;

    border-radius:
        999px;

    background:
        #fff;

    animation:
        sm27Scroll 1.7s ease-in-out infinite;
}


@keyframes sm27Scroll {

    0%,
    100% {
        transform:
            translateY(0);

        opacity:
            .35;
    }

    50% {
        transform:
            translateY(7px);

        opacity:
            1;
    }

}






.sm27-info-wrap {
    position:
        relative;

    z-index:
        8;

    margin-top:
        -46px;
}


.sm27-info-grid {
    display:
        grid;

    grid-template-columns:
        minmax(0,1.22fr) minmax(0,.89fr) minmax(0,.89fr);

    gap:
        14px;

    padding:
        12px;

    border:
        1px solid
        rgba(255,255,255,.84);

    border-radius:
        27px;

    background:
        rgba(248,248,250,.73);

    box-shadow:
        0 26px 65px rgba(12,14,18,.13),
        inset 0 1px 0 rgba(255,255,255,.96);

    backdrop-filter:
        blur(28px)
        saturate(140%);

    -webkit-backdrop-filter:
        blur(28px)
        saturate(140%);
}


.sm27-info-card {
    min-height:
        176px;

    min-width:
        0;

    display:
        flex;

    flex-direction:
        column;

    overflow-wrap:
        anywhere;

    color:
        inherit !important;

    text-decoration:
        none !important;

    cursor:
        pointer;

    padding:
        22px 24px;

    border:
        1px solid
        rgba(255,255,255,.75);

    border-radius:
        19px;

    background:
        rgba(255,255,255,.58);

    box-shadow:
        inset 0 1px 0
        rgba(255,255,255,.76);

    transition:
        transform .45s var(--sm-ease),
        box-shadow .45s var(--sm-ease),
        background .45s var(--sm-ease);
}


.sm27-info-card.is-red {
    color:
        #fff;

    background:
        linear-gradient(
            145deg,
            #8f2430,
            #68131d
        );

    border-color:
        rgba(255,255,255,.12);

    box-shadow:
        0 14px 31px
        rgba(90,11,20,.18);
}


.sm27-info-card:focus-visible {
    outline:
        3px solid rgba(134,31,42,.28);

    outline-offset:
        3px;
}

.sm27-info-card:hover {
    transform:
        translateY(-5px);

    box-shadow:
        0 18px 38px
        rgba(15,18,24,.10);
}


.sm27-info-card.is-red:hover {
    box-shadow:
        0 19px 38px
        rgba(90,11,20,.23);
}


.sm27-info-top {
    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        10px;

    margin-bottom:
        12px;
}


.sm27-info-label {
    color:
        #626771;

    font-size:
        12px;

    line-height:
        1.45;

    font-weight:
        850;

    letter-spacing:
        .06em;

    text-transform:
        uppercase;
}


.sm27-info-card.is-red
.sm27-info-label {
    color:
        rgba(255,255,255,.84);
}


.sm27-info-icon {
    width:
        34px;

    height:
        34px;

    flex:
        0 0 34px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    border-radius:
        11px;

    color:
        var(--sm-red);

    background:
        rgba(134,31,42,.075);

    font-size:
        13px;
}


.sm27-info-card.is-red
.sm27-info-icon {
    color:
        #fff;

    background:
        rgba(255,255,255,.12);
}


.sm27-info-title {
    margin:
        0;

    color:
        var(--sm-ink);

    font-size:
        20px;

    font-weight:
        800;

    line-height:
        1.4;

    letter-spacing:
        -.02em;
}


.sm27-info-card.is-red
.sm27-info-title {
    color:
        #fff;
}


.sm27-info-meta {
    margin-top:
        6px;

    color:
        var(--sm-muted);

    font-size:
        15px;

    font-weight:
        500;

    line-height:
        1.6;
}


.sm27-info-card.is-red
.sm27-info-meta {
    color:
        rgba(255,255,255,.90);
}


.sm27-link {
    display:
        inline-flex;

    pointer-events:
        none;

    align-items:
        center;

    gap:
        6px;

    margin-top:
        auto;

    padding-top:
        10px;

    align-self:
        flex-start;

    color:
        var(--sm-red) !important;

    font-size:
        14px;

    line-height:
        1.5;

    font-weight:
        800;
}


.sm27-info-card.is-red
.sm27-link {
    color:
        #fff !important;
}


.sm27-link:hover {
    transform:
        translateX(3px);
}






.sm27-section {
    padding:
        122px 0;
}


.sm27-section-white {
    background:
        #fff;
}


.sm27-section-soft {
    background:
        radial-gradient(
            circle at 9% 12%,
            rgba(134,31,42,.06),
            transparent 20%
        ),

        linear-gradient(
            180deg,
            #f6f6f8 0%,
            #f1f1f3 100%
        );
}






.sm27-latest-news {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 88% 8%,
            rgba(90,23,37,.08),
            transparent 25%
        ),
        linear-gradient(
            180deg,
            #f8f3ec 0%,
            #f4eee6 100%
        );
}

.sm27-latest-news-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 34px;
}

.sm27-latest-news-copy {
    max-width: 560px;
    margin: 10px 0 0;
    color: #67635f;
    font-size: 13.5px;
    line-height: 1.75;
}

.sm27-latest-news-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    align-items: stretch;
    gap: 16px;
}

.sm27-latest-news-card {
    min-width: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.80);
    border-radius: 26px;
    background: rgba(255,255,255,.62);
    box-shadow:
        0 20px 58px rgba(37,34,31,.08),
        inset 0 1px 0 rgba(255,255,255,.92);
    backdrop-filter: blur(22px) saturate(135%);
    -webkit-backdrop-filter: blur(22px) saturate(135%);
    transition:
        transform .46s var(--sm-ease),
        box-shadow .46s var(--sm-ease),
        background .46s var(--sm-ease);
}

.sm27-latest-news-card:hover {
    transform: translateY(-7px);
    background: rgba(255,255,255,.78);
    box-shadow:
        0 28px 72px rgba(37,34,31,.12),
        inset 0 1px 0 rgba(255,255,255,.96);
}

.sm27-latest-news-media {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #ded4c7;
}

.sm27-latest-news-media::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(180deg, transparent 48%, rgba(37,34,31,.18));
}

.sm27-latest-news-media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .65s var(--sm-ease);
}

.sm27-latest-news-card:hover .sm27-latest-news-media img {
    transform: scale(1.045);
}

.sm27-latest-news-date {
    position: absolute;
    left: 14px;
    bottom: 14px;
    z-index: 2;
    min-height: 31px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 0 11px;
    border: 1px solid rgba(255,255,255,.58);
    border-radius: 999px;
    background: rgba(37,34,31,.54);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .04em;
    backdrop-filter: blur(14px) saturate(140%);
    -webkit-backdrop-filter: blur(14px) saturate(140%);
}

.sm27-latest-news-body {
    min-height: 196px;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    padding: 21px 21px 20px;
}

.sm27-latest-news-kicker {
    margin-bottom: 9px;
    color: var(--sm-red);
    font-size: 9.5px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.sm27-latest-news-card h3 {
    margin: 0;
    color: var(--sm-ink);
    font-size: 18px;
    font-weight: 820;
    line-height: 1.38;
    letter-spacing: -.025em;
    overflow-wrap: anywhere;
}

.sm27-latest-news-excerpt {
    margin: 11px 0 18px;
    color: #6e6964;
    font-size: 12.5px;
    line-height: 1.65;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.sm27-latest-news-link {
    margin-top: auto;
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 13px;
    border: 1px solid rgba(90,23,37,.08);
    border-radius: 14px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.26), rgba(255,255,255,.08)),
        rgba(90,23,37,.065);
    color: var(--sm-red) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.72),
        0 6px 18px rgba(37,34,31,.035);
    font-size: 12px;
    font-weight: 850;
    transition:
        transform .34s var(--sm-ease),
        background .34s ease,
        border-color .34s ease,
        box-shadow .34s ease,
        color .34s ease;
}

.sm27-latest-news-link:hover,
.sm27-latest-news-link:focus-visible {
    color: #fff !important;
    border-color: rgba(255,255,255,.22);
    background:
        linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.02)),
        var(--sm-red);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.24),
        0 10px 24px rgba(90,23,37,.18);
    transform: translateY(-2px);
}

.sm27-latest-news-link:focus-visible {
    outline: 2px solid rgba(90,23,37,.22);
    outline-offset: 3px;
}

.sm27-latest-news-empty {
    grid-column: 1 / -1;
    padding: 34px;
    border: 1px solid rgba(255,255,255,.82);
    border-radius: 24px;
    background: rgba(255,255,255,.58);
    color: #6c6762;
    text-align: center;
}

@media (max-width: 991px) {
    .sm27-latest-news-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .sm27-latest-news-card:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }
}

@media (max-width: 575px) {
    .sm27-latest-news-head {
        align-items: stretch;
        flex-direction: column;
        gap: 18px;
        margin-bottom: 24px;
    }

    .sm27-latest-news-grid {
        grid-template-columns: 1fr;
    }

    .sm27-latest-news-card:last-child:nth-child(odd) {
        grid-column: auto;
    }

    .sm27-latest-news-body {
        min-height: 0;
        padding: 18px;
    }

    .sm27-latest-news-card h3 {
        font-size: 17px;
    }
}






.sm27-about-grid {
    display:
        grid;

    grid-template-columns:
        minmax(0,.9fr)
        minmax(0,1.1fr);

    gap:
        78px;

    align-items:
        center;
}


.sm27-eyebrow {
    display:
        inline-flex;

    align-items:
        center;

    gap:
        7px;

    margin-bottom:
        13px;

    color:
        var(--sm-red);

    font-size:
        10px;

    font-weight:
        850;

    letter-spacing:
        .14em;

    text-transform:
        uppercase;
}


.sm27-section-title {
    margin:
        0 0 18px;

    color:
        var(--sm-ink);

    font-size:
        clamp(
            2.8rem,
            5.3vw,
            4.95rem
        );

    font-weight:
        820;

    line-height:
        .9;

    letter-spacing:
        -.068em;
}


.sm27-section-title span {
    color:
        var(--sm-red);
}


.sm27-section-copy {
    max-width:
        600px;

    margin:
        0 0 21px;

    color:
        #686d75;

    font-size:
        15px;

    line-height:
        1.82;
}


.sm27-quote {
    max-width:
        610px;

    margin:
        0 0 24px;

    padding-left:
        17px;

    border-left:
        3px solid
        var(--sm-red);

    color:
        #6c7077;

    font-size:
        14px;

    line-height:
        1.8;

    font-style:
        italic;
}


.sm27-light-link {
    min-height:
        44px;

    display:
        inline-flex;

    align-items:
        center;

    gap:
        7px;

    padding:
        0 15px;

    border:
        1px solid
        rgba(134,31,42,.14);

    border-radius:
        14px;

    background:
        rgba(134,31,42,.055);

    color:
        var(--sm-red) !important;

    font-size:
        11.5px;

    font-weight:
        800;
}


.sm27-light-link:hover {
    color:
        #fff !important;

    background:
        var(--sm-red);

    transform:
        translateY(-2px);
}


.sm27-about-visual {
    position:
        relative;

    min-height:
        550px;
}


.sm27-about-visual-main {
    width:
        100%;

    height:
        550px;

    position:
        relative;

    overflow:
        hidden;

    border:
        1px solid
        rgba(0,0,0,.05);

    border-radius:
        34px;

    background:
        #ddd;

    box-shadow:
        var(--sm-shadow);
}


.sm27-about-visual-main::after {
    content:
        "";

    position:
        absolute;

    inset:
        0;

    border-radius:
        inherit;

    background:
        linear-gradient(
            180deg,
            transparent 48%,
            rgba(0,0,0,.34) 100%
        );

    pointer-events:
        none;
}


.sm27-about-visual-main img {
    width:
        100%;

    height:
        100%;

    display:
        block;

    object-fit:
        cover;

    transition:
        transform 1s var(--sm-ease);
}


.sm27-about-visual:hover
.sm27-about-visual-main img {
    transform:
        scale(1.035);
}


.sm27-about-label {
    position:
        absolute;

    left:
        18px;

    bottom:
        18px;

    z-index:
        2;

    display:
        inline-flex;

    align-items:
        center;

    gap:
        8px;

    min-height:
        43px;

    padding:
        0 13px;

    border:
        1px solid
        rgba(255,255,255,.30);

    border-radius:
        13px;

    background:
        rgba(255,255,255,.13);

    color:
        #fff;

    font-size:
        11px;

    font-weight:
        800;

    backdrop-filter:
        blur(15px);

    -webkit-backdrop-filter:
        blur(15px);
}


.sm27-about-orbit {
    position:
        absolute;

    right:
        -19px;

    top:
        36px;

    z-index:
        3;

    width:
        162px;

    padding:
        15px;

    border:
        1px solid
        rgba(255,255,255,.76);

    border-radius:
        21px;

    background:
        rgba(255,255,255,.73);

    box-shadow:
        0 20px 42px
        rgba(18,20,24,.12);

    backdrop-filter:
        blur(22px)
        saturate(135%);

    -webkit-backdrop-filter:
        blur(22px)
        saturate(135%);
}


.sm27-about-orbit small {
    display:
        block;

    color:
        #7f838a;

    font-size:
        8px;

    font-weight:
        850;

    letter-spacing:
        .10em;

    text-transform:
        uppercase;
}


.sm27-about-orbit strong {
    display:
        block;

    margin-top:
        5px;

    color:
        var(--sm-red);

    font-size:
        22px;

    font-weight:
        830;

    line-height:
        1;

    letter-spacing:
        -.04em;
}






.sm27-news-head {
    display:
        flex;

    align-items:
        flex-end;

    justify-content:
        space-between;

    gap:
        28px;

    margin-bottom:
        35px;
}




.sm27-home .sm27-news-title {
    display:
        block;

    margin:
        0;

    padding:
        0;

    color:
        #111318 !important;

    -webkit-text-fill-color:
        #111318 !important;

    opacity:
        1 !important;

    filter:
        none !important;

    mix-blend-mode:
        normal !important;

    font-size:
        clamp(
            2.7rem,
            5vw,
            4.5rem
        );

    font-weight:
        820;

    line-height:
        .91;

    letter-spacing:
        -.068em;
}


/*
   KATA "PENGUMUMAN"
 */

.sm27-home .sm27-news-title-main {
    display:
        inline;

    color:
        #111318 !important;

    -webkit-text-fill-color:
        #111318 !important;

    opacity:
        1 !important;

    visibility:
        visible !important;

    filter:
        none !important;
}


/*
   KATA "TERBARU."
 */

.sm27-home .sm27-news-title-accent {
    display:
        inline;

    color:
        #5A1725 !important;

    -webkit-text-fill-color:
        #5A1725 !important;

    opacity:
        1 !important;

    visibility:
        visible !important;

    filter:
        none !important;
}


.sm27-news-lead {
    max-width:
        510px;

    margin:
        10px 0 0;

    color:
        var(--sm-muted);

    font-size:
        13px;

    line-height:
        1.78;
}


.sm27-news-all {
    flex:
        0 0 auto;

    min-height:
        44px;

    display:
        inline-flex;

    align-items:
        center;

    gap:
        7px;

    padding:
        0 16px;

    border:
        1px solid
        rgba(134,31,42,.13);

    border-radius:
        14px;

    background:
        rgba(255,255,255,.76);

    color:
        var(--sm-red) !important;

    font-size:
        11.5px;

    font-weight:
        800;

    box-shadow:
        inset 0 1px 0
        rgba(255,255,255,.92);

    backdrop-filter:
        blur(15px)
        saturate(125%);

    -webkit-backdrop-filter:
        blur(15px)
        saturate(125%);
}


.sm27-news-all:hover {
    color:
        #fff !important;

    background:
        var(--sm-red);

    transform:
        translateY(-2px);
}


.sm27-news-grid {
    display:
        grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        );

    gap:
        14px;
}


.sm27-news-card {
    min-height:
        305px;

    display:
        flex;

    flex-direction:
        column;

    padding:
        24px;

    border:
        1px solid
        rgba(255,255,255,.84);

    border-radius:
        24px;

    background:
        rgba(255,255,255,.67);

    box-shadow:
        var(--sm-shadow-soft),
        inset 0 1px 0
        rgba(255,255,255,.94);

    backdrop-filter:
        blur(20px)
        saturate(135%);

    -webkit-backdrop-filter:
        blur(20px)
        saturate(135%);

    transition:
        transform .48s var(--sm-ease),
        box-shadow .48s var(--sm-ease),
        background .48s var(--sm-ease);
}


.sm27-news-card:hover {
    transform:
        translateY(-7px);

    box-shadow:
        0 27px 65px rgba(20,22,26,.11),
        inset 0 1px 0
        rgba(255,255,255,.96);

    background:
        rgba(255,255,255,.80);
}


.sm27-news-date {
    color:
        var(--sm-red);

    font-size:
        12px;

    font-weight:
        850;

    letter-spacing:
        .08em;

    text-transform:
        uppercase;
}


.sm27-news-card h3 {
    margin:
        18px 0 22px;

    color:
        #282b30;

    font-size:
        19px;

    font-weight:
        790;

    line-height:
        1.54;

    overflow-wrap:
        anywhere;
}


.sm27-news-card-footer {
    margin-top:
        auto;
}


.sm27-news-link {
    min-height:
        40px;

    display:
        inline-flex;

    align-items:
        center;

    gap:
        7px;

    padding:
        0 13px;

    border-radius:
        12px;

    background:
        rgba(134,31,42,.065);

    color:
        var(--sm-red) !important;

    font-size:
        14px;

    font-weight:
        800;
}


.sm27-news-link:hover {
    color:
        #fff !important;

    background:
        var(--sm-red);

    transform:
        translateY(-2px);
}


.sm27-empty {
    grid-column:
        1 / -1;

    min-height:
        190px;

    display:
        grid;

    place-items:
        center;

    padding:
        40px;

    border:
        1px solid
        rgba(255,255,255,.82);

    border-radius:
        23px;

    background:
        rgba(255,255,255,.72);

    color:
        var(--sm-muted);

    text-align:
        center;

    box-shadow:
        var(--sm-shadow-soft);
}


.sm27-empty i {
    display:
        block;

    margin-bottom:
        9px;

    color:
        var(--sm-red);

    font-size:
        22px;
}






.sm27-mass {
    position:
        relative;

    overflow:
        hidden;

    padding:
        104px 0;

    background:
        #15171a;

    border-radius:
        42px 42px 0 0;

    isolation:
        isolate;
}


.sm27-mass-bg::before {
    content:
        "";

    position:
        absolute;

    inset:
        0;

    background:
        radial-gradient(
            circle at 76% 17%,
            rgba(255,255,255,.09),
            transparent 22%
        ),

        radial-gradient(
            circle at 22% 88%,
            rgba(255,255,255,.035),
            transparent 27%
        );
}


.sm27-mass-bg::after {
    content:
        "";

    position:
        absolute;

    inset:
        0;

    background:
        linear-gradient(
            90deg,
            rgba(8,9,11,.55),
            transparent 52%,
            rgba(8,9,11,.28)
        ),

        linear-gradient(
            180deg,
            transparent 0%,
            rgba(8,9,11,.18) 100%
        );
}


.sm27-mass-content {
    position:
        relative;

    z-index:
        2;
}


.sm27-mass-panel {
    position:
        relative;

    overflow:
        hidden;

    padding:
        38px;

    border:
        1px solid
        rgba(255,255,255,.14);

    border-radius:
        30px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.09),
            rgba(255,255,255,.045)
        );

    box-shadow:
        0 30px 90px rgba(0,0,0,.26),
        inset 0 1px 0
        rgba(255,255,255,.12);

    backdrop-filter:
        blur(28px)
        saturate(120%);

    -webkit-backdrop-filter:
        blur(28px)
        saturate(120%);
}


.sm27-mass-panel::before {
    content:
        "";

    position:
        absolute;

    top:
        0;

    left:
        38px;

    right:
        38px;

    height:
        2px;

    border-radius:
        999px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(216,90,101,.85),
            transparent
        );

    opacity:
        .72;

    pointer-events:
        none;
}


.sm27-mass-eyebrow {
    display:
        inline-flex;

    align-items:
        center;

    gap:
        8px;

    color:
        rgba(255,255,255,.66);

    font-size:
        9px;

    font-weight:
        850;

    letter-spacing:
        .14em;

    text-transform:
        uppercase;
}


.sm27-mass-eyebrow::before {
    content:
        "";

    width:
        5px;

    height:
        5px;

    flex:
        0 0 5px;

    border-radius:
        50%;

    background:
        #d85a65;

    box-shadow:
        0 0 0 4px
        rgba(216,90,101,.10);
}


.sm27-mass-title {
    margin:
        9px 0 13px;

    color:
        #fff;

    font-size:
        clamp(
            3rem,
            5.9vw,
            5rem
        );

    font-weight:
        820;

    line-height:
        .92;

    letter-spacing:
        -.068em;
}


.sm27-mass-copy {
    max-width:
        700px;

    margin:
        0 0 28px;

    color:
        rgba(255,255,255,.72);

    font-size:
        14px;

    line-height:
        1.82;
}


.sm27-mass-copy strong {
    color:
        rgba(255,255,255,.94);

    font-weight:
        700;
}


.sm27-mass-grid {
    display:
        grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0,1fr)
        );

    gap:
        10px;
}


.sm27-mass-item {
    position:
        relative;

    min-height:
        73px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        14px;

    padding:
        15px 17px;

    border:
        1px solid
        rgba(255,255,255,.12);

    border-radius:
        17px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.075),
            rgba(255,255,255,.038)
        );

    color:
        #fff !important;

    box-shadow:
        inset 0 1px 0
        rgba(255,255,255,.07);

    backdrop-filter:
        blur(16px)
        saturate(115%);

    -webkit-backdrop-filter:
        blur(16px)
        saturate(115%);

    transition:
        transform .40s var(--sm-ease),
        background .40s var(--sm-ease),
        border-color .40s var(--sm-ease),
        box-shadow .40s var(--sm-ease);
}


.sm27-mass-item:hover {
    transform:
        translateY(-4px);

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.12),
            rgba(255,255,255,.055)
        );

    border-color:
        rgba(255,255,255,.20);

    box-shadow:
        0 16px 32px rgba(0,0,0,.16),
        inset 0 1px 0
        rgba(255,255,255,.10);
}


.sm27-mass-item-name {
    color:
        rgba(255,255,255,.96);

    font-size:
        15px;

    font-weight:
        800;
}


.sm27-mass-item-day {
    margin-top:
        3px;

    color:
        rgba(255,255,255,.78);

    font-size:
        13px;
}


.sm27-mass-item-time {
    display:
        inline-flex;

    align-items:
        center;

    gap:
        6px;

    color:
        rgba(255,255,255,.94);

    font-size:
        16px;

    font-weight:
        800;

    white-space:
        nowrap;
}


.sm27-mass-item-time i {
    color:
        #d85a65;
}






.sm27-home .sm27-reveal {
    opacity:
        1;

    transform:
        none;
}


.sm27-home.sm27-home-motion .sm27-reveal {
    opacity:
        0;

    transform:
        translateY(26px)
        scale(.988);

    transition:
        opacity .76s var(--sm-ease),
        transform .76s var(--sm-ease);
}


.sm27-home.sm27-home-motion
.sm27-reveal.is-visible {
    opacity:
        1;

    transform:
        none;
}


.sm27-home.sm27-home-motion
.sm27-reveal[data-delay="1"] {
    transition-delay:
        .06s;
}


.sm27-home.sm27-home-motion
.sm27-reveal[data-delay="2"] {
    transition-delay:
        .12s;
}


.sm27-home.sm27-home-motion
.sm27-reveal[data-delay="3"] {
    transition-delay:
        .18s;
}






@media (
    min-width:992px
)
and (
    hover:hover
)
and (
    pointer:fine
) {

    .sm27-home
    .sm27-info-card,

    .sm27-home
    .sm27-news-card,

    .sm27-home
    .sm27-mass-item {
        position:
            relative;
    }


    .sm27-home
    .sm27-info-card::after,

    .sm27-home
    .sm27-news-card::after,

    .sm27-home
    .sm27-mass-item::after {
        content:
            "";

        position:
            absolute;

        inset:
            0;

        border-radius:
            inherit;

        background:
            radial-gradient(
                circle at
                var(--mx,50%)
                var(--my,50%),
                rgba(255,255,255,.20),
                transparent 34%
            );

        opacity:
            0;

        pointer-events:
            none;

        transition:
            opacity .25s ease;
    }


    .sm27-home
    .sm27-info-card:hover::after,

    .sm27-home
    .sm27-news-card:hover::after,

    .sm27-home
    .sm27-mass-item:hover::after {
        opacity:
            1;
    }

}






@media (
    max-width:1080px
) {

    .sm27-info-grid {
        grid-template-columns:
            1fr 1fr;
    }


    .sm27-info-card:first-child {
        grid-column:
            1 / -1;
    }


    .sm27-about-grid {
        gap:
            50px;
    }


    .sm27-about-orbit {
        right:
            10px;
    }

}






@media (
    max-width:991px
) {

    .sm27-shell,
    .sm27-hero-content {
        width:
            min(
                calc(100% - 30px),
                760px
            );
    }


    .sm27-hero {
        min-height:
            max(
                720px,
                100svh
            );

        border-radius:
            0 0 28px 28px;
    }


    .sm27-hero-content {
        padding-bottom:
            49px;
    }


    .sm27-hero-title {
        font-size:
            clamp(
                3.2rem,
                10.5vw,
                4.9rem
            );

        line-height:
            .93;
    }


    .sm27-hero-description {
        font-size:
            14px;
    }


    .sm27-hero-scroll {
        display:
            none;
    }


    .sm27-info-grid {
        grid-template-columns:
            1fr;
    }


    .sm27-info-card:first-child {
        grid-column:
            auto;
    }


    .sm27-section,
    .sm27-mass {
        padding:
            78px 0;
    }


    .sm27-about-grid {
        grid-template-columns:
            1fr;
    }


    .sm27-about-visual,
    .sm27-about-visual-main {
        min-height:
            440px;

        height:
            440px;
    }


    .sm27-about-orbit {
        right:
            13px;

        top:
            18px;
    }


    .sm27-news-head {
        align-items:
            flex-start;

        flex-direction:
            column;
    }


    .sm27-news-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );
    }


    .sm27-news-all {
        width:
            100%;
    }


    .sm27-mass-panel {
        padding:
            28px 21px;
    }

}






@media (
    max-width:575px
) {

    .sm27-shell,
    .sm27-hero-content {
        width:
            calc(100% - 22px);
    }


    .sm27-hero {
        min-height:
            710px;

        border-radius:
            0 0 24px 24px;
    }


    .sm27-hero-content {
        padding-bottom:
            28px;
    }


    .sm27-hero-kicker {
        min-height:
            31px;

        padding:
            0 10px;

        font-size:
            8.5px;
    }


    .sm27-hero-title {
        margin-top:
            14px;

        font-size:
            clamp(
                2.72rem,
                12.8vw,
                3.7rem
            );

        line-height:
            .94;
    }


    .sm27-hero-description {
        margin:
            18px 0 21px;

        font-size:
            12.8px;
    }


    .sm27-actions {
        flex-direction:
            column;
    }


    .sm27-action {
        width:
            100%;

        min-height:
            48px;

        border-radius:
            16px;
    }


    .sm27-info-wrap {
        margin-top:
            -19px;
    }


    .sm27-info-grid {
        padding:
            9px;

        gap:
            10px;

        border-radius:
            22px;
    }


    .sm27-info-card {
        min-height:
            164px;

        padding:
            18px;

        border-radius:
            16px;
    }


    .sm27-info-title {
        font-size:
            18px;
    }


    .sm27-info-meta {
        font-size:
            14px;
    }


    .sm27-section,
    .sm27-mass {
        padding:
            69px 0;
    }


    .sm27-section-title,
    .sm27-news-title {
        font-size:
            2.5rem;
    }


    .sm27-section-copy,
    .sm27-quote {
        font-size:
            13px;
    }


    .sm27-light-link {
        width:
            100%;

        justify-content:
            center;
    }


    .sm27-about-visual,
    .sm27-about-visual-main {
        min-height:
            345px;

        height:
            345px;
    }


    .sm27-about-orbit {
        width:
            130px;

        padding:
            12px;

        border-radius:
            18px;
    }


    .sm27-about-orbit strong {
        font-size:
            19px;
    }


    .sm27-news-grid {
        grid-template-columns:
            1fr;
    }


    .sm27-news-card {
        min-height:
            245px;

        padding:
            20px;

        border-radius:
            20px;
    }


    .sm27-news-lead {
        font-size:
            12.5px;
    }


    .sm27-mass {
        border-radius:
            26px 26px 0 0;
    }


    .sm27-mass-panel {
        padding:
            22px 16px;

        border-radius:
            22px;
    }


    .sm27-mass-title {
        font-size:
            2.65rem;
    }


    .sm27-mass-copy {
        font-size:
            13px;
    }


    .sm27-mass-grid {
        grid-template-columns:
            1fr;
    }


    .sm27-mass-item {
        min-height:
            66px;
    }

}






@media (
    max-width:360px
) {

    .sm27-hero-title {
        font-size:
            2.36rem;
    }


    .sm27-hero-description {
        font-size:
            12.1px;
    }


    .sm27-news-title,
    .sm27-section-title {
        font-size:
            2.33rem;
    }

}






@media (
    prefers-reduced-motion: reduce
) {

    .sm27-home *,
    .sm27-home::before,
    .sm27-home::after {
        animation-duration:
            .01ms !important;

        animation-iteration-count:
            1 !important;

        transition-duration:
            .01ms !important;
    }


    .sm27-home.sm27-home-motion
    .sm27-reveal,

    .sm27-home.sm27-home-motion
    .sm27-reveal.is-visible {
        opacity:
            1;

        transform:
            none;
    }

}
