/*
 * Homepage-only premium skin.
 *
 * Keep this file scoped to .home-premium-page. The homepage has several
 * server-rendered and AJAX-rendered features whose selectors are also used by
 * other front-end pages; the body scope prevents this visual refresh from
 * changing those surfaces.
 */

body.site-app.home-premium-page {
    --premium-bg: #101a33;
    --premium-surface: #172642;
    --premium-surface-low: #203253;
    --premium-card: rgba(43, 57, 91, 0.64);
    --premium-card-strong: rgba(20, 34, 60, 0.9);
    --premium-text: #fef7ff;
    --premium-muted: #c4cede;
    --premium-accent: #ff9d45;
    --premium-accent-deep: #e87924;
    --patron-gold: #f6d88b;
    --patron-gold-deep: #c9963e;
    --premium-border: rgba(255, 255, 255, 0.1);
    --premium-border-strong: rgba(255, 255, 255, 0.18);
    --premium-shadow: 0 20px 50px -15px rgba(4, 11, 27, 0.42);

    --relaxed-bg: var(--premium-bg);
    --relaxed-surface: var(--premium-card-strong);
    --relaxed-surface-soft: var(--premium-surface-low);
    --relaxed-text: var(--premium-text);
    --relaxed-muted: var(--premium-muted);
    --relaxed-primary: var(--premium-accent);
    --relaxed-primary-dark: #ffb36f;
    --relaxed-accent: #5eead4;
    --relaxed-border: var(--premium-border);
    --relaxed-shadow: var(--premium-shadow);

    color: var(--premium-text);
    background:
        radial-gradient(circle at 8% 7%, rgba(111, 129, 190, 0.32) 0, transparent 32rem),
        radial-gradient(circle at 94% 17%, rgba(255, 178, 111, 0.14) 0, transparent 30rem),
        radial-gradient(circle at 48% 76%, rgba(58, 119, 164, 0.28) 0, transparent 36rem),
        var(--premium-bg);
    background-color: var(--premium-bg) !important;
}

body.home-premium-page::before,
body.home-premium-page::after {
    content: "";
    position: fixed;
    z-index: 0;
    width: min(34rem, 58vw);
    aspect-ratio: 1;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(10px);
    opacity: 0.38;
}

body.home-premium-page::before {
    top: 7rem;
    left: -18rem;
    background: radial-gradient(circle, rgba(78, 104, 176, 0.28), transparent 68%);
}

body.home-premium-page::after {
    right: -20rem;
    bottom: 6rem;
    background: radial-gradient(circle, rgba(255, 157, 69, 0.16), transparent 70%);
}

.home-premium-page .main-shell,
.home-premium-page .site-footer {
    position: relative;
    z-index: 2;
}

/* Glass navigation, without changing any authentication or dropdown markup. */
.home-premium-page .relaxed-navbar {
    border-bottom-color: rgba(255, 255, 255, 0.08);
    background: rgba(16, 27, 50, 0.9);
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(18px) saturate(1.15);
    -webkit-backdrop-filter: blur(18px) saturate(1.15);
}

.home-premium-page .relaxed-navbar .brand-title,
.home-premium-page .relaxed-navbar .navbar-brand,
.home-premium-page .relaxed-navbar .nav-link {
    color: rgba(254, 247, 255, 0.9);
}

.home-premium-page .relaxed-navbar .nav-link {
    padding-right: clamp(0.38rem, 0.65vw, 0.68rem) !important;
    padding-left: clamp(0.38rem, 0.65vw, 0.68rem) !important;
    font-size: clamp(0.78rem, 0.9vw, 0.9rem);
    white-space: nowrap;
}

.home-premium-page .relaxed-navbar .brand-logo {
    filter: drop-shadow(0 7px 16px rgba(0, 0, 0, 0.44));
}

.home-premium-page .relaxed-navbar .nav-link:hover,
.home-premium-page .relaxed-navbar .nav-link:focus,
.home-premium-page .relaxed-navbar .nav-link.show {
    color: #fff;
    background: rgba(255, 157, 69, 0.14);
}

.home-premium-page .relaxed-navbar .navbar-toggler {
    border-color: rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.06);
}

.home-premium-page .relaxed-navbar .navbar-toggler-icon {
    filter: invert(1) grayscale(1) brightness(1.8);
}

.home-premium-page .relaxed-navbar .dropdown-menu {
    color: var(--premium-text);
    border-color: var(--premium-border-strong);
    background: rgba(9, 20, 38, 0.96);
    box-shadow: var(--premium-shadow);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.home-premium-page .relaxed-navbar .dropdown-item {
    color: rgba(254, 247, 255, 0.84);
}

.home-premium-page .relaxed-navbar .dropdown-item:hover,
.home-premium-page .relaxed-navbar .dropdown-item:focus {
    color: #fff;
    background: rgba(255, 157, 69, 0.14);
}

/* Shared homepage typography and section rhythm. */
.home-premium-page .home-front-section,
.home-premium-page #features,
.home-premium-page .member-story-section.is-home-hero {
    position: relative;
    isolation: isolate;
}

.home-premium-page .home-front-section,
.home-premium-page #features {
    padding-top: clamp(3.6rem, 7vw, 6.5rem) !important;
    padding-bottom: clamp(3.6rem, 7vw, 6.5rem) !important;
}

.home-premium-page .home-front-section::before,
.home-premium-page #features::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    border-top: 1px solid rgba(255, 255, 255, 0.045);
}

.home-premium-page #guild-calendar::before,
.home-premium-page #home-official-news::before,
.home-premium-page #features::before {
    background:
        radial-gradient(circle at 85% 16%, rgba(255, 157, 69, 0.055), transparent 25rem),
        rgba(20, 34, 60, 0.56);
}

.home-premium-page #home-instagram-feed::before,
.home-premium-page #home-announcements::before,
.home-premium-page #mainland-news::before {
    background: rgba(18, 31, 56, 0.22);
}

.home-premium-page .section-kicker {
    color: var(--premium-accent);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.18em;
}

.home-premium-page .section-title {
    color: var(--premium-text);
    font-size: clamp(1.8rem, 3.6vw, 3rem);
    font-weight: 900;
    letter-spacing: -0.035em;
}

.home-premium-page .section-subtitle,
.home-premium-page .rule-text {
    color: var(--premium-muted);
}

.home-premium-page .home-front-section .section-head {
    padding-bottom: 1rem;
    border-bottom-color: rgba(255, 255, 255, 0.09);
}

.home-premium-page .btn-relaxed-primary {
    color: #fff;
    border-color: rgba(255, 182, 115, 0.54);
    background: linear-gradient(135deg, #ffb166 0%, var(--premium-accent) 48%, var(--premium-accent-deep) 100%);
    box-shadow: 0 14px 30px rgba(232, 121, 36, 0.26);
}

.home-premium-page .btn-relaxed-primary:hover,
.home-premium-page .btn-relaxed-primary:focus-visible {
    color: #fff;
    border-color: rgba(255, 211, 170, 0.72);
    background: linear-gradient(135deg, #ffc17f 0%, #ffa552 50%, #ec7f2b 100%);
    box-shadow: 0 18px 38px rgba(232, 121, 36, 0.34);
}

.home-premium-page .btn-relaxed-ghost {
    color: rgba(254, 247, 255, 0.88);
    border-color: rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.055);
    box-shadow: none;
}

.home-premium-page .btn-relaxed-ghost:hover,
.home-premium-page .btn-relaxed-ghost:focus-visible {
    color: #fff;
    border-color: rgba(255, 157, 69, 0.46);
    background: rgba(255, 157, 69, 0.12);
}

/* The member wall remains the first homepage block and keeps its data contract. */
.home-premium-page .member-story-section.is-home-hero {
    padding-top: clamp(1.5rem, 3.8vw, 3.2rem) !important;
    padding-bottom: clamp(3rem, 6vw, 5.6rem) !important;
}

.home-premium-page .member-story-section.is-home-hero::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(60% 58% at 18% 8%, rgba(70, 92, 160, 0.2), transparent 72%),
        radial-gradient(52% 48% at 88% 34%, rgba(255, 157, 69, 0.09), transparent 72%);
}

.home-premium-page .member-story-hero-intro {
    margin-bottom: clamp(1rem, 2vw, 1.5rem);
    border-color: rgba(255, 255, 255, 0.1);
    border-radius: clamp(1.35rem, 3vw, 2.25rem);
    background:
        radial-gradient(circle at 12% 0%, rgba(115, 137, 208, 0.15), transparent 34%),
        linear-gradient(135deg, rgba(30, 41, 59, 0.72), rgba(9, 20, 38, 0.88));
    box-shadow: var(--premium-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
}

.home-premium-page .member-story-hero-copy .hero-pill {
    color: #ffd4ad;
    border-color: rgba(255, 157, 69, 0.24);
    background: rgba(255, 157, 69, 0.09);
}

.home-premium-page .member-story-hero-copy .hero-title {
    color: var(--premium-text);
    font-size: clamp(2.15rem, 5.4vw, 5rem);
    font-weight: 900;
    letter-spacing: -0.055em;
    text-wrap: balance;
}

.home-premium-page .member-story-hero-copy .hero-subtitle {
    color: rgba(226, 232, 240, 0.78);
}

.home-premium-page .member-story-hero-note {
    color: var(--premium-muted);
}

.home-premium-page .member-story-hero-note .section-kicker {
    color: #ffb36f;
}

.home-premium-page .member-story-count {
    color: #cbd5e1;
    border-color: rgba(255, 255, 255, 0.12);
    background: rgba(2, 6, 23, 0.48);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

.home-premium-page .member-story-count [data-member-current] {
    color: var(--premium-accent);
}

.home-premium-page .member-story-hero-actions .btn {
    min-height: 3.15rem;
    border-radius: 999px;
}

.home-premium-page .hero-actions .homepage-patron-action {
    color: #241705;
    border-color: rgba(255, 238, 177, 0.84);
    background: linear-gradient(135deg, #fff1b8 0%, var(--patron-gold) 42%, var(--patron-gold-deep) 100%);
    box-shadow: 0 15px 34px rgba(201, 150, 62, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.home-premium-page .hero-actions .homepage-patron-action:hover,
.home-premium-page .hero-actions .homepage-patron-action:focus-visible {
    color: #160e02;
    border-color: #fff3c6;
    background: linear-gradient(135deg, #fff6ce 0%, #f7dd95 42%, #d6a64a 100%);
    transform: translateY(-2px);
    box-shadow: 0 19px 42px rgba(201, 150, 62, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.home-premium-page .member-story-hero-actions .member-story-patron-action {
    position: relative;
    overflow: hidden;
    color: #241705;
    border-color: rgba(255, 238, 177, 0.84);
    background: linear-gradient(135deg, #fff1b8 0%, var(--patron-gold) 38%, var(--patron-gold-deep) 100%);
    box-shadow: 0 15px 34px rgba(201, 150, 62, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.home-premium-page .member-story-hero-actions .member-story-patron-action::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(110deg, transparent 20%, rgba(255, 255, 255, 0.5) 48%, transparent 76%);
    transform: translateX(-110%);
    transition: transform 520ms ease;
}

.home-premium-page .member-story-hero-actions .member-story-patron-action:hover,
.home-premium-page .member-story-hero-actions .member-story-patron-action:focus-visible {
    color: #160e02;
    border-color: #fff3c6;
    transform: translateY(-2px);
    box-shadow: 0 19px 42px rgba(201, 150, 62, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.home-premium-page .member-story-hero-actions .member-story-patron-action:hover::before,
.home-premium-page .member-story-hero-actions .member-story-patron-action:focus-visible::before {
    transform: translateX(110%);
}

.home-premium-page .member-story-carousel {
    border-color: rgba(255, 255, 255, 0.12);
    background: #050814;
    box-shadow: 0 34px 80px rgba(0, 0, 0, 0.52), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.home-premium-page .member-story-dialogue {
    border-color: rgba(255, 255, 255, 0.16);
    background: linear-gradient(145deg, rgba(15, 23, 42, 0.78), rgba(9, 20, 38, 0.52));
    box-shadow: 0 24px 54px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.11);
}

.home-premium-page .member-story-dialogue::before,
.home-premium-page .member-story-progress span {
    background: linear-gradient(90deg, #ffd39c, var(--premium-accent));
}

.home-premium-page .member-story-dot.is-active {
    background: var(--premium-accent);
    box-shadow: 0 0 18px rgba(255, 157, 69, 0.5);
}

/* No-photo fallback hero retains every existing route, banner and animation. */
.home-premium-page .hero-section {
    padding-top: clamp(1.5rem, 3.8vw, 3.2rem);
    padding-bottom: clamp(3rem, 6vw, 5.6rem);
}

.home-premium-page .hero-panel,
.home-premium-page .hero-split-panel {
    border-color: rgba(255, 255, 255, 0.12);
    background-color: var(--premium-surface);
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.46);
}

.home-premium-page .hero-split-content {
    color: var(--premium-text);
    border-color: rgba(255, 255, 255, 0.14);
    background: linear-gradient(145deg, rgba(15, 23, 42, 0.86), rgba(9, 20, 38, 0.78));
    box-shadow: 0 24px 52px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.home-premium-page .hero-split-content .hero-title,
.home-premium-page .hero-split-content .hero-subtitle {
    color: var(--premium-text);
}

.home-premium-page .hero-split-content .hero-subtitle {
    color: rgba(226, 232, 240, 0.8);
}

/* Shared glass cards for all existing AJAX and server-rendered modules. */
.home-premium-page .rule-card,
.home-premium-page .ig-feed-shell,
.home-premium-page .home-guild-member-card {
    color: var(--premium-text);
    border-color: var(--premium-border);
    background: var(--premium-card);
    box-shadow: var(--premium-shadow);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
}

.home-premium-page .official-news-card:hover,
.home-premium-page .mainland-news-card:hover,
.home-premium-page .home-announcement-card:hover,
.home-premium-page .guild-feature-card:hover,
.home-premium-page #features .rule-card:hover {
    border-color: rgba(255, 157, 69, 0.36);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.64), 0 0 0 1px rgba(255, 157, 69, 0.08);
}

.home-premium-page .rule-title,
.home-premium-page .rule-title-link,
.home-premium-page .home-announcement-title-link,
.home-premium-page .official-news-title a,
.home-premium-page .mainland-news-title a,
.home-premium-page .home-guild-member-name {
    color: var(--premium-text);
}

.home-premium-page .rule-title-link:hover,
.home-premium-page .home-announcement-title-link:hover,
.home-premium-page .official-news-title a:hover,
.home-premium-page .mainland-news-title a:hover {
    color: #ffc48e;
}

.home-premium-page .rule-icon {
    color: #ffb36f;
    border: 1px solid rgba(255, 157, 69, 0.18);
    background: rgba(255, 157, 69, 0.1);
}

.home-premium-page .text-muted,
.home-premium-page .small.text-muted,
.home-premium-page .home-announcement-excerpt,
.home-premium-page .home-guild-member-role,
.home-premium-page .home-guild-member-note {
    color: var(--premium-muted) !important;
}

.home-premium-page .home-announcement-cover-link,
.home-premium-page .official-news-thumb,
.home-premium-page .mainland-news-thumb,
.home-premium-page .guild-feature-thumb {
    border-color: rgba(255, 255, 255, 0.1);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.24);
}

/* IG and announcements share one editorial cluster without changing their AJAX contracts. */
.home-premium-page .home-social-updates-wrap {
    position: relative;
    isolation: isolate;
}

.home-premium-page .home-social-updates-wrap::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    border-top: 1px solid rgba(255, 255, 255, 0.045);
    background:
        radial-gradient(circle at 12% 18%, rgba(88, 112, 178, 0.1), transparent 28rem),
        radial-gradient(circle at 88% 72%, rgba(255, 157, 69, 0.07), transparent 22rem),
        rgba(2, 6, 23, 0.24);
}

.home-premium-page .home-social-updates-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(20rem, 0.9fr);
    align-items: start;
    gap: clamp(1.25rem, 2.5vw, 2.25rem);
    padding: clamp(1.2rem, 2.8vw, 2.15rem);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 2rem;
    background:
        linear-gradient(135deg, rgba(15, 23, 42, 0.78), rgba(9, 20, 38, 0.7)),
        rgba(9, 20, 38, 0.66);
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.34);
}

.home-premium-page .home-social-updates-layout > .home-social-updates-panel {
    min-width: 0;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.home-premium-page .home-social-updates-layout > .home-social-updates-panel::before {
    display: none;
}

.home-premium-page .home-social-updates-panel > .container {
    width: 100%;
    max-width: none;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.home-premium-page .home-social-updates-layout .section-head {
    min-height: 7.25rem;
    margin-bottom: 1rem !important;
}

.home-premium-page .home-social-updates-layout .section-title {
    font-size: clamp(1.45rem, 2.4vw, 2.15rem);
}

.home-premium-page .home-social-updates-layout #home-announcements {
    padding-left: clamp(1.25rem, 2.5vw, 2.25rem) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.09);
}

.home-premium-page .home-social-updates-layout #homeAnnouncementContent {
    max-height: 31rem;
    overflow-x: hidden;
    overflow-y: auto;
    padding-right: 0.4rem;
    scrollbar-color: rgba(255, 157, 69, 0.55) rgba(255, 255, 255, 0.05);
    scrollbar-width: thin;
}

.home-premium-page .home-social-updates-layout #homeAnnouncementContent::-webkit-scrollbar {
    width: 6px;
}

.home-premium-page .home-social-updates-layout #homeAnnouncementContent::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(255, 157, 69, 0.55);
}

.home-premium-page .home-social-updates-layout .home-announcement-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.72rem;
    margin: 0;
}

.home-premium-page .home-social-updates-layout .home-announcement-grid > [class*="col-"] {
    width: 100%;
    max-width: none;
    padding: 0;
}

.home-premium-page .home-social-updates-layout .home-announcement-card {
    display: grid !important;
    grid-template-columns: 4.75rem minmax(0, 1fr);
    grid-template-areas:
        "cover meta"
        "cover title"
        "cover excerpt"
        "cover action";
    gap: 0.24rem 0.7rem;
    min-width: 0;
    padding: 0.68rem;
}

.home-premium-page .home-social-updates-layout .home-announcement-cover-link {
    grid-area: cover;
    align-self: stretch;
    min-height: 7.25rem;
    margin: 0;
}

.home-premium-page .home-social-updates-layout .home-announcement-cover {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
}

.home-premium-page .home-social-updates-layout .home-announcement-card > .d-flex {
    grid-area: meta;
    min-width: 0;
    margin-bottom: 0 !important;
}

.home-premium-page .home-social-updates-layout .home-announcement-title {
    grid-area: title;
    display: -webkit-box;
    overflow: hidden;
    margin-bottom: 0 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.home-premium-page .home-social-updates-layout .home-announcement-excerpt {
    grid-area: excerpt;
    display: -webkit-box;
    overflow: hidden;
    min-height: 0;
    margin-bottom: 0 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.home-premium-page .home-social-updates-layout .home-announcement-card > .mt-auto {
    grid-area: action;
    margin-top: 0.2rem !important;
}

.home-premium-page .home-social-updates-layout .ig-feed-track {
    min-width: 0;
}

@media (max-width: 991.98px) {
    .home-premium-page .home-social-updates-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-premium-page .home-social-updates-layout .section-head {
        min-height: 0;
    }

    .home-premium-page .home-social-updates-layout #home-announcements {
        padding-top: 1.5rem !important;
        padding-left: 0 !important;
        border-top: 1px solid rgba(255, 255, 255, 0.09);
        border-left: 0;
    }

    .home-premium-page .home-social-updates-layout #homeAnnouncementContent {
        max-height: none;
        overflow: visible;
        padding-right: 0;
    }
}

/* Instagram keeps its horizontal slider and controls. */
.home-premium-page .ig-feed-shell {
    border-radius: 1.5rem;
    padding: clamp(0.7rem, 2vw, 1.15rem);
}

.home-premium-page .ig-feed-shell-kicker {
    color: #ffb36f;
}

.home-premium-page .ig-feed-card {
    color: var(--premium-text);
    border-color: rgba(255, 255, 255, 0.1);
    background: rgba(9, 20, 38, 0.9);
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.28);
}

.home-premium-page .ig-feed-caption {
    color: rgba(254, 247, 255, 0.88);
}

.home-premium-page .ig-feed-time {
    color: var(--premium-muted);
}

.home-premium-page .ig-feed-nav {
    color: #ffbd82;
    border-color: rgba(255, 255, 255, 0.13);
    background: rgba(15, 23, 42, 0.9);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
}

.home-premium-page .ig-feed-nav:hover:not(:disabled) {
    color: #fff;
    border-color: rgba(255, 157, 69, 0.4);
    background: rgba(255, 157, 69, 0.18);
}

/* Patronage hall: visually follows the member wall inside the calendar module. */
.home-premium-page #guildCalendarContent {
    display: flex;
    flex-direction: column;
}

.home-premium-page #guildCalendarContent > .guild-calendar-header {
    order: 0;
}

.home-premium-page #guildCalendarContent > .guild-sponsor-rank-card {
    order: 1;
}

.home-premium-page #guildCalendarContent > .row {
    order: 2;
}

.home-premium-page #guildCalendarContent > .guild-calendar-toolbar {
    order: 3;
}

.home-premium-page #guildCalendarContent > .guild-calendar-card {
    order: 4;
}

.home-premium-page .guild-sponsor-rank-card {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 1rem 0 2.4rem !important;
    padding: clamp(1rem, 2.8vw, 2rem);
    border-color: rgba(246, 216, 139, 0.38);
    border-radius: clamp(1.4rem, 3vw, 2.25rem);
    background:
        radial-gradient(circle at 92% 0%, rgba(246, 216, 139, 0.17), transparent 29rem),
        linear-gradient(145deg, rgba(29, 24, 21, 0.9), rgba(15, 23, 42, 0.94) 50%, rgba(9, 20, 38, 0.96));
    box-shadow: 0 30px 74px rgba(0, 0, 0, 0.46), inset 0 1px 0 rgba(255, 245, 210, 0.13);
}

.home-premium-page .guild-sponsor-rank-card::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    opacity: 0.46;
    background:
        linear-gradient(115deg, transparent 0 32%, rgba(246, 216, 139, 0.06) 50%, transparent 68%),
        radial-gradient(1.5px 1.5px at 15% 24%, rgba(255, 244, 199, 0.7), transparent 72%),
        radial-gradient(1.5px 1.5px at 72% 18%, rgba(255, 244, 199, 0.56), transparent 72%),
        radial-gradient(1.5px 1.5px at 86% 72%, rgba(255, 244, 199, 0.48), transparent 72%);
}

.home-premium-page .guild-sponsor-rank-head {
    position: relative;
    z-index: 1;
    margin-bottom: 1.35rem !important;
    padding-bottom: 1rem;
    border-bottom: 1px solid rgba(246, 216, 139, 0.18);
}

.home-premium-page .guild-sponsor-rank-head .section-kicker {
    color: var(--patron-gold);
}

.home-premium-page .guild-sponsor-rank-head .rule-title {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    color: #fff6d8;
    font-size: clamp(1.65rem, 3.5vw, 2.7rem);
    letter-spacing: -0.035em;
}

.home-premium-page .guild-sponsor-rank-head .rule-title::before {
    content: "◆";
    display: grid;
    place-items: center;
    width: 2.4rem;
    height: 2.4rem;
    border: 1px solid rgba(255, 240, 185, 0.52);
    border-radius: 50%;
    color: #2a1a05;
    background: linear-gradient(145deg, #fff1b3, #c9963e);
    box-shadow: 0 10px 26px rgba(201, 150, 62, 0.28);
    font-size: 0.9rem;
}

.home-premium-page .guild-sponsor-rank-head .text-muted {
    color: rgba(246, 216, 139, 0.72) !important;
}

.home-premium-page .guild-sponsor-rank-list {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 22rem));
    gap: 1rem;
    justify-content: center;
}

.home-premium-page .guild-sponsor-rank-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
        "rank total"
        "showcase showcase"
        "main main";
    align-content: start;
    gap: 0.8rem;
    min-width: 0;
    padding: 0.85rem;
    border-color: rgba(255, 255, 255, 0.1);
    border-radius: 1.35rem;
    background: linear-gradient(145deg, rgba(30, 41, 59, 0.86), rgba(9, 20, 38, 0.92));
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

.home-premium-page .guild-sponsor-rank-item:hover {
    transform: translateY(-5px);
    border-color: rgba(246, 216, 139, 0.42);
    box-shadow: 0 26px 48px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.home-premium-page .guild-sponsor-rank-item:nth-child(1) {
    border-color: rgba(246, 216, 139, 0.6);
    background:
        radial-gradient(circle at 86% 5%, rgba(246, 216, 139, 0.18), transparent 48%),
        linear-gradient(145deg, rgba(61, 46, 23, 0.9), rgba(15, 23, 42, 0.96));
    box-shadow: 0 24px 52px rgba(96, 66, 19, 0.32), inset 0 1px 0 rgba(255, 245, 210, 0.2);
}

.home-premium-page .guild-sponsor-rank-item:nth-child(2) {
    border-color: rgba(214, 225, 238, 0.35);
}

.home-premium-page .guild-sponsor-rank-item:nth-child(3) {
    border-color: rgba(205, 139, 88, 0.42);
}

.home-premium-page .guild-sponsor-rank-no {
    grid-area: rank;
    align-self: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.7rem;
    min-height: 2.1rem;
    width: fit-content;
    padding: 0.35rem 0.65rem;
    border: 1px solid rgba(246, 216, 139, 0.28);
    border-radius: 999px;
    color: var(--patron-gold);
    background: rgba(246, 216, 139, 0.08);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.home-premium-page .guild-sponsor-rank-item:nth-child(1) .guild-sponsor-rank-no::before {
    content: "♛";
    margin-right: 0.34rem;
    font-size: 0.96rem;
}

.home-premium-page .guild-sponsor-rank-showcase {
    grid-area: showcase;
    border-radius: 1rem;
}

.home-premium-page .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    min-height: 156px;
    border-radius: 1rem;
}

.home-premium-page .guild-sponsor-rank-main {
    grid-area: main;
    align-self: start;
    padding: 0.1rem 0.2rem 0.2rem;
}

.home-premium-page .guild-sponsor-rank-name {
    color: #fff8e3;
    font-size: 1.05rem;
    font-weight: 900;
}

.home-premium-page .guild-sponsor-rank-meta {
    margin-top: 0.25rem;
    color: rgba(226, 232, 240, 0.68);
}

.home-premium-page .guild-sponsor-rank-total {
    grid-area: total;
    align-self: center;
    min-width: 0;
    text-align: right;
}

.home-premium-page .guild-sponsor-rank-total-label {
    color: rgba(246, 216, 139, 0.62);
}

.home-premium-page .guild-sponsor-rank-total-value {
    color: var(--patron-gold);
    font-size: 1.45rem;
    text-shadow: 0 4px 18px rgba(201, 150, 62, 0.26);
}

/* Calendar controls and table retain the original click/data attributes. */
.home-premium-page .guild-calendar-toolbar {
    color: var(--premium-text);
    border-color: rgba(255, 157, 69, 0.25);
    background: rgba(15, 23, 42, 0.66);
}

.home-premium-page .guild-month-label {
    color: rgba(254, 247, 255, 0.78);
}

.home-premium-page .guild-calendar-wrap {
    border-color: rgba(255, 255, 255, 0.09);
}

.home-premium-page .guild-calendar-table {
    --bs-table-bg: transparent;
    --bs-table-color: rgba(254, 247, 255, 0.84);
    --bs-table-border-color: rgba(255, 255, 255, 0.08);
    color: rgba(254, 247, 255, 0.84);
}

.home-premium-page .guild-calendar-table thead th {
    color: #ffbd82;
    border-bottom-color: rgba(255, 157, 69, 0.18);
    background: rgba(255, 157, 69, 0.08);
}

.home-premium-page .guild-calendar-table td,
.home-premium-page .guild-calendar-table th {
    border-color: rgba(255, 255, 255, 0.075);
}

.home-premium-page .guild-day-cell {
    background: rgba(9, 20, 38, 0.46);
}

.home-premium-page .guild-day-cell.is-other {
    background: rgba(2, 6, 23, 0.42);
}

.home-premium-page .guild-day-cell.is-today {
    box-shadow: inset 0 0 0 2px rgba(255, 157, 69, 0.46);
}

/* Filters and pagination remain real buttons/links. */
.home-premium-page .home-filter-bar {
    border-color: rgba(255, 255, 255, 0.1);
    background: rgba(15, 23, 42, 0.72);
}

.home-premium-page .home-announcement-pagination .page-link,
.home-premium-page .mainland-news-section .relaxed-pagination .page-link,
.home-premium-page #home-official-news .relaxed-pagination .page-link,
.home-premium-page .js-official-pagination .page-link {
    color: rgba(254, 247, 255, 0.78);
    border-color: rgba(255, 255, 255, 0.11);
    background: rgba(15, 23, 42, 0.78);
}

.home-premium-page .home-announcement-pagination .page-link:hover,
.home-premium-page .mainland-news-section .relaxed-pagination .page-link:hover,
.home-premium-page #home-official-news .relaxed-pagination .page-link:hover,
.home-premium-page .js-official-pagination .page-link:hover {
    color: #fff;
    border-color: rgba(255, 157, 69, 0.4);
    background: rgba(255, 157, 69, 0.16);
}

.home-premium-page .home-announcement-pagination .page-item.active .page-link,
.home-premium-page .mainland-news-section .relaxed-pagination .page-item.active .page-link,
.home-premium-page #home-official-news .relaxed-pagination .page-item.active .page-link,
.home-premium-page .js-official-pagination .page-item.active .page-link {
    color: #fff;
    border-color: var(--premium-accent);
    background: var(--premium-accent);
}

/* Sponsor modal gets a premium skin; its Bootstrap lifecycle stays untouched. */
.home-premium-page #frontSponsorModal .sponsor-modal {
    overflow: hidden;
    color: var(--premium-text);
    border: 1px solid rgba(246, 216, 139, 0.38);
    border-radius: 1.75rem;
    background:
        radial-gradient(circle at 92% 0%, rgba(246, 216, 139, 0.2), transparent 45%),
        linear-gradient(145deg, #17130e, #0f172a 56%, #091426);
    box-shadow: 0 34px 80px rgba(0, 0, 0, 0.62), inset 0 1px 0 rgba(255, 245, 210, 0.14);
}

.home-premium-page #frontSponsorModal .sponsor-modal-header {
    color: var(--premium-text);
    border-bottom-color: rgba(246, 216, 139, 0.18);
    background: rgba(246, 216, 139, 0.055);
}

.home-premium-page #frontSponsorModal .sponsor-modal-kicker {
    color: var(--patron-gold);
}

.home-premium-page #frontSponsorModal .modal-title {
    color: #fff7dc;
}

.home-premium-page #frontSponsorModal .btn-close {
    filter: invert(1) grayscale(1) brightness(1.7);
}

.home-premium-page #frontSponsorModal .sponsor-modal-desc,
.home-premium-page #frontSponsorModal .sponsor-modal-hint,
.home-premium-page #frontSponsorModal .sponsor-benefit-note {
    color: rgba(226, 232, 240, 0.76);
}

.home-premium-page #frontSponsorModal .sponsor-benefit-note {
    border-color: rgba(246, 216, 139, 0.16);
    background: rgba(255, 255, 255, 0.045);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.home-premium-page #frontSponsorModal .sponsor-benefit-note > span {
    color: rgba(226, 232, 240, 0.76);
}

.home-premium-page #frontSponsorModal .sponsor-unit-pill,
.home-premium-page #frontSponsorModal .sponsor-total-wrap {
    color: #fff2c4;
    border-color: rgba(246, 216, 139, 0.24);
    background: rgba(246, 216, 139, 0.08);
}

.home-premium-page #frontSponsorModal .sponsor-total-wrap strong {
    color: var(--patron-gold);
}

.home-premium-page #frontSponsorModal .btn-relaxed-support {
    color: #241705;
    border-color: rgba(255, 238, 177, 0.84);
    background: linear-gradient(135deg, #fff1b8, var(--patron-gold) 45%, var(--patron-gold-deep));
    box-shadow: 0 14px 30px rgba(201, 150, 62, 0.28);
}

/* Content detail modals retain their AJAX/Bootstrap behavior with a dark skin. */
.home-premium-page #announcementDetailModal .modal-content,
.home-premium-page #guildEventModal .modal-content,
.home-premium-page #guildDayEventsModal .modal-content {
    color: var(--premium-text);
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 1.6rem;
    background:
        radial-gradient(circle at 92% 0%, rgba(255, 157, 69, 0.11), transparent 42%),
        linear-gradient(145deg, rgba(30, 41, 59, 0.99), rgba(9, 20, 38, 0.99));
    box-shadow: 0 34px 80px rgba(0, 0, 0, 0.62), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.home-premium-page #announcementDetailModal .modal-content::before {
    background:
        radial-gradient(circle at 0% 0%, rgba(88, 112, 178, 0.12), transparent 45%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.035), transparent 60%);
}

.home-premium-page #announcementDetailModal .modal-header,
.home-premium-page #guildEventModal .modal-header,
.home-premium-page #guildDayEventsModal .modal-header {
    color: var(--premium-text);
    border-bottom-color: rgba(255, 255, 255, 0.09);
    background: rgba(2, 6, 23, 0.28);
}

.home-premium-page #announcementDetailModal .modal-body,
.home-premium-page #guildEventModal .modal-body,
.home-premium-page #guildDayEventsModal .modal-body {
    color: rgba(226, 232, 240, 0.84);
    background: transparent;
}

.home-premium-page #announcementDetailModal .btn-close,
.home-premium-page #guildEventModal .btn-close,
.home-premium-page #guildDayEventsModal .btn-close {
    filter: invert(1) grayscale(1) brightness(1.7);
}

.home-premium-page #announcementDetailModal .announcement-content-only,
.home-premium-page #announcementDetailModal #announcementDetailContent {
    color: rgba(226, 232, 240, 0.88);
}

.home-premium-page #announcementDetailModal .announcement-content-only a {
    color: #ffbd82;
}

.home-premium-page #announcementDetailModal .announcement-content-only a:hover {
    color: #ffd1a9;
}

.home-premium-page #announcementDetailModal .announcement-content-only table td,
.home-premium-page #announcementDetailModal .announcement-content-only table th {
    border-color: rgba(255, 255, 255, 0.11);
}

.home-premium-page #guildEventModal .guild-event-modal-kicker,
.home-premium-page #guildEventModal .guild-event-modal-section-title,
.home-premium-page #guildEventModal .guild-event-meta-label {
    color: #ffbd82;
}

.home-premium-page #guildEventModal .guild-event-meta-item,
.home-premium-page #guildEventModal .guild-event-modal-section {
    color: rgba(226, 232, 240, 0.86);
    border-color: rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.045);
}

.home-premium-page #guildEventModal .guild-event-meta-value,
.home-premium-page #guildEventModal #guildEventModalContent {
    color: rgba(226, 232, 240, 0.86);
}

.home-premium-page #guildDayEventsModal .guild-day-events-item {
    color: var(--premium-text);
    border-color: rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.045);
}

.home-premium-page #guildDayEventsModal .guild-day-events-item:hover,
.home-premium-page #guildDayEventsModal .guild-day-events-item:focus-visible {
    border-color: rgba(255, 157, 69, 0.38);
    background: rgba(255, 157, 69, 0.1);
}

.home-premium-page #guildDayEventsModal .guild-day-events-title,
.home-premium-page #guildDayEventsModal .guild-day-events-time {
    color: rgba(254, 247, 255, 0.9);
}

/* The APP remains a collapsed floating control; only its surface changes. */
.home-premium-page .front-app-download-toggle {
    border-color: rgba(255, 255, 255, 0.18);
    background:
        radial-gradient(circle at 15% 0%, rgba(255, 157, 69, 0.24), transparent 52%),
        linear-gradient(145deg, rgba(30, 41, 59, 0.97), rgba(9, 20, 38, 0.98));
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.home-premium-page .front-app-download-toggle:hover,
.home-premium-page .front-app-download-toggle:focus-visible,
.home-premium-page .front-app-download-float.is-open .front-app-download-toggle {
    border-color: rgba(255, 157, 69, 0.42);
    box-shadow: 0 22px 50px rgba(0, 0, 0, 0.52), 0 0 0 1px rgba(255, 157, 69, 0.12);
}

.home-premium-page .front-app-download-panel {
    border-color: rgba(255, 255, 255, 0.15);
    background:
        radial-gradient(circle at 90% 0%, rgba(255, 157, 69, 0.16), transparent 44%),
        linear-gradient(145deg, rgba(30, 41, 59, 0.98), rgba(9, 20, 38, 0.99));
    box-shadow: 0 26px 62px rgba(0, 0, 0, 0.56), inset 0 1px 0 rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
}

.home-premium-page .front-app-download-link,
.home-premium-page .front-app-ios-guide {
    border-color: rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.055);
}

/* End-of-page quote and footer stay present, now matching the premium theme. */
.home-premium-page .quote-section {
    position: relative;
    padding-top: clamp(3rem, 6vw, 5rem) !important;
    padding-bottom: clamp(3rem, 6vw, 5rem) !important;
    background: rgba(9, 20, 38, 0.58);
    border-top: 1px solid rgba(255, 255, 255, 0.045);
}

.home-premium-page .quote-card {
    color: var(--premium-text);
    border-color: rgba(255, 255, 255, 0.1);
    background:
        radial-gradient(circle at 50% 0%, rgba(255, 157, 69, 0.1), transparent 55%),
        rgba(30, 41, 59, 0.58);
    box-shadow: var(--premium-shadow);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
}

.home-premium-page .quote-text {
    color: rgba(254, 247, 255, 0.86);
}

.home-premium-page .quote-sign {
    color: rgba(254, 247, 255, 0.82);
    border-color: rgba(255, 255, 255, 0.1);
    background: rgba(2, 6, 23, 0.45);
}

.home-premium-page.site-app + .site-footer,
.home-premium-page .site-footer {
    color: rgba(226, 232, 240, 0.66);
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    background: #020617;
}

.home-premium-page .site-footer a:hover,
.home-premium-page .site-footer a:focus {
    color: #ffbd82 !important;
}

@media (max-width: 1199.98px) {
    .home-premium-page .guild-sponsor-rank-list {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 22rem));
        justify-content: center;
    }
}

@media (max-width: 991.98px) {
    .home-premium-page .relaxed-navbar .navbar-collapse {
        margin-top: 0.75rem;
        padding: 0.8rem;
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: 1.1rem;
        background: rgba(9, 20, 38, 0.96);
        box-shadow: 0 18px 42px rgba(0, 0, 0, 0.3);
    }

    .home-premium-page .member-story-hero-side,
    .home-premium-page .member-story-hero-actions {
        align-items: stretch;
    }

    .home-premium-page .member-story-hero-actions .btn {
        flex: 1 1 15rem;
    }
}

@media (max-width: 767.98px) {
    .home-premium-page .home-front-section,
    .home-premium-page #features {
        padding-top: 3.2rem !important;
        padding-bottom: 3.2rem !important;
    }

    .home-premium-page .member-story-hero-intro {
        border-radius: 1.3rem;
    }

    .home-premium-page .member-story-hero-copy .hero-title {
        font-size: clamp(2rem, 11vw, 3.2rem);
    }

    .home-premium-page .member-story-hero-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .home-premium-page .member-story-hero-actions .btn {
        width: 100%;
    }

    .home-premium-page .guild-sponsor-rank-card {
        margin-bottom: 1.65rem !important;
        padding: 0.9rem;
        border-radius: 1.35rem;
    }

    .home-premium-page .guild-sponsor-rank-list {
        grid-template-columns: 1fr;
    }

    .home-premium-page .guild-sponsor-rank-item {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
            "rank total"
            "showcase showcase"
            "main main";
        padding: 0.75rem;
    }

    .home-premium-page .guild-sponsor-rank-showcase .member-showcase-mini-stage {
        min-height: 132px;
    }

    .home-premium-page .front-app-download-float {
        left: 12px;
        bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    }

    .home-premium-page .front-app-download-panel {
        width: min(360px, calc(100vw - 24px));
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-premium-page .member-story-hero-actions .member-story-patron-action::before {
        display: none;
    }

    .home-premium-page .guild-sponsor-rank-item,
    .home-premium-page .official-news-card,
    .home-premium-page .mainland-news-card,
    .home-premium-page .home-announcement-card,
    .home-premium-page .guild-feature-card,
    .home-premium-page #features .rule-card {
        transition: none;
    }
}
/* The opening homepage pair keeps the site introduction and member carousel side by side. */
.home-premium-page .member-story-home-grid {
    display: grid;
    grid-template-columns: minmax(17rem, 0.82fr) minmax(0, 1.45fr);
    align-items: center;
    gap: clamp(1.5rem, 3vw, 3.2rem);
}

.home-premium-page .member-story-home-grid .member-story-hero-intro {
    display: block;
    min-width: 0;
    margin-bottom: 0;
    padding: clamp(1.35rem, 3vw, 2.7rem);
    border: 0;
    border-radius: 1.5rem;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.home-premium-page .member-story-home-grid .member-story-hero-copy .hero-title {
    font-size: clamp(2.25rem, 3.9vw, 4.3rem);
}

.home-premium-page .member-story-home-grid .member-story-hero-copy .hero-subtitle {
    max-width: 31rem;
}

.home-premium-page .member-story-home-grid .member-story-hero-side,
.home-premium-page .member-story-home-grid .member-story-hero-actions {
    align-items: flex-start;
    justify-content: flex-start;
}

.home-premium-page .member-story-home-grid .member-story-hero-side {
    margin-top: 1.25rem;
}

.home-premium-page .member-story-home-grid .member-story-carousel {
    min-height: clamp(340px, 35vw, 460px);
}

.home-premium-page .member-story-home-grid .member-story-layout {
    grid-template-columns: minmax(0, 1.08fr) minmax(12rem, 0.9fr);
    gap: clamp(0.9rem, 2.4vw, 2.2rem);
    padding:
        clamp(1.25rem, 2.8vw, 2.5rem)
        clamp(3rem, 5vw, 4.6rem)
        clamp(3.5rem, 5vw, 4.4rem);
}

.home-premium-page .member-story-home-grid .member-story-dialogue {
    padding: clamp(0.95rem, 2vw, 1.45rem);
}

.home-premium-page .member-story-home-grid .member-story-dialogue h3 {
    font-size: clamp(1.8rem, 3.2vw, 3.15rem);
}

@media (max-width: 991.98px) {
    .home-premium-page .member-story-home-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-intro {
        padding: 1.15rem 0 0.7rem;
    }

    .home-premium-page .member-story-home-grid .member-story-carousel {
        min-height: clamp(440px, 120vw, 620px);
    }
}
/* The patronage hall follows the visitor through the homepage without duplicating ranking data. */
.home-premium-page .guild-sponsor-rank-float {
    position: fixed;
    z-index: 1035;
    top: 50%;
    right: clamp(0.75rem, 2vw, 2rem);
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    width: min(29rem, calc(100vw - 2rem));
    transform: translateY(-50%);
    pointer-events: none;
}

.home-premium-page .guild-sponsor-rank-float > * {
    pointer-events: auto;
}

.home-premium-page .guild-sponsor-rank-float-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-height: 3.35rem;
    padding: 0.72rem 1rem 0.72rem 1.15rem;
    border: 1px solid rgba(255, 226, 144, 0.55);
    border-radius: 999px;
    color: #2a1903;
    background: linear-gradient(135deg, #fff4c9, var(--patron-gold) 48%, var(--patron-gold-deep));
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.35), 0 0 26px rgba(246, 216, 139, 0.2);
    font-weight: 900;
    letter-spacing: 0.03em;
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.home-premium-page .guild-sponsor-rank-float-toggle:hover,
.home-premium-page .guild-sponsor-rank-float-toggle:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 22px 48px rgba(0, 0, 0, 0.42), 0 0 32px rgba(246, 216, 139, 0.32);
}

.home-premium-page .guild-sponsor-rank-float-toggle > i {
    transition: transform 180ms ease;
}

.home-premium-page .guild-sponsor-rank-float.is-open .guild-sponsor-rank-float-toggle > i {
    transform: rotate(180deg);
}

.home-premium-page .guild-sponsor-rank-float-panel {
    width: 100%;
    max-height: min(42rem, calc(100dvh - 7rem));
    margin-top: 0.65rem;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-color: rgba(246, 216, 139, 0.66) rgba(255, 255, 255, 0.06);
    scrollbar-width: thin;
}

.home-premium-page .guild-sponsor-rank-float-panel::-webkit-scrollbar {
    width: 6px;
}

.home-premium-page .guild-sponsor-rank-float-panel::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(246, 216, 139, 0.66);
}

.home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
    margin: 0 !important;
    padding: clamp(0.9rem, 2vw, 1.25rem);
    border-color: rgba(246, 216, 139, 0.44);
    border-radius: 1.55rem;
    background:
        radial-gradient(circle at 0% 0%, rgba(246, 216, 139, 0.16), transparent 38%),
        linear-gradient(145deg, rgba(30, 41, 59, 0.98), rgba(9, 20, 38, 0.99));
    box-shadow: 0 26px 70px rgba(0, 0, 0, 0.56), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    align-items: start !important;
    margin-bottom: 0.8rem !important;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .section-kicker {
    color: #f6d88b;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
    color: #fff5cb;
    font-size: clamp(1.35rem, 2.6vw, 1.85rem);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .small {
    max-width: 13rem;
    color: rgba(254, 247, 255, 0.62) !important;
    text-align: right;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-list {
    gap: 0.7rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item {
    position: relative;
    display: grid;
    grid-template-columns: minmax(8.6rem, 10rem) minmax(0, 1fr) auto;
    align-items: stretch;
    gap: 0.78rem;
    min-height: 10rem;
    padding: 0;
    overflow: hidden;
    border-color: rgba(255, 255, 255, 0.1);
    border-radius: 1.25rem;
    background: rgba(2, 6, 23, 0.72);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    border-color: rgba(246, 216, 139, 0.55);
    background:
        radial-gradient(circle at 100% 0%, rgba(246, 216, 139, 0.12), transparent 50%),
        rgba(50, 45, 47, 0.92);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-no {
    position: absolute;
    z-index: 2;
    top: 0.6rem;
    left: 0.6rem;
    min-width: 2.45rem;
    padding: 0.24rem 0.48rem;
    border-radius: 999px;
    color: #342107;
    background: linear-gradient(135deg, #fff3bd, #e5b95b);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase {
    grid-column: 1;
    grid-row: 1;
    border-radius: 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    height: 100%;
    min-height: 10rem;
    border-radius: 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    padding: 0.85rem 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
    color: #fff2bb;
    font-size: clamp(1.05rem, 2.1vw, 1.45rem);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-meta,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-total-label {
    color: rgba(254, 247, 255, 0.58);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-total {
    grid-column: 3;
    grid-row: 1;
    align-self: end;
    min-width: 3.6rem;
    padding: 0 0.95rem 0.9rem 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-total-value {
    color: #f6d88b;
    font-size: clamp(1.4rem, 3vw, 2rem);
}

@media (max-width: 1199.98px) {
    .home-premium-page .guild-sponsor-rank-float {
        top: auto;
        right: 0.85rem;
        bottom: calc(0.85rem + env(safe-area-inset-bottom, 0px));
        width: min(27rem, calc(100vw - 1.7rem));
        transform: none;
    }

    .home-premium-page .guild-sponsor-rank-float-panel {
        max-height: min(33rem, calc(100dvh - 7.5rem));
    }
}

@media (max-width: 575.98px) {
    .home-premium-page .guild-sponsor-rank-float {
        right: 0.65rem;
        bottom: calc(4.65rem + env(safe-area-inset-bottom, 0px));
        width: min(25rem, calc(100vw - 1.3rem));
    }

    .home-premium-page .guild-sponsor-rank-float-toggle {
        min-height: 2.95rem;
        padding: 0.6rem 0.82rem 0.6rem 0.95rem;
        font-size: 0.9rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item {
        grid-template-columns: 7.2rem minmax(0, 1fr) auto;
        min-height: 8.9rem;
        gap: 0.58rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
        min-height: 8.9rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .small {
        display: none;
    }
}
/* Compact sponsor-rank overlay: stays out of the first-screen story until opened. */
.home-premium-page .guild-sponsor-rank-float {
    width: min(20rem, calc(100vw - 1.5rem));
}

.home-premium-page .guild-sponsor-rank-float-toggle {
    gap: 0.5rem;
    min-height: 2.8rem;
    padding: 0.55rem 0.75rem 0.55rem 0.9rem;
    font-size: 0.84rem;
}

.home-premium-page .guild-sponsor-rank-float-panel {
    max-height: min(27rem, calc(100dvh - 6rem));
    margin-top: 0.45rem;
}

.home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
    padding: 0.72rem;
    border-radius: 1.15rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    margin-bottom: 0.55rem !important;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
    font-size: 1.25rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item {
    grid-template-columns: 5.6rem minmax(0, 1fr) auto;
    min-height: 6.9rem;
    gap: 0.55rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    min-height: 6.9rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main {
    padding: 0.5rem 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
    font-size: 1.05rem;
}
/* Refined sponsor overlay: two compact cards, no nested scrollbar. */
.home-premium-page .guild-sponsor-rank-float-panel {
    max-height: none;
    overflow: visible;
}

.home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
    padding: 0.58rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .section-kicker {
    font-size: 0.58rem;
    letter-spacing: 0.14em;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-list {
    gap: 0.42rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item:nth-child(n + 3) {
    display: none;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item {
    grid-template-columns: 4.35rem minmax(0, 1fr) auto;
    min-height: 5.35rem;
    gap: 0.42rem;
    border-radius: 0.92rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    min-height: 5.35rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main {
    padding: 0.35rem 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
    font-size: 0.98rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-total {
    font-size: 1.5rem;
}
/* Always-visible sponsor mini-card: photo stays clear and no toggle is needed. */
.home-premium-page .guild-sponsor-rank-float {
    top: 50%;
    right: 0.75rem;
    width: min(16.5rem, calc(100vw - 1rem));
}

.home-premium-page .guild-sponsor-rank-float-panel {
    margin-top: 0;
}

.home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
    background-image:
        linear-gradient(135deg, rgba(3, 10, 28, 0.34), rgba(7, 16, 37, 0.22)),
        url("/images/sponsors/patronage-hall-navy-gold-v1.png");
    background-position: center;
    background-size: cover;
    box-shadow: 0 18px 42px rgba(4, 11, 27, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

/* Low-profile patronage card: visually belongs to the hero carousel. */
@media (min-width: 1200px) {
    .home-premium-page .guild-sponsor-rank-float {
        top: clamp(12.5rem, 23vh, 15.5rem);
        right: clamp(3.25rem, 4vw, 5rem);
        width: min(17.75rem, calc(100vw - 2rem));
        transform: none;
    }
}

.home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
    padding: 0.9rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 20px;
    background:
        linear-gradient(135deg, rgba(12, 27, 52, 0.86), rgba(10, 22, 43, 0.76)),
        url("/images/sponsors/patronage-hall-navy-gold-v1.png") center / cover;
    backdrop-filter: blur(16px);
    box-shadow: 0 18px 46px rgba(4, 11, 27, 0.24);
}

.home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card::before {
    display: none;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    margin: 0 0 0.52rem !important;
    padding: 0 0 0.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
    color: rgba(255, 255, 255, 0.96);
    font-size: 1.08rem;
    font-weight: 800;
    letter-spacing: 0.01em;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title::before {
    display: none;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title > span {
    color: #e7c87f;
    font-size: 0.78em;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-list {
    gap: 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    display: grid;
    grid-template-columns: 1.3rem 3.25rem minmax(0, 1fr) auto;
    min-height: 4.25rem;
    gap: 0.55rem;
    padding: 0.48rem 0.18rem;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item + .guild-sponsor-rank-item {
    border-top: 1px solid rgba(255, 255, 255, 0.09);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    margin: 0 -0.2rem;
    padding-right: 0.38rem;
    padding-left: 0.38rem;
    border-radius: 12px;
    background: rgba(231, 200, 127, 0.09);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-position {
    grid-column: 1;
    align-self: center;
    color: rgba(231, 200, 127, 0.9);
    font-size: 0.92rem;
    font-weight: 700;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    grid-column: 2;
    grid-row: 1;
    width: 3.25rem;
    min-height: 3.25rem;
    height: 3.25rem;
    border-radius: 12px;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase {
    align-self: center;
    overflow: hidden;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main {
    grid-column: 3;
    grid-row: 1;
    align-self: center;
    padding: 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
    color: rgba(255, 255, 255, 0.96);
    font-size: 1rem;
    font-weight: 750;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-meta {
    margin-top: 0.1rem;
    color: rgba(220, 230, 246, 0.62);
    font-size: 0.72rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-total {
    grid-column: 4;
    grid-row: 1;
    align-self: center;
    min-width: 2.3rem;
    padding: 0;
    text-align: right;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-total-value {
    color: rgba(255, 255, 255, 0.88);
    font-size: 1.2rem;
    font-weight: 700;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-total-value::after {
    content: " 次";
    color: rgba(220, 230, 246, 0.56);
    font-size: 0.68rem;
    font-weight: 600;
}

.home-premium-page .guild-sponsor-rank-view-all-bottom {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    width: 100%;
    margin-top: 0.22rem;
    padding: 0.58rem 0.18rem 0.03rem;
    border: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.09);
    color: rgba(220, 230, 246, 0.74);
    background: transparent;
    font-size: 0.75rem;
    text-align: left;
}

.home-premium-page .guild-sponsor-rank-view-all-bottom:hover,
.home-premium-page .guild-sponsor-rank-view-all-bottom:focus-visible {
    color: #f0d696;
}

.home-premium-page .guild-sponsor-rank-card.is-expanded .guild-sponsor-rank-item:nth-child(n + 3) {
    display: grid;
}

.home-premium-page .guild-sponsor-rank-card.is-expanded .guild-sponsor-rank-view-all-bottom > span {
    transform: rotate(90deg);
}

@media (max-width: 1199.98px) {
    .home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
        background: rgba(12, 27, 52, 0.9);
    }
}
/* Final alignment: overlap the carousel slightly and keep the card frame quiet. */
@media (min-width: 1200px) {
    .home-premium-page .guild-sponsor-rank-float {
        right: clamp(6rem, 6.75vw, 8rem);
    }
}

.home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
    border-color: rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 16px 38px rgba(4, 11, 27, 0.2);
}
/* The patronage artwork belongs to each supporter row, not the outer card. */
@media (min-width: 1200px) {
    .home-premium-page .guild-sponsor-rank-float {
        right: clamp(3.25rem, 4vw, 5rem);
    }
}

.home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
    background: rgba(12, 27, 52, 0.78);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    background:
        linear-gradient(90deg, rgba(12, 27, 52, 0.94) 0%, rgba(12, 27, 52, 0.78) 72%, rgba(12, 27, 52, 0.62) 100%),
        url("/images/sponsors/patronage-hall-navy-gold-v1.png") center / cover;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    background:
        linear-gradient(90deg, rgba(63, 52, 38, 0.94) 0%, rgba(33, 39, 53, 0.78) 72%, rgba(24, 34, 51, 0.64) 100%),
        url("/images/sponsors/patronage-hall-navy-gold-v1.png") center / cover;
}
/* Minimal sponsor rank: the outer shell carries no visual layer or copy. */
.home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
    padding: 0;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    margin: 0 0 0.35rem !important;
    padding: 0 0 0.3rem;
    border-bottom: 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.96rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    grid-template-columns: 1.3rem 3.25rem minmax(0, 1fr);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-total,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-meta,
.home-premium-page .guild-sponsor-rank-view-all-bottom {
    display: none;
}
/* Sponsor board without rank numerals: photo and name only. */
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    grid-template-columns: 3.25rem minmax(0, 1fr);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    grid-column: 1;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main {
    grid-column: 2;
}

.home-premium-page .guild-sponsor-rank-position {
    display: none;
}
/* Quiet luxury: the board stays weightless while each patron has a restrained, ceremonial row. */
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    margin-bottom: 0.48rem !important;
    padding-left: 0.15rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
    color: rgba(255, 248, 232, 0.92);
    font-size: 0.88rem;
    font-weight: 650;
    letter-spacing: 0.1em;
    text-shadow: 0 1px 12px rgba(234, 205, 142, 0.14);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-list {
    gap: 0.42rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    min-height: 4.15rem;
    padding: 0.44rem 0.52rem;
    gap: 0.62rem;
    border: 1px solid rgba(240, 223, 179, 0.11);
    border-radius: 0.82rem;
    background:
        linear-gradient(100deg, rgba(8, 18, 34, 0.94) 0%, rgba(12, 27, 47, 0.86) 66%, rgba(18, 35, 54, 0.72) 100%),
        url("/images/sponsors/patronage-hall-navy-gold-v1.png") center / cover;
    box-shadow: inset 0 1px 0 rgba(255, 252, 243, 0.055), 0 8px 22px rgba(1, 8, 20, 0.14);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    border-color: rgba(229, 204, 145, 0.22);
    background:
        linear-gradient(100deg, rgba(40, 35, 29, 0.94) 0%, rgba(24, 31, 42, 0.87) 66%, rgba(20, 34, 51, 0.74) 100%),
        url("/images/sponsors/patronage-hall-navy-gold-v1.png") center / cover;
    box-shadow: inset 0 1px 0 rgba(255, 246, 220, 0.09), 0 8px 22px rgba(42, 31, 14, 0.16);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item + .guild-sponsor-rank-item {
    border-top: 1px solid rgba(240, 223, 179, 0.11);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    border-radius: 0.54rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    box-shadow: inset 0 0 0 1px rgba(243, 223, 177, 0.18), 0 4px 12px rgba(0, 0, 0, 0.18);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
    color: rgba(255, 250, 241, 0.92);
    font-size: 0.95rem;
    font-weight: 650;
    letter-spacing: 0.02em;
}
/* AI-created backdrop for the home experience, kept dark so member photos remain the focus. */
body.site-app.home-premium-page {
    background:
        linear-gradient(145deg, rgba(5, 14, 29, 0.72), rgba(8, 20, 39, 0.82)),
        url("/images/site-textures/quiet-luxury-site-backdrop-v1.png") center / cover fixed;
}
/* Compact sponsor board: the title is an AI wordmark and the rows only take the space they earn. */
.home-premium-page .guild-sponsor-rank-float {
    width: min(13.25rem, calc(100vw - 1.35rem));
}

@media (min-width: 1200px) {
    .home-premium-page .guild-sponsor-rank-float {
        right: clamp(1rem, 2vw, 2.75rem);
        width: 13.25rem;
    }
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    margin: 0 0 0.32rem !important;
    padding: 0.06rem 0.12rem 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
    display: flex;
    align-items: center;
    min-height: 1.35rem;
    line-height: 1;
}

.home-premium-page .guild-sponsor-rank-wordmark {
    display: block;
    width: 5.25rem;
    height: auto;
    filter: drop-shadow(0 1px 8px rgba(228, 193, 118, 0.18));
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    grid-template-columns: 2.85rem minmax(0, 1fr);
    min-height: 3.72rem;
    padding: 0.38rem 0.42rem;
    gap: 0.48rem;
    border-radius: 0.72rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    width: 2.85rem;
    height: 2.85rem;
    min-height: 2.85rem;
    border-radius: 0.48rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
    font-size: 0.88rem;
    font-weight: 650;
}
/* Bright mist pass: preserve the ceremonial navy palette without a near-black page. */
body.site-app.home-premium-page {
    --premium-bg: #36536e;
    --premium-surface: #42617c;
    --premium-surface-low: #58748b;
    --premium-card: rgba(74, 99, 124, 0.68);
    --premium-card-strong: rgba(47, 73, 99, 0.92);
    --premium-muted: #d8e1e8;
    --premium-border: rgba(255, 250, 238, 0.18);
    --premium-border-strong: rgba(255, 250, 238, 0.28);
    --premium-shadow: 0 18px 44px -15px rgba(26, 45, 65, 0.26);
    background:
        radial-gradient(circle at 8% 7%, rgba(224, 232, 239, 0.28) 0, transparent 32rem),
        radial-gradient(circle at 94% 17%, rgba(238, 204, 143, 0.2) 0, transparent 30rem),
        linear-gradient(145deg, rgba(81, 112, 140, 0.86), rgba(43, 72, 99, 0.9)),
        url("/images/site-textures/quiet-luxury-site-backdrop-v1.png") center / cover fixed;
}

.home-premium-page .relaxed-navbar {
    background: rgba(32, 57, 83, 0.88);
    box-shadow: 0 10px 28px rgba(26, 45, 65, 0.18);
}

.home-premium-page #guild-calendar::before,
.home-premium-page #home-official-news::before,
.home-premium-page #features::before {
    background:
        radial-gradient(circle at 85% 16%, rgba(245, 209, 144, 0.12), transparent 25rem),
        rgba(69, 94, 119, 0.5);
}

.home-premium-page #home-instagram-feed::before,
.home-premium-page #home-announcements::before,
.home-premium-page #mainland-news::before {
    background: rgba(61, 87, 113, 0.34);
}

.home-premium-page .hero-carousel-card,
.home-premium-page .member-story-section.is-home-hero {
    box-shadow: 0 24px 54px rgba(28, 47, 66, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}/* Sponsor board final pass: a compact patron card, not a detached dark widget. */
.home-premium-page .guild-sponsor-rank-float {
    top: clamp(12.75rem, 23vh, 15.25rem);
    right: clamp(1.25rem, 2.2vw, 2.75rem);
    width: min(14.4rem, calc(100vw - 1.8rem));
    transform: none;
}

.home-premium-page .guild-sponsor-rank-float-panel,
.home-premium-page .guild-sponsor-rank-float-content,
.home-premium-page .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
    width: 100%;
    max-height: none;
    margin: 0 !important;
    padding: 0;
    overflow: visible;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    display: flex;
    align-items: center;
    min-height: 1.7rem;
    margin: 0 0 0.38rem !important;
    padding: 0 0.28rem;
    border: 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-wordmark {
    width: 5.85rem;
    filter: drop-shadow(0 1px 8px rgba(240, 211, 147, 0.22));
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-list {
    display: grid;
    width: 100%;
    gap: 0.42rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 3.25rem minmax(0, 1fr);
    width: 100%;
    min-height: 4.1rem;
    margin: 0;
    padding: 0.42rem 0.5rem;
    gap: 0.56rem;
    border: 1px solid rgba(255, 244, 218, 0.2);
    border-radius: 0.92rem;
    background:
        linear-gradient(100deg, rgba(65, 87, 108, 0.88), rgba(52, 76, 100, 0.76) 72%, rgba(64, 87, 106, 0.66)),
        url("/images/sponsors/patronage-hall-navy-gold-v1.png") center / cover;
    box-shadow: 0 9px 22px rgba(30, 48, 67, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    border-color: rgba(231, 203, 140, 0.34);
    background:
        linear-gradient(100deg, rgba(80, 91, 101, 0.9), rgba(58, 77, 96, 0.8) 72%, rgba(64, 85, 103, 0.68)),
        url("/images/sponsors/patronage-hall-navy-gold-v1.png") center / cover;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    grid-column: 1;
    width: 3.25rem;
    height: 3.25rem;
    min-height: 3.25rem;
    margin: 0;
    border-radius: 0.62rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    box-shadow: inset 0 0 0 1px rgba(255, 241, 204, 0.34), 0 4px 12px rgba(25, 38, 53, 0.2);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main {
    grid-column: 2;
    min-width: 0;
    padding: 0;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
    overflow: hidden;
    color: rgba(255, 250, 242, 0.96);
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.035em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-meta,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-total,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-position,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-view-all-bottom {
    display: none !important;
}

@media (max-width: 1199.98px) {
    .home-premium-page .guild-sponsor-rank-float {
        top: auto;
        right: 1rem;
        bottom: 1rem;
        width: min(13.6rem, calc(100vw - 2rem));
    }
}/* Sponsor board refinement: a quiet glass collector card, without the old black-and-gold treatment. */
.home-premium-page .guild-sponsor-rank-float {
    top: clamp(13.25rem, 24vh, 16rem);
    right: clamp(2.25rem, 3.6vw, 4.5rem);
    width: min(14.8rem, calc(100vw - 2rem));
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    min-height: 1.4rem;
    margin: 0 0 0.3rem !important;
    padding: 0 0.35rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-wordmark {
    width: 4.75rem;
    opacity: 0.82;
    filter: grayscale(0.18) brightness(1.12) drop-shadow(0 1px 5px rgba(228, 206, 157, 0.16));
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    grid-template-columns: 4.15rem minmax(0, 1fr);
    min-height: 5.15rem;
    padding: 0.5rem 0.58rem;
    gap: 0.66rem;
    border: 1px solid rgba(255, 250, 240, 0.2);
    border-left: 2px solid rgba(225, 195, 127, 0.66);
    border-radius: 0.78rem;
    background: linear-gradient(135deg, rgba(238, 243, 242, 0.18), rgba(72, 95, 116, 0.38));
    box-shadow: 0 10px 24px rgba(34, 55, 74, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.16);
    backdrop-filter: blur(17px) saturate(1.08);
    -webkit-backdrop-filter: blur(17px) saturate(1.08);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    border-color: rgba(255, 250, 240, 0.24);
    border-left-color: rgba(225, 195, 127, 0.72);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    width: 4.15rem;
    height: 4.15rem;
    min-height: 4.15rem;
    border-radius: 0.56rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    box-shadow: inset 0 0 0 1px rgba(255, 248, 227, 0.46), 0 4px 10px rgba(33, 51, 68, 0.16);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
    color: rgba(255, 253, 248, 0.96);
    font-size: 1rem;
    font-weight: 650;
    letter-spacing: 0.04em;
    text-shadow: 0 1px 8px rgba(32, 49, 65, 0.22);
}

@media (max-width: 1199.98px) {
    .home-premium-page .guild-sponsor-rank-float {
        right: 1rem;
        bottom: 1rem;
    }
}/* Celestial patronage: floating xianxia name plaques with slow divine light. */
.home-premium-page .guild-sponsor-rank-float {
    top: clamp(13.25rem, 24vh, 16rem);
    right: clamp(2.25rem, 3.6vw, 4.5rem);
    width: min(15.2rem, calc(100vw - 2rem));
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    min-height: 1.55rem;
    margin-bottom: 0.34rem !important;
    padding: 0 0.48rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-wordmark {
    width: 4.9rem;
    opacity: 0.9;
    filter: brightness(1.14) drop-shadow(0 1px 8px rgba(255, 239, 188, 0.34));
    animation: sponsor-celestial-breathe 5.8s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    position: relative;
    isolation: isolate;
    grid-template-columns: 4.25rem minmax(0, 1fr);
    min-height: 5.3rem;
    padding: 0.5rem 0.62rem;
    gap: 0.68rem;
    overflow: hidden;
    border: 1px solid rgba(230, 209, 160, 0.72);
    border-left: 2px solid rgba(213, 180, 109, 0.82);
    border-radius: 0.92rem;
    background:
        linear-gradient(112deg, rgba(255, 253, 244, 0.82), rgba(247, 247, 236, 0.66) 54%, rgba(231, 240, 235, 0.62)),
        url("/images/sponsors/celestial-patron-card-v1.png") center / cover;
    box-shadow: 0 12px 28px rgba(25, 47, 65, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.86);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: -40% -45%;
    pointer-events: none;
    background: linear-gradient(110deg, transparent 40%, rgba(239, 202, 111, 0.32) 49%, rgba(255, 255, 255, 0.66) 52%, transparent 61%);
    transform: translateX(-42%) rotate(6deg);
    animation: sponsor-celestial-flow 8.5s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item::after {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0.28rem;
    pointer-events: none;
    border: 1px solid rgba(218, 188, 116, 0.28);
    border-radius: 0.66rem;
    opacity: 0.75;
    animation: sponsor-celestial-ring 4.6s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main {
    position: relative;
    z-index: 1;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    width: 4.25rem;
    height: 4.25rem;
    min-height: 4.25rem;
    border-radius: 50%;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    box-shadow: 0 0 0 1px rgba(251, 245, 220, 0.96), 0 0 0 3px rgba(206, 174, 102, 0.36), 0 6px 14px rgba(63, 86, 100, 0.18);
    animation: sponsor-celestial-breathe 5.8s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
    color: #52616a;
    font-size: 1rem;
    font-weight: 750;
    letter-spacing: 0.06em;
    text-shadow: none;
}

@keyframes sponsor-celestial-flow {
    0%, 16% { transform: translateX(-48%) rotate(6deg); opacity: 0; }
    32%, 58% { opacity: 0.78; }
    86%, 100% { transform: translateX(48%) rotate(6deg); opacity: 0; }
}

@keyframes sponsor-celestial-breathe {
    0%, 100% { filter: brightness(1.08) drop-shadow(0 1px 6px rgba(255, 238, 186, 0.22)); }
    50% { filter: brightness(1.22) drop-shadow(0 1px 13px rgba(239, 205, 126, 0.5)); }
}

@keyframes sponsor-celestial-ring {
    0%, 100% { border-color: rgba(218, 188, 116, 0.18); box-shadow: inset 0 0 0 rgba(255, 249, 224, 0); }
    50% { border-color: rgba(211, 175, 93, 0.48); box-shadow: inset 0 0 14px rgba(255, 245, 211, 0.34); }
}

@media (prefers-reduced-motion: reduce) {
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-wordmark,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item::before,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item::after,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
        animation: none;
    }
}/* Patron portrait composition: centered portrait with a living gilded name plaque underneath. */
.home-premium-page .guild-sponsor-rank-float {
    width: min(12.4rem, calc(100vw - 2rem));
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    grid-template-columns: 1fr;
    grid-template-rows: 4.75rem auto;
    justify-items: center;
    min-height: 8.65rem;
    padding: 0.58rem 0.72rem 0.68rem;
    gap: 0.34rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    grid-column: 1;
    grid-row: 1;
    width: 4.75rem;
    height: 4.75rem;
    min-height: 4.75rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main {
    grid-column: 1;
    grid-row: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 6.9rem;
    max-width: 100%;
    min-height: 1.7rem;
    padding: 0.22rem 0.82rem 0.2rem;
    overflow: hidden;
    border: 1px solid rgba(255, 239, 181, 0.88);
    border-radius: 999px;
    background: linear-gradient(135deg, #fff6c9 0%, #e9c369 34%, #b77a22 58%, #f7d785 100%);
    box-shadow: 0 3px 10px rgba(183, 117, 26, 0.34), 0 0 18px rgba(255, 219, 120, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.72);
    animation: sponsor-nameplate-breathe 3.8s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main::before {
    content: "";
    position: absolute;
    inset: -80% -42%;
    pointer-events: none;
    background: linear-gradient(105deg, transparent 42%, rgba(255, 255, 255, 0.16) 46%, rgba(255, 255, 255, 0.95) 50%, rgba(255, 239, 177, 0.25) 55%, transparent 60%);
    transform: translateX(-46%) rotate(8deg);
    animation: sponsor-nameplate-shine 3.6s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
    position: relative;
    z-index: 1;
    overflow: hidden;
    max-width: 100%;
    color: #55330e;
    font-size: 0.88rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    line-height: 1.15;
    text-align: center;
    text-overflow: ellipsis;
    text-shadow: 0 1px 0 rgba(255, 250, 220, 0.72);
    white-space: nowrap;
}

@keyframes sponsor-nameplate-shine {
    0%, 24% { transform: translateX(-48%) rotate(8deg); opacity: 0; }
    38%, 56% { opacity: 1; }
    78%, 100% { transform: translateX(48%) rotate(8deg); opacity: 0; }
}

@keyframes sponsor-nameplate-breathe {
    0%, 100% { box-shadow: 0 3px 10px rgba(183, 117, 26, 0.28), 0 0 13px rgba(255, 219, 120, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.72); }
    50% { box-shadow: 0 4px 13px rgba(183, 117, 26, 0.44), 0 0 24px rgba(255, 224, 133, 0.54), inset 0 1px 0 rgba(255, 255, 255, 0.88); }
}

@media (prefers-reduced-motion: reduce) {
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main::before {
        animation: none;
    }
}/* Celestial title procession: the patron board is crowned by a flying dragon and phoenix. */
.home-premium-page .guild-sponsor-rank-float {
    width: min(14.2rem, calc(100vw - 2rem));
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    position: relative;
    z-index: 3;
    display: flex;
    justify-content: center;
    min-height: 3.25rem;
    margin: 0 0 0.44rem !important;
    padding: 0;
    overflow: visible;
    isolation: isolate;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    min-height: 3.25rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-wordmark {
    width: 7.35rem;
    max-width: none;
    opacity: 1;
    filter: brightness(1.22) saturate(1.14) drop-shadow(0 2px 9px rgba(255, 226, 139, 0.58));
    animation: sponsor-divine-title 3.9s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::before,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::after {
    content: "";
    position: absolute;
    z-index: 1;
    pointer-events: none;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    filter: drop-shadow(0 2px 8px rgba(236, 205, 131, 0.4));
    will-change: transform, opacity;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::before {
    top: -0.62rem;
    left: -1.85rem;
    width: 5.25rem;
    height: 4rem;
    background-image: url("/images/sponsors/celestial-dragon-fly-v1.png");
    animation: sponsor-dragon-circuit 6.8s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::after {
    top: -0.82rem;
    right: -1.38rem;
    width: 4.1rem;
    height: 4.35rem;
    background-image: url("/images/sponsors/celestial-phoenix-fly-v1.png");
    animation: sponsor-phoenix-circuit 7.6s ease-in-out infinite;
}

@keyframes sponsor-divine-title {
    0%, 100% { transform: translateY(0) scale(1); filter: brightness(1.14) saturate(1.04) drop-shadow(0 2px 7px rgba(255, 224, 135, 0.36)); }
    50% { transform: translateY(-0.12rem) scale(1.035); filter: brightness(1.42) saturate(1.2) drop-shadow(0 2px 17px rgba(255, 221, 124, 0.86)); }
}

@keyframes sponsor-dragon-circuit {
    0%, 100% { transform: translate3d(-0.22rem, 0.26rem, 0) rotate(-9deg) scale(0.94); opacity: 0.7; }
    48% { transform: translate3d(0.58rem, -0.26rem, 0) rotate(7deg) scale(1.04); opacity: 1; }
}

@keyframes sponsor-phoenix-circuit {
    0%, 100% { transform: translate3d(0.2rem, -0.2rem, 0) rotate(8deg) scale(0.92); opacity: 0.72; }
    52% { transform: translate3d(-0.5rem, 0.3rem, 0) rotate(-7deg) scale(1.06); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-wordmark,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::before,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::after {
        animation: none;
    }
}/* Make the dragon and phoenix visible guardians of the title, not faint background noise. */
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    min-height: 3.65rem;
    margin-bottom: 0.5rem !important;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
    min-height: 3.65rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::before,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::after {
    z-index: 3;
    opacity: 0.96;
    filter: drop-shadow(0 3px 12px rgba(238, 208, 135, 0.56));
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::before {
    top: -1.16rem;
    left: -3.75rem;
    width: 7.85rem;
    height: 5.8rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::after {
    top: -1.34rem;
    right: -3.02rem;
    width: 5.85rem;
    height: 6.05rem;
}

@keyframes sponsor-dragon-circuit {
    0%, 100% { transform: translate3d(-0.35rem, 0.42rem, 0) rotate(-10deg) scale(0.96); opacity: 0.86; }
    48% { transform: translate3d(0.8rem, -0.38rem, 0) rotate(8deg) scale(1.08); opacity: 1; }
}

@keyframes sponsor-phoenix-circuit {
    0%, 100% { transform: translate3d(0.3rem, -0.28rem, 0) rotate(9deg) scale(0.94); opacity: 0.86; }
    52% { transform: translate3d(-0.74rem, 0.4rem, 0) rotate(-8deg) scale(1.1); opacity: 1; }
}/* Imperial celestial patron effects: animated seal border, drifting starlight and a lavish gold aura. */
@property --patron-seal-angle {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    border: 1.5px solid transparent;
    background:
        radial-gradient(circle at 16% 18%, rgba(255, 248, 205, 0.92) 0 1px, transparent 2px),
        radial-gradient(circle at 78% 28%, rgba(255, 221, 121, 0.85) 0 1.2px, transparent 2.5px),
        radial-gradient(circle at 62% 76%, rgba(255, 250, 221, 0.78) 0 1px, transparent 2px),
        linear-gradient(112deg, rgba(255, 253, 244, 0.84), rgba(247, 247, 236, 0.67) 54%, rgba(231, 240, 235, 0.64)) padding-box,
        conic-gradient(from var(--patron-seal-angle), #f9e9a8, #bc7d20, #fff8cf, #d29431, #fff1a8, #f9e9a8) border-box;
    background-size: 92px 92px, 126px 126px, 106px 106px, auto, auto;
    background-position: 0 0, 44px 30px, 18px 58px, center, center;
    box-shadow: 0 12px 28px rgba(25, 47, 65, 0.18), 0 0 16px rgba(248, 201, 83, 0.38), 0 0 34px rgba(255, 236, 146, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.9);
    animation: sponsor-star-drift 9s linear infinite, sponsor-seal-rotate 5.5s linear infinite, sponsor-card-aura 3.4s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item::after {
    z-index: 4;
    inset: -2px;
    border: 0;
    border-radius: 1.04rem;
    background: conic-gradient(from var(--patron-seal-angle), transparent 0 9%, rgba(255, 251, 211, 0.98) 13%, rgba(224, 170, 53, 0.98) 20%, transparent 28% 55%, rgba(255, 232, 144, 0.94) 64%, transparent 74% 100%);
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    padding: 1.5px;
    box-shadow: 0 0 14px rgba(255, 220, 108, 0.46);
    opacity: 0.94;
    animation: sponsor-seal-rotate 5.5s linear infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    box-shadow: 0 0 0 1px rgba(255, 252, 228, 0.98), 0 0 0 4px rgba(227, 177, 65, 0.58), 0 0 18px rgba(251, 202, 85, 0.58), 0 7px 16px rgba(63, 86, 100, 0.2);
    animation: sponsor-photo-halo 2.9s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main {
    border-color: rgba(255, 247, 191, 0.98);
    background: linear-gradient(135deg, #fff9d8 0%, #f0cf77 24%, #ad6814 50%, #f7d781 76%, #fff7cb 100%);
    box-shadow: 0 3px 11px rgba(183, 117, 26, 0.46), 0 0 14px rgba(255, 218, 104, 0.66), 0 0 28px rgba(255, 236, 157, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

@keyframes sponsor-seal-rotate {
    to { --patron-seal-angle: 360deg; }
}

@keyframes sponsor-star-drift {
    to { background-position: 92px 92px, 170px 156px, 124px 164px, center, center; }
}

@keyframes sponsor-card-aura {
    0%, 100% { box-shadow: 0 12px 28px rgba(25, 47, 65, 0.18), 0 0 16px rgba(248, 201, 83, 0.34), 0 0 34px rgba(255, 236, 146, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.9); }
    50% { box-shadow: 0 14px 31px rgba(25, 47, 65, 0.22), 0 0 25px rgba(250, 194, 61, 0.72), 0 0 48px rgba(255, 230, 126, 0.44), inset 0 1px 0 rgba(255, 255, 255, 0.96); }
}

@keyframes sponsor-photo-halo {
    0%, 100% { transform: scale(0.98); filter: brightness(1.02); }
    50% { transform: scale(1.035); filter: brightness(1.14) drop-shadow(0 0 8px rgba(255, 226, 131, 0.6)); }
}

@media (prefers-reduced-motion: reduce) {
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item::after,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
        animation: none;
    }
}/* Title clarity and celestial depth: guardians orbit outside the lettering, while mist and stardust add dimension. */
.home-premium-page .guild-sponsor-rank-float {
    isolation: isolate;
}

.home-premium-page .guild-sponsor-rank-float::before,
.home-premium-page .guild-sponsor-rank-float::after {
    content: "";
    position: absolute;
    z-index: -1;
    pointer-events: none;
    border-radius: 50%;
    filter: blur(7px);
    opacity: 0.78;
    will-change: transform, opacity;
}

.home-premium-page .guild-sponsor-rank-float::before {
    top: 0.72rem;
    left: -2.7rem;
    width: 7.8rem;
    height: 3.3rem;
    background:
        radial-gradient(ellipse at 65% 42%, rgba(255, 244, 194, 0.44), transparent 25%),
        radial-gradient(ellipse at 35% 60%, rgba(225, 242, 236, 0.64), transparent 62%);
    animation: sponsor-cloud-left 7.6s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float::after {
    right: -2.35rem;
    bottom: 0.4rem;
    width: 6.8rem;
    height: 3.2rem;
    background:
        radial-gradient(ellipse at 33% 42%, rgba(255, 236, 170, 0.38), transparent 22%),
        radial-gradient(ellipse at 67% 62%, rgba(222, 241, 236, 0.52), transparent 64%);
    animation: sponsor-cloud-right 8.8s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float-panel {
    position: relative;
    z-index: 1;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    z-index: 5;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
    z-index: 6;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-wordmark {
    position: relative;
    z-index: 7;
    filter: brightness(1.28) saturate(1.18) drop-shadow(0 2px 10px rgba(255, 226, 139, 0.7));
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::before,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::after {
    z-index: 4;
    opacity: 0.94;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::before {
    top: -0.85rem;
    left: -5.85rem;
    width: 6.65rem;
    height: 5rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::after {
    top: -0.94rem;
    right: -4.15rem;
    width: 5.25rem;
    height: 5.55rem;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item {
    overflow: visible;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item::before {
    opacity: 0.9;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item::after {
    opacity: 1;
}

@keyframes sponsor-cloud-left {
    0%, 100% { transform: translate3d(-0.35rem, 0.2rem, 0) scale(0.95); opacity: 0.42; }
    50% { transform: translate3d(0.6rem, -0.26rem, 0) scale(1.08); opacity: 0.86; }
}

@keyframes sponsor-cloud-right {
    0%, 100% { transform: translate3d(0.34rem, 0.14rem, 0) scale(0.94); opacity: 0.38; }
    50% { transform: translate3d(-0.56rem, -0.22rem, 0) scale(1.1); opacity: 0.78; }
}/* New celestial trail wordmark: controlled cloud volume and a real travelling stroke-light. */
.home-premium-page .guild-sponsor-rank-float::before,
.home-premium-page .guild-sponsor-rank-float::after {
    z-index: 0;
    filter: blur(3.5px);
    opacity: 0.96;
}

.home-premium-page .guild-sponsor-rank-float::before {
    top: 0.92rem;
    left: -1.82rem;
    width: 5.85rem;
    height: 2.7rem;
    background:
        radial-gradient(ellipse at 62% 43%, rgba(255, 246, 200, 0.78), transparent 22%),
        radial-gradient(ellipse at 35% 60%, rgba(218, 242, 235, 0.84), transparent 62%);
}

.home-premium-page .guild-sponsor-rank-float::after {
    right: -1.72rem;
    bottom: 0.6rem;
    width: 5.35rem;
    height: 2.55rem;
    background:
        radial-gradient(ellipse at 34% 43%, rgba(255, 232, 151, 0.66), transparent 21%),
        radial-gradient(ellipse at 67% 62%, rgba(218, 241, 236, 0.76), transparent 64%);
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-float-content {
    position: relative;
    z-index: 2;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
    min-height: 3.85rem;
    margin-bottom: 0.38rem !important;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
    min-height: 3.85rem;
    width: 100%;
    justify-content: center;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-wordmark {
    width: 8.85rem;
    max-width: none;
    filter: brightness(1.18) saturate(1.12) drop-shadow(0 2px 10px rgba(255, 221, 117, 0.66));
    animation: sponsor-divine-title 4.4s ease-in-out infinite;
}

.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title::after {
    content: "";
    position: absolute;
    z-index: 8;
    top: 0.15rem;
    left: 50%;
    width: 9.2rem;
    height: 3.3rem;
    pointer-events: none;
    background: linear-gradient(105deg, transparent 36%, rgba(255, 231, 126, 0.08) 43%, rgba(255, 255, 243, 0.98) 50%, rgba(255, 224, 103, 0.14) 57%, transparent 64%);
    transform: translateX(-142%) skewX(-14deg);
    -webkit-mask: url("/images/wordmarks/sponsor-rank-celestial-trail-v2.png") center / contain no-repeat;
    mask: url("/images/wordmarks/sponsor-rank-celestial-trail-v2.png") center / contain no-repeat;
    mix-blend-mode: screen;
    opacity: 0;
    animation: sponsor-wordmark-sunbeam 3.35s ease-in-out infinite;
}

@keyframes sponsor-wordmark-sunbeam {
    0%, 18% { transform: translateX(-142%) skewX(-14deg); opacity: 0; }
    29%, 54% { opacity: 1; }
    78%, 100% { transform: translateX(42%) skewX(-14deg); opacity: 0; }
}/* Visible but contained cloud inlay inside every patron plaque. */
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
.home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
    background-image:
        radial-gradient(circle at 16% 18%, rgba(255, 248, 205, 0.96) 0 1px, transparent 2px),
        radial-gradient(circle at 78% 28%, rgba(255, 221, 121, 0.9) 0 1.2px, transparent 2.5px),
        radial-gradient(circle at 62% 76%, rgba(255, 250, 221, 0.88) 0 1px, transparent 2px),
        linear-gradient(112deg, rgba(255, 253, 244, 0.64), rgba(247, 247, 236, 0.45) 54%, rgba(231, 240, 235, 0.42)),
        url("/images/sponsors/celestial-patron-card-v1.png"),
        conic-gradient(from var(--patron-seal-angle), #f9e9a8, #bc7d20, #fff8cf, #d29431, #fff1a8, #f9e9a8);
    background-size: 92px 92px, 126px 126px, 106px 106px, auto, 108% auto, auto;
    background-position: 0 0, 44px 30px, 18px 58px, center, center 54%, center;
    background-repeat: repeat, repeat, repeat, no-repeat, no-repeat, repeat;
    background-origin: padding-box, padding-box, padding-box, padding-box, padding-box, border-box;
    background-clip: padding-box, padding-box, padding-box, padding-box, padding-box, border-box;
}

@keyframes sponsor-star-drift {
    to { background-position: 92px 92px, 170px 156px, 124px 164px, center, center 54%, center; }
}/* Responsive patron board: only floats on wide desktop; on touch layouts it becomes a readable content card. */
@media (max-width: 1199.98px) {
    .home-premium-page #guild-calendar {
        overflow: visible;
    }

    .home-premium-page .guild-sponsor-rank-float {
        position: relative;
        z-index: 3;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        width: min(100% - 2rem, 22rem);
        margin: 0.5rem auto 1.15rem;
        transform: none;
    }

    .home-premium-page .guild-sponsor-rank-float-panel,
    .home-premium-page .guild-sponsor-rank-float-content {
        width: 100%;
        overflow: visible;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
        min-height: 3.35rem;
        margin-bottom: 0.34rem !important;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
        min-height: 3.35rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-wordmark {
        width: min(8.1rem, 50vw);
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::before {
        top: -0.72rem;
        left: -3.9rem;
        width: 5.45rem;
        height: 4.2rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::after {
        top: -0.82rem;
        right: -3.15rem;
        width: 4.35rem;
        height: 4.7rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
        width: min(100%, 12.6rem);
        margin-right: auto;
        margin-left: auto;
    }
}

@media (max-width: 575.98px) {
    .home-premium-page .guild-sponsor-rank-float {
        width: min(100% - 1.25rem, 19.25rem);
        margin-top: 0.2rem;
        margin-bottom: 0.95rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head {
        min-height: 2.9rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title {
        min-height: 2.9rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-wordmark {
        width: min(7.15rem, 52vw);
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::before {
        top: -0.5rem;
        left: -3.25rem;
        width: 4.6rem;
        height: 3.55rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head::after {
        top: -0.62rem;
        right: -2.8rem;
        width: 3.8rem;
        height: 4.05rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-head .rule-title::after {
        width: 7.5rem;
        height: 2.7rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-item.is-top {
        grid-template-rows: 4.25rem auto;
        min-height: 7.8rem;
        padding: 0.48rem 0.6rem 0.58rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase,
    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-showcase .member-showcase-mini-stage {
        width: 4.25rem;
        height: 4.25rem;
        min-height: 4.25rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-main {
        min-width: 6.25rem;
        min-height: 1.55rem;
        padding: 0.17rem 0.68rem;
    }

    .home-premium-page .guild-sponsor-rank-float .guild-sponsor-rank-name {
        font-size: 0.82rem;
    }
}
/* On phones the patronage hall leads the page, then the welcome copy and member story play as one scene. */
.home-premium-page .member-story-mobile-sponsor-slot {
    display: none;
}

@media (min-width: 1200px) {
    .home-premium-page .member-story-mobile-welcome-suite {
        display: contents;
    }
}

@media (max-width: 1199.98px) {
    .home-premium-page .member-story-mobile-sponsor-slot {
        display: block;
        min-width: 0;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-float {
        width: min(100%, 22rem);
        margin: 0 auto 0.35rem;
    }
}

@media (max-width: 1199.98px) {
    .home-premium-page .member-story-home-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
    }

    .home-premium-page .member-story-mobile-welcome-suite {
        overflow: hidden;
        border: 1px solid rgba(255, 245, 210, 0.16);
        border-radius: 1.45rem;
        background: linear-gradient(145deg, rgba(12, 28, 54, 0.82), rgba(7, 17, 35, 0.74));
        box-shadow: 0 20px 42px rgba(3, 8, 22, 0.26);
    }

    .home-premium-page .member-story-mobile-welcome-suite .member-story-hero-intro {
        margin: 0;
        padding: 1.15rem 1.15rem 0.8rem;
    }

    .home-premium-page .member-story-mobile-welcome-suite .member-story-carousel {
        min-height: clamp(390px, 112vw, 560px);
        border: 0;
        border-top: 1px solid rgba(255, 245, 210, 0.13);
        border-radius: 0 0 1.35rem 1.35rem;
        box-shadow: none;
    }
}

@media (max-width: 575.98px) {
    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-float {
        width: min(100%, 19.25rem);
        margin-bottom: 0.15rem;
    }
}

/*
 * Mobile homepage composition.
 * Lead with the welcome/member story, keep patron recognition below it, and
 * fit the complete month grid inside the viewport without a hidden side-scroll.
 */
@media (max-width: 767.98px) {
    body.site-app.home-premium-page {
        overflow-x: hidden;
    }

    .home-premium-page .member-story-section.is-home-hero {
        padding: 0.7rem 0 1.5rem !important;
    }

    .home-premium-page .member-story-section.is-home-hero > .container,
    .home-premium-page #guild-calendar > .container {
        max-width: none;
        padding-right: 0.75rem !important;
        padding-left: 0.75rem !important;
    }

    .home-premium-page .member-story-home-grid {
        gap: 0.7rem;
    }

    .home-premium-page .member-story-mobile-welcome-suite {
        overflow: hidden;
        border-color: rgba(113, 132, 177, 0.22);
        border-radius: 1.25rem;
        background:
            radial-gradient(circle at 8% 0%, rgba(207, 218, 248, 0.72), transparent 18rem),
            linear-gradient(145deg, rgba(255, 253, 248, 0.98), rgba(235, 240, 250, 0.98));
        box-shadow: 0 18px 36px rgba(55, 70, 108, 0.2);
    }

    .home-premium-page .member-story-mobile-welcome-suite .member-story-hero-intro {
        padding: 0.85rem 1rem 0.75rem;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-title {
        margin: 0.42rem 0 0.3rem;
        color: #17243d;
        font-size: clamp(1.85rem, 8.8vw, 2.35rem);
        line-height: 1.12;
        text-shadow: none;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-subtitle {
        display: -webkit-box;
        overflow: hidden;
        color: #59677d;
        font-size: 0.86rem;
        line-height: 1.52;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .home-premium-page .member-story-mobile-welcome-suite .hero-pill {
        color: #6a4a1b;
        border-color: rgba(190, 145, 65, 0.32);
        background: rgba(255, 248, 226, 0.82);
        box-shadow: 0 6px 16px rgba(139, 103, 42, 0.1);
    }

    .home-premium-page .member-story-home-grid .member-story-hero-note {
        display: none;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-side {
        margin-top: 0.58rem;
    }

    .home-premium-page .member-story-hero-actions .btn {
        min-height: 2.8rem;
        padding: 0.58rem 1rem;
    }

    .home-premium-page .member-story-mobile-welcome-suite .member-story-carousel {
        min-height: clamp(585px, 160vw, 610px);
        border-color: rgba(122, 138, 178, 0.2);
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
        border-radius: 0 0 1.2rem 1.2rem;
        background: linear-gradient(180deg, #142139 0%, #0c1426 100%);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
    }

    .home-premium-page .member-story-home-grid .member-story-layout {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto auto;
        align-content: start;
        align-items: stretch;
        gap: 0;
        padding: 0.55rem 0.45rem 3.5rem;
    }

    .home-premium-page .member-story-portrait-wrap {
        width: 100%;
        max-width: none;
        margin: 0 auto;
        border-radius: 1rem 1rem 0 0;
    }

    .home-premium-page .member-story-portrait {
        max-height: none;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue {
        z-index: 3;
        width: 100%;
        margin: 0;
        padding: 0.78rem 1rem 0.85rem;
        border-color: rgba(125, 142, 180, 0.22);
        border-top: 0;
        border-radius: 0 0 1rem 1rem;
        color: #17243d;
        background:
            radial-gradient(circle at 100% 0%, rgba(222, 229, 248, 0.7), transparent 13rem),
            linear-gradient(145deg, rgba(255, 255, 255, 0.97), rgba(238, 242, 250, 0.96));
        box-shadow: 0 16px 28px rgba(3, 8, 22, 0.18);
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue::before {
        left: 1rem;
        width: 3.6rem;
        background: linear-gradient(90deg, #d3a34d, #8ea5dc);
        box-shadow: none;
    }

    .home-premium-page .member-story-dialogue h3 {
        color: #17243d;
        font-size: clamp(1.45rem, 7vw, 1.95rem);
        text-shadow: none;
    }

    .home-premium-page .member-story-dialogue p {
        margin: 0.42rem 0 0.5rem;
        color: #536077;
        font-size: 0.8rem;
        line-height: 1.45;
        -webkit-line-clamp: 1;
    }

    .home-premium-page .member-story-nameplate {
        margin-bottom: 0.3rem;
        color: #756344;
        font-size: 0.66rem;
    }

    .home-premium-page .member-story-name-dot {
        background: #d3a34d;
        box-shadow: 0 0 0 4px rgba(211, 163, 77, 0.14);
    }

    .home-premium-page .member-story-art-label {
        margin-top: 0.5rem;
        color: #765726;
        border-color: rgba(190, 145, 65, 0.28);
        background: rgba(255, 247, 221, 0.72);
    }

    .home-premium-page .member-story-profile-link {
        color: #294675;
        font-size: 0.82rem;
    }

    .home-premium-page .member-story-nav {
        top: 29.5%;
        width: 2.75rem;
        height: 2.75rem;
        border-color: rgba(255, 255, 255, 0.48);
        background: rgba(21, 30, 50, 0.48);
    }

    .home-premium-page .member-story-nav.is-prev {
        left: 0.45rem;
    }

    .home-premium-page .member-story-nav.is-next {
        right: 0.45rem;
    }

    .home-premium-page .member-story-footer {
        right: 0.9rem;
        bottom: 0.85rem;
        left: 0.9rem;
    }

    .home-premium-page .member-story-ambient {
        inset: -3%;
        width: 106%;
        height: 106%;
    }

    .home-premium-page .member-story-mobile-sponsor-slot {
        margin-top: 0.4rem;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-float {
        width: 100%;
        margin: 0;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-float-content > .guild-sponsor-rank-card {
        padding: 0.72rem;
        border-color: rgba(224, 185, 103, 0.4);
        border-radius: 1.2rem;
        background:
            radial-gradient(circle at 100% 0%, rgba(246, 216, 139, 0.28), transparent 11rem),
            linear-gradient(135deg, rgba(255, 254, 250, 0.99), rgba(235, 240, 250, 0.98));
        box-shadow: 0 18px 34px rgba(55, 70, 108, 0.2);
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-float::before,
    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-float::after,
    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-head::before,
    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-head::after,
    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-head .rule-title::after,
    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-item::before,
    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-item::after {
        display: none;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-head {
        min-height: 0;
        margin: 0 0 0.6rem !important;
        padding: 0.1rem 0.2rem 0.45rem;
        justify-content: center !important;
        border-bottom: 1px solid rgba(141, 108, 47, 0.14);
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-head .rule-title {
        min-height: 0;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-wordmark {
        width: auto;
        max-width: 7.4rem;
        height: 2.05rem;
        object-fit: contain;
        filter: drop-shadow(0 4px 8px rgba(118, 78, 20, 0.18));
        animation: none;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-list {
        display: block;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-item:nth-child(n + 2) {
        display: none;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-item,
    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-item.is-top {
        display: grid;
        width: 100%;
        min-height: 0;
        margin: 0;
        padding: 0;
        overflow: hidden;
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "showcase"
            "main";
        grid-template-rows: clamp(14.25rem, 68vw, 16rem) auto;
        align-items: stretch;
        gap: 0;
        border-color: rgba(92, 102, 132, 0.16);
        border-radius: 0.95rem;
        background: rgba(255, 255, 255, 0.74);
        box-shadow: 0 14px 26px rgba(27, 39, 72, 0.14);
        transform: none;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-showcase,
    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-showcase .member-showcase-mini-stage {
        width: 100%;
        height: clamp(14.25rem, 68vw, 16rem);
        min-height: clamp(14.25rem, 68vw, 16rem);
        border-radius: 0.95rem 0.95rem 0 0;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-showcase {
        grid-area: showcase;
        grid-column: 1;
        grid-row: 1;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-main {
        grid-area: main;
        grid-column: 1;
        grid-row: 2;
        align-self: center;
        min-width: 0;
        min-height: 0;
        padding: 0.75rem 1rem 0.82rem;
        border: 0;
        background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(243, 236, 218, 0.9));
        box-shadow: none;
    }

    .home-premium-page .member-story-mobile-sponsor-slot .guild-sponsor-rank-name {
        overflow: hidden;
        color: #2d3145;
        font-size: 1.08rem;
        font-weight: 900;
        text-align: center;
        text-overflow: ellipsis;
        white-space: nowrap;
        text-shadow: none;
    }

    .home-premium-page #guild-calendar {
        padding-top: 2.3rem !important;
        padding-bottom: 2.6rem !important;
    }

    .home-premium-page .guild-calendar-card {
        padding: 0.35rem;
        border-radius: 1rem;
    }

    .home-premium-page .guild-calendar-wrap {
        overflow: hidden;
        border-radius: 0.8rem;
    }

    .home-premium-page .guild-calendar-table {
        width: 100%;
        min-width: 0 !important;
        table-layout: fixed;
    }

    .home-premium-page .guild-calendar-table thead th {
        padding: 0.42rem 0.1rem;
        font-size: 0.68rem;
    }

    .home-premium-page .guild-day-cell {
        min-width: 0;
        min-height: 4.75rem;
        height: 4.75rem;
        padding: 0.18rem !important;
    }

    .home-premium-page .guild-day-head {
        justify-content: center;
    }

    .home-premium-page .guild-day-num {
        min-width: 1.55rem;
        height: 1.55rem;
        font-size: 0.72rem;
    }

    .home-premium-page .guild-day-today-pill {
        display: none;
    }

    .home-premium-page .guild-day-event {
        min-height: 1.25rem;
        margin-top: 0.16rem;
        padding: 0.12rem 0.08rem;
        border-radius: 0.45rem;
        text-align: center;
    }

    .home-premium-page .guild-day-tag {
        display: block;
        overflow: hidden;
        margin: 0;
        padding: 0;
        border-radius: 0;
        background: transparent;
        font-size: 0.55rem;
        line-height: 1.05;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .home-premium-page .guild-day-title {
        display: none;
    }

    .home-premium-page .guild-day-more {
        display: block;
        width: 100%;
        margin-top: 0.12rem;
        padding: 0;
        border: 0;
        background: transparent;
        font-size: 0.55rem;
        text-align: center;
    }

    .home-premium-page .front-app-download-float {
        left: 0.5rem;
        bottom: calc(0.55rem + env(safe-area-inset-bottom, 0px));
    }

    .home-premium-page .front-app-download-toggle {
        width: 2.35rem;
        min-width: 2.35rem;
        height: 2.35rem;
        min-height: 2.35rem;
        justify-content: center;
        padding: 0;
        border-color: rgba(120, 139, 181, 0.34);
        color: #30466f;
        background: rgba(251, 252, 255, 0.94);
        box-shadow: 0 10px 22px rgba(35, 51, 84, 0.18);
    }

    .home-premium-page .front-app-download-toggle > span {
        display: none;
    }

    .home-premium-page .front-feedback-mailbox-fab {
        right: 0.4rem !important;
        bottom: calc(3.35rem + env(safe-area-inset-bottom, 0px)) !important;
        width: 2.25rem;
        height: 2.25rem;
        color: #765726 !important;
        border-color: rgba(190, 145, 65, 0.34) !important;
        background: rgba(255, 251, 239, 0.94) !important;
        box-shadow: 0 10px 22px rgba(75, 57, 25, 0.16);
        font-size: 0.9rem;
    }

    .home-premium-page .front-support-assistant-btn {
        right: 0.4rem !important;
        bottom: calc(0.55rem + env(safe-area-inset-bottom, 0px)) !important;
        width: 2.25rem;
        height: 2.25rem;
        justify-content: center;
        padding: 0 !important;
        border-color: rgba(120, 139, 181, 0.34) !important;
        border-radius: 50%;
        background: rgba(251, 252, 255, 0.94) !important;
        box-shadow: 0 10px 22px rgba(35, 51, 84, 0.18);
    }

    .home-premium-page .front-support-assistant-btn > span {
        display: none;
    }

    .home-premium-page .front-support-assistant-avatar {
        width: 1.5rem;
        height: 1.5rem;
    }
}

/* 2026-07-24: gallery stage — member photos and patronage own the first screen. */
body.site-app.home-premium-page {
    --home-page: #0d1024;
    --home-page-soft: #131735;
    --home-surface: #1a1f42;
    --home-surface-hover: #222753;
    --home-primary: #a8b5ff;
    --home-primary-deep: #6e65be;
    --home-pink: #f0b8d6;
    --home-sponsor: #f1d08a;
    --home-text: #f8f7ff;
    --home-text-muted: #bcc1d8;
    --home-border: rgba(175, 184, 227, 0.18);
    --home-radius-large: 24px;
    --home-radius-medium: 16px;
    --home-shadow-card: 0 24px 70px rgba(0, 0, 0, 0.28);
    color: var(--home-text);
    background:
        radial-gradient(circle at 12% 8%, rgba(110, 101, 190, 0.2), transparent 30rem),
        radial-gradient(circle at 90% 24%, rgba(240, 184, 214, 0.1), transparent 28rem),
        linear-gradient(180deg, var(--home-page), #10142d 48%, var(--home-page));
    font-family: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
}

body.site-app.home-premium-page::before {
    opacity: 0.34;
    background:
        radial-gradient(1px 1px at 12% 18%, rgba(255, 255, 255, 0.62), transparent 70%),
        radial-gradient(1px 1px at 31% 72%, rgba(168, 181, 255, 0.52), transparent 70%),
        radial-gradient(1.5px 1.5px at 68% 22%, rgba(255, 255, 255, 0.48), transparent 70%),
        radial-gradient(1px 1px at 88% 63%, rgba(240, 184, 214, 0.48), transparent 70%);
    background-size: 190px 190px, 240px 240px, 280px 280px, 320px 320px;
}

body.site-app.home-premium-page::after {
    display: none;
}

.home-premium-page .main-shell {
    background: transparent;
}

.home-premium-page .relaxed-navbar {
    min-height: 60px;
    padding-block: 0.35rem !important;
    border-bottom: 1px solid var(--home-border);
    background: rgba(13, 16, 36, 0.88) !important;
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.home-premium-page .relaxed-navbar .brand-logo {
    height: 42px;
}

.home-premium-page .relaxed-navbar .brand-title,
.home-premium-page .relaxed-navbar .navbar-brand,
.home-premium-page .relaxed-navbar .nav-link {
    color: var(--home-text) !important;
}

.home-premium-page .relaxed-navbar .nav-link {
    padding: 0.52rem 0.72rem;
    border-radius: 999px;
    font-size: 0.88rem;
}

.home-premium-page .relaxed-navbar .nav-link.active,
.home-premium-page .relaxed-navbar .nav-link:hover,
.home-premium-page .relaxed-navbar .nav-link:focus,
.home-premium-page .relaxed-navbar .nav-link.show {
    color: #11142c !important;
    background: var(--home-primary);
}

.home-premium-page .relaxed-navbar .dropdown-menu {
    border-color: var(--home-border);
    background: rgba(26, 31, 66, 0.98);
    box-shadow: var(--home-shadow-card);
}

.home-premium-page .relaxed-navbar .dropdown-item {
    color: var(--home-text);
}

.home-premium-page .relaxed-navbar .dropdown-item:hover,
.home-premium-page .relaxed-navbar .dropdown-item:focus {
    color: #11142c;
    background: var(--home-primary);
}

.home-premium-page .member-story-section.is-home-hero {
    padding: 1.15rem 0 1rem !important;
    background: transparent;
}

.home-premium-page .member-story-section.is-home-hero::before {
    display: none;
}

.home-premium-page .member-story-section.is-home-hero > .container,
.home-premium-page .home-secondary-stage > .container,
.home-premium-page .home-social-updates-wrap > .container,
.home-premium-page .home-news-hub > .container,
.home-premium-page #features > .container {
    width: min(1440px, calc(100% - 64px));
    max-width: none;
    margin-inline: auto;
    padding-inline: 0 !important;
}

.home-premium-page .member-story-home-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(320px, 1fr);
    align-items: stretch;
    gap: 24px;
    min-height: 580px;
}

.home-premium-page .member-story-mobile-welcome-suite {
    position: relative;
    display: block;
    min-width: 0;
    min-height: 580px;
}

.home-premium-page .member-story-home-grid .member-story-hero-intro {
    position: absolute;
    z-index: 7;
    top: 1.1rem;
    right: 1.1rem;
    left: 1.1rem;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin: 0;
    padding: 0;
    overflow: visible;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    pointer-events: none;
}

.home-premium-page .member-story-home-grid .member-story-hero-copy {
    min-width: 0;
    max-width: min(62%, 34rem);
    padding: 0.9rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 1rem;
    background: rgba(13, 16, 36, 0.55);
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.home-premium-page .member-story-home-grid .member-story-hero-copy .hero-pill {
    color: var(--home-primary);
    background: transparent;
}

.home-premium-page .member-story-home-grid .member-story-hero-copy .hero-title {
    margin: 0.35rem 0 0.25rem;
    overflow: hidden;
    color: var(--home-text);
    font-size: clamp(1.55rem, 2.35vw, 2.35rem);
    line-height: 1.15;
    text-overflow: ellipsis;
    text-shadow: 0 6px 22px rgba(0, 0, 0, 0.5);
    white-space: nowrap;
}

.home-premium-page .member-story-home-grid .member-story-hero-copy .hero-subtitle {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: var(--home-text-muted);
    font-size: 0.84rem;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.home-premium-page .member-story-home-grid .member-story-hero-side,
.home-premium-page .member-story-home-grid .member-story-hero-actions {
    display: flex;
    width: auto;
    pointer-events: auto;
}

.home-premium-page .member-story-home-grid .member-story-hero-actions .btn {
    min-width: 0;
    padding: 0.62rem 0.9rem;
    border-color: transparent;
    color: #fff;
    background: var(--home-primary-deep);
    box-shadow: 0 10px 26px rgba(32, 27, 78, 0.38);
}

.home-premium-page .member-story-home-grid .member-story-carousel {
    width: 100%;
    height: 580px;
    min-height: 580px;
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius-large);
    background: #11152f;
    box-shadow: var(--home-shadow-card);
}

.home-premium-page .member-story-home-grid .member-story-ambient {
    inset: -24px;
    width: calc(100% + 48px);
    height: calc(100% + 48px);
    object-fit: cover;
    filter: blur(28px) brightness(0.45) saturate(1.15);
    transform: scale(1.08);
}

.home-premium-page .member-story-home-grid .member-story-shade {
    background:
        linear-gradient(180deg, rgba(13, 16, 36, 0.2) 0%, rgba(13, 16, 36, 0.05) 45%, rgba(13, 16, 36, 0.94) 100%),
        radial-gradient(circle at 75% 30%, rgba(168, 181, 255, 0.17), transparent 45%);
}

.home-premium-page .member-story-home-grid .member-story-layout {
    position: relative;
    display: block;
    height: 100%;
    padding: 0;
}

.home-premium-page .member-story-home-grid .member-story-portrait-wrap {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    aspect-ratio: auto;
    overflow: hidden;
    border-radius: inherit;
    background: transparent;
    transform: none;
}

.home-premium-page .member-story-home-grid .member-story-portrait-wrap::before,
.home-premium-page .member-story-home-grid .member-story-portrait-wrap::after {
    display: none;
}

.home-premium-page .member-story-home-grid .member-story-portrait {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: contain;
    object-position: center;
    filter: drop-shadow(0 24px 34px rgba(0, 0, 0, 0.42));
    animation: none;
}

.home-premium-page .member-story-home-grid .member-story-dialogue {
    position: absolute;
    z-index: 4;
    right: 1.4rem;
    bottom: 4.3rem;
    left: 1.4rem;
    width: min(35rem, calc(100% - 2.8rem));
    margin: 0;
    padding: 1rem 1.15rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 1rem;
    color: var(--home-text);
    background: linear-gradient(135deg, rgba(13, 16, 36, 0.82), rgba(26, 31, 66, 0.68));
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.24);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.home-premium-page .member-story-home-grid .member-story-dialogue::before {
    width: 3rem;
    background: linear-gradient(90deg, var(--home-primary), var(--home-pink));
    box-shadow: 0 0 16px rgba(168, 181, 255, 0.5);
}

.home-premium-page .member-story-home-grid .member-story-nameplate {
    margin-bottom: 0.35rem;
    color: var(--home-primary);
}

.home-premium-page .member-story-home-grid .member-story-name-dot {
    background: var(--home-pink);
    box-shadow: 0 0 0 4px rgba(240, 184, 214, 0.12);
}

.home-premium-page .member-story-home-grid .member-story-dialogue h3 {
    overflow: hidden;
    color: var(--home-text);
    font-size: clamp(1.55rem, 3vw, 2.4rem);
    text-overflow: ellipsis;
    text-shadow: none;
    white-space: nowrap;
}

.home-premium-page .member-story-home-grid .member-story-art-label {
    margin-top: 0.42rem;
    color: var(--home-sponsor);
    border-color: rgba(241, 208, 138, 0.28);
    background: rgba(241, 208, 138, 0.08);
}

.home-premium-page .member-story-home-grid .member-story-dialogue p {
    margin: 0.55rem 0 0.45rem;
    color: var(--home-text-muted);
    font-size: 0.88rem;
    line-height: 1.55;
    -webkit-line-clamp: 2;
}

.home-premium-page .member-story-home-grid .member-story-profile-link {
    color: var(--home-primary);
}

.home-premium-page .member-story-home-grid .member-story-profile-link:hover,
.home-premium-page .member-story-home-grid .member-story-profile-link:focus-visible {
    color: var(--home-pink);
}

.home-premium-page .member-story-home-grid .member-story-nav {
    top: auto;
    bottom: 1.05rem;
    width: 2.55rem;
    height: 2.55rem;
    border-color: var(--home-border);
    background: rgba(13, 16, 36, 0.78);
    transform: none;
}

.home-premium-page .member-story-home-grid .member-story-nav:hover,
.home-premium-page .member-story-home-grid .member-story-nav:focus-visible {
    color: #11142c;
    background: var(--home-primary);
    transform: translateY(-2px);
}

.home-premium-page .member-story-home-grid .member-story-nav.is-prev {
    left: 1rem;
}

.home-premium-page .member-story-home-grid .member-story-nav.is-next {
    right: 1rem;
}

.home-premium-page .member-story-home-grid .member-story-footer {
    right: 4.15rem;
    bottom: 1.1rem;
    left: 4.15rem;
    gap: 0.8rem;
}

.home-premium-page .member-story-home-grid .member-story-count {
    flex: 0 0 auto;
    padding: 0;
    border: 0;
    color: var(--home-text-muted);
    background: transparent;
    box-shadow: none;
    font-variant-numeric: tabular-nums;
}

.home-premium-page .member-story-home-grid .member-story-count [data-member-current] {
    color: var(--home-text);
}

.home-premium-page .member-story-home-grid .member-story-progress {
    background: rgba(255, 255, 255, 0.18);
}

.home-premium-page .member-story-home-grid .member-story-progress span {
    background: linear-gradient(90deg, var(--home-primary), var(--home-pink));
}

.home-premium-page .member-story-sponsor-stage {
    position: relative;
    min-width: 0;
    min-height: 580px;
    overflow: hidden;
    border: 1px solid rgba(241, 208, 138, 0.26);
    border-radius: var(--home-radius-large);
    background:
        radial-gradient(circle at 100% 0%, rgba(241, 208, 138, 0.16), transparent 42%),
        var(--home-surface);
    box-shadow: var(--home-shadow-card);
}

.home-premium-page .guild-sponsor-stage-skeleton {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    padding: 1.5rem;
    overflow: hidden;
}

.home-premium-page .guild-sponsor-stage-skeleton::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.08), transparent);
    animation: home-gallery-skeleton 1.4s infinite;
    transform: translateX(-100%);
}

.home-premium-page .guild-sponsor-stage-skeleton-line,
.home-premium-page .guild-sponsor-stage-skeleton-block {
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.07);
}

.home-premium-page .guild-sponsor-stage-skeleton-line {
    width: 78%;
    height: 1rem;
}

.home-premium-page .guild-sponsor-stage-skeleton-line.is-kicker {
    width: 42%;
    height: 0.72rem;
}

.home-premium-page .guild-sponsor-stage-skeleton-line.is-title {
    width: 64%;
    height: 2rem;
}

.home-premium-page .guild-sponsor-stage-skeleton-block {
    height: 8rem;
    margin: 0.55rem 0;
    border-radius: 1rem;
}

@keyframes home-gallery-skeleton {
    to {
        transform: translateX(100%);
    }
}

.home-premium-page .member-story-sponsor-stage > .guild-sponsor-rank-float {
    position: relative !important;
    inset: auto !important;
    z-index: 1;
    display: block;
    width: 100% !important;
    max-width: none !important;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    transform: none !important;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float::before,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float::after {
    display: none;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float-panel,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float-content {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-card {
    display: flex;
    min-height: 580px;
    margin: 0 !important;
    padding: 1.45rem;
    flex-direction: column;
    border: 0;
    border-radius: 0;
    color: var(--home-text);
    background: transparent;
    box-shadow: none;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-card::before,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head::before,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head::after,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item::before,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item::after {
    display: none;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    min-height: 0;
    margin: 0 0 1rem !important;
    padding: 0;
    border: 0;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head .section-kicker {
    color: var(--home-sponsor);
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head .rule-title {
    min-height: 0;
    color: var(--home-text);
    font-size: clamp(1.55rem, 2.4vw, 2rem);
}

.home-premium-page .guild-sponsor-rank-summary {
    margin-top: 0.5rem;
    color: var(--home-text-muted);
    font-size: 0.78rem;
    line-height: 1.55;
}

.home-premium-page .guild-sponsor-rank-status {
    flex: 0 0 auto;
    padding: 0.32rem 0.55rem;
    border: 1px solid rgba(241, 208, 138, 0.24);
    border-radius: 999px;
    color: var(--home-sponsor);
    background: rgba(241, 208, 138, 0.08);
    font-size: 0.7rem;
    font-weight: 800;
    white-space: nowrap;
}

.home-premium-page .guild-sponsor-rank-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
    margin-bottom: 1rem;
}

.home-premium-page .guild-sponsor-rank-metrics > div {
    padding: 0.78rem;
    border: 1px solid var(--home-border);
    border-radius: 0.9rem;
    background: rgba(13, 16, 36, 0.36);
}

.home-premium-page .guild-sponsor-rank-metrics span {
    display: block;
    overflow: hidden;
    color: var(--home-text-muted);
    font-size: 0.7rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-premium-page .guild-sponsor-rank-metrics strong {
    display: block;
    margin-top: 0.25rem;
    color: var(--home-sponsor);
    font-size: 1.35rem;
    font-variant-numeric: tabular-nums;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-list {
    display: grid;
    gap: 0.62rem;
    margin: 0;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item.is-top {
    display: grid;
    min-width: 0;
    min-height: 4.25rem;
    margin: 0;
    padding: 0.55rem;
    grid-template-columns: 3.2rem minmax(0, 1fr);
    grid-template-areas: "showcase main";
    grid-template-rows: auto;
    align-items: center;
    gap: 0.7rem;
    border: 1px solid var(--home-border);
    border-radius: 0.95rem;
    background: rgba(13, 16, 36, 0.42);
    box-shadow: none;
    transform: none;
    animation: none;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item:hover {
    border-color: rgba(241, 208, 138, 0.36);
    background: var(--home-surface-hover);
    transform: translateY(-1px);
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-showcase,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    grid-area: showcase;
    width: 3.2rem;
    height: 3.2rem;
    min-height: 3.2rem;
    border-radius: 0.75rem;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-main {
    grid-area: main;
    min-width: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-name {
    overflow: hidden;
    color: var(--home-text);
    font-size: 0.92rem;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-premium-page .guild-sponsor-rank-contribution {
    margin-top: 0.18rem;
    color: var(--home-sponsor);
    font-size: 0.72rem;
    font-variant-numeric: tabular-nums;
}

.home-premium-page .guild-sponsor-rank-empty,
.home-premium-page .guild-sponsor-stage-state {
    display: flex;
    min-height: 15rem;
    padding: 1.25rem;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 0.55rem;
    border: 1px dashed rgba(241, 208, 138, 0.28);
    border-radius: 1rem;
    color: var(--home-text-muted);
    background: rgba(13, 16, 36, 0.3);
    text-align: center;
}

.home-premium-page .guild-sponsor-rank-empty i,
.home-premium-page .guild-sponsor-stage-state i {
    color: var(--home-sponsor);
    font-size: 2rem;
}

.home-premium-page .guild-sponsor-rank-empty strong,
.home-premium-page .guild-sponsor-stage-state strong {
    color: var(--home-text);
}

.home-premium-page .guild-sponsor-rank-empty span,
.home-premium-page .guild-sponsor-stage-state span {
    font-size: 0.8rem;
}

.home-premium-page .guild-sponsor-rank-actions {
    display: grid;
    gap: 0.4rem;
    margin-top: auto;
    padding-top: 1rem;
}

.home-premium-page .guild-sponsor-rank-actions .btn-relaxed-support,
.home-premium-page .guild-sponsor-stage-state .btn-relaxed-support {
    width: 100%;
    border-color: transparent;
    color: #11142c;
    background: var(--home-sponsor);
    font-weight: 900;
}

.home-premium-page .guild-sponsor-rank-actions .btn-link {
    color: var(--home-text-muted);
    font-size: 0.78rem;
    text-decoration: none;
}

.home-premium-page .guild-sponsor-rank-actions .btn-link:hover,
.home-premium-page .guild-sponsor-rank-actions .btn-link:focus-visible {
    color: var(--home-sponsor);
}

.home-premium-page .home-secondary-stage,
.home-premium-page .home-social-updates-wrap,
.home-premium-page .home-news-hub,
.home-premium-page #features {
    position: relative;
    background: transparent;
}

.home-premium-page .home-secondary-stage-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 24px;
}

.home-premium-page .home-secondary-instagram-slot,
.home-premium-page .home-secondary-stage-grid > #guild-calendar {
    min-width: 0;
    min-height: 520px;
    overflow: hidden;
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius-large);
    background: var(--home-surface);
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.2);
}

.home-premium-page .home-secondary-instagram-slot #home-instagram-feed,
.home-premium-page .home-secondary-stage-grid > #guild-calendar {
    height: auto;
    padding: 1.2rem !important;
}

.home-premium-page .home-secondary-instagram-slot #home-instagram-feed::before,
.home-premium-page .home-secondary-stage-grid > #guild-calendar::before {
    display: none;
}

.home-premium-page .home-secondary-instagram-slot #home-instagram-feed > .container,
.home-premium-page .home-secondary-stage-grid > #guild-calendar > .container {
    width: 100%;
    max-width: none;
    padding: 0 !important;
}

.home-premium-page .home-secondary-instagram-slot #homeInstagramFeedContent,
.home-premium-page .home-secondary-stage-grid > #guild-calendar #guildCalendarContent {
    max-height: none;
    overflow: visible;
    scrollbar-color: rgba(168, 181, 255, 0.5) transparent;
}

.home-premium-page .home-secondary-instagram-slot .ig-feed-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(210px, 32%);
    gap: 1rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
}

.home-premium-page .home-secondary-stage-grid > #guild-calendar .guild-calendar-wrap {
    overflow: hidden;
}

.home-premium-page .home-secondary-stage-grid > #guild-calendar .guild-calendar-table {
    width: 100%;
    min-width: 0 !important;
    table-layout: fixed;
}

.home-premium-page .home-secondary-stage-grid > #guild-calendar .guild-day-cell {
    min-width: 0;
    height: auto;
}

.home-premium-page .home-social-updates-layout {
    display: block;
}

.home-premium-page .home-social-updates-layout > .home-social-updates-panel {
    min-height: 0;
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius-large);
    background: var(--home-surface);
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.2);
}

.home-premium-page .home-social-updates-layout .ig-feed-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(220px, 28%);
    gap: 1rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
}

.home-premium-page .home-social-updates-layout .ig-feed-card {
    scroll-snap-align: start;
}

.home-premium-page .home-news-hub-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.25rem;
    margin-bottom: 1rem;
}

.home-premium-page .home-news-tabs {
    display: inline-flex;
    padding: 0.28rem;
    gap: 0.25rem;
    border: 1px solid var(--home-border);
    border-radius: 999px;
    background: var(--home-surface);
}

.home-premium-page .home-news-tabs button {
    padding: 0.58rem 0.9rem;
    border: 0;
    border-radius: 999px;
    color: var(--home-text-muted);
    background: transparent;
    font-weight: 800;
}

.home-premium-page .home-news-tabs button.is-active {
    color: #11142c;
    background: var(--home-primary);
}

.home-premium-page .home-news-panel {
    min-height: 440px;
    padding: 0.35rem;
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius-large);
    background: var(--home-surface);
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.2);
}

.home-premium-page .home-news-panel > .home-front-section {
    padding: 1rem !important;
    background: transparent;
}

.home-premium-page .home-news-panel > .home-front-section::before {
    display: none;
}

.home-premium-page .home-news-panel > .home-front-section > .container {
    width: 100%;
    max-width: none;
    padding: 0 !important;
}

.home-premium-page .section-kicker {
    color: var(--home-primary);
}

.home-premium-page .section-title,
.home-premium-page .rule-title,
.home-premium-page .rule-title-link,
.home-premium-page .home-announcement-title-link,
.home-premium-page .official-news-title a,
.home-premium-page .mainland-news-title a {
    color: var(--home-text);
}

.home-premium-page .section-subtitle,
.home-premium-page .rule-text,
.home-premium-page .text-muted,
.home-premium-page .small.text-muted,
.home-premium-page .home-announcement-excerpt,
.home-premium-page .ig-feed-caption,
.home-premium-page .ig-feed-time {
    color: var(--home-text-muted) !important;
}

.home-premium-page .rule-card,
.home-premium-page .ig-feed-shell,
.home-premium-page .ig-feed-card,
.home-premium-page .official-news-card,
.home-premium-page .mainland-news-card,
.home-premium-page .home-announcement-card,
.home-premium-page .guild-feature-card,
.home-premium-page #features .rule-card {
    border-color: var(--home-border);
    color: var(--home-text);
    background: rgba(26, 31, 66, 0.88);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.18);
}

.home-premium-page .official-news-card:hover,
.home-premium-page .mainland-news-card:hover,
.home-premium-page .home-announcement-card:hover,
.home-premium-page .guild-feature-card:hover,
.home-premium-page #features .rule-card:hover {
    border-color: rgba(168, 181, 255, 0.36);
    background: var(--home-surface-hover);
}

.home-premium-page .rule-icon {
    color: #11142c;
    background: var(--home-primary);
}

.home-premium-page #features .rule-card {
    min-height: 14rem;
}

@media (max-width: 1199.98px) {
    .home-premium-page .member-story-home-grid {
        grid-template-columns: minmax(0, 1.65fr) minmax(300px, 1fr);
        gap: 18px;
    }

    .home-premium-page .home-secondary-stage-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-premium-page .home-secondary-instagram-slot,
    .home-premium-page .home-secondary-stage-grid > #guild-calendar {
        min-height: 0;
    }
}

@media (max-width: 991.98px) {
    .home-premium-page .member-story-section.is-home-hero > .container,
    .home-premium-page .home-secondary-stage > .container,
    .home-premium-page .home-social-updates-wrap > .container,
    .home-premium-page .home-news-hub > .container,
    .home-premium-page #features > .container {
        width: min(100% - 32px, 760px);
    }

    .home-premium-page .member-story-home-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }

    .home-premium-page .member-story-mobile-welcome-suite,
    .home-premium-page .member-story-home-grid .member-story-carousel {
        min-height: 480px;
        height: 64svh;
        max-height: 620px;
    }

    .home-premium-page .member-story-sponsor-stage,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-card {
        min-height: 420px;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy {
        max-width: calc(100% - 7.6rem);
        padding: 0.68rem 0.75rem;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-title {
        font-size: clamp(1.25rem, 5.8vw, 1.75rem);
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-subtitle {
        display: none;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-actions .btn span {
        display: none;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-actions .btn {
        flex: 0 0 2.75rem;
        width: 2.75rem;
        height: 2.75rem;
        min-height: 2.75rem;
        justify-content: center;
        padding: 0;
        border-radius: 50%;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-side,
    .home-premium-page .member-story-home-grid .member-story-hero-actions {
        flex-direction: row;
        align-items: flex-start;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue {
        right: 0.8rem;
        bottom: 3.9rem;
        left: 0.8rem;
        width: calc(100% - 1.6rem);
        padding: 0.78rem 0.88rem;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue h3 {
        font-size: clamp(1.25rem, 6.5vw, 1.8rem);
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue p {
        margin: 0.35rem 0;
        -webkit-line-clamp: 1;
    }

    .home-premium-page .member-story-home-grid .member-story-profile-link {
        font-size: 0.78rem;
    }

    .home-premium-page .home-news-hub-head {
        align-items: stretch;
        flex-direction: column;
    }

    .home-premium-page .home-news-tabs {
        align-self: flex-start;
    }
}

@media (max-width: 767.98px) {
    .home-premium-page .relaxed-navbar {
        min-height: 56px;
    }

    .home-premium-page .front-mobile-toggle-cluster {
        display: flex;
    }

    .home-premium-page .front-profile-menu-toggler {
        order: 1;
    }

    .home-premium-page .front-main-menu-toggler {
        order: 2;
    }

    .home-premium-page .front-profile-menu-toggler {
        color: var(--home-text);
        border-color: var(--home-border);
        background: rgba(26, 31, 66, 0.88);
        font-size: 1.15rem;
    }

    .home-premium-page .front-profile-toggle-avatar.is-primary {
        position: static;
        display: block;
        width: 2rem;
        height: 2rem;
        border: 0;
        box-shadow: none;
    }

    .home-premium-page .member-story-section.is-home-hero {
        padding-top: 0.65rem !important;
    }

    .home-premium-page .member-story-home-grid .member-story-carousel {
        border-radius: 1.15rem;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-intro {
        top: 0.65rem;
        right: 0.65rem;
        left: 0.65rem;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue .member-story-art-label {
        display: none;
    }

    .home-premium-page .member-story-home-grid .member-story-nav {
        bottom: 0.7rem;
        width: 2.25rem;
        height: 2.25rem;
    }

    .home-premium-page .member-story-home-grid .member-story-nav.is-prev {
        left: 0.7rem;
    }

    .home-premium-page .member-story-home-grid .member-story-nav.is-next {
        right: 0.7rem;
    }

    .home-premium-page .member-story-home-grid .member-story-footer {
        right: 3.55rem;
        bottom: 0.76rem;
        left: 3.55rem;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-card {
        padding: 1.05rem;
    }

    .home-premium-page .home-secondary-stage,
    .home-premium-page .home-social-updates-wrap,
    .home-premium-page .home-news-hub,
    .home-premium-page #features {
        padding-block: 1rem !important;
    }

    .home-premium-page .home-secondary-stage-grid {
        gap: 16px;
    }

    .home-premium-page .home-secondary-instagram-slot #home-instagram-feed,
    .home-premium-page .home-secondary-stage-grid > #guild-calendar {
        padding: 0.9rem !important;
    }

    .home-premium-page .home-secondary-instagram-slot .ig-feed-track,
    .home-premium-page .home-social-updates-layout .ig-feed-track {
        grid-auto-columns: 78%;
    }

    .home-premium-page .home-news-tabs {
        display: grid;
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-premium-page .home-news-tabs button {
        width: 100%;
    }

    .home-premium-page .home-news-panel {
        min-height: 360px;
    }

    .home-premium-page #features .rule-card {
        min-height: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-premium-page .guild-sponsor-stage-skeleton::after {
        animation: none;
    }
}

/* Keep the member portrait readable: the desktop copy lives in its own rail. */
@media (min-width: 992px) {
    .home-premium-page .member-story-mobile-welcome-suite {
        --member-story-rail-width: max(27%, 230px);
    }

    .home-premium-page .member-story-home-grid .member-story-layout {
        display: grid;
        grid-template-columns: minmax(0, 1fr) var(--member-story-rail-width);
        grid-template-rows: minmax(0, 1fr);
    }

    .home-premium-page .member-story-home-grid .member-story-layout::after {
        content: "";
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        bottom: 0;
        width: var(--member-story-rail-width);
        background:
            radial-gradient(circle at 100% 0%, rgba(241, 208, 138, 0.11), transparent 44%),
            linear-gradient(90deg, rgba(13, 16, 36, 0.14), rgba(13, 16, 36, 0.78) 35%, rgba(13, 16, 36, 0.96) 100%);
        box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.06);
        pointer-events: none;
    }

    .home-premium-page .member-story-home-grid .member-story-portrait-wrap {
        position: relative;
        inset: auto;
        z-index: 2;
        grid-column: 1;
        grid-row: 1;
        width: 100%;
        height: 100%;
        border-radius: inherit;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-intro {
        top: 1rem;
        right: 1.15rem;
        left: auto;
        display: block;
        width: calc(var(--member-story-rail-width) - 2.3rem);
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy {
        width: 100%;
        max-width: none;
        padding: 0.65rem 0.1rem 0.7rem;
        border: 0;
        background: transparent;
        box-shadow: none;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-pill {
        font-size: 0.68rem;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-title {
        margin-top: 0.28rem;
        font-size: clamp(1.18rem, 1.65vw, 1.55rem);
        white-space: normal;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-subtitle {
        margin-top: 0.3rem;
        font-size: 0.74rem;
        -webkit-line-clamp: 2;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-side {
        display: block;
        width: 100%;
        margin-top: 0.25rem;
        padding-top: 0.7rem;
        border-top: 1px solid rgba(168, 181, 255, 0.18);
    }

    .home-premium-page .member-story-home-grid .member-story-hero-actions,
    .home-premium-page .member-story-home-grid .member-story-hero-actions .btn {
        width: 100%;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-actions .btn {
        justify-content: center;
        padding: 0.54rem 0.7rem;
        border: 1px solid rgba(168, 181, 255, 0.25);
        background: linear-gradient(135deg, rgba(116, 101, 198, 0.8), rgba(82, 72, 164, 0.8));
        box-shadow: 0 8px 20px rgba(23, 20, 68, 0.22);
        font-size: 0.78rem;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        z-index: 3;
        grid-column: 2;
        grid-row: 1;
        align-self: end;
        width: auto;
        min-width: 0;
        margin: 0 1.15rem 4.35rem;
        padding: 0.95rem 0.1rem 0.3rem;
        border: 0;
        border-top: 1px solid rgba(168, 181, 255, 0.18);
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue h3 {
        font-size: clamp(1.35rem, 2vw, 1.8rem);
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue p {
        -webkit-line-clamp: 3;
    }

    .home-premium-page .member-story-home-grid .member-story-nav.is-next {
        right: calc(var(--member-story-rail-width) + 1rem);
    }

    .home-premium-page .member-story-home-grid .member-story-footer {
        right: calc(var(--member-story-rail-width) + 4.15rem);
    }
}

@media (min-width: 1200px) {
    .home-premium-page .member-story-mobile-welcome-suite {
        --member-story-rail-width: max(26%, 230px);
    }
}

.home-premium-page .member-story-home-grid .member-story-portrait-wrap::before,
.home-premium-page .member-story-home-grid .member-story-portrait-wrap::after {
    display: block;
}

.home-premium-page .member-story-home-grid .member-story-portrait-wrap::before {
    z-index: 5;
    opacity: 0.62;
    mix-blend-mode: screen;
}

.home-premium-page .member-story-home-grid .member-story-portrait-wrap::after {
    z-index: 6;
    opacity: 0.82;
}

.home-premium-page .member-story-home-grid .member-story-portrait {
    z-index: 2;
    object-fit: contain;
}

.home-premium-page .member-story-effect {
    position: absolute;
    inset: -1%;
    z-index: 3;
    width: 102%;
    height: 102%;
    object-fit: cover;
    opacity: 0.82;
    mix-blend-mode: screen;
    filter: saturate(1.12) drop-shadow(0 0 18px rgba(255, 222, 146, 0.22));
    pointer-events: none;
    animation: home-showcase-effect-drift 9s ease-in-out infinite;
}

.home-premium-page .member-story-showcase-art {
    --showcase-art-base-size: clamp(1.35rem, 2.25vw, 2rem);
    position: absolute;
    z-index: 7;
    max-width: 48% !important;
    font-size: calc(var(--showcase-art-base-size) * var(--showcase-art-size-scale, 1));
    line-height: 1.05;
    filter: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.46));
    isolation: isolate;
    pointer-events: none;
}

.home-premium-page .member-story-showcase-art::after {
    content: attr(data-art-text);
    position: absolute;
    inset: 0;
    z-index: 1;
    color: transparent;
    background: linear-gradient(
        105deg,
        transparent 22%,
        rgba(255, 255, 255, 0.96) 44%,
        #ffe9a5 50%,
        rgba(255, 255, 255, 0.98) 56%,
        transparent 78%
    );
    background-size: 240% 100%;
    background-position: 135% 50%;
    background-clip: text;
    -webkit-background-clip: text;
    filter: drop-shadow(0 0 8px rgba(255, 207, 105, 0.78));
    pointer-events: none;
    animation: home-showcase-art-gold-sheen 4.8s ease-in-out infinite;
}

.home-premium-page .member-story-showcase-art::before {
    content: "✦";
    position: absolute;
    z-index: 2;
    top: -0.55em;
    right: -0.5em;
    color: #fff4bf;
    font-family: serif;
    font-size: 0.58em;
    line-height: 1;
    text-shadow:
        0 0 5px #fff,
        0 0 12px #ffd86f,
        0 0 20px rgba(255, 191, 73, 0.8);
    transform-origin: center;
    animation: home-showcase-art-sparkle 2.4s ease-in-out infinite;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-list {
    margin-block: auto;
    gap: 0.85rem;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item.is-top {
    min-height: 5.6rem;
    padding: 0.72rem;
    grid-template-columns: 4.25rem minmax(0, 1fr);
    gap: 0.9rem;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-showcase,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-showcase .member-showcase-mini-stage {
    width: 4.25rem;
    height: 4.25rem;
    min-height: 4.25rem;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-name {
    color: var(--home-sponsor);
    font-size: 1rem;
    text-shadow: 0 0 14px rgba(241, 208, 138, 0.34);
}

@keyframes home-showcase-effect-drift {
    0%, 100% {
        opacity: 0.72;
        transform: scale(1.015) translate3d(-0.4%, 0.2%, 0);
    }
    50% {
        opacity: 0.92;
        transform: scale(1.045) translate3d(0.6%, -0.45%, 0);
    }
}

@keyframes home-showcase-art-gold-sheen {
    0%, 28% {
        background-position: 135% 50%;
        opacity: 0;
    }
    42% {
        opacity: 1;
    }
    72%, 100% {
        background-position: -35% 50%;
        opacity: 0;
    }
}

@keyframes home-showcase-art-sparkle {
    0%, 100% {
        opacity: 0.28;
        transform: scale(0.72) rotate(0deg);
    }
    50% {
        opacity: 1;
        transform: scale(1.22) rotate(90deg);
    }
}

@media (max-width: 991.98px) {
    .home-premium-page .member-story-home-grid .member-story-layout {
        display: block;
    }

    .home-premium-page .member-story-home-grid .member-story-portrait-wrap {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 0.8rem;
        right: 0.75rem;
        bottom: 3.65rem;
        left: 0.75rem;
        width: auto;
        padding: 0.68rem 0.78rem;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue::before,
    .home-premium-page .member-story-home-grid .member-story-nameplate,
    .home-premium-page .member-story-home-grid .member-story-dialogue p {
        display: none;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue h3 {
        margin: 0;
    }

    .home-premium-page .member-story-home-grid .member-story-profile-link {
        margin: 0;
        white-space: nowrap;
    }

    .home-premium-page .member-story-home-grid .member-story-profile-link span {
        font-size: 0;
    }

    .home-premium-page .member-story-home-grid .member-story-profile-link span::after {
        content: "展示頁";
        font-size: 0.78rem;
    }

    .home-premium-page .member-story-sponsor-stage,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-card {
        min-height: 320px;
    }
}

@media (max-width: 767.98px) {
    .home-premium-page .member-story-home-grid .member-story-hero-copy {
        max-width: calc(100% - 3.6rem);
        padding: 0.48rem 0.58rem;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-pill,
    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-subtitle {
        display: none;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-title {
        margin: 0;
        font-size: clamp(1.05rem, 5.4vw, 1.4rem);
    }

    .home-premium-page .member-story-showcase-art {
        --showcase-art-base-size: clamp(1.08rem, 5vw, 1.45rem);
        max-width: 56% !important;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue {
        bottom: 3.35rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-premium-page .member-story-effect,
    .home-premium-page .member-story-showcase-art::before,
    .home-premium-page .member-story-showcase-art::after,
    .home-premium-page .member-story-home-grid .member-story-portrait-wrap::before,
    .home-premium-page .member-story-home-grid .member-story-portrait-wrap::after {
        animation: none;
    }
}

/* Restore the original celestial patronage identity inside the simplified right rail. */
.home-premium-page .member-story-sponsor-stage > .guild-sponsor-rank-float {
    isolation: isolate;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float::before,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float::after {
    content: "";
    position: absolute;
    z-index: 0;
    display: block;
    width: 11rem;
    height: 4.8rem;
    border-radius: 50%;
    background:
        radial-gradient(ellipse at 62% 43%, rgba(255, 246, 200, 0.76), transparent 22%),
        radial-gradient(ellipse at 35% 60%, rgba(218, 242, 235, 0.72), transparent 64%);
    filter: blur(6px);
    opacity: 0.86;
    pointer-events: none;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float::before {
    top: 5.1rem;
    left: -2.1rem;
    animation: sponsor-cloud-left 7.6s ease-in-out infinite;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float::after {
    right: -2.4rem;
    bottom: 4.6rem;
    background:
        radial-gradient(ellipse at 34% 43%, rgba(255, 232, 151, 0.62), transparent 21%),
        radial-gradient(ellipse at 67% 62%, rgba(218, 241, 236, 0.7), transparent 64%);
    animation: sponsor-cloud-right 8.8s ease-in-out infinite;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float-content,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-card {
    position: relative;
    z-index: 2;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head {
    position: relative;
    z-index: 5;
    display: block;
    min-height: 7.5rem;
    margin-bottom: 0.15rem !important;
    overflow: visible;
    isolation: isolate;
    text-align: center;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head .rule-title {
    position: relative;
    z-index: 6;
    display: flex;
    min-height: 7.5rem;
    align-items: center;
    justify-content: center;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-wordmark {
    position: relative;
    z-index: 7;
    display: block;
    width: min(84%, 18rem);
    max-width: none;
    height: auto;
    opacity: 1;
    filter: brightness(1.16) saturate(1.14) drop-shadow(0 2px 13px rgba(255, 221, 117, 0.72));
    animation: sponsor-divine-title 4.4s ease-in-out infinite;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head .rule-title::after {
    content: "";
    position: absolute;
    z-index: 8;
    top: 50%;
    left: 50%;
    width: min(88%, 18.6rem);
    height: 7rem;
    background: linear-gradient(
        105deg,
        transparent 34%,
        rgba(255, 231, 126, 0.08) 43%,
        rgba(255, 255, 243, 0.98) 50%,
        rgba(255, 224, 103, 0.16) 57%,
        transparent 66%
    );
    transform: translate(-145%, -50%) skewX(-14deg);
    -webkit-mask: url("/images/wordmarks/sponsor-rank-celestial-trail-v2.png") center / contain no-repeat;
    mask: url("/images/wordmarks/sponsor-rank-celestial-trail-v2.png") center / contain no-repeat;
    mix-blend-mode: screen;
    opacity: 0;
    pointer-events: none;
    animation: home-sponsor-wordmark-sunbeam 3.35s ease-in-out infinite;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head::before,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head::after {
    content: "";
    position: absolute;
    z-index: 4;
    top: 0.3rem;
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: 0.98;
    filter: drop-shadow(0 4px 15px rgba(238, 208, 135, 0.62));
    pointer-events: none;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head::before {
    left: -0.9rem;
    width: 10.2rem;
    height: 7.7rem;
    background-image: url("/images/sponsors/celestial-dragon-fly-v1.png");
    animation: sponsor-dragon-circuit 6.8s ease-in-out infinite;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head::after {
    right: -0.45rem;
    width: 7.9rem;
    height: 8rem;
    background-image: url("/images/sponsors/celestial-phoenix-fly-v1.png");
    animation: sponsor-phoenix-circuit 7.6s ease-in-out infinite;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item.is-top {
    position: relative;
    isolation: isolate;
    overflow: visible;
    border: 1.5px solid transparent;
    background:
        radial-gradient(circle at 16% 18%, rgba(255, 248, 205, 0.8) 0 1px, transparent 2px),
        radial-gradient(circle at 78% 28%, rgba(255, 221, 121, 0.76) 0 1.2px, transparent 2.5px),
        linear-gradient(112deg, rgba(20, 24, 53, 0.76), rgba(13, 16, 36, 0.88)),
        url("/images/sponsors/celestial-patron-card-v1.png"),
        conic-gradient(from var(--patron-seal-angle), #f9e9a8, #bc7d20, #fff8cf, #d29431, #fff1a8, #f9e9a8);
    background-size: 92px 92px, 126px 126px, auto, 112% auto, auto;
    background-position: 0 0, 44px 30px, center, center 52%, center;
    background-repeat: repeat, repeat, no-repeat, no-repeat, repeat;
    background-origin: padding-box, padding-box, padding-box, padding-box, border-box;
    background-clip: padding-box, padding-box, padding-box, padding-box, border-box;
    box-shadow:
        0 12px 28px rgba(0, 0, 0, 0.24),
        0 0 17px rgba(248, 201, 83, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.18);
    animation:
        home-sponsor-star-drift 9s linear infinite,
        sponsor-seal-rotate 5.5s linear infinite,
        sponsor-card-aura 3.4s ease-in-out infinite;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item > * {
    position: relative;
    z-index: 2;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item::before {
    content: "";
    position: absolute;
    z-index: 1;
    inset: -0.9rem -1rem;
    display: block;
    border: 0;
    background: url("/images/sponsors/celestial-dragon-phoenix-card-frame-v2.png") center / 100% 100% no-repeat;
    filter:
        drop-shadow(0 0 6px rgba(255, 244, 193, 0.72))
        drop-shadow(0 0 16px rgba(242, 182, 64, 0.42));
    opacity: 0.96;
    pointer-events: none;
    transform-origin: center;
    animation: home-sponsor-dragon-phoenix-breathe 3.8s ease-in-out infinite;
}

.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item::after {
    content: "";
    position: absolute;
    z-index: 3;
    inset: -0.9rem -1rem;
    display: block;
    border: 0;
    border-radius: 0;
    background: linear-gradient(
        108deg,
        transparent 28%,
        rgba(255, 236, 153, 0.08) 39%,
        rgba(255, 255, 246, 1) 49%,
        rgba(255, 210, 89, 0.86) 55%,
        transparent 68%
    );
    background-size: 230% 100%;
    -webkit-mask: url("/images/sponsors/celestial-dragon-phoenix-card-frame-v2.png") center / 100% 100% no-repeat;
    mask: url("/images/sponsors/celestial-dragon-phoenix-card-frame-v2.png") center / 100% 100% no-repeat;
    mix-blend-mode: screen;
    opacity: 0.94;
    pointer-events: none;
    animation: home-sponsor-dragon-phoenix-sheen 3.6s linear infinite;
}

@keyframes home-sponsor-dragon-phoenix-breathe {
    0%, 100% {
        opacity: 0.86;
        transform: scale(0.994);
        filter:
            drop-shadow(0 0 5px rgba(255, 244, 193, 0.62))
            drop-shadow(0 0 13px rgba(242, 182, 64, 0.32));
    }
    50% {
        opacity: 1;
        transform: scale(1.012);
        filter:
            drop-shadow(0 0 9px rgba(255, 250, 214, 0.88))
            drop-shadow(0 0 22px rgba(242, 182, 64, 0.56));
    }
}

@keyframes home-sponsor-dragon-phoenix-sheen {
    from {
        background-position: 155% 0;
    }
    to {
        background-position: -135% 0;
    }
}

@keyframes home-sponsor-wordmark-sunbeam {
    0%, 18% {
        opacity: 0;
        transform: translate(-145%, -50%) skewX(-14deg);
    }
    29%, 54% {
        opacity: 1;
    }
    78%, 100% {
        opacity: 0;
        transform: translate(42%, -50%) skewX(-14deg);
    }
}

@keyframes home-sponsor-star-drift {
    to {
        background-position: 92px 92px, 170px 156px, center, center 52%, center;
    }
}

@media (max-width: 991.98px) {
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head {
        min-height: 7.5rem;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head::before {
        left: -0.4rem;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head::after {
        right: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float::before,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-float::after,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-wordmark,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head .rule-title::after,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head::before,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-head::after,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item::before,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item::after {
        animation: none;
    }
}

/*
 * Desktop patronage-board composition.
 * Keep every celestial asset and animation, while giving the dragon-phoenix
 * frames enough room to read as two complete plaques instead of one overlap.
 */
@media (min-width: 1200px) {
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-list {
        width: 100%;
        grid-template-columns: minmax(0, 24rem);
        justify-content: center;
        gap: 2rem;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item.is-top {
        min-height: 6.25rem;
        padding: 0.78rem 0.9rem;
        grid-template-columns: 4.65rem minmax(0, 1fr);
        gap: 1rem;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-showcase,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-showcase .member-showcase-mini-stage {
        width: 4.65rem;
        height: 4.65rem;
        min-height: 4.65rem;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-name {
        font-size: 1.04rem;
        letter-spacing: 0.025em;
    }
}

/*
 * Two-block desktop composition.
 * The guild introduction becomes one horizontal header above the portrait,
 * so the opening scene reads as portrait + patronage instead of three rails.
 */
@media (min-width: 992px) {
    .home-premium-page .member-story-mobile-welcome-suite {
        --member-story-rail-width: 0px;
        display: grid;
        min-height: 580px;
        grid-template-rows: auto minmax(0, 1fr);
        overflow: hidden;
        border: 1px solid var(--home-border);
        border-radius: var(--home-radius-large);
        background:
            radial-gradient(circle at 0% 0%, rgba(168, 181, 255, 0.1), transparent 28rem),
            #11152f;
        box-shadow: var(--home-shadow-card);
    }

    .home-premium-page .member-story-home-grid .member-story-hero-intro {
        position: relative;
        top: auto;
        right: auto;
        left: auto;
        display: flex;
        width: 100%;
        min-height: 6rem;
        padding: 0.78rem 1rem;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        border-bottom: 1px solid rgba(168, 181, 255, 0.16);
        background:
            linear-gradient(112deg, rgba(25, 30, 64, 0.96), rgba(15, 19, 43, 0.88)),
            radial-gradient(circle at 16% 0%, rgba(241, 208, 138, 0.09), transparent 40%);
        pointer-events: auto;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy {
        display: grid;
        width: auto;
        max-width: none;
        min-width: 0;
        padding: 0;
        flex: 1 1 auto;
        grid-template-columns: auto minmax(8rem, max-content) minmax(0, 1fr);
        align-items: center;
        gap: 0.85rem;
        border: 0;
        background: transparent;
        box-shadow: none;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-pill {
        margin: 0;
        font-size: 0.7rem;
        white-space: nowrap;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-title {
        margin: 0;
        font-size: clamp(1.2rem, 1.55vw, 1.55rem);
        white-space: nowrap;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-copy .hero-subtitle {
        margin: 0;
        font-size: 0.76rem;
        -webkit-line-clamp: 2;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-side,
    .home-premium-page .member-story-home-grid .member-story-hero-actions {
        display: flex;
        width: auto;
        margin: 0;
        padding: 0;
        align-items: center;
        border: 0;
    }

    .home-premium-page .member-story-home-grid .member-story-hero-actions .btn {
        width: auto;
        min-width: 10.5rem;
        padding: 0.62rem 0.9rem;
        white-space: nowrap;
    }

    .home-premium-page .member-story-home-grid .member-story-carousel {
        height: 100%;
        min-height: 0;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .home-premium-page .member-story-home-grid .member-story-layout {
        display: block;
    }

    .home-premium-page .member-story-home-grid .member-story-layout::after {
        display: none;
    }

    .home-premium-page .member-story-home-grid .member-story-portrait-wrap {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue {
        position: absolute;
        z-index: 7;
        right: auto;
        bottom: 4.15rem;
        left: 1.2rem;
        display: block;
        width: min(23rem, calc(100% - 2.4rem));
        margin: 0;
        padding: 0.58rem 0.78rem;
        border: 1px solid rgba(255, 255, 255, 0.16);
        border-radius: 0.9rem;
        background: linear-gradient(135deg, rgba(13, 16, 36, 0.82), rgba(26, 31, 66, 0.66));
        box-shadow: 0 14px 30px rgba(0, 0, 0, 0.24);
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue h3 {
        font-size: clamp(1.25rem, 1.6vw, 1.5rem);
    }

    .home-premium-page .member-story-home-grid .member-story-dialogue p {
        margin-block: 0.24rem 0.16rem;
        font-size: 0.78rem;
        line-height: 1.4;
        -webkit-line-clamp: 1;
    }

    .home-premium-page .member-story-home-grid .member-story-nameplate {
        margin-bottom: 0.18rem;
        font-size: 0.68rem;
    }

    .home-premium-page .member-story-home-grid .member-story-profile-link {
        font-size: 0.78rem;
    }

    .home-premium-page .member-story-home-grid .member-story-nav.is-next {
        right: 1rem;
    }

    .home-premium-page .member-story-home-grid .member-story-footer {
        right: 4.15rem;
    }
}

/*
 * Slim dragon-phoenix plaques.
 * The generated v2 frame keeps the creatures at the outer edges, leaving
 * materially more room for the player portrait and display name.
 */
@media (min-width: 1200px) {
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-list {
        grid-template-columns: minmax(0, 25rem);
        gap: 1.85rem;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item.is-top {
        min-height: 7.45rem;
        padding: 0.7rem 2.15rem 0.7rem 3.1rem;
        grid-template-columns: 5.65rem minmax(0, 1fr);
        gap: 1.05rem;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-showcase,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-showcase .member-showcase-mini-stage {
        width: 5.65rem;
        height: 5.65rem;
        min-height: 5.65rem;
        border-radius: 0.9rem;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-main {
        display: flex;
        min-width: 0;
        max-width: 100%;
        min-height: 2.45rem;
        padding: 0.34rem 0.88rem;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        border: 1px solid rgba(255, 239, 181, 0.72);
        border-radius: 999px;
        background: linear-gradient(135deg, rgba(57, 44, 25, 0.88), rgba(22, 25, 55, 0.82));
        box-shadow:
            0 3px 11px rgba(183, 117, 26, 0.3),
            0 0 16px rgba(255, 218, 104, 0.34),
            inset 0 1px 0 rgba(255, 255, 255, 0.16);
        animation: sponsor-nameplate-breathe 3.8s ease-in-out infinite;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-name {
        font-size: 1.34rem;
        letter-spacing: 0.04em;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item::before,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item::after {
        inset: -0.48rem -0.52rem;
    }
}

/*
 * Single-frame sponsor plaques.
 * The dragon-phoenix artwork is the only visible border; remove the older
 * rotating conic outline and rounded outer halo that made every card look
 * double framed.
 */
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item,
.home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item.is-top {
    border: 0;
    background:
        radial-gradient(circle at 16% 18%, rgba(255, 248, 205, 0.8) 0 1px, transparent 2px),
        radial-gradient(circle at 78% 28%, rgba(255, 221, 121, 0.76) 0 1.2px, transparent 2.5px),
        linear-gradient(112deg, rgba(20, 24, 53, 0.76), rgba(13, 16, 36, 0.88)),
        url("/images/sponsors/celestial-patron-card-v1.png");
    background-size: 92px 92px, 126px 126px, auto, 112% auto;
    background-position: 0 0, 44px 30px, center, center 52%;
    background-repeat: repeat, repeat, no-repeat, no-repeat;
    background-origin: padding-box;
    background-clip: padding-box;
    box-shadow: none;
    animation: home-sponsor-single-frame-star-drift 9s linear infinite;
}

@keyframes home-sponsor-single-frame-star-drift {
    to {
        background-position: 92px 92px, 170px 156px, center, center 52%;
    }
}

/*
 * The portrait is part of the dragon-phoenix plaque, not a second framed card.
 * It reaches the left edge beneath the ceremonial artwork while the frame and
 * its existing glow continue to sit over the portrait.
 */
@media (min-width: 1200px) {
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item,
    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-item.is-top {
        padding-left: 0.75rem;
        grid-template-columns: 6.05rem minmax(0, 1fr);
        gap: 0.72rem;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-showcase {
        /* The portrait sits under the frame, offset just enough for the dragon to stay clear. */
        z-index: 0 !important;
        align-self: stretch;
        width: 6.05rem !important;
        height: 6.05rem !important;
        min-height: 6.05rem !important;
        margin: 0 0 0 1.5rem;
        overflow: hidden;
        border-radius: 0.86rem 0 0 0.86rem !important;
    }

    .home-premium-page .member-story-sponsor-stage .guild-sponsor-rank-showcase .member-showcase-mini-stage {
        width: 100% !important;
        height: 100% !important;
        min-height: 6.05rem !important;
        border: 0 !important;
        border-radius: inherit !important;
        box-shadow: none !important;
        animation: none !important;
    }
}
