.seop-logo-lockup {
    display: flex;
    align-items: center;
    gap: 12px;
}

.seop-logo-lockup > strong {
    color: #fff;
    font-size: 17px;
    font-weight: 900;
    letter-spacing: .08em;
    white-space: nowrap;
}

.seop-auth-intro .seop-logo-lockup {
    width: max-content;
    margin-bottom: 18px;
}

.seop-auth-intro .seop-auth-logo { margin-bottom: 0; }
.seop-admin-brand .seop-logo-lockup,
.seop-portal-logo .seop-logo-lockup { margin-bottom: 8px; }

.seop-document header > div:first-child:before {
    background-image: url("https://portal.stitchexpo.com/wp-content/uploads/2026/08/STITCH-EXPO.png") !important;
}

.seop-menu-toggle {
    display: none;
    appearance: none;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 10px;
    background: rgba(255,255,255,.06);
    color: #fff;
    cursor: pointer;
}

.seop-menu-toggle span {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 2px;
    background: #fff;
    transition: transform .2s ease, opacity .2s ease;
}

.seop-menu-toggle b { font-size: 11px; font-weight: 800; }

@media (max-width: 980px) {
    .seop-portal > aside,
    .seop-admin-portal > aside { position: relative; }

    .seop-portal-logo,
    .seop-admin-brand { max-width: calc(100% - 62px); margin-bottom: 0 !important; }

    .seop-logo-lockup { gap: 9px; }
    .seop-logo-lockup > strong { font-size: 14px; }

    .seop-menu-toggle {
        position: absolute;
        z-index: 20;
        top: 18px;
        right: 16px;
        display: grid;
        grid-template-columns: 22px auto;
        grid-template-rows: repeat(3,2px);
        align-items: center;
        gap: 4px 7px;
        min-width: 50px;
        min-height: 45px;
        padding: 9px 10px;
    }

    .seop-menu-toggle span { grid-column: 1; }
    .seop-menu-toggle b { grid-column: 2; grid-row: 1 / 4; }

    .seop-portal > aside > nav,
    .seop-admin-portal > aside > nav,
    .seop-portal > aside > .seop-contact,
    .seop-portal > aside > .seop-logout { display: none !important; }

    .seop-portal > aside.seop-menu-open > nav,
    .seop-admin-portal > aside.seop-menu-open > nav { display: grid !important; width: 100%; margin-top: 17px; overflow: visible !important; }

    .seop-portal > aside.seop-menu-open > .seop-contact { display: grid !important; grid-template-columns: 1fr !important; }
    .seop-portal > aside.seop-menu-open > .seop-logout { display: block !important; }

    .seop-portal > aside.seop-menu-open nav a,
    .seop-admin-portal > aside.seop-menu-open nav a { width: 100%; white-space: normal; }

    .seop-menu-open .seop-menu-toggle span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
    .seop-menu-open .seop-menu-toggle span:nth-child(2) { opacity: 0; }
    .seop-menu-open .seop-menu-toggle span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
}

@media (max-width: 480px) {
    .seop-logo-lockup > strong { font-size: 13px; letter-spacing: .05em; }
    .seop-menu-toggle b { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
    .seop-menu-toggle { grid-template-columns: 22px; min-width: 44px; }
}
