.elementor-kit-16{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-16 button,.elementor-kit-16 input[type="button"],.elementor-kit-16 input[type="submit"],.elementor-kit-16 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );border-radius:100px 100px 100px 100px;}.elementor-kit-16 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--container-default-padding-top:24px;--container-default-padding-right:24px;--container-default-padding-bottom:24px;--container-default-padding-left:24px;}.elementor-widget:not(:last-child){--kit-widget-spacing:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================================
   01 — SECTION 02 PIN
   ========================================================= */

.sm-s02-pin {
    position: sticky !important;

    top: 120px !important;

    width: 100% !important;

    height: calc(100vh - 120px) !important;
    min-height: calc(100vh - 120px) !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;

    background: #0E0D0B !important;

    z-index: 1 !important;
}


/* =========================================================
   SECTION 02 SCROLL LENGTH
   ========================================================= */

.sm-s02 {
    position: relative !important;

    width: 100% !important;

    height: 500vh !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: visible !important;

    background: #0E0D0B !important;
}


/* =========================================================
   02 — MOVING BACKGROUND FEED
   DO NOT CHANGE
   ========================================================= */

.sm-s02-feed {
    position: absolute !important;

    inset: 0 !important;

    z-index: 1 !important;

    display: flex !important;

    flex-direction: column !important;

    justify-content: space-around !important;

    width: 100% !important;
    height: 100% !important;

    overflow: hidden !important;

    opacity: 1 !important;

    pointer-events: none !important;
}


/* =========================================================
   BACKGROUND ROWS
   ========================================================= */

.sm-s02-row {
    position: relative !important;

    width: 100% !important;

    overflow: hidden !important;

    white-space: nowrap !important;
}


/* =========================================================
   BACKGROUND ROW TRACK
   ========================================================= */

.sm-s02-row-track {
    display: flex !important;

    align-items: center !important;

    width: max-content !important;

    min-width: max-content !important;

    will-change: transform;
}


/* =========================================================
   BACKGROUND ROW SET
   ========================================================= */

.sm-s02-row-set {
    display: flex !important;

    align-items: center !important;

    flex: 0 0 auto !important;

    gap: clamp(4rem, 8vw, 10rem) !important;

    padding-right: clamp(4rem, 8vw, 10rem) !important;
}


/* =========================================================
   BACKGROUND TEXT
   ========================================================= */

.sm-s02-row-track span {
    display: inline-block !important;

    flex: 0 0 auto !important;

    font-family: "Schibsted Grotesk", sans-serif !important;

    font-size: clamp(5rem, 11vw, 13rem) !important;

    font-weight: 700 !important;

    line-height: 0.82 !important;

    letter-spacing: -0.055em !important;

    color: #1C1A18 !important;
}


/* =========================================================
   ROW HIERARCHY
   ========================================================= */

.sm-s02-row-1 .sm-s02-row-track span {
    font-size: clamp(5.5rem, 12vw, 14rem) !important;
}

.sm-s02-row-2 .sm-s02-row-track span {
    font-size: clamp(3.8rem, 8vw, 10rem) !important;
}

.sm-s02-row-3 .sm-s02-row-track span {
    font-size: clamp(4.8rem, 10vw, 12rem) !important;
}


/* =========================================================
   03 — DIM LAYER
   ========================================================= */

.sm-s02-dim {
    position: absolute !important;

    inset: 0 !important;

    z-index: 2 !important;

    background: #0E0D0B !important;

    opacity: 0;

    pointer-events: none !important;
}

/* =========================================================
   SCROLL MEDIA — SECTION 02 STORY
   CLEAN STORY SYSTEM
   ========================================================= */


/* ---------------------------------------------------------
   STORY CONTAINER
   --------------------------------------------------------- */

.sm-s02 .sm-story {
    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    z-index: 20 !important;

    pointer-events: none !important;
}


/* ---------------------------------------------------------
   ALL STORY ELEMENTS
   Elementor controls:
   - font
   - font size
   - font weight
   - color
   --------------------------------------------------------- */

.sm-s02 .sm-story-label,
.sm-s02 .sm-story-line-1,
.sm-s02 .sm-story-line-2,
.sm-s02 .sm-stop-message {
    margin: 0 !important;
}


/* =========================================================
   01 — IDEA BEHIND THE SCROLL

   SMALL
   TOP LEFT
   ========================================================= */

.sm-s02 .sm-story-label {

    position: absolute !important;

    top: 8% !important;
    left: 5% !important;

    width: auto !important;

    z-index: 30 !important;
}


/* =========================================================
   02 — FIRST PHILOSOPHY LINE
   ========================================================= */

.sm-s02 .sm-story-line-1 {

    position: absolute !important;

    top: 43% !important;
    left: 50% !important;

    width: 92% !important;
    max-width: none !important;

    transform: translate(-50%, -50%) !important;

    text-align: center !important;

    z-index: 30 !important;
}


/* =========================================================
   03 — SECOND PHILOSOPHY LINE
   ========================================================= */

.sm-s02 .sm-story-line-2 {

    position: absolute !important;

    top: 54% !important;
    left: 50% !important;

    width: 92% !important;
    max-width: none !important;

    transform: translate(-50%, -50%) !important;

    text-align: center !important;

    z-index: 30 !important;
}


/* =========================================================
   REASON TO CARE

   The span was added in Elementor:

   <span class="sm-reason">reason to care</span>
   ========================================================= */

.sm-s02 .sm-reason {
    position: relative !important;
    display: inline-block !important;
    white-space: nowrap !important;
}


/* =========================================================
   ORANGE UNDERLINE

   Starts with ZERO width.
   GSAP will draw it.
   ========================================================= */

.sm-s02 .sm-reason::after {
    content: "" !important;

    position: absolute !important;

    left: 0 !important;
    right: auto !important;

    bottom: -0.10em !important;

    width: 100% !important;
    height: 3px !important;

    background: #FF4D00 !important;

    transform-origin: left center !important;

    transform: scaleX(
        var(--sm-underline-scale, 0)
    ) !important;

    opacity: var(
        --sm-underline-opacity,
        0
    ) !important;

    pointer-events: none !important;

    transition: none !important;
}


/* =========================================================
   04 — FINAL MESSAGE
   ========================================================= */

.sm-s02 .sm-stop-message {

    position: absolute !important;

    top: 50% !important;
    left: 50% !important;

    width: 92% !important;
    max-width: none !important;

    transform: translate(-50%, -50%) !important;

    text-align: center !important;

    z-index: 31 !important;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .sm-s02 .sm-story-label {
        top: 2% !important;
        left: 7% !important;
    }

    .sm-s02 .sm-story-line-1 {
        top: 42% !important;
        width: 90% !important;
    }

    .sm-s02 .sm-story-line-2 {
        top: 60% !important;
        width: 90% !important;
    }

    .sm-s02 .sm-stop-message {
        width: 90% !important;
    }

    .sm-s02 .sm-reason::after {
        height: 2px !important;
    }

}

/* =========================================
   SCROLL MEDIA — CUSTOM CURSOR
   ========================================= */

.sm-cursor {
    position: fixed;
    top: 0;
    left: 0;
    width: 24px;
    height: 24px;
    pointer-events: none;
    z-index: 999999;
    transform: translate3d(-50%, -50%, 0);
    opacity: 0;
}

/* Small center dot */
.sm-cursor__dot {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #FF4B2B;
    transform: translate(-50%, -50%);
}

/* Outer ring */
.sm-cursor__ring {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 35px;
    height: 35px;
    border: 1px solid rgba(255, 75, 43, 0.75);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        width 0.35s cubic-bezier(.16, 1, .3, 1),
        height 0.35s cubic-bezier(.16, 1, .3, 1),
        background 0.35s ease,
        border-color 0.35s ease;
}

/* Text inside expanded cursor */
.sm-cursor__label {
    font-family: "IBM Plex Mono", monospace;
    font-size: 8px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #0E0D0B;
    opacity: 0;
    transform: scale(0.7);

    transition:
        opacity 0.25s ease,
        transform 0.35s cubic-bezier(.16, 1, .3, 1);
}

/* =========================================
   MOBILE / TABLET
   ========================================= */

@media (hover: none), (pointer: coarse) {
    .sm-cursor {
        display: none !important;
    }
}



/* =====================================================
   SCROLL MEDIA — RED PANDA
   HERO SECTION VERSION
===================================================== */


/* =========================================
   RED PANDA CONTAINER
========================================= */

#scroll-redpanda {

    /* No longer fixed to the browser */

    position: relative;

    width: 100%;

    max-width: 420px;

    aspect-ratio: 1 / 1;

    margin: 0 auto;

    display: flex;

    align-items: center;

    justify-content: center;

    z-index: 10;

    pointer-events: auto;

    cursor: pointer;

    user-select: none;

}


/* =========================================
   RED PANDA SPRITE
========================================= */

#scroll-redpanda .redpanda-sprite {

    width: 100%;

    height: 100%;

    background-repeat: no-repeat;

    background-size: 300% 300%;

    background-position: 50% 50%;

    will-change: background-position;

    transition: transform 0.25s ease;

}


/* =========================================
   HOVER EFFECT
========================================= */

#scroll-redpanda:hover .redpanda-sprite {

    transform: translateY(-6px);

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    #scroll-redpanda {

        max-width: 320px;

    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    #scroll-redpanda {

        max-width: 260px;

        margin: 20px auto 0;

    }

}/* End custom CSS */