:root {
    /* GiveawaysZone brand palette — dark premium base + logo red accent */
    --gzx-mint: #f12d3d;
    --gzx-mint-dark: #d91f31;
    --gzx-violet: #ff5965;
}

.gzx-brand {
    flex: 0 0 auto;
    min-width: 0;
}

/* Final SVG brand asset used in the V2 header/footer. */
.gzx-brand:not(.gzx-brand--footer) {
    width: 360px;
    height: 62px;
    background: url('/assets/templates/basic/images/giveawayszone-logo.svg?v=20260930-8') left center / contain no-repeat;
}

.gzx-brand--footer {
    width: 390px;
    height: 68px;
    background: url('/assets/templates/basic/images/giveawayszone-logo.svg?v=20260930-8') left center / contain no-repeat;
}

.gzx-brand__logo {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: left center;
}

/* Compact authenticated header actions. */
.gzx-icon-action {
    position: relative;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 13px;
    background: rgba(255,255,255,.055);
    color: #fff !important;
    text-decoration: none;
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}
.gzx-icon-action:hover {
    transform: translateY(-1px);
    border-color: rgba(241,45,61,.58);
    background: rgba(241,45,61,.13);
}
.gzx-icon-action i { font-size: 21px; }
.gzx-icon-action--account {
    background: #fff;
    color: #09111f !important;
    border-color: #fff;
}
.gzx-icon-action--account:hover {
    background: #f12d3d;
    color: #fff !important;
    border-color: #f12d3d;
}
.gzx-action-badge {
    position: absolute;
    top: -6px;
    right: -5px;
    min-width: 19px;
    height: 19px;
    padding: 0 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #08101d;
    border-radius: 999px;
    background: #f12d3d;
    color: #fff;
    font: 800 10px/1 'DM Sans', sans-serif;
}

.gzx-menu-account-link { display: none; }
.gzx-menu-logout-form { display: none; margin: 0; }
.gzx-menu-account-link i {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    border-radius: 11px;
    background: rgba(241,45,61,.12);
    color: #ff5965;
    font-size: 21px;
    line-height: 1;
}
.gzx-menu-account-link.is-active i {
    background: #f12d3d;
    color: #fff;
}
.gzx-menu-account-link--logout i {
    background: rgba(241,45,61,.08);
    color: #ff5965;
}
.gzx-menu-notification-count {
    min-width: 18px;
    height: 18px;
    margin-left: auto;
    padding: 0 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #f12d3d;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
}

/* Replace the remaining V2 mint/violet visual accents with the logo red. */
.gzx-btn--mint {
    background: #f12d3d !important;
    color: #fff !important;
    box-shadow: 0 14px 38px rgba(241,45,61,.24) !important;
}
.gzx-btn--mint:hover { background: #d91f31 !important; }
.gzx-menu a.is-active::after { background: #f12d3d !important; }
.gzx-pill span {
    background: #f12d3d !important;
    box-shadow: 0 0 0 5px rgba(241,45,61,.12) !important;
}
.gzx-hero h1 em,
.gzx-catalog-hero h1 em { color: #f12d3d !important; }
.gzx-live-badge,
.gzx-card__tag {
    background: #f12d3d !important;
    color: #fff !important;
}
.gzx-feature-wrap::before { border-color: rgba(241,45,61,.28) !important; }
.gzx-hero__glow--one {
    background: radial-gradient(circle, rgba(241,45,61,.24), transparent 68%) !important;
}
.gzx-hero__glow--two {
    background: radial-gradient(circle, rgba(241,45,61,.15), transparent 68%) !important;
}
.gzx-strip i,
.gzx-card__topline span:first-child { color: #f12d3d !important; }
.gzx-text-link:hover { color: #d91f31 !important; }

@media (max-width: 1180px) {
    .gzx-brand:not(.gzx-brand--footer) {
        width: 300px;
        height: 54px;
    }
}

@media (max-width: 1080px) {
    .gzx-menu-account-link {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 13px;
        min-height: 66px;
        width: 100%;
        font-size: 18px;
        font-weight: 700;
        line-height: 1.15;
    }

    .gzx-menu-account-link i {
        margin: 0 !important;
    }

    .gzx-menu-account-label {
        display: inline-flex;
        align-items: center;
        min-height: 38px;
        line-height: 1.15;
    }

    .gzx-menu-logout-form {
        display: block !important;
        width: 100%;
        margin: 0 !important;
        padding: 0 !important;
        border-bottom: 1px solid rgba(255,255,255,.07);
    }

    .gzx-menu .gzx-menu-logout-form .gzx-menu-account-link--logout {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 13px !important;
        width: 100% !important;
        min-height: 66px !important;
        margin: 0 !important;
        padding: 12px 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        outline: 0 !important;
        background: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        color: #fff !important;
        text-align: left !important;
        font-family: 'DM Sans', sans-serif !important;
        font-size: 18px !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
        appearance: none !important;
        -webkit-appearance: none !important;
        cursor: pointer;
    }

    .gzx-menu .gzx-menu-logout-form .gzx-menu-account-link--logout:hover,
    .gzx-menu .gzx-menu-logout-form .gzx-menu-account-link--logout:focus {
        background: transparent !important;
        color: #fff !important;
        box-shadow: none !important;
    }
}

/* v2.css intentionally hid Log in below 820px. Keep login available on mobile. */
@media (max-width: 820px) {
    .gzx-nav__actions .gzx-login {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        min-height: 38px;
        padding: 8px 11px;
        border: 1px solid rgba(255,255,255,.22);
        border-radius: 11px;
        color: #fff;
        white-space: nowrap;
    }

    .gzx-brand:not(.gzx-brand--footer) {
        width: 245px;
        height: 48px;
    }
}

@media (max-width: 620px) {
    .gzx-shell {
        width: min(100% - 24px, 1240px);
    }

    .gzx-nav {
        grid-template-columns: minmax(0, 1fr) auto auto;
        gap: 6px;
    }

    .gzx-brand:not(.gzx-brand--footer) {
        width: clamp(166px, 47vw, 190px);
        height: 44px;
    }

    .gzx-nav__actions {
        gap: 5px;
    }

    .gzx-nav__actions .gzx-register-cta {
        display: none;
    }

    .gzx-nav__actions .gzx-login {
        min-height: 36px;
        padding: 7px 9px;
        font-size: 12px;
    }

    .gzx-icon-action {
        width: 39px;
        height: 39px;
        flex-basis: 39px;
        border-radius: 11px;
    }
    .gzx-icon-action i { font-size: 20px; }

    /* Notifications remain accessible from the hamburger/account navigation on phones. */
    .gzx-icon-action--notifications { display: none; }

    .gzx-menu-account-link,
    .gzx-menu .gzx-menu-logout-form .gzx-menu-account-link--logout {
        gap: 13px !important;
        min-height: 68px !important;
        font-size: 18px !important;
    }

    .gzx-menu-account-link i,
    .gzx-menu .gzx-menu-logout-form .gzx-menu-account-link--logout i {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
        font-size: 21px;
        border-radius: 11px;
    }

    .gzx-menu-account-label {
        min-height: 38px;
    }

    .gzx-brand--footer {
        width: min(310px, 82vw);
        height: 54px;
    }
}

@media (max-width: 390px) {
    .gzx-brand:not(.gzx-brand--footer) {
        width: clamp(154px, 43vw, 168px);
        height: 42px;
    }
    .gzx-icon-action {
        width: 37px;
        height: 37px;
        flex-basis: 37px;
    }
}

@media (max-width: 360px) {
    .gzx-brand:not(.gzx-brand--footer) {
        width: 146px;
        height: 40px;
    }

    .gzx-nav__actions .gzx-login {
        padding-inline: 7px;
        font-size: 11px;
    }
}
