
.tsls-wrap {
    position: relative;
    z-index: 100;
    display: flex;
    justify-content: center;
    width: 100%;
    pointer-events: none;
}

.tsls-wrap.tsls-is-sticky {
    position: sticky;
    top: var(--tsls-sticky-top, 10px);
}

.tsls-stage {
    position: relative;
    width: var(--tsls-full-width, 220px);
    min-height: 1px;
    transition: width 280ms ease;
}

.tsls-full-logo {
    display: block;
    width: 100%;
    height: auto;
    opacity: 1;
    transform: scale(1);
    transform-origin: top center;
    transition: opacity 220ms ease, transform 280ms ease;
}

.tsls-compact-logo {
    position: absolute;
    top: 0;
    left: 50%;
    width: var(--tsls-compact-size, 70px);
    height: var(--tsls-compact-size, 70px);
    opacity: 0;
    transform: translateX(-50%) scale(.88);
    transform-origin: top center;
    transition: opacity 220ms ease, transform 280ms ease;
}

.tsls-wrap.tsls-compact .tsls-stage {
    width: var(--tsls-compact-size, 70px);
}

.tsls-wrap.tsls-compact .tsls-full-logo {
    opacity: 0;
    transform: scale(.88);
}

.tsls-wrap.tsls-compact .tsls-compact-logo {
    opacity: 1;
    transform: translateX(-50%) scale(1);
}

.tsls-pot {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.tsls-bar {
    position: absolute;
    top: 81.5%;
    transform: translateY(-50%);
    transform-origin: center;
    display: block;
    min-height: 4%;
    will-change: height;
}

.tsls-bar-1 {
    left: 36.35%;
    width: 3.76%;
    height: 16%;
    background: #7a4c3f;
}

.tsls-bar-2 {
    left: 42%;
    width: 3.76%;
    height: 20%;
    background: #a66d52;
}

.tsls-bar-3 {
    left: 48%;
    width: 3.45%;
    height: 33%;
    background: #9a5d46;
}

.tsls-bar-4 {
    left: 53.6%;
    width: 3.76%;
    height: 21%;
    background: #c48963;
}

.tsls-bar-5 {
    left: 59.25%;
    width: 3.45%;
    height: 13%;
    background: #d49b74;
}

@media (prefers-reduced-motion: reduce) {
    .tsls-stage,
    .tsls-full-logo,
    .tsls-compact-logo {
        transition: none;
    }
}
