:root{
    --cwf-bg:#030303;
    --cwf-panel:#0b0c0d;
    --cwf-panel-2:#111315;
    --cwf-border:rgba(255,255,255,.13);
    --cwf-red:#f03420;
    --cwf-red-dark:#530d05;
    --cwf-blue:#7bb8e8;
    --cwf-gold:#e2b465;
    --cwf-text:#f3f1ec;
    --cwf-muted:#aaa39b;
    --cwf-max:1660px;
    --cwf-head:Impact,'Arial Narrow','Trebuchet MS',Arial,sans-serif;
    --cwf-body:Arial,Helvetica,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}body{background:#040404;color:var(--cwf-text);font-family:var(--cwf-body)}body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.16;background:repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 1px,transparent 1px,transparent 4px),radial-gradient(circle at 22% 5%,rgba(235,50,25,.22),transparent 34rem),radial-gradient(circle at 92% 8%,rgba(82,145,200,.13),transparent 30rem)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.cwf-site{position:relative;z-index:1;min-height:100vh;overflow:hidden}.cwf-header{background:#030303;border-bottom:1px solid rgba(240,52,32,.5)}
.cwf-statusbar{height:38px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 18px;background:#030303;border-bottom:2px solid rgba(240,52,32,.8);font:900 13px/1 var(--cwf-head);letter-spacing:.07em;text-transform:uppercase}.cwf-statusbar__left,.cwf-statusbar__right{display:flex;align-items:center;gap:15px;white-space:nowrap}.cwf-statusbar__right{justify-content:flex-end}.cwf-statusbar b{color:#ff2f1c}.cwf-statusbar .is-online{color:#70ff35}.cwf-statusbar a{color:#ff8a24}.cwf-live-dot{color:#ff2f1c;font-size:18px}.cwf-statusbar__tagline{text-align:center;color:#efc176;font-style:italic;letter-spacing:.34em}
.cwf-hero-banner{display:block;height:282px;background-position:center center;background-repeat:no-repeat;background-size:cover;border-bottom:1px solid rgba(255,255,255,.11);box-shadow:inset 0 -80px 120px rgba(0,0,0,.42)}.cwf-hero-banner__sr{position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);overflow:hidden}.cwf-nav-shell{width:min(100%,var(--cwf-max));margin:0 auto;padding:0 18px 13px}.cwf-nav{display:grid;grid-template-columns:repeat(14,minmax(max-content,1fr));border:1px solid var(--cwf-border);background:linear-gradient(180deg,#151617,#070707);box-shadow:0 15px 35px rgba(0,0,0,.45)}.cwf-nav a{position:relative;display:flex;align-items:center;justify-content:center;min-height:55px;padding:0 12px;border-right:1px solid rgba(255,255,255,.08);font:900 17px/1 var(--cwf-head);letter-spacing:.06em;text-transform:uppercase;color:#f8f6f2;transition:.18s ease}.cwf-nav a:last-child{border-right:0}.cwf-nav a::after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;background:transparent}.cwf-nav a:hover,.cwf-nav a.active{color:#ff412b;background:rgba(240,52,32,.09)}.cwf-nav a:hover::after,.cwf-nav a.active::after{background:#ff2f1c}.cwf-nav__forums{color:#ff4a32!important}
.cwf-main{width:min(100%,var(--cwf-max));margin:0 auto;padding:0 18px 28px}.cwf-page-grid{display:grid;grid-template-columns:minmax(0,1fr) 318px;gap:14px;align-items:start}.cwf-content{min-width:0}.cwf-sidebar{display:flex;flex-direction:column;gap:14px}.cwf-home{display:grid;grid-template-columns:minmax(0,1fr) 304px;gap:14px}.cwf-news-panel{grid-column:1}.cwf-home-middle{grid-column:2;display:flex;flex-direction:column;gap:14px}.cwf-slogan{grid-column:1 / -1;min-height:84px;display:flex;align-items:center;justify-content:center;gap:34px;border:1px solid var(--cwf-border);background-size:cover;background-position:center;color:#efe9df;font:900 clamp(1.35rem,2vw,2.25rem)/1 var(--cwf-head);letter-spacing:.16em;text-transform:uppercase;font-style:italic}.cwf-slogan span{color:#df3d2b}.cwf-slogan em{color:#d7b169;font-style:italic}.cwf-slogan strong{font-weight:900}
.cwf-card,.cwf-panel{position:relative;border:1px solid var(--cwf-border);background:linear-gradient(180deg,rgba(19,20,21,.96),rgba(5,5,5,.98));box-shadow:0 18px 38px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.025);overflow:hidden}.cwf-card::before,.cwf-panel::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(240,52,32,.07),transparent 18%,transparent 82%,rgba(90,150,205,.05)),radial-gradient(circle at 50% 0,rgba(255,255,255,.055),transparent 20rem)}.cwf-panel--red .cwf-panel__head{background:linear-gradient(180deg,rgba(116,24,12,.94),rgba(18,18,18,.7));border-bottom-color:rgba(240,52,32,.65)}.cwf-panel--blue .cwf-panel__head{background:linear-gradient(180deg,rgba(30,50,65,.82),rgba(18,18,18,.72));border-bottom-color:rgba(123,184,232,.32)}.cwf-panel__head{position:relative;z-index:1;padding:13px 16px;border-bottom:1px solid var(--cwf-border);text-align:center;color:#eee8df;font:900 25px/1 var(--cwf-head);letter-spacing:.06em;text-transform:uppercase;font-style:italic}.cwf-panel__body{position:relative;z-index:1;padding:12px}
.cwf-section-head{position:relative;z-index:1;display:flex;justify-content:space-between;gap:14px;align-items:flex-end;padding:15px 18px 10px;border-bottom:2px solid rgba(240,52,32,.72)}.cwf-section-head h2{margin:0;color:#f5f1eb;font:900 30px/1 var(--cwf-head);letter-spacing:.03em;text-transform:uppercase;font-style:italic}.cwf-section-head p{margin:5px 0 0;color:#aaa39b;font:900 11px/1.3 var(--cwf-head);letter-spacing:.13em;text-transform:uppercase}.cwf-section-head a{color:#ff4b2f;font:900 13px/1 var(--cwf-head);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.cwf-news-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.32fr) minmax(300px,.72fr);gap:12px;padding:13px}.cwf-feature-story{border:1px solid rgba(255,255,255,.13);background:#050505}.cwf-feature-story__image{position:relative;display:block;min-height:354px;background-size:cover;background-position:center;border-bottom:1px solid rgba(255,255,255,.1)}.cwf-feature-story__image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.34))}.cwf-feature-story__image span{position:absolute;z-index:2;top:16px;left:16px;padding:9px 14px;background:linear-gradient(180deg,#ca321e,#651306);border:1px solid rgba(255,255,255,.2);color:#fff;font:900 13px/1 var(--cwf-head);letter-spacing:.08em;text-transform:uppercase}.cwf-feature-story__copy{padding:18px}.cwf-meta{color:#8b8580;font:900 12px/1.4 var(--cwf-head);letter-spacing:.08em;text-transform:uppercase}.cwf-feature-story h3{margin:10px 0;color:#fff;font:900 clamp(2.1rem,3vw,3.35rem)/.94 var(--cwf-head);letter-spacing:.02em;text-transform:uppercase}.cwf-feature-story p{margin:0 0 16px;color:#d3cec7;font:500 16px/1.65 var(--cwf-body)}.cwf-story-list{display:flex;flex-direction:column}.cwf-story-row{display:grid;grid-template-columns:118px minmax(0,1fr);gap:13px;padding-bottom:13px;margin-bottom:13px;border-bottom:1px solid rgba(255,255,255,.12)}.cwf-story-row:last-child{margin-bottom:0}.cwf-story-row__image img{width:118px;height:76px;object-fit:cover;border:1px solid rgba(255,255,255,.14)}.cwf-story-row h3{margin:5px 0;color:#fff;font:900 20px/1.08 var(--cwf-head);letter-spacing:.04em;text-transform:uppercase}.cwf-story-row a{color:#ff4b2f}.cwf-story-row div>a{font:900 12px/1 var(--cwf-head);letter-spacing:.09em;text-transform:uppercase}
.cwf-button{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:0 20px;border:1px solid rgba(255,70,42,.85);background:linear-gradient(180deg,rgba(124,25,11,.86),rgba(39,7,3,.9));color:#fff;font:900 14px/1 var(--cwf-head);letter-spacing:.08em;text-transform:uppercase}.cwf-button:hover{background:#d93420}.cwf-button--blue{border-color:rgba(123,184,232,.45);background:rgba(31,62,84,.45);color:#a8d8ff}.cwf-button--block{width:100%}
.cwf-spotlight__image{position:relative;z-index:1;min-height:300px;background-size:cover;background-position:top center;border-bottom:1px solid rgba(255,255,255,.12)}.cwf-spotlight__copy{position:relative;z-index:2;margin-top:-108px;padding:0 18px 18px;text-align:center}.cwf-spotlight__copy h3{margin:0;color:#fff;font:900 31px/1 var(--cwf-head);letter-spacing:.04em;text-transform:uppercase}.cwf-spotlight__copy p{margin:6px 0;color:#ff5b40;font:900 16px/1 var(--cwf-head);letter-spacing:.08em;text-transform:uppercase;font-style:italic}.cwf-spotlight__copy span{display:inline-flex;margin:6px 0 12px;padding:6px 10px;border:1px solid rgba(226,180,101,.65);background:rgba(226,180,101,.14);color:#efc176;font:900 13px/1 var(--cwf-head);letter-spacing:.08em;text-transform:uppercase}.cwf-next-event__poster{position:relative;z-index:1;min-height:230px;margin:12px;background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;justify-content:flex-end;text-align:center;padding:18px}.cwf-next-event__poster::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.84))}.cwf-next-event__poster>*{position:relative;z-index:1}.cwf-next-event__poster small{color:#fff;font:900 14px/1 var(--cwf-head);letter-spacing:.12em;text-transform:uppercase}.cwf-next-event__poster h3{margin:8px 0;color:#fff;font:900 38px/.9 var(--cwf-head);text-transform:uppercase}.cwf-next-event__poster p{margin:0;color:#e1ded7;font:900 12px/1.35 var(--cwf-head);letter-spacing:.1em;text-transform:uppercase}.cwf-next-event>.cwf-button{position:relative;z-index:1;width:calc(100% - 24px);margin:0 12px 12px}
.cwf-mini-event{display:grid;grid-template-columns:66px minmax(0,1fr);gap:10px;align-items:center;padding:9px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025);margin-bottom:9px}.cwf-datebox{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:62px;border:1px solid rgba(123,184,232,.42);background:rgba(31,62,84,.25)}.cwf-datebox span{color:#a5d6ff;font:900 10px/1 var(--cwf-head);letter-spacing:.12em;text-transform:uppercase}.cwf-datebox strong{color:#fff;font:900 28px/1 var(--cwf-head)}.cwf-datebox--red{border-color:rgba(240,52,32,.45);background:rgba(124,25,11,.28)}.cwf-mini-event h3{margin:0 0 5px;color:#fff;font:900 16px/1.05 var(--cwf-head);letter-spacing:.04em;text-transform:uppercase}.cwf-mini-event p{margin:0;color:#aaa39b;font:900 10px/1.35 var(--cwf-head);letter-spacing:.08em;text-transform:uppercase}.cwf-mini-promo{display:grid;grid-template-columns:68px minmax(0,1fr);gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.12)}.cwf-mini-promo img{width:68px;height:48px;object-fit:cover;border:1px solid rgba(255,255,255,.14)}.cwf-mini-promo h3{margin:0;color:#fff;font:900 15px/1.08 var(--cwf-head);letter-spacing:.05em;text-transform:uppercase}.cwf-mini-promo p{margin:4px 0 0;color:#aaa39b;font:800 11px/1.2 var(--cwf-body)}.cwf-rankings{padding-top:8px}.cwf-rank-row{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;min-height:38px;border-bottom:1px solid rgba(255,255,255,.12);font:900 14px/1 var(--cwf-head);text-transform:uppercase}.cwf-rank-row span{color:#fff;text-align:center}.cwf-rank-row strong{color:#fff;letter-spacing:.04em}.cwf-rank-row em{color:#91e45f;font-style:normal;text-align:right}.cwf-empty{position:relative;z-index:1;padding:16px;color:#aaa;text-align:center;font:800 13px/1.5 var(--cwf-body)}
.cwf-footer{border-top:2px solid rgba(240,52,32,.72);background:#050505}.cwf-footer__inner{width:min(100%,var(--cwf-max));margin:0 auto;padding:20px 18px}.cwf-footer__grid{display:grid;grid-template-columns:260px repeat(4,1fr);gap:24px;align-items:start}.cwf-footer__brand img{width:230px;margin-bottom:8px}.cwf-footer__brand p{margin:0;color:#d5d1ca;font:900 12px/1.3 var(--cwf-head);letter-spacing:.09em;text-transform:uppercase}.cwf-footer h3{margin:0 0 9px;color:#fff;font:900 14px/1 var(--cwf-head);letter-spacing:.12em;text-transform:uppercase}.cwf-footer section{display:flex;flex-direction:column;gap:6px}.cwf-footer a{color:#bbb4ab;font:900 13px/1.4 var(--cwf-head);letter-spacing:.08em;text-transform:uppercase}.cwf-footer a:hover{color:#ff4b2f}.cwf-footer__bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.1);margin-top:16px;padding-top:13px;color:#97918b;font:900 11px/1.4 var(--cwf-head);letter-spacing:.08em;text-transform:uppercase}.cwf-footer__bottom p{margin:0}.cwf-footer__bottom a{color:#ff4b2f}
.content-box,.cwf-panel-old{border:1px solid var(--cwf-border)!important;background:linear-gradient(180deg,rgba(19,20,21,.96),rgba(5,5,5,.98))!important;color:var(--cwf-text)!important;box-shadow:0 18px 38px rgba(0,0,0,.42)!important;padding:22px!important}.content-box h1,.content-box h2,.content-box h3{font-family:var(--cwf-head);text-transform:uppercase;color:#fff}.content-box a{color:#ff4b2f}.content-box p,.content-box li{line-height:1.75;color:#d7d1c9}
@media(max-width:1420px){.cwf-page-grid{grid-template-columns:1fr}.cwf-sidebar{display:grid;grid-template-columns:repeat(2,1fr)}.cwf-home{grid-template-columns:1fr 300px}.cwf-nav{grid-template-columns:repeat(7,1fr)}}@media(max-width:1080px){.cwf-home{grid-template-columns:1fr}.cwf-home-middle{grid-column:1;display:grid;grid-template-columns:1fr 1fr}.cwf-news-grid{grid-template-columns:1fr}.cwf-story-list{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.cwf-story-row{margin:0}.cwf-hero-banner{height:240px}.cwf-footer__grid{grid-template-columns:1fr 1fr 1fr}}@media(max-width:760px){.cwf-statusbar{height:auto;min-height:42px;grid-template-columns:1fr;text-align:center;padding:8px 12px}.cwf-statusbar__left,.cwf-statusbar__right{justify-content:center;flex-wrap:wrap}.cwf-statusbar__tagline{order:-1;font-size:11px;letter-spacing:.16em}.cwf-hero-banner{height:178px;background-size:auto 100%}.cwf-nav{grid-template-columns:repeat(2,1fr)}.cwf-nav a{min-height:45px;font-size:15px}.cwf-main,.cwf-nav-shell,.cwf-footer__inner{padding-left:11px;padding-right:11px}.cwf-sidebar,.cwf-home-middle,.cwf-story-list{grid-template-columns:1fr}.cwf-feature-story__image{min-height:230px}.cwf-story-row{grid-template-columns:105px 1fr}.cwf-story-row__image img{width:105px;height:74px}.cwf-section-head{display:block}.cwf-section-head h2{font-size:25px}.cwf-feature-story h3{font-size:2.1rem}.cwf-slogan{flex-direction:column;gap:7px;text-align:center;padding:18px;letter-spacing:.08em}.cwf-footer__grid{grid-template-columns:1fr}.cwf-footer__bottom{display:block}.cwf-footer__bottom p+p{margin-top:8px}}

/* =========================================================
   CWF REDESIGN COLOR + FONT CLEANUP OVERRIDES
   Place at very bottom of cwf-redesign.css
   ========================================================= */

:root {
    --cwf-bg: #050505;
    --cwf-bg-2: #0b0b0b;
    --cwf-bg-3: #121212;

    --cwf-panel: #101010;
    --cwf-panel-2: #161616;
    --cwf-panel-3: #1c1c1c;

    --cwf-line: rgba(210, 24, 24, .22);
    --cwf-line-strong: rgba(210, 24, 24, .42);
    --cwf-line-warm: rgba(210, 24, 24, .32);

    --cwf-text: #f1f1f1;
    --cwf-muted: #a9a9a9;

    --cwf-cyan: #d71920;
    --cwf-cyan-2: #ff3b35;

    --cwf-orange: #d71920;
    --cwf-orange-2: #ff514a;

    --cwf-red: #e31b23;

    --cwf-gold: #d8a84a;
    --cwf-cream: #f5ead2;

    --cwf-shadow:
        0 0 0 1px rgba(210, 24, 24, .08),
        0 16px 34px rgba(0, 0, 0, .55);
}

/* Overall background: darker, less blue/orange clash */
body {
    color: var(--cwf-text);
    background:
        linear-gradient(rgba(3, 3, 3, .82), rgba(3, 3, 3, .86)),
        radial-gradient(circle at 18% 10%, rgba(215, 25, 32, .14), transparent 24%),
        radial-gradient(circle at 82% 22%, rgba(215, 25, 32, .08), transparent 28%),
        linear-gradient(180deg, #030303 0%, #090909 45%, #050505 100%);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: geometricPrecision;
}

/* Reduce scanline blur/noise over text */
body::before {
    opacity: .025;
}

body::after {
    background:
        radial-gradient(circle at 15% 30%, rgba(215, 25, 32, .055), transparent 20%),
        radial-gradient(circle at 82% 16%, rgba(215, 25, 32, .045), transparent 22%);
}

/* Header/top bar cleanup */
.cwf-status-bar,
.cwf-topline,
.cwf-header-top,
.cwf-broadcast-row {
    background: #030303;
    border-bottom: 1px solid rgba(215, 25, 32, .55);
}

.cwf-broadcast-pill,
.cwf-chip,
.cwf-topline-right span,
.cwf-topline-right a {
    color: #f4f4f4;
    text-shadow: none;
}

.cwf-broadcast-pill strong,
.cwf-broadcast-pill b,
.cwf-chip strong,
.cwf-chip b,
.cwf-topline-right strong,
.cwf-topline-right b {
    color: #57ff57;
}

/* Gold slogan only, not orange */
.cwf-tagline,
.cwf-header-tagline,
.cwf-topline-center,
.cwf-brand-copy p {
    color: var(--cwf-gold) !important;
    text-shadow: none !important;
}

/* Navigation: sharper font and red active state */
.cwf-nav {
    border-color: rgba(255,255,255,.12);
    border-radius: 0;
    background:
        linear-gradient(180deg, rgba(20,20,20,.98), rgba(8,8,8,.98));
    box-shadow:
        0 1px 0 rgba(255,255,255,.04) inset,
        0 12px 26px rgba(0,0,0,.42);
}

.cwf-nav a {
    border-radius: 0;
    color: #f0f0f0;
    font-weight: 900;
    letter-spacing: .075em;
    text-shadow: none;
    -webkit-font-smoothing: antialiased;
    text-rendering: geometricPrecision;
}

.cwf-nav a:hover,
.cwf-nav a.active {
    color: #ffffff;
    border-color: rgba(215, 25, 32, .55);
    background:
        linear-gradient(180deg, rgba(215, 25, 32, .22), rgba(120, 8, 8, .22));
    box-shadow:
        inset 0 -3px 0 #e31b23,
        0 0 18px rgba(215, 25, 32, .16);
}

/* Forums/nav accent should also be red, not orange */
.cwf-nav a.accent,
.cwf-nav a[href*="freeforums"],
.cwf-nav a[href*="Forums"],
.cwf-nav a:last-child {
    color: #ff514a;
}

.cwf-nav a.accent:hover,
.cwf-nav a[href*="freeforums"]:hover,
.cwf-nav a:last-child:hover {
    color: #fff;
    background:
        linear-gradient(180deg, rgba(215, 25, 32, .25), rgba(120, 8, 8, .25));
}

/* Panels: red/black base instead of orange/blue */
.cwf-frame,
.cwf-panel,
.content-box,
.cwf-sidebar-card,
.cwf-feature-card,
.cwf-home-card,
.cwf-footer-panel,
.cwf-bottom-panel,
.cwf-upcoming-panel {
    border-color: rgba(215, 25, 32, .26);
    border-radius: 0;
    background:
        linear-gradient(180deg, rgba(22,22,22,.98), rgba(7,7,7,.99));
    box-shadow:
        0 0 0 1px rgba(255,255,255,.025) inset,
        0 18px 42px rgba(0,0,0,.48);
}

.cwf-frame::before,
.cwf-panel::before,
.content-box::before,
.cwf-sidebar-card::before,
.cwf-feature-card::before,
.cwf-home-card::before,
.cwf-footer-panel::before {
    background:
        linear-gradient(90deg, transparent 0%, rgba(215,25,32,.08) 50%, transparent 100%),
        linear-gradient(180deg, transparent 0%, transparent 90%, rgba(215,25,32,.12) 100%);
    opacity: .75;
}

.cwf-frame::after {
    border-radius: 0;
}

/* Panel headers: red gradient */
.cwf-side-head,
.cwf-block-head,
.cwf-panel-head,
.cwf-public-event-block-head {
    border-bottom: 1px solid rgba(215,25,32,.45);
    background:
        linear-gradient(180deg, rgba(110, 14, 10, .76), rgba(24,24,24,.96));
    color: #f5ead2 !important;
    text-shadow: none;
}

/* Fix blurry-looking headline text */
.cwf-side-head,
.cwf-block-head h2,
.cwf-block-head p,
.cwf-news-copy h3,
.cwf-news-copy h4,
.cwf-news-featured-copy h3,
.cwf-roster-copy h3,
.cwf-rank-row b,
.cwf-event-copy b,
.cwf-event-copy strong,
.cwf-event-promo-inner h3,
.cwf-footer-panel h3,
.cwf-page-title,
.cwf-section-title {
    text-shadow: none !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: geometricPrecision;
}

/* Use cream for big headings, red for action text */
.cwf-block-head h2,
.cwf-side-head,
.cwf-news-featured-copy h3 a,
.cwf-news-copy h3 a,
.cwf-news-copy h4 a,
.cwf-event-copy b a,
.cwf-roster-copy h3,
.cwf-rank-row b,
.cwf-footer-panel h3 {
    color: var(--cwf-cream) !important;
}

.cwf-readmore,
.cwf-news-footer-link a,
.cwf-panel-link,
.cwf-sidebar-link,
.cwf-news-archive-readmore,
.cwf-promo-single-back,
.cwf-public-event-chapter-label {
    color: #ff514a !important;
}

.cwf-readmore:hover,
.cwf-news-footer-link a:hover,
.cwf-panel-link:hover,
.cwf-sidebar-link:hover,
.cwf-news-archive-readmore:hover,
.cwf-event-copy b a:hover,
.cwf-news-copy h3 a:hover,
.cwf-news-copy h4 a:hover {
    color: #ffffff !important;
}

/* Buttons: red only */
.cwf-neon-btn,
.cwf-btn-primary,
.cwf-btn-secondary,
.cwf-readmore,
.cwf-public-event-reset-btn {
    border-color: rgba(215,25,32,.62);
    border-radius: 0;
    background:
        linear-gradient(180deg, rgba(180, 20, 16, .72), rgba(72, 8, 6, .92));
    color: #fff !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.10),
        0 0 18px rgba(215,25,32,.12);
    text-shadow: none;
}

.cwf-neon-btn:hover,
.cwf-btn-primary:hover,
.cwf-btn-secondary:hover,
.cwf-public-event-reset-btn:hover {
    background:
        linear-gradient(180deg, rgba(225, 32, 28, .88), rgba(92, 8, 8, .96));
    color: #fff !important;
    transform: translateY(-1px);
}

/* Date boxes: red/steel instead of blue/orange */
.cwf-event-date,
.cwf-upcoming-panel .cwf-event-date,
.cwf-event-preview-datebox {
    border-color: rgba(215,25,32,.38);
    background:
        linear-gradient(180deg, rgba(20,30,38,.9), rgba(12,12,12,.95));
    border-radius: 0;
}

.cwf-event-date span,
.cwf-event-date strong,
.cwf-upcoming-panel .cwf-event-date span,
.cwf-upcoming-panel .cwf-event-date strong,
.cwf-event-preview-datebox span,
.cwf-event-preview-datebox strong {
    color: #d9e9f5;
    text-shadow: none;
}

/* Featured labels */
.cwf-news-tag,
.cwf-roster-badge,
.cwf-event-preview-match-type,
.cwf-section-kicker {
    border-radius: 0;
    border-color: rgba(215,25,32,.56);
    background:
        linear-gradient(180deg, rgba(205, 28, 24, .95), rgba(91, 8, 8, .95));
    color: #fff;
    text-shadow: none;
}

/* Ranking movement colors: keep readable, not neon-clashy */
.cwf-rank-movement--up {
    color: #7cff7c !important;
}

.cwf-rank-movement--down {
    color: #ff514a !important;
}

.cwf-rank-movement--same {
    color: #cfcfcf !important;
}

/* Image borders no longer cyan */
.cwf-news-image,
.cwf-news-featured-image,
.cwf-roster-image,
.cwf-event-promo,
.cwf-latest-promo-image,
.cwf-promo-image,
.cwf-event-list-logo,
.cwf-public-event-logo,
.cwf-news-single-image img {
    border-color: rgba(215,25,32,.24) !important;
    border-radius: 0;
}

/* Footer cleanup */
.cwf-footer {
    border-top: 1px solid rgba(215,25,32,.45);
    background:
        linear-gradient(180deg, rgba(7,7,7,.98), #020202);
}

.cwf-footer::before {
    background:
        radial-gradient(circle at 18% 22%, rgba(215,25,32,.12), transparent 20%),
        radial-gradient(circle at 82% 72%, rgba(215,25,32,.08), transparent 22%);
}

.cwf-quote {
    border-left-color: #d71920;
    border-radius: 0;
    background: rgba(215,25,32,.08);
    color: #f5ead2;
}

/* Existing EMS public styles: shift away from gold/orange pills */
:root {
    --ems-accent: #d71920;
    --ems-accent-2: #d8a84a;
    --ems-accent-hover: #ff3630;
}

.ems-btn,
.ems-button,
.ems-btn--red,
.ems-character-tab-buttons button,
.ems-promo-meta span,
.ems-event-meta span,
.ems-event-preview-meta span {
    border-radius: 0;
}

/* Optional: if the main font still feels soft, this hardens it visually */
body,
button,
input,
select,
textarea {
    font-synthesis: none;
}

/* =========================================================
   CWF REDESIGN - REMOVE LEFTOVER BLUE + TONE LINK COLOR
   Place after the previous color cleanup override block.
   ========================================================= */

/* Softer action/link colors */
:root {
    --cwf-action: #d94a2b;
    --cwf-action-bright: #f05a3b;
    --cwf-action-dark: #7c160f;
    --cwf-header-red: #5e120d;
    --cwf-header-red-dark: #160707;
    --cwf-panel-black: #0b0b0b;
    --cwf-panel-charcoal: #151515;
}

/* Kill leftover blue panel headers */
.cwf-side-head,
.cwf-panel-head,
.cwf-block-head,
.cwf-public-event-block-head,
.cwf-sidebar-card .cwf-panel-head,
.cwf-sidebar-card.cwf-sidebar-card--orange .cwf-panel-head {
    background:
        linear-gradient(180deg, rgba(94,18,13,.96), rgba(18,18,18,.98)) !important;
    border-bottom: 1px solid rgba(217,74,43,.38) !important;
    color: #f1e6d2 !important;
}

/* Specific sidebar panels that were still blue */
.cwf-bottom-panel,
.cwf-upcoming-panel,
.cwf-sidebar-card,
.cwf-frame {
    background:
        linear-gradient(180deg, rgba(18,18,18,.98), rgba(7,7,7,.99)) !important;
    border-color: rgba(217,74,43,.24) !important;
}

/* Power rankings / latest promos blue title bars */
.cwf-bottom-panel .cwf-side-head,
.cwf-upcoming-panel .cwf-side-head,
.cwf-sidebar-card .cwf-side-head {
    background:
        linear-gradient(180deg, rgba(94,18,13,.92), rgba(20,20,20,.98)) !important;
    color: #f1e6d2 !important;
    border-bottom-color: rgba(217,74,43,.38) !important;
}

/* Buttons that were blue */
.cwf-neon-btn,
.cwf-neon-btn--orange,
.cwf-btn,
.cwf-btn-primary,
.cwf-btn-secondary,
.cwf-panel-link,
.cwf-news-footer-link a,
.cwf-readmore,
.cwf-public-event-reset-btn {
    border-color: rgba(217,74,43,.48) !important;
    background:
        linear-gradient(180deg, rgba(108,22,16,.9), rgba(38,8,6,.96)) !important;
    color: #f1e6d2 !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        0 0 14px rgba(217,74,43,.08) !important;
}

.cwf-neon-btn:hover,
.cwf-neon-btn--orange:hover,
.cwf-btn:hover,
.cwf-btn-primary:hover,
.cwf-btn-secondary:hover,
.cwf-panel-link:hover,
.cwf-news-footer-link a:hover,
.cwf-readmore:hover,
.cwf-public-event-reset-btn:hover {
    background:
        linear-gradient(180deg, rgba(150,33,22,.96), rgba(58,10,8,.98)) !important;
    border-color: rgba(240,90,59,.66) !important;
    color: #ffffff !important;
}

/* Tone down bright orange/red text links */
a,
.cwf-readmore,
.cwf-news-footer-link a,
.cwf-panel-link,
.cwf-sidebar-link,
.cwf-news-archive-readmore,
.cwf-promo-single-back,
.cwf-public-event-chapter-label,
.cwf-nav a:last-child,
.cwf-nav a[href*="freeforums"],
.cwf-latest-promo-copy h3 a:hover,
.cwf-event-copy b a:hover,
.cwf-rank-row b a:hover {
    color: var(--cwf-action) !important;
}

a:hover,
.cwf-readmore:hover,
.cwf-news-footer-link a:hover,
.cwf-panel-link:hover,
.cwf-sidebar-link:hover,
.cwf-news-archive-readmore:hover,
.cwf-promo-single-back:hover,
.cwf-public-event-chapter-label:hover,
.cwf-nav a:last-child:hover,
.cwf-nav a[href*="freeforums"]:hover {
    color: #f1e6d2 !important;
}

/* Keep normal body/title links from becoming orange everywhere */
.cwf-news-featured-copy h3 a,
.cwf-news-copy h3 a,
.cwf-news-copy h4 a,
.cwf-event-copy b a,
.cwf-latest-promo-copy h3 a,
.cwf-rank-row b a,
.cwf-roster-copy h3,
.cwf-footer-panel h3 {
    color: #f1e6d2 !important;
}

/* Ranking points can stay readable, but less neon */
.cwf-rank-movement--up,
.cwf-rank-row em {
    color: #8edc68 !important;
}

.cwf-rank-movement--down {
    color: #d94a2b !important;
}

.cwf-rank-movement--same {
    color: #c8bda8 !important;
}

/* Date boxes should not feel blue */
.cwf-event-date,
.cwf-upcoming-panel .cwf-event-date,
.cwf-event-preview-datebox {
    border-color: rgba(217,74,43,.36) !important;
    background:
        linear-gradient(180deg, rgba(30,30,30,.96), rgba(9,9,9,.98)) !important;
}

.cwf-event-date span,
.cwf-event-date strong,
.cwf-upcoming-panel .cwf-event-date span,
.cwf-upcoming-panel .cwf-event-date strong,
.cwf-event-preview-datebox span,
.cwf-event-preview-datebox strong {
    color: #f1e6d2 !important;
}

/* Latest promos image borders: warm, not blue */
.cwf-latest-promo-image,
.cwf-roster-image,
.cwf-news-image,
.cwf-news-featured-image,
.cwf-event-promo {
    border-color: rgba(217,74,43,.24) !important;
}

/* The blue-ish button used on rankings/promos */
.cwf-bottom-panel .cwf-neon-btn,
.cwf-sidebar .cwf-neon-btn,
.cwf-upcoming-panel .cwf-neon-btn {
    background:
        linear-gradient(180deg, rgba(92,18,13,.92), rgba(24,7,5,.98)) !important;
    border-color: rgba(217,74,43,.5) !important;
    color: #f1e6d2 !important;
}

/* Subtle row separators instead of cool blue/gray */
.cwf-rank-row,
.cwf-latest-promo-item,
.cwf-event-card,
.cwf-upcoming-panel .cwf-event-card {
    border-color: rgba(255,255,255,.08) !important;
    background: rgba(255,255,255,.025) !important;
}

/* Top active nav underline/action should be red-orange but not neon */
.cwf-nav a:hover,
.cwf-nav a.active {
    border-color: rgba(217,74,43,.5) !important;
    background:
        linear-gradient(180deg, rgba(105,20,14,.48), rgba(18,18,18,.92)) !important;
    box-shadow:
        inset 0 -3px 0 var(--cwf-action),
        0 0 12px rgba(217,74,43,.10) !important;
    color: #ffffff !important;
}

/* ============================================================
   CWF REDESIGN SUBPAGE/FUNCTION SUPPORT
   Appended to the confirmed redesign CSS without removing any
   homepage/header/nav additions.
   ============================================================ */

:root {
    --cwf-font-main: var(--cwf-body);
    --cwf-font-alt: var(--cwf-head);
    --cwf-cyan: #c74332;
    --cwf-cyan-2: #f5ead2;
    --cwf-orange: #c74332;
    --cwf-orange-2: #d8a84a;
    --cwf-line: rgba(199, 67, 50, .26);
    --cwf-line-strong: rgba(199, 67, 50, .42);
    --cwf-line-warm: rgba(216, 168, 74, .28);
    --cwf-radius: 0;
    --cwf-radius-sm: 0;
}
.cwf-news-archive-list{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.cwf-news-archive-item{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:18px;
    align-items:start;
    padding:16px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:rgba(255,255,255,.02);
}

.cwf-news-archive-thumb{
    display:block;
}

.cwf-news-archive-thumb img{
    display:block;
    width:100%;
    height:140px;
    object-fit:cover;
    border-radius:10px;
    border:1px solid rgba(83,225,255,.12);
}

.cwf-news-archive-copy{
    min-width:0;
}

.cwf-news-archive-meta{
    margin-bottom:8px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-news-archive-copy h2{
    margin:0 0 10px;
    font:900 clamp(1.2rem, 2vw, 1.85rem)/1.08 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-news-archive-copy h2 a{
    color:#fff;
    text-decoration:none;
}

.cwf-news-archive-copy h2 a:hover{
    color:var(--cwf-cyan-2);
}

.cwf-news-archive-copy p{
    margin:0 0 12px;
    color:var(--cwf-text);
    font:500 .98rem/1.7 var(--cwf-font-main);
}

.cwf-news-archive-readmore{
    display:inline-flex;
    align-items:center;
    color:var(--cwf-cyan-2);
    font:900 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
    text-decoration:none;
}

.cwf-news-archive-readmore:hover{
    color:#fff;
}

@media (max-width: 760px){
    .cwf-news-archive-item{
        grid-template-columns:1fr;
    }

    .cwf-news-archive-thumb img{
        height:180px;
    }
}

.cwf-news-single{
    max-width:980px;
    margin:0 auto;
}

.cwf-news-single-header{
    margin-bottom:22px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.cwf-news-single-header h1,
.cwf-news-single-header h2{
    margin:0 0 12px;
    color:#fff;
    font:900 clamp(2rem, 4vw, 3.2rem)/1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-news-single-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    color:var(--cwf-muted);
    font:800 11px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-news-single-image{
    margin:0 0 22px;
}

.cwf-news-single-image img{
    display:block;
    width:100%;
    max-width:100%;
    max-height:460px;
    object-fit:cover;
    border-radius:14px;
    border:1px solid rgba(83,225,255,.12);
    box-shadow:0 12px 28px rgba(0,0,0,.28);
}

.cwf-news-single-body{
    color:#d7e2ec;
    font:500 1.05rem/1.85 var(--cwf-font-main);
}

.cwf-news-single-body p{
    margin:0 0 18px;
    color:#d7e2ec;
}

.cwf-news-single-body h2,
.cwf-news-single-body h3,
.cwf-news-single-body h4{
    margin:28px 0 12px;
    color:#fff;
    font-family:var(--cwf-font-alt);
    font-weight:900;
    letter-spacing:.02em;
    text-transform:uppercase;
    line-height:1.1;
}

.cwf-news-single-body h2{
    font-size:1.9rem;
}

.cwf-news-single-body h3{
    font-size:1.5rem;
}

.cwf-news-single-body h4{
    font-size:1.2rem;
}

.cwf-news-single-body a{
    color:var(--cwf-cyan-2);
    text-decoration:none;
}

.cwf-news-single-body a:hover{
    color:#fff;
}

.cwf-news-single-body img{
    display:block;
    max-width:100%;
    height:auto;
    margin:20px auto;
    border-radius:12px;
    border:1px solid rgba(83,225,255,.10);
}

.cwf-news-single-body blockquote{
    margin:22px 0;
    padding:14px 18px;
    border-left:3px solid var(--cwf-orange);
    background:rgba(255,122,43,.05);
    border-radius:10px;
    color:#f0d7c7;
}

.cwf-news-single-body ul,
.cwf-news-single-body ol{
    margin:0 0 18px 24px;
}

.cwf-news-single-body li{
    margin-bottom:8px;
}

.cwf-news-single-footer{
    margin-top:26px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.06);
}

.cwf-news-single-back{
    display:inline-flex;
    align-items:center;
    color:var(--cwf-cyan-2);
    font:900 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
    text-decoration:none;
}

.cwf-news-single-back:hover{
    color:#fff;
}

@media (max-width: 640px){
    .cwf-news-single-header h1,
    .cwf-news-single-header h2{
        font-size:clamp(1.6rem, 8vw, 2.2rem);
    }

    .cwf-news-single-body{
        font-size:1rem;
        line-height:1.75;
    }

    .cwf-news-single-image img{
        max-height:300px;
    }
}

.cwf-promos-list{
    display:flex;
    flex-direction:column;
    gap:16px;
    padding-top:18px;
}

.cwf-promo-card{
    display:grid;
    grid-template-columns:160px minmax(0,1fr);
    gap:16px;
    align-items:center;
    padding:16px 18px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:rgba(255,255,255,.02);
    box-shadow:0 0 0 1px rgba(255,255,255,.01) inset;
}

.cwf-promo-image-wrap{
    display:block;
}

.cwf-promo-image{
    display:block;
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    border-radius:12px;
    border:1px solid rgba(83,225,255,.12);
    background:#0b1118;
}

.cwf-promo-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:8px;
}

.cwf-promo-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-promo-title{
    margin:0;
    font:900 clamp(1.4rem, 2vw, 2.2rem)/1.02 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-promo-title a{
    color:#fff;
    text-decoration:none;
}

.cwf-promo-title a:hover{
    color:var(--cwf-cyan-2);
}

.cwf-promo-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    flex-wrap:wrap;
}

.cwf-promo-details{
    display:grid;
    gap:6px;
    color:var(--cwf-text);
    font:500 .98rem/1.45 var(--cwf-font-main);
}

.cwf-promo-details strong{
    color:#fff;
    display:inline-block;
    min-width:74px;
    margin-right:8px;
    font-weight:700;
}

.cwf-promo-actions{
    flex-shrink:0;
}

.cwf-promo-actions .cwf-neon-btn{
    min-width:140px;
    text-align:center;
}

.cwf-empty-state{
    padding:24px 0 8px;
    color:var(--cwf-muted);
}

@media (max-width: 760px){
    .cwf-promo-card{
        grid-template-columns:110px minmax(0,1fr);
        gap:14px;
        padding:14px;
        align-items:start;
    }

    .cwf-promo-title{
        font-size:clamp(1.15rem, 5vw, 1.7rem);
    }

    .cwf-promo-bottom{
        align-items:flex-start;
        gap:12px;
    }

    .cwf-promo-actions .cwf-neon-btn{
        min-width:auto;
        width:auto;
    }
}

.cwf-latest-promos-list{
    display:flex;
    flex-direction:column;
    gap:12px;
    padding:14px;
}

.cwf-latest-promo-item{
    display:grid;
    grid-template-columns:72px minmax(0,1fr);
    gap:12px;
    align-items:center;
    padding:10px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:12px;
    background:rgba(255,255,255,.02);
}

.cwf-latest-promo-image-wrap{
    display:block;
}

.cwf-latest-promo-image{
    display:block;
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    border-radius:10px;
    border:1px solid rgba(83,225,255,.12);
    background:#0b1118;
}

.cwf-latest-promo-copy{
    min-width:0;
}

.cwf-latest-promo-meta{
    margin-bottom:4px;
    color:var(--cwf-muted);
    font:800 9px/1.3 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-latest-promo-copy h3{
    margin:0 0 6px;
    font:900 1rem/1.1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-latest-promo-copy h3 a{
    color:#fff;
    text-decoration:none;
}

.cwf-latest-promo-copy h3 a:hover{
    color:var(--cwf-cyan-2);
}

.cwf-latest-promos-list > .cwf-neon-btn{
    margin-top:4px;
    width:100%;
    justify-content:center;
}

.cwf-latest-promo-empty{
    color:var(--cwf-muted);
}

.cwf-promo-single{
    max-width:1000px;
    margin:0 auto;
}

.cwf-promo-single-header{
    margin-bottom:22px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.cwf-promo-single-top{
    display:grid;
    grid-template-columns:180px minmax(0,1fr);
    gap:20px;
    align-items:start;
}

.cwf-promo-single-image-wrap{
    display:block;
}

.cwf-promo-single-image{
    display:block;
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    border-radius:14px;
    border:1px solid rgba(83,225,255,.12);
    background:#0b1118;
}

.cwf-promo-single-headcopy{
    min-width:0;
}

.cwf-promo-single-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    margin-bottom:10px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-promo-single-title{
    margin:0 0 12px;
    color:#fff;
    font:900 clamp(2rem, 4vw, 3.2rem)/1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-promo-single-byline{
    color:var(--cwf-text);
    font:500 1rem/1.5 var(--cwf-font-main);
}

.cwf-promo-single-byline strong{
    color:var(--cwf-cyan-2);
    margin-right:8px;
}

.cwf-promo-single-body{
    color:#d7e2ec;
    font:500 1.05rem/1.85 var(--cwf-font-main);
}

.cwf-promo-single-body p{
    margin:0 0 18px;
    color:#d7e2ec;
}

.cwf-promo-single-body h2,
.cwf-promo-single-body h3,
.cwf-promo-single-body h4{
    margin:28px 0 12px;
    color:#fff;
    font-family:var(--cwf-font-alt);
    font-weight:900;
    letter-spacing:.02em;
    text-transform:uppercase;
    line-height:1.1;
}

.cwf-promo-single-body h2{
    font-size:1.9rem;
}

.cwf-promo-single-body h3{
    font-size:1.5rem;
}

.cwf-promo-single-body h4{
    font-size:1.2rem;
}

.cwf-promo-single-body a{
    color:var(--cwf-cyan-2);
    text-decoration:none;
}

.cwf-promo-single-body a:hover{
    color:#fff;
}

.cwf-promo-single-body img{
    display:block;
    max-width:100%;
    height:auto;
    margin:20px auto;
    border-radius:12px;
    border:1px solid rgba(83,225,255,.10);
}

.cwf-promo-single-body blockquote{
    margin:22px 0;
    padding:14px 18px;
    border-left:3px solid var(--cwf-orange);
    background:rgba(255,122,43,.05);
    border-radius:10px;
    color:#f0d7c7;
}

.cwf-promo-single-body ul,
.cwf-promo-single-body ol{
    margin:0 0 18px 24px;
}

.cwf-promo-single-body li{
    margin-bottom:8px;
}

.cwf-promo-single-footer{
    margin-top:26px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.06);
}

.cwf-promo-single-back{
    display:inline-flex;
    align-items:center;
    color:var(--cwf-cyan-2);
    font:900 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
    text-decoration:none;
}

.cwf-promo-single-back:hover{
    color:#fff;
}

@media (max-width: 760px){
    .cwf-promo-single-top{
        grid-template-columns:1fr;
    }

    .cwf-promo-single-image{
        max-width:220px;
    }

    .cwf-promo-single-title{
        font-size:clamp(1.6rem, 8vw, 2.3rem);
    }

    .cwf-promo-single-body{
        font-size:1rem;
        line-height:1.75;
    }
}

.cwf-event-listing{
    display:flex;
    flex-direction:column;
    gap:16px;
    padding-top:18px;
}

.cwf-event-list-card{
    display:grid;
    grid-template-columns:140px minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    padding:16px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:rgba(255,255,255,.02);
    box-shadow:0 0 0 1px rgba(255,255,255,.01) inset;
}

.cwf-event-list-logo-wrap{
    display:block;
}

.cwf-event-list-logo{
    display:block;
    width:100%;
    height:88px;
    object-fit:contain;
    border-radius:12px;
    border:1px solid rgba(83,225,255,.12);
    background:#0b1118;
    padding:8px;
}

.cwf-event-list-logo--empty{
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--cwf-muted);
    font:800 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-list-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:8px;
}

.cwf-event-list-meta{
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-list-title{
    margin:0;
    font:900 clamp(1.2rem, 2vw, 1.85rem)/1.08 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-event-list-title a{
    color:#fff;
    text-decoration:none;
}

.cwf-event-list-title a:hover{
    color:var(--cwf-cyan-2);
}

.cwf-event-list-location{
    color:var(--cwf-text);
    font:500 .98rem/1.5 var(--cwf-font-main);
}

.cwf-event-list-action{
    flex-shrink:0;
}

@media (max-width: 820px){
    .cwf-event-list-card{
        grid-template-columns:110px minmax(0,1fr);
    }

    .cwf-event-list-action{
        grid-column:2;
    }
}

@media (max-width: 640px){
    .cwf-event-list-card{
        grid-template-columns:1fr;
        align-items:start;
    }

    .cwf-event-list-logo{
        max-width:220px;
    }

    .cwf-event-list-action{
        grid-column:auto;
    }

    .cwf-event-list-action .cwf-neon-btn{
        width:100%;
        justify-content:center;
    }
}

.cwf-event-preview{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.cwf-event-preview-hero{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:20px;
    align-items:center;
    padding:18px;
}

.cwf-event-preview-logo-wrap{
    display:block;
}

.cwf-event-preview-logo{
    display:block;
    width:100%;
    height:160px;
    object-fit:contain;
    border-radius:14px;
    border:1px solid rgba(83,225,255,.12);
    background:#0b1118;
    padding:12px;
}

.cwf-event-preview-logo--empty{
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--cwf-muted);
    font:800 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-preview-header{
    display:grid;
    grid-template-columns:76px minmax(0,1fr);
    gap:18px;
    align-items:start;
}

.cwf-event-preview-datebox{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:76px;
    border:1px solid rgba(83,225,255,.18);
    border-radius:12px;
    background:rgba(83,225,255,.05);
}

.cwf-event-preview-datebox span{
    margin-bottom:4px;
    color:var(--cwf-cyan-2);
    font:900 10px/1 var(--cwf-font-alt);
    letter-spacing:.14em;
    text-transform:uppercase;
}

.cwf-event-preview-datebox strong{
    color:var(--cwf-cyan-2);
    font:900 30px/1 var(--cwf-font-alt);
}

.cwf-event-preview-headline{
    min-width:0;
}

.cwf-event-preview-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 12px;
    margin-bottom:10px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-preview-title{
    margin:0;
    color:#fff;
    font:900 clamp(1.9rem, 4vw, 3.2rem)/1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-event-preview-block{
    padding:18px;
    color:#d7e2ec;
    font:500 1.02rem/1.8 var(--cwf-font-main);
}

.cwf-event-preview-block p{
    margin:0 0 16px;
}

.cwf-event-preview-card{
    overflow:hidden;
}

.cwf-event-preview-card-body{
    padding:18px;
}

.cwf-event-preview-matches{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.cwf-event-preview-match{
    padding:16px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:rgba(255,255,255,.02);
}

.cwf-event-preview-match-top{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:14px;
    flex-wrap:wrap;
    margin-bottom:10px;
}

.cwf-event-preview-match-title{
    margin:0;
    color:#fff;
    font:900 clamp(1.1rem, 2vw, 1.5rem)/1.1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-event-preview-match-type{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 10px;
    border-radius:999px;
    border:1px solid rgba(255,122,43,.22);
    background:rgba(255,122,43,.08);
    color:var(--cwf-orange-2);
    font:900 10px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-preview-match-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 12px;
    margin-bottom:12px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.10em;
    text-transform:uppercase;
}

.cwf-event-preview-title-line{
    color:#ffd7c2;
}

.cwf-event-preview-match-body{
    color:#d7e2ec;
    font:500 .98rem/1.75 var(--cwf-font-main);
}

.cwf-event-preview-match-body p{
    margin:0 0 14px;
}

.cwf-event-preview-actions{
    display:flex;
    justify-content:flex-start;
}

@media (max-width: 820px){
    .cwf-event-preview-hero{
        grid-template-columns:1fr;
    }

    .cwf-event-preview-logo{
        max-width:240px;
    }

    .cwf-event-preview-header{
        grid-template-columns:1fr;
    }

    .cwf-event-preview-datebox{
        max-width:90px;
    }
}

.cwf-event-listing{
    display:flex;
    flex-direction:column;
    gap:16px;
    padding-top:18px;
}

.cwf-event-list-card{
    display:grid;
    grid-template-columns:140px minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    padding:16px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:rgba(255,255,255,.02);
    box-shadow:0 0 0 1px rgba(255,255,255,.01) inset;
}

.cwf-event-list-logo-wrap{
    display:block;
}

.cwf-event-list-logo{
    display:block;
    width:100%;
    height:88px;
    object-fit:contain;
    border-radius:12px;
    border:1px solid rgba(83,225,255,.12);
    background:#0b1118;
    padding:8px;
}

.cwf-event-list-logo--empty{
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--cwf-muted);
    font:800 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-list-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:8px;
}

.cwf-event-list-meta{
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-list-title{
    margin:0;
    font:900 clamp(1.2rem, 2vw, 1.85rem)/1.08 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-event-list-title a{
    color:#fff;
    text-decoration:none;
}

.cwf-event-list-title a:hover{
    color:var(--cwf-cyan-2);
}

.cwf-event-list-location{
    color:var(--cwf-text);
    font:500 .98rem/1.5 var(--cwf-font-main);
}

.cwf-event-list-action{
    flex-shrink:0;
}

@media (max-width: 820px){
    .cwf-event-list-card{
        grid-template-columns:110px minmax(0,1fr);
    }

    .cwf-event-list-action{
        grid-column:2;
    }
}

@media (max-width: 640px){
    .cwf-event-list-card{
        grid-template-columns:1fr;
        align-items:start;
    }

    .cwf-event-list-logo{
        max-width:220px;
    }

    .cwf-event-list-action{
        grid-column:auto;
    }

    .cwf-event-list-action .cwf-neon-btn{
        width:100%;
        justify-content:center;
    }
}

.cwf-public-event{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.cwf-public-event-hero{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:20px;
    align-items:center;
    padding:18px;
}

.cwf-public-event-logo-wrap{
    display:block;
}

.cwf-public-event-logo{
    display:block;
    width:100%;
    height:160px;
    object-fit:contain;
    border-radius:14px;
    border:1px solid rgba(83,225,255,.12);
    background:#0b1118;
    padding:12px;
}

.cwf-public-event-logo--empty{
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--cwf-muted);
    font:800 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-public-event-headcopy{
    min-width:0;
}

.cwf-public-event-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 12px;
    margin-bottom:10px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-public-event-title{
    margin:0 0 14px;
    color:#fff;
    font:900 clamp(1.9rem, 4vw, 3.2rem)/1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-public-event-actions,
.cwf-public-event-bottom-actions{
    display:flex;
    justify-content:flex-start;
    gap:12px;
    flex-wrap:wrap;
}

.cwf-public-event-block{
    overflow:hidden;
}

.cwf-public-event-block-head{
    padding:16px 18px 14px;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.cwf-public-event-block-head h2{
    margin:0;
    color:#fff;
    font:900 clamp(1.2rem, 2.5vw, 1.8rem)/1.08 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
    text-align:center;
}

.cwf-public-event-block-body{
    padding:18px;
    color:#d7e2ec;
    font:500 1.02rem/1.8 var(--cwf-font-main);
}

.cwf-public-event-block-body p{
    margin:0 0 16px;
}

.cwf-public-event-block-body h1,
.cwf-public-event-block-body h2,
.cwf-public-event-block-body h3,
.cwf-public-event-block-body h4{
    color:#fff;
}

.cwf-public-event-block-body img{
    max-width:100%;
    height:auto;
}

.cwf-public-event-credits{
    overflow:hidden;
}

.cwf-public-event-credits-body{
    padding:18px;
}

.cwf-public-event-credits-list{
    margin:0;
    padding-left:18px;
    color:#dce7f1;
}

.cwf-public-event-credits-list li{
    margin-bottom:10px;
    line-height:1.6;
}

.cwf-public-event-credits-note{
    margin-top:16px;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,.06);
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

@media (max-width: 820px){
    .cwf-public-event-hero{
        grid-template-columns:1fr;
    }

    .cwf-public-event-logo{
        max-width:240px;
    }
}

@media (max-width: 640px){
    .cwf-public-event-actions .cwf-neon-btn,
    .cwf-public-event-bottom-actions .cwf-neon-btn{
        width:100%;
        justify-content:center;
    }

    .cwf-public-event-title{
        font-size:clamp(1.5rem, 8vw, 2.2rem);
    }
}


/* =========================================================
   eMS Core Public Content Styles
   Drop this at the end of your current front-end CSS.
   Supports core user_content pages:
   character.php, promo.php, promos.php, event.php, event-preview.php
   ========================================================= */

:root {
  --ems-bg: #0f1117;
  --ems-panel: #171b24;
  --ems-panel-soft: #1f2530;
  --ems-border: rgba(255,255,255,0.11);
  --ems-border-strong: rgba(255,255,255,0.18);
  --ems-text: #f4f6fb;
  --ems-muted: #aab2c0;
  --ems-faint: #7f8796;
  --ems-accent: #d71920;
  --ems-accent-2: #d8a72f;
  --ems-accent-hover: #ef3340;
  --ems-success: #37c96f;
  --ems-radius: 18px;
  --ems-radius-lg: 26px;
  --ems-shadow: 0 18px 46px rgba(0,0,0,0.28);
  --ems-shadow-soft: 0 12px 30px rgba(0,0,0,0.2);
}

/* -----------------------------
   Shared public layout
----------------------------- */

.ems-subpage-wrap,
.ems-character-page,
.ems-event-page,
.ems-event-preview-page {
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
  padding: 28px 18px;
  box-sizing: border-box;
  color: var(--ems-text);
}

.ems-subpage-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 24px;
  align-items: start;
}

.ems-subpage-content {
  min-width: 0;
}

.ems-page-heading {
  position: relative;
  overflow: hidden;
  margin-bottom: 24px;
  padding: 24px;
  border-radius: var(--ems-radius-lg);
  background:
    radial-gradient(circle at top right, rgba(215,25,32,0.22), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.07), rgba(255,255,255,0.026)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow);
}

.ems-page-heading span,
.ems-character-panel__header span,
.ems-character-quick-card span,
.ems-single-promo-heading > span,
.ems-promo-kicker,
.ems-event-kicker,
.ems-event-card-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--ems-accent-2);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ems-page-heading span::before,
.ems-character-panel__header span::before,
.ems-single-promo-heading > span::before,
.ems-event-kicker::before,
.ems-event-card-kicker::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--ems-accent);
  box-shadow: 0 0 12px rgba(215,25,32,0.55);
}

.ems-page-heading h1,
.ems-character-hero h1,
.ems-single-promo-heading h1 {
  margin: 8px 0 10px;
  color: var(--ems-text);
  line-height: 1;
  font-size: clamp(2rem, 5vw, 4.5rem);
  font-weight: 950;
  letter-spacing: -0.045em;
  text-transform: uppercase;
}

.ems-page-heading p {
  max-width: 820px;
  margin: 0;
  color: var(--ems-muted);
  line-height: 1.6;
}

.ems-btn,
.ems-button,
.ems-btn--red {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 9px 16px;
  border-radius: 999px;
  border: 1px solid var(--ems-border-strong);
  background: rgba(255,255,255,0.08);
  color: var(--ems-text);
  font-weight: 850;
  text-decoration: none;
  transition: 0.18s ease;
}

.ems-btn:hover,
.ems-button:hover {
  color: #fff;
  background: rgba(216,167,47,0.16);
  border-color: rgba(216,167,47,0.38);
  text-decoration: none;
}

.ems-btn--red {
  background: linear-gradient(135deg, var(--ems-accent), #991b1b);
  border-color: rgba(255,255,255,0.08);
  color: #fff;
}

.ems-btn--red:hover {
  background: linear-gradient(135deg, var(--ems-accent-hover), var(--ems-accent));
  color: #fff;
}

.ems-empty-state,
.ems-character-empty {
  padding: 22px;
  border-radius: var(--ems-radius);
  background: rgba(255,255,255,0.045);
  border: 1px solid var(--ems-border);
  color: var(--ems-muted);
  text-align: center;
}

/* -----------------------------
   Character profile
----------------------------- */

.ems-character-hero {
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  gap: 24px;
  align-items: stretch;
  margin-bottom: 24px;
  padding: 24px;
  border-radius: var(--ems-radius-lg);
  background:
    radial-gradient(circle at top right, rgba(215,25,32,0.22), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.07), rgba(255,255,255,0.026)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow);
}

.ems-character-hero__image {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  min-height: 420px;
  overflow: hidden;
  border-radius: 22px;
  background:
    radial-gradient(circle at center, rgba(216,167,47,0.12), transparent 55%),
    #0b0f16;
  border: 1px solid var(--ems-border);
}

.ems-character-hero__image img {
  display: block;
  max-width: 100%;
  max-height: 430px;
  object-fit: contain;
}

.ems-character-hero__content {
  min-width: 0;
}

.ems-character-eyebrow {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 6px 12px;
  border-radius: 999px;
  color: var(--ems-accent-2);
  background: rgba(216,167,47,0.12);
  border: 1px solid rgba(216,167,47,0.26);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.ems-character-champion-badge {
  display: inline-flex;
  margin: 0 0 16px;
  padding: 8px 13px;
  border-radius: 999px;
  color: #ffe19a;
  background: rgba(216,167,47,0.14);
  border: 1px solid rgba(216,167,47,0.32);
  font-weight: 850;
  text-decoration: none;
}

.ems-character-stat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin: 18px 0;
}

.ems-character-stat {
  padding: 12px;
  border-radius: 14px;
  background: rgba(255,255,255,0.055);
  border: 1px solid var(--ems-border);
}

.ems-character-stat span {
  display: block;
  margin-bottom: 4px;
  color: var(--ems-faint);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.ems-character-stat strong {
  color: var(--ems-text);
  font-size: 15px;
}

.ems-character-bio {
  color: #d9dee8;
  line-height: 1.7;
}

.ems-character-bio p {
  margin: 0 0 1em;
}

.ems-character-panel,
.ems-character-tabs {
  margin-bottom: 24px;
  padding: 22px;
  border-radius: var(--ems-radius-lg);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow-soft);
}

.ems-character-panel__header {
  margin-bottom: 16px;
}

.ems-character-panel__header h2 {
  margin: 6px 0 0;
  color: var(--ems-text);
  font-size: 26px;
}

.ems-character-icon-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
  gap: 14px;
}

.ems-character-icon-card {
  padding: 14px;
  border-radius: 16px;
  background: rgba(255,255,255,0.045);
  border: 1px solid var(--ems-border);
  text-align: center;
}

.ems-character-icon-card img {
  width: 72px;
  height: 72px;
  object-fit: contain;
  margin-bottom: 10px;
}

.ems-character-icon-card span {
  display: block;
  color: var(--ems-text);
  font-size: 13px;
  font-weight: 850;
}

.ems-character-quick-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.ems-character-quick-card {
  padding: 18px;
  border-radius: var(--ems-radius);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow-soft);
}

.ems-character-quick-card p {
  margin: 8px 0 0;
  color: #d9dee8;
  line-height: 1.55;
}

.ems-character-quick-card a {
  color: #ffe19a;
  font-weight: 800;
}

.ems-character-music-card audio {
  width: 100%;
  margin-top: 10px;
}

.ems-character-tab-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}

.ems-character-tab-buttons button {
  min-height: 38px;
  padding: 8px 13px;
  border-radius: 999px;
  border: 1px solid var(--ems-border);
  background: rgba(255,255,255,0.065);
  color: var(--ems-text);
  font-weight: 850;
  cursor: pointer;
}

.ems-character-tab-buttons button.active,
.ems-character-tab-buttons button:hover {
  background: rgba(216,167,47,0.16);
  border-color: rgba(216,167,47,0.36);
  color: #ffe19a;
}

.ems-character-tab-content {
  display: none;
}

.ems-character-tab-content.active {
  display: block;
}

.ems-character-list {
  display: grid;
  gap: 12px;
}

.ems-character-list-item,
.ems-character-ring-card,
.ems-character-record-card {
  padding: 14px;
  border-radius: 16px;
  background: rgba(255,255,255,0.045);
  border: 1px solid var(--ems-border);
}

.ems-character-list-item a {
  color: #ffe19a;
  font-weight: 900;
}

.ems-character-list-item p {
  margin: 6px 0 0;
  color: var(--ems-muted);
}

.ems-character-table-wrap {
  overflow-x: auto;
}

.ems-character-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  min-width: 720px;
}

.ems-character-table th,
.ems-character-table td {
  padding: 12px;
  border-bottom: 1px solid var(--ems-border);
  text-align: left;
}

.ems-character-table th {
  color: var(--ems-text);
  background: rgba(255,255,255,0.065);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.ems-character-table td {
  color: #d9dee8;
}

.ems-character-table a {
  color: #ffe19a;
  font-weight: 800;
}

.ems-character-record-grid,
.ems-character-ring-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 12px;
}

.ems-character-record-card span,
.ems-character-ring-card span {
  display: block;
  margin-bottom: 6px;
  color: var(--ems-accent-2);
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.ems-character-record-card strong {
  color: var(--ems-text);
  font-size: 32px;
  line-height: 1;
}

.ems-character-ring-card p {
  margin: 0;
  color: #d9dee8;
  line-height: 1.55;
}

/* -----------------------------
   Promo listing
----------------------------- */

.ems-promo-list {
  display: grid;
  gap: 18px;
}

.ems-promo-card {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 18px;
  padding: 18px;
  border-radius: var(--ems-radius-lg);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow-soft);
}

.ems-promo-image {
  position: relative;
  display: block;
  min-height: 210px;
  overflow: hidden;
  border-radius: 18px;
  background: #0b0f16;
  border: 1px solid var(--ems-border);
}

.ems-promo-image img {
  width: 100%;
  height: 100%;
  min-height: 210px;
  object-fit: cover;
  display: block;
}

.ems-promo-play {
  position: absolute;
  right: 12px;
  bottom: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, var(--ems-accent), #991b1b);
  box-shadow: 0 10px 26px rgba(0,0,0,0.35);
}

.ems-promo-info {
  min-width: 0;
  align-self: center;
}

.ems-promo-info h2 {
  margin: 8px 0 10px;
  font-size: clamp(1.45rem, 3vw, 2.3rem);
  line-height: 1.05;
}

.ems-promo-info h2 a {
  color: var(--ems-text);
  text-decoration: none;
}

.ems-promo-info h2 a:hover {
  color: #ffe19a;
}

.ems-promo-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 14px;
}

.ems-promo-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  color: var(--ems-muted);
  background: rgba(255,255,255,0.06);
  border: 1px solid var(--ems-border);
  font-size: 12px;
  font-weight: 750;
}

.ems-promo-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

/* -----------------------------
   Single promo
----------------------------- */

.ems-single-promo {
  overflow: hidden;
  border-radius: var(--ems-radius-lg);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow);
}

.ems-single-promo-header {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 22px;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--ems-border);
  background:
    radial-gradient(circle at top right, rgba(215,25,32,0.18), transparent 34%),
    rgba(255,255,255,0.025);
}

.ems-single-promo-art {
  position: relative;
  min-height: 300px;
  overflow: hidden;
  border-radius: 20px;
  background: #0b0f16;
  border: 1px solid var(--ems-border);
}

.ems-single-promo-art img {
  display: block;
  width: 100%;
  height: 300px;
  object-fit: cover;
}

.ems-single-promo-heading {
  min-width: 0;
}

.ems-single-promo-body {
  padding: 28px;
  color: #d9dee8;
  line-height: 1.75;
  font-size: 1.04rem;
}

.ems-single-promo-body p {
  margin: 0 0 1em;
}

.ems-single-promo-body a {
  color: #ffe19a;
  font-weight: 800;
}

.ems-single-promo-footer {
  padding: 20px 28px 28px;
}

/* -----------------------------
   Event / preview neutral hooks
----------------------------- */

.ems-event-card,
.ems-event-panel,
.ems-event-preview-card,
.ems-event-match-card,
.ems-event-segment-card {
  margin-bottom: 18px;
  padding: 18px;
  border-radius: var(--ems-radius);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow-soft);
}

.ems-event-card h2,
.ems-event-card h3,
.ems-event-panel h2,
.ems-event-panel h3,
.ems-event-preview-card h2,
.ems-event-preview-card h3,
.ems-event-match-card h2,
.ems-event-match-card h3,
.ems-event-segment-card h2,
.ems-event-segment-card h3 {
  margin-top: 0;
  color: var(--ems-text);
}

.ems-event-meta,
.ems-event-preview-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 14px;
}

.ems-event-meta span,
.ems-event-preview-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  color: var(--ems-muted);
  background: rgba(255,255,255,0.06);
  border: 1px solid var(--ems-border);
  font-size: 12px;
  font-weight: 750;
}

/* -----------------------------
   Responsive
----------------------------- */

@media (max-width: 1000px) {
  .ems-subpage-layout {
    grid-template-columns: 1fr;
  }

  .ems-character-hero,
  .ems-single-promo-header {
    grid-template-columns: 1fr;
  }

  .ems-character-hero__image {
    min-height: 320px;
  }

  .ems-single-promo-art,
  .ems-single-promo-art img {
    min-height: 260px;
    height: 260px;
  }
}

@media (max-width: 720px) {
  .ems-subpage-wrap,
  .ems-character-page,
  .ems-event-page,
  .ems-event-preview-page {
    padding: 18px 12px;
  }

  .ems-page-heading,
  .ems-character-hero,
  .ems-character-panel,
  .ems-character-tabs,
  .ems-single-promo-header,
  .ems-single-promo-body,
  .ems-single-promo-footer {
    padding: 18px;
  }

  .ems-promo-card {
    grid-template-columns: 1fr;
  }

  .ems-promo-image,
  .ems-promo-image img {
    min-height: 260px;
  }

  .ems-character-tab-buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .ems-character-tab-buttons button {
    width: 100%;
  }

  .ems-character-table {
    min-width: 640px;
  }
}

@media (max-width: 480px) {
  .ems-character-tab-buttons {
    grid-template-columns: 1fr;
  }

  .ems-page-heading h1,
  .ems-character-hero h1,
  .ems-single-promo-heading h1 {
    font-size: 2rem;
  }
}

/* =========================================================
   CWF Public Event - Chapter Select / Filter View
   Append after existing .cwf-public-event styles
   ========================================================= */

.cwf-public-event-chapters {
    overflow: hidden;
}

.cwf-public-event-chapters summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 20px;
    border-bottom: 1px solid rgba(255,255,255,.06);
    user-select: none;
}

.cwf-public-event-chapters summary::-webkit-details-marker {
    display: none;
}

.cwf-public-event-chapters__title {
    color: #fff;
    font: 900 1.05rem/1 var(--cwf-font-alt);
    letter-spacing: .12em;
    text-transform: uppercase;
}

.cwf-public-event-chapters__subtitle {
    color: var(--cwf-cyan-2);
    font: 800 10px/1.3 var(--cwf-font-alt);
    letter-spacing: .14em;
    text-transform: uppercase;
}

.cwf-public-event-chapters__inner {
    padding: 18px;
}

.cwf-public-event-filters {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 16px;
}

.cwf-public-event-filter-row {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
}

.cwf-public-event-filter-row label {
    color: var(--cwf-muted);
    font: 800 10px/1.3 var(--cwf-font-alt);
    letter-spacing: .12em;
    text-transform: uppercase;
}

.cwf-public-event-filter-row select {
    width: 100%;
    min-height: 42px;
    padding: 0 12px;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.03);
    color: #fff;
    font: 800 12px/1 var(--cwf-font-alt);
    letter-spacing: .04em;
    appearance: none;
    outline: none;
    box-shadow: none;
}

.cwf-public-event-filter-row select:focus {
    border-color: rgba(83,225,255,.26);
    box-shadow: 0 0 0 1px rgba(83,225,255,.12);
}

.cwf-public-event-filter-row option {
    color: #fff;
    background: #0b1118;
}

.cwf-public-event-filter-row--button {
    justify-content: flex-end;
}

.cwf-public-event-reset-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    border: 1px solid rgba(255,122,43,.24);
    background: rgba(255,122,43,.08);
    color: #ffbf96;
    font: 900 11px/1 var(--cwf-font-alt);
    letter-spacing: .14em;
    text-transform: uppercase;
    cursor: pointer;
    transition: .18s ease;
}

.cwf-public-event-reset-btn:hover {
    background: rgba(255,122,43,.14);
    color: #fff;
}

.cwf-public-event-results-note {
    margin-bottom: 14px;
    color: var(--cwf-muted);
    font: 800 10px/1.45 var(--cwf-font-alt);
    letter-spacing: .12em;
    text-transform: uppercase;
}

.cwf-public-event-chapter-list {
    margin: 0;
    padding-left: 22px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.cwf-public-event-chapter-item {
    padding: 12px 14px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 12px;
    background: rgba(255,255,255,.02);
}

.cwf-public-event-chapter-item a {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
    color: #fff;
    text-decoration: none;
}

.cwf-public-event-chapter-item a:hover .cwf-public-event-chapter-title-text {
    color: var(--cwf-cyan-2);
}

.cwf-public-event-chapter-number {
    color: var(--cwf-orange-2);
    font: 900 12px/1.2 var(--cwf-font-alt);
    letter-spacing: .08em;
}

.cwf-public-event-chapter-label {
    color: var(--cwf-cyan-2);
    font: 900 12px/1.2 var(--cwf-font-alt);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.cwf-public-event-chapter-title-text {
    color: #fff;
    font: 800 13px/1.45 var(--cwf-font-main);
    transition: color .18s ease;
}

.cwf-public-event-chapter-participants {
    margin-top: 8px;
    color: var(--cwf-muted);
    font: 800 10px/1.45 var(--cwf-font-alt);
    letter-spacing: .10em;
    text-transform: uppercase;
}

.cwf-public-event-empty {
    padding: 18px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 12px;
    background: rgba(255,255,255,.02);
    color: var(--cwf-muted);
    text-align: center;
    font: 800 11px/1.45 var(--cwf-font-alt);
    letter-spacing: .10em;
    text-transform: uppercase;
}

html {
    scroll-behavior: smooth;
}

@media (max-width: 900px) {
    .cwf-public-event-filters {
        grid-template-columns: 1fr 1fr;
    }

    .cwf-public-event-filter-row--button {
        grid-column: 1 / -1;
    }
}

@media (max-width: 640px) {
    .cwf-public-event-chapters summary {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .cwf-public-event-filters {
        grid-template-columns: 1fr;
    }

    .cwf-public-event-chapters__inner {
        padding: 16px;
    }

    .cwf-public-event-chapter-item {
        padding: 10px 12px;
    }
}

/* ============================================================
   FINAL CWF REDESIGN SUBPAGE THEME OVERRIDES
   Keeps appended older subpage/function styles in the new CWF
   black / deep red / muted brick / cream / gold visual system.
   ============================================================ */

:root {
    --cwf-font-main: var(--cwf-body);
    --cwf-font-alt: var(--cwf-head);
    --cwf-cyan: #c74332;
    --cwf-cyan-2: #f5ead2;
    --cwf-orange: #c74332;
    --cwf-orange-2: #d8a84a;
    --cwf-line: rgba(199, 67, 50, .26);
    --cwf-line-strong: rgba(199, 67, 50, .42);
    --cwf-line-warm: rgba(216, 168, 74, .28);
    --cwf-radius: 0;
    --cwf-radius-sm: 0;

    --ems-bg: #050505;
    --ems-panel: #100f0e;
    --ems-panel-soft: #171312;
    --ems-border: rgba(199, 67, 50, .24);
    --ems-border-strong: rgba(199, 67, 50, .42);
    --ems-text: #f3f1ec;
    --ems-muted: #aaa39b;
    --ems-faint: #8b8580;
    --ems-accent: #c74332;
    --ems-accent-2: #d8a84a;
    --ems-accent-hover: #e0523d;
    --ems-success: #8edc68;
    --ems-radius: 0;
    --ems-radius-lg: 0;
    --ems-shadow: 0 18px 42px rgba(0,0,0,.42);
    --ems-shadow-soft: 0 12px 28px rgba(0,0,0,.28);
}

/* Shared subpage panels */
.cwf-news-archive-item,
.cwf-news-single,
.cwf-promo-card,
.cwf-promo-single,
.cwf-event-list-card,
.cwf-event-preview-hero,
.cwf-event-preview-block,
.cwf-event-preview-card,
.cwf-public-event-hero,
.cwf-public-event-block,
.cwf-public-event-credits,
.cwf-public-event-chapters,
.ems-page-heading,
.ems-character-hero,
.ems-character-panel,
.ems-character-tabs,
.ems-character-quick-card,
.ems-promo-card,
.ems-single-promo,
.ems-event-card,
.ems-event-panel,
.ems-event-preview-card,
.ems-event-match-card,
.ems-event-segment-card {
    border-radius: 0 !important;
    border-color: rgba(199, 67, 50, .26) !important;
    background:
        linear-gradient(180deg, rgba(18,16,15,.98), rgba(5,5,5,.99)) !important;
    box-shadow: 0 18px 38px rgba(0,0,0,.42), inset 0 0 0 1px rgba(255,255,255,.025) !important;
    color: var(--cwf-text) !important;
}

.cwf-news-archive-item,
.cwf-promo-card,
.cwf-event-list-card,
.cwf-event-preview-match,
.cwf-public-event-chapter-item,
.ems-character-icon-card,
.ems-character-list-item,
.ems-character-ring-card,
.ems-character-record-card,
.ems-promo-meta span,
.ems-event-meta span,
.ems-event-preview-meta span,
.ems-character-stat,
.ems-empty-state,
.ems-character-empty {
    border-radius: 0 !important;
    border-color: rgba(199, 67, 50, .22) !important;
    background: rgba(255,255,255,.025) !important;
}

/* Subpage headings */
.cwf-news-single-header h1,
.cwf-news-single-header h2,
.cwf-promo-single-title,
.cwf-event-list-title,
.cwf-event-preview-title,
.cwf-event-preview-match-title,
.cwf-public-event-title,
.cwf-public-event-block-head h2,
.ems-page-heading h1,
.ems-character-hero h1,
.ems-single-promo-heading h1,
.ems-promo-info h2,
.ems-event-card h2,
.ems-event-card h3,
.ems-event-panel h2,
.ems-event-panel h3,
.ems-event-preview-card h2,
.ems-event-preview-card h3,
.ems-event-match-card h2,
.ems-event-match-card h3,
.ems-event-segment-card h2,
.ems-event-segment-card h3 {
    color: #f5ead2 !important;
    font-family: var(--cwf-head) !important;
    text-transform: uppercase;
    text-shadow: none !important;
}

/* Muted/meta text */
.cwf-news-archive-meta,
.cwf-news-single-meta,
.cwf-promo-meta,
.cwf-promo-single-meta,
.cwf-event-list-meta,
.cwf-event-preview-meta,
.cwf-public-event-meta,
.cwf-public-event-credits-note,
.ems-page-heading p,
.ems-promo-meta span,
.ems-event-meta span,
.ems-event-preview-meta span,
.ems-character-stat span,
.ems-character-list-item p,
.ems-character-quick-card p {
    color: var(--cwf-muted) !important;
}

/* Links and action text */
.cwf-news-archive-readmore,
.cwf-news-single-back,
.cwf-promo-single-back,
.cwf-public-event-chapter-label,
.cwf-public-event-chapters__subtitle,
.cwf-news-single-body a,
.cwf-promo-single-body a,
.cwf-event-list-title a:hover,
.cwf-promo-title a:hover,
.cwf-promo-single-byline strong,
.ems-character-quick-card a,
.ems-character-list-item a,
.ems-character-table a,
.ems-single-promo-body a,
.ems-promo-info h2 a:hover {
    color: #d8a84a !important;
    text-shadow: none !important;
}

.cwf-news-archive-readmore:hover,
.cwf-news-single-back:hover,
.cwf-promo-single-back:hover,
.cwf-public-event-chapter-item a:hover .cwf-public-event-chapter-title-text,
.cwf-news-single-body a:hover,
.cwf-promo-single-body a:hover {
    color: #fff !important;
}

/* Images/logos */
.cwf-news-archive-thumb img,
.cwf-news-single-image img,
.cwf-promo-image,
.cwf-promo-single-image,
.cwf-event-list-logo,
.cwf-event-preview-logo,
.cwf-public-event-logo,
.ems-character-hero__image,
.ems-character-hero__image img,
.ems-promo-image,
.ems-single-promo-art,
.ems-single-promo-art img {
    border-radius: 0 !important;
    border-color: rgba(199, 67, 50, .24) !important;
    background-color: #080808 !important;
}

/* Buttons */
.cwf-neon-btn,
.cwf-neon-btn--orange,
.cwf-public-event-reset-btn,
.ems-btn,
.ems-button,
.ems-btn--red,
.ems-character-tab-buttons button {
    border-radius: 0 !important;
    border-color: rgba(199, 67, 50, .48) !important;
    background: linear-gradient(180deg, rgba(108,22,16,.90), rgba(38,8,6,.96)) !important;
    color: #f5ead2 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 0 14px rgba(199,67,50,.08) !important;
}

.cwf-neon-btn:hover,
.cwf-neon-btn--orange:hover,
.cwf-public-event-reset-btn:hover,
.ems-btn:hover,
.ems-button:hover,
.ems-btn--red:hover,
.ems-character-tab-buttons button:hover,
.ems-character-tab-buttons button.active {
    background: linear-gradient(180deg, rgba(151,33,22,.96), rgba(58,10,8,.98)) !important;
    border-color: rgba(224,82,61,.66) !important;
    color: #fff !important;
}

/* Date boxes and badges */
.cwf-event-preview-datebox,
.cwf-event-date,
.cwf-upcoming-panel .cwf-event-date,
.cwf-section-kicker,
.cwf-event-preview-match-type,
.ems-character-eyebrow,
.ems-character-champion-badge,
.ems-page-heading span,
.ems-character-panel__header span,
.ems-character-quick-card span,
.ems-single-promo-heading > span,
.ems-promo-kicker,
.ems-event-kicker,
.ems-event-card-kicker {
    border-radius: 0 !important;
    border-color: rgba(199, 67, 50, .44) !important;
    background: rgba(199, 67, 50, .10) !important;
    color: #d8a84a !important;
}

.cwf-event-preview-datebox span,
.cwf-event-preview-datebox strong,
.cwf-event-date span,
.cwf-event-date strong,
.cwf-upcoming-panel .cwf-event-date span,
.cwf-upcoming-panel .cwf-event-date strong {
    color: #f5ead2 !important;
}

/* Body content readability */
.cwf-news-single-body,
.cwf-news-single-body p,
.cwf-promo-single-body,
.cwf-promo-single-body p,
.cwf-event-preview-block,
.cwf-event-preview-match-body,
.cwf-public-event-block-body,
.cwf-public-event-credits-list,
.ems-character-bio,
.ems-single-promo-body,
.ems-single-promo-body p,
.ems-character-table td,
.ems-character-ring-card p,
.ems-character-list-item p {
    color: #d7d1c9 !important;
}

.cwf-news-single-body blockquote,
.cwf-promo-single-body blockquote {
    border-radius: 0 !important;
    border-left-color: #c74332 !important;
    background: rgba(199,67,50,.08) !important;
    color: #f5ead2 !important;
}

/* Forms/selects in result chapter filters */
.cwf-public-event-filter-row select {
    border-radius: 0 !important;
    border-color: rgba(199, 67, 50, .32) !important;
    background: #0b0b0b !important;
    color: #f5ead2 !important;
}

.cwf-public-event-filter-row select:focus {
    border-color: rgba(216,168,74,.55) !important;
    box-shadow: 0 0 0 1px rgba(216,168,74,.18) !important;
}

.cwf-public-event-filter-row option {
    background: #0b0b0b !important;
    color: #f5ead2 !important;
}

/* Tables */
.ems-character-table th {
    background: rgba(199,67,50,.12) !important;
    color: #f5ead2 !important;
}

.ems-character-table th,
.ems-character-table td {
    border-bottom-color: rgba(199,67,50,.20) !important;
}

/* Mobile cleanups for appended subpages */
@media (max-width: 760px) {
    .cwf-promo-card,
    .cwf-event-list-card,
    .cwf-news-archive-item,
    .cwf-public-event-hero,
    .cwf-event-preview-hero,
    .ems-promo-card,
    .ems-character-hero,
    .ems-single-promo-header {
        grid-template-columns: 1fr !important;
    }

    .cwf-public-event-actions .cwf-neon-btn,
    .cwf-public-event-bottom-actions .cwf-neon-btn,
    .cwf-event-list-action .cwf-neon-btn,
    .cwf-promo-actions .cwf-neon-btn,
    .ems-btn,
    .ems-button,
    .ems-btn--red {
        width: 100%;
    }
}

/* ============================================================
   LEGACY CWF PAGE/FUNCTION SUPPORT IMPORTED FROM ORIGINAL CSS
   Converted to new redesign theme, appended without replacing redesign base.
   ============================================================ */

.cwf-homepage{
    width:100%;
    max-width:1400px;
    margin:0 auto;
    padding:18px 14px 34px;
}

.cwf-frame{
    position:relative;
    border:1px solid rgba(199,67,50,.22);
    border-radius:18px;
    background:
        linear-gradient(180deg, rgba(10,15,22,.96), rgba(5,9,14,.98));
    box-shadow:
        0 0 0 1px rgba(255,255,255,.02) inset,
        0 0 0 1px rgba(0,0,0,.4),
        0 18px 40px rgba(0,0,0,.36);
    overflow:hidden;
}

.cwf-frame::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(90deg, transparent 0%, rgba(60,212,255,.05) 50%, transparent 100%),
        linear-gradient(180deg, transparent 0%, transparent 90%, rgba(255,122,43,.10) 100%);
}

.cwf-frame::after{
    content:"";
    position:absolute;
    inset:10px;
    border:1px solid rgba(255,255,255,.025);
    border-radius:12px;
    pointer-events:none;
}

.cwf-hero-shell{
    margin-bottom:18px;
}

.cwf-hero-grid{
    display:grid;
    grid-template-columns:minmax(0, 1.7fr) 360px;
    gap:18px;
    align-items:start;
}

.cwf-hero-main{
    min-height:430px;
}

.cwf-hero-bg{
    position:absolute;
    inset:0;
}

.cwf-hero-inner{
    position:relative;
    z-index:2;
    padding:22px 24px 80px;
    max-width:52%;
}

.cwf-hero-kicker{
    display:inline-block;
    margin-bottom:14px;
    color:#ff9d63;
    font:900 11px/1 var(--cwf-font-alt);
    letter-spacing:.18em;
    text-transform:uppercase;
}

.cwf-hero-subkicker{
    margin-bottom:12px;
    color:var(--cwf-action-hover, #d94a2b);
    font:900 12px/1 var(--cwf-font-alt);
    letter-spacing:.14em;
    text-transform:uppercase;
}

.cwf-hero-title{
    margin:0 0 14px;
    color:#fff;
    font:900 clamp(2.8rem, 5vw, 5rem)/.9 var(--cwf-font-alt);
    letter-spacing:.01em;
    text-transform:uppercase;
    text-shadow:0 2px 18px rgba(0,0,0,.35);
}

.cwf-hero-text{
    max-width:520px;
    color:#d2dde8;
    font:500 15px/1.8 var(--cwf-font-main);
}

.cwf-hero-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:18px;
}

.cwf-hero-footer{
    position:absolute;
    left:0;
    right:0;
    bottom:14px;
    z-index:2;
    display:flex;
    justify-content:center;
    gap:8px;
}

.cwf-hero-footer span{
    width:8px;
    height:8px;
    border-radius:50%;
    background:rgba(255,255,255,.25);
}

.cwf-hero-footer span.active{
    background:var(--cwf-action, #c74332);
}

.cwf-sidebar-stack{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.cwf-side-panel{
    position:relative;
}

.cwf-side-panel--orange{
    border-color:rgba(255,122,43,.16);
}

.cwf-side-head{
    position:relative;
    z-index:2;
    padding:16px 18px 14px;
    border-bottom:1px solid rgba(255,255,255,.06);
    color:var(--cwf-action-hover, #d94a2b);
    font:900 15px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-side-panel--orange .cwf-side-head{
    color:var(--cwf-gold, #d7b169);
}

.cwf-side-body{
    position:relative;
    z-index:2;
    padding:12px 14px 16px;
}

.cwf-event-card{
    display:grid;
    grid-template-columns:68px 1fr auto;
    gap:12px;
    align-items:center;
    padding:10px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:12px;
    background:rgba(255,255,255,.02);
    margin-bottom:10px;
}

.cwf-event-card--recent{
    grid-template-columns:64px 68px 1fr;
}

.cwf-event-thumb{
    width:64px;
    height:64px;
    border-radius:8px;
    border:1px solid rgba(255,255,255,.06);
}

.cwf-event-date{
    width:68px;
    min-height:56px;
    border:1px solid rgba(199,67,50,.32);
    border-radius:10px;
    background:rgba(64,199,255,.04);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}

.cwf-event-date span{
    color:var(--cwf-action-hover, #d94a2b);
    font:900 9px/1 var(--cwf-font-alt);
    letter-spacing:.14em;
    text-transform:uppercase;
    margin-bottom:4px;
}

.cwf-event-date strong{
    color:var(--cwf-action-hover, #d94a2b);
    font:900 28px/1 var(--cwf-font-alt);
}

.cwf-event-copy b{
    display:block;
    color:#fff;
    font:900 16px/1.1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
    margin-bottom:4px;
}

.cwf-event-copy small{
    display:block;
    color:#aaa39b;
    font:800 10px/1.45 var(--cwf-font-alt);
    letter-spacing:.10em;
    text-transform:uppercase;
}

.cwf-event-time{
    color:#c8bda8;
    font:900 10px/1 var(--cwf-font-alt);
    letter-spacing:.10em;
    text-transform:uppercase;
    white-space:nowrap;
}

.cwf-panel-link{
    display:inline-flex;
    margin-top:8px;
    color:var(--cwf-action-hover, #d94a2b);
    font:900 11px/1 var(--cwf-font-alt);
    letter-spacing:.14em;
    text-transform:uppercase;
}

.cwf-panel-link--orange{
    color:var(--cwf-gold, #d7b169);
}

.cwf-stats-grid{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:12px;
}

.cwf-stat-box{
    min-height:110px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:12px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.018);
    text-align:center;
}

.cwf-stat-box strong{
    color:var(--cwf-action-hover, #d94a2b);
    font:900 3rem/.9 var(--cwf-font-alt);
    margin-bottom:6px;
}

.cwf-stat-box span{
    color:#a6bacb;
    font:900 11px/1.3 var(--cwf-font-alt);
    letter-spacing:.10em;
    text-transform:uppercase;
}

.cwf-news-block{
    margin-bottom:18px;
}

.cwf-block-head{
    position:relative;
    z-index:2;
    padding:18px 18px 14px;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.cwf-block-head h2{
    margin:0 0 6px;
    color:#fff;
    font:900 1.9rem/1 var(--cwf-font-alt);
    letter-spacing:.06em;
    text-transform:uppercase;
}

.cwf-block-head p{
    margin:0;
    color:#aaa39b;
    font:900 12px/1.3 var(--cwf-font-alt);
    letter-spacing:.18em;
    text-transform:uppercase;
}

.cwf-news-list{
    position:relative;
    z-index:2;
    padding:12px 18px 18px;
}

.cwf-news-row{
    display:grid;
    grid-template-columns:280px 1fr;
    gap:18px;
    padding:16px 0;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.cwf-news-row:last-of-type{
    border-bottom:none;
}

.cwf-news-image-wrap{
    position:relative;
    display:block;
}

.cwf-news-image{
    min-height:150px;
    border-radius:10px;
    border:1px solid rgba(199,67,50,.22);
}

.cwf-news-tag{
    position:absolute;
    top:10px;
    left:10px;
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 10px;
    border-radius:6px;
    background:#a8281c;
    color:#fff;
    font:900 10px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-news-meta{
    margin-bottom:8px;
    color:#aaa39b;
    font:900 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-news-copy h3{
    margin:0 0 10px;
    font:900 2rem/1 var(--cwf-font-alt);
    letter-spacing:.01em;
    text-transform:uppercase;
}

.cwf-news-copy h3 a{
    color:#fff;
}

.cwf-news-copy h3 a:hover{
    color:var(--cwf-action-hover, #d94a2b);
}

.cwf-news-copy p{
    margin:0 0 12px;
    color:#d7d1c9;
    font:500 15px/1.8 var(--cwf-font-main);
}

.cwf-readmore{
    color:var(--cwf-action-hover, #d94a2b);
    font:900 12px/1 var(--cwf-font-alt);
    letter-spacing:.14em;
    text-transform:uppercase;
}

.cwf-news-footer-link{
    padding-top:10px;
}

.cwf-news-footer-link a{
    color:var(--cwf-action-hover, #d94a2b);
    font:900 12px/1 var(--cwf-font-alt);
    letter-spacing:.14em;
    text-transform:uppercase;
}

.cwf-bottom-grid{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:18px;
}

.cwf-bottom-panel{
    min-height:280px;
}

.cwf-bottom-panel--orange{
    border-color:rgba(255,122,43,.16);
}

.cwf-roster-card{
    display:flex;
    flex-direction:column;
    gap:14px;
    padding:14px 16px 16px;
}

.cwf-roster-image-wrap{
    display:flex;
    justify-content:center;
}

.cwf-roster-image{
    width:100%;
    max-width:260px;
    aspect-ratio:1 / 1;
    min-height:auto;
    border-radius:12px;
    border:1px solid rgba(199,67,50,.22);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);
    background-size:cover !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;
    overflow:hidden;
}

.cwf-roster-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
    padding:0 4px;
}

.cwf-roster-copy h3{
    margin:0;
    color:#fff;
    font:900 clamp(1.15rem, 2vw, 2rem)/1 var(--cwf-font-alt);
    letter-spacing:.01em;
    text-transform:uppercase;
    overflow-wrap:anywhere;
    word-break:break-word;
    max-width:100%;
}

.cwf-roster-meta{
    display:grid;
    grid-template-columns:1fr;
    gap:6px;
    width:100%;
    margin:0;
}

.cwf-roster-meta span{
    display:block;
    color:var(--cwf-text);
    font:500 .95rem/1.35 var(--cwf-font-main);
    overflow-wrap:anywhere;
}

.cwf-roster-meta b{
    color:var(--cwf-action-hover, #d94a2b);
    font-weight:700;
    margin-right:6px;
}

.cwf-roster-badge{
    display:inline-block;
    padding:6px 10px;
    border-radius:999px;
    border:1px solid rgba(255,128,43,.28);
    background:rgba(255,128,43,.08);
    color:var(--cwf-gold, #d7b169);
    font:700 11px/1.2 var(--cwf-font-main);
    letter-spacing:.1em;
    text-transform:uppercase;
    max-width:100%;
}

.cwf-roster-copy .cwf-neon-btn{
    margin-top:6px;
    width:100%;
    justify-content:center;
    text-align:center;
}

.cwf-side-head{
    padding:16px 18px 14px;
}


.cwf-rankings-list{
    position:relative;
    z-index:2;
    padding:14px;
}

.cwf-rank-row{
    display:grid;
    grid-template-columns:38px 1fr auto;
    gap:12px;
    align-items:center;
    min-height:48px;
    padding:0 10px;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.cwf-rank-row span{
    color:#fff;
    font:900 1.25rem/1 var(--cwf-font-alt);
}

.cwf-rank-row b{
    color:#efe4d4;
    font:900 15px/1 var(--cwf-font-alt);
    text-transform:uppercase;
}

.cwf-rank-row em{
    color:var(--cwf-action-hover, #d94a2b);
    font:900 11px/1 var(--cwf-font-alt);
    font-style:normal;
    letter-spacing:.10em;
    text-transform:uppercase;
}

.cwf-bottom-panel--orange .cwf-rank-row em{
    color:var(--cwf-gold, #d7b169);
}

.cwf-event-promo{
    position:relative;
    min-height:230px;
    margin:14px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.06);
    overflow:hidden;
}

.cwf-event-promo-inner{
    position:absolute;
    inset:auto 0 0 0;
    padding:18px;
    background:linear-gradient(180deg, transparent 0%, rgba(4,8,12,.72) 42%, rgba(4,8,12,.96) 100%);
}

.cwf-event-promo-inner small{
    display:block;
    margin-bottom:8px;
    color:#efe4d4;
    font:900 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-promo-inner h3{
    margin:0 0 10px;
    color:#fff;
    font:900 3rem/.9 var(--cwf-font-alt);
    text-transform:uppercase;
}

.cwf-event-promo-inner p{
    margin:0 0 12px;
    color:#d7d1c9;
    font:500 14px/1.6 var(--cwf-font-main);
}

.cwf-neon-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 16px;
    border-radius:8px;
    border:1px solid rgba(199,67,50,.40);
    background:rgba(64,199,255,.08);
    color:var(--cwf-action-hover, #d94a2b);
    font:900 11px/1 var(--cwf-font-alt);
    letter-spacing:.14em;
    text-transform:uppercase;
}

.cwf-neon-btn--orange{
    border-color:rgba(255,122,43,.24);
    background:rgba(255,122,43,.08);
    color:#ffbf96;
}

@media (max-width: 1180px){
    .cwf-hero-grid,
    .cwf-bottom-grid{
        grid-template-columns:1fr;
    }

    .cwf-hero-inner{
        max-width:65%;
    }
}

@media (max-width: 860px){
    .cwf-news-row,
    .cwf-roster-card{
        grid-template-columns:1fr;
    }

    .cwf-hero-inner{
        max-width:100%;
        padding-right:18px;
    }

    .cwf-event-card{
        grid-template-columns:68px 1fr;
    }

    .cwf-event-time{
        grid-column:2;
        margin-top:4px;
    }

    .cwf-event-card--recent{
        grid-template-columns:64px 68px 1fr;
    }
}

@media (max-width: 640px){
    .cwf-hero-title{
        font-size:2.2rem;
    }

    .cwf-news-copy h3{
        font-size:1.4rem;
    }

    .cwf-event-promo-inner h3{
        font-size:2.1rem;
    }
}

.cwf-news-featured{
    display:grid;
    grid-template-columns:minmax(320px, 42%) minmax(0, 1fr);
    gap:18px;
    padding:18px 0 22px;
    border-bottom:1px solid rgba(255,255,255,.06);
    margin-bottom:12px;
}

.cwf-news-featured-image-wrap{
    position:relative;
    display:block;
}

.cwf-news-featured-image{
    min-height:280px;
    border-radius:12px;
    border:1px solid rgba(199,67,50,.22);
}

.cwf-news-featured-copy{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
}

.cwf-news-featured-copy h3{
    margin:0 0 12px;
    font:900 clamp(1.8rem, 3vw, 2.8rem)/1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-news-featured-copy h3 a{
    color:#fff;
}

.cwf-news-featured-copy h3 a:hover{
    color:var(--cwf-action-hover, #d94a2b);
}

.cwf-news-featured-copy p{
    margin:0 0 14px;
    color:#d7d1c9;
    font:500 15px/1.8 var(--cwf-font-main);
}

.cwf-news-row-list{
    display:flex;
    flex-direction:column;
}

.cwf-news-row--compact{
    grid-template-columns:160px minmax(0,1fr);
    gap:14px;
    align-items:center;
    padding:14px 0;
}

.cwf-news-row--compact .cwf-news-image{
    min-height:95px;
    height:95px;
}

.cwf-news-row--compact .cwf-news-copy h4{
    margin:0 0 8px;
    font:900 1.2rem/1.15 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-news-row--compact .cwf-news-copy h4 a{
    color:#fff;
}

.cwf-news-row--compact .cwf-news-copy h4 a:hover{
    color:var(--cwf-action-hover, #d94a2b);
}

.cwf-news-row--compact .cwf-news-copy p{
    margin:0 0 10px;
    font-size:.96rem;
    line-height:1.65;
}

@media (max-width: 900px){
    .cwf-news-featured{
        grid-template-columns:1fr;
    }

    .cwf-news-featured-image{
        min-height:220px;
    }
}

@media (max-width: 640px){
    .cwf-news-row--compact{
        grid-template-columns:1fr;
    }

    .cwf-news-row--compact .cwf-news-image{
        min-height:140px;
        height:140px;
    }
}

.cwf-rank-row b a{
    color:#efe4d4;
    text-decoration:none;
}

.cwf-rank-row b a:hover{
    color:var(--cwf-action-hover, #d94a2b);
}

.cwf-rank-movement--up{
    color:#59ff9a;
}

.cwf-rank-movement--down{
    color:#ff6b6b;
}

.cwf-rank-movement--same{
    color:var(--cwf-action-hover, #d94a2b);
}


.cwf-event-details-strip{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:10px;
    padding:0 14px 14px;
}

.cwf-event-detail-box{
    border:1px solid rgba(255,255,255,.06);
    border-radius:10px;
    background:rgba(255,255,255,.02);
    padding:10px 12px;
    min-width:0;
}

.cwf-event-detail-box span{
    display:block;
    margin-bottom:4px;
    color:var(--cwf-muted);
    font:800 10px/1.2 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-detail-box strong{
    display:block;
    color:#fff;
    font:800 13px/1.35 var(--cwf-font-main);
    overflow-wrap:anywhere;
}

@media (max-width: 640px){
    .cwf-event-details-strip{
        grid-template-columns:1fr;
    }
}

.cwf-upcoming-panel .cwf-side-body{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.cwf-upcoming-panel .cwf-event-card{
    display:grid;
    grid-template-columns:64px minmax(0,1fr);
    gap:12px;
    align-items:center;
    padding:12px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:12px;
    background:rgba(255,255,255,.02);
}

.cwf-upcoming-panel .cwf-event-date{
    width:64px;
    min-height:64px;
    border:1px solid rgba(199,67,50,.32);
    border-radius:10px;
    background:rgba(83,225,255,.05);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}

.cwf-upcoming-panel .cwf-event-date span{
    color:var(--cwf-action-hover, #d94a2b);
    font:900 9px/1 var(--cwf-font-alt);
    letter-spacing:.14em;
    text-transform:uppercase;
    margin-bottom:4px;
}

.cwf-upcoming-panel .cwf-event-date strong{
    color:var(--cwf-action-hover, #d94a2b);
    font:900 26px/1 var(--cwf-font-alt);
}

.cwf-upcoming-panel .cwf-event-copy{
    min-width:0;
}

.cwf-upcoming-panel .cwf-event-copy b{
    display:block;
    margin-bottom:4px;
    font:900 15px/1.15 var(--cwf-font-alt);
    text-transform:uppercase;
}

.cwf-upcoming-panel .cwf-event-copy b a{
    color:#fff;
}

.cwf-upcoming-panel .cwf-event-copy b a:hover{
    color:var(--cwf-action-hover, #d94a2b);
}

.cwf-upcoming-panel .cwf-event-copy small{
    display:block;
    color:var(--cwf-muted);
    font:800 10px/1.45 var(--cwf-font-alt);
    letter-spacing:.10em;
    text-transform:uppercase;
}

.cwf-upcoming-panel .cwf-neon-btn{
    margin-top:4px;
    width:100%;
    justify-content:center;
}


.cwf-upcoming-panel--recent .cwf-event-date{
    border:1px solid rgba(255,128,43,.18);
    background:rgba(255,128,43,.05);
}

.cwf-upcoming-panel--recent .cwf-event-date span,
.cwf-upcoming-panel--recent .cwf-event-date strong{
    color:var(--cwf-gold, #d7b169);
}

.cwf-upcoming-panel--recent .cwf-event-copy b a:hover{
    color:var(--cwf-gold, #d7b169);
}

.cwf-news-archive-list{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.cwf-news-archive-item{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:18px;
    align-items:start;
    padding:16px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:rgba(255,255,255,.02);
}

.cwf-news-archive-thumb{
    display:block;
}

.cwf-news-archive-thumb img{
    display:block;
    width:100%;
    height:140px;
    object-fit:cover;
    border-radius:10px;
    border:1px solid rgba(199,67,50,.22);
}

.cwf-news-archive-copy{
    min-width:0;
}

.cwf-news-archive-meta{
    margin-bottom:8px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-news-archive-copy h2{
    margin:0 0 10px;
    font:900 clamp(1.2rem, 2vw, 1.85rem)/1.08 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-news-archive-copy h2 a{
    color:#fff;
    text-decoration:none;
}

.cwf-news-archive-copy h2 a:hover{
    color:var(--cwf-action-hover, #d94a2b);
}

.cwf-news-archive-copy p{
    margin:0 0 12px;
    color:var(--cwf-text);
    font:500 .98rem/1.7 var(--cwf-font-main);
}

.cwf-news-archive-readmore{
    display:inline-flex;
    align-items:center;
    color:var(--cwf-action-hover, #d94a2b);
    font:900 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
    text-decoration:none;
}

.cwf-news-archive-readmore:hover{
    color:#fff;
}

@media (max-width: 760px){
    .cwf-news-archive-item{
        grid-template-columns:1fr;
    }

    .cwf-news-archive-thumb img{
        height:180px;
    }
}

.cwf-news-single{
    max-width:980px;
    margin:0 auto;
}

.cwf-news-single-header{
    margin-bottom:22px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.cwf-news-single-header h1,
.cwf-news-single-header h2{
    margin:0 0 12px;
    color:#fff;
    font:900 clamp(2rem, 4vw, 3.2rem)/1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-news-single-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    color:var(--cwf-muted);
    font:800 11px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-news-single-image{
    margin:0 0 22px;
}

.cwf-news-single-image img{
    display:block;
    width:100%;
    max-width:100%;
    max-height:460px;
    object-fit:cover;
    border-radius:14px;
    border:1px solid rgba(199,67,50,.22);
    box-shadow:0 12px 28px rgba(0,0,0,.28);
}

.cwf-news-single-body{
    color:#d7d1c9;
    font:500 1.05rem/1.85 var(--cwf-font-main);
}

.cwf-news-single-body p{
    margin:0 0 18px;
    color:#d7d1c9;
}

.cwf-news-single-body h2,
.cwf-news-single-body h3,
.cwf-news-single-body h4{
    margin:28px 0 12px;
    color:#fff;
    font-family:var(--cwf-font-alt);
    font-weight:900;
    letter-spacing:.02em;
    text-transform:uppercase;
    line-height:1.1;
}

.cwf-news-single-body h2{
    font-size:1.9rem;
}

.cwf-news-single-body h3{
    font-size:1.5rem;
}

.cwf-news-single-body h4{
    font-size:1.2rem;
}

.cwf-news-single-body a{
    color:var(--cwf-action-hover, #d94a2b);
    text-decoration:none;
}

.cwf-news-single-body a:hover{
    color:#fff;
}

.cwf-news-single-body img{
    display:block;
    max-width:100%;
    height:auto;
    margin:20px auto;
    border-radius:12px;
    border:1px solid rgba(199,67,50,.20);
}

.cwf-news-single-body blockquote{
    margin:22px 0;
    padding:14px 18px;
    border-left:3px solid var(--cwf-action, #c74332);
    background:rgba(255,122,43,.05);
    border-radius:10px;
    color:#f0d7c7;
}

.cwf-news-single-body ul,
.cwf-news-single-body ol{
    margin:0 0 18px 24px;
}

.cwf-news-single-body li{
    margin-bottom:8px;
}

.cwf-news-single-footer{
    margin-top:26px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.06);
}

.cwf-news-single-back{
    display:inline-flex;
    align-items:center;
    color:var(--cwf-action-hover, #d94a2b);
    font:900 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
    text-decoration:none;
}

.cwf-news-single-back:hover{
    color:#fff;
}

@media (max-width: 640px){
    .cwf-news-single-header h1,
    .cwf-news-single-header h2{
        font-size:clamp(1.6rem, 8vw, 2.2rem);
    }

    .cwf-news-single-body{
        font-size:1rem;
        line-height:1.75;
    }

    .cwf-news-single-image img{
        max-height:300px;
    }
}

.cwf-promos-list{
    display:flex;
    flex-direction:column;
    gap:16px;
    padding-top:18px;
}

.cwf-promo-card{
    display:grid;
    grid-template-columns:160px minmax(0,1fr);
    gap:16px;
    align-items:center;
    padding:16px 18px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:rgba(255,255,255,.02);
    box-shadow:0 0 0 1px rgba(255,255,255,.01) inset;
}

.cwf-promo-image-wrap{
    display:block;
}

.cwf-promo-image{
    display:block;
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    border-radius:12px;
    border:1px solid rgba(199,67,50,.22);
    background:#080707;
}

.cwf-promo-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:8px;
}

.cwf-promo-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-promo-title{
    margin:0;
    font:900 clamp(1.4rem, 2vw, 2.2rem)/1.02 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-promo-title a{
    color:#fff;
    text-decoration:none;
}

.cwf-promo-title a:hover{
    color:var(--cwf-action-hover, #d94a2b);
}

.cwf-promo-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    flex-wrap:wrap;
}

.cwf-promo-details{
    display:grid;
    gap:6px;
    color:var(--cwf-text);
    font:500 .98rem/1.45 var(--cwf-font-main);
}

.cwf-promo-details strong{
    color:#fff;
    display:inline-block;
    min-width:74px;
    margin-right:8px;
    font-weight:700;
}

.cwf-promo-actions{
    flex-shrink:0;
}

.cwf-promo-actions .cwf-neon-btn{
    min-width:140px;
    text-align:center;
}

.cwf-empty-state{
    padding:24px 0 8px;
    color:var(--cwf-muted);
}

@media (max-width: 760px){
    .cwf-promo-card{
        grid-template-columns:110px minmax(0,1fr);
        gap:14px;
        padding:14px;
        align-items:start;
    }

    .cwf-promo-title{
        font-size:clamp(1.15rem, 5vw, 1.7rem);
    }

    .cwf-promo-bottom{
        align-items:flex-start;
        gap:12px;
    }

    .cwf-promo-actions .cwf-neon-btn{
        min-width:auto;
        width:auto;
    }
}

.cwf-latest-promos-list{
    display:flex;
    flex-direction:column;
    gap:12px;
    padding:14px;
}

.cwf-latest-promo-item{
    display:grid;
    grid-template-columns:72px minmax(0,1fr);
    gap:12px;
    align-items:center;
    padding:10px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:12px;
    background:rgba(255,255,255,.02);
}

.cwf-latest-promo-image-wrap{
    display:block;
}

.cwf-latest-promo-image{
    display:block;
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    border-radius:10px;
    border:1px solid rgba(199,67,50,.22);
    background:#080707;
}

.cwf-latest-promo-copy{
    min-width:0;
}

.cwf-latest-promo-meta{
    margin-bottom:4px;
    color:var(--cwf-muted);
    font:800 9px/1.3 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-latest-promo-copy h3{
    margin:0 0 6px;
    font:900 1rem/1.1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-latest-promo-copy h3 a{
    color:#fff;
    text-decoration:none;
}

.cwf-latest-promo-copy h3 a:hover{
    color:var(--cwf-action-hover, #d94a2b);
}

.cwf-latest-promos-list > .cwf-neon-btn{
    margin-top:4px;
    width:100%;
    justify-content:center;
}

.cwf-latest-promo-empty{
    color:var(--cwf-muted);
}

.cwf-promo-single{
    max-width:1000px;
    margin:0 auto;
}

.cwf-promo-single-header{
    margin-bottom:22px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.cwf-promo-single-top{
    display:grid;
    grid-template-columns:180px minmax(0,1fr);
    gap:20px;
    align-items:start;
}

.cwf-promo-single-image-wrap{
    display:block;
}

.cwf-promo-single-image{
    display:block;
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    border-radius:14px;
    border:1px solid rgba(199,67,50,.22);
    background:#080707;
}

.cwf-promo-single-headcopy{
    min-width:0;
}

.cwf-promo-single-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    margin-bottom:10px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-promo-single-title{
    margin:0 0 12px;
    color:#fff;
    font:900 clamp(2rem, 4vw, 3.2rem)/1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-promo-single-byline{
    color:var(--cwf-text);
    font:500 1rem/1.5 var(--cwf-font-main);
}

.cwf-promo-single-byline strong{
    color:var(--cwf-action-hover, #d94a2b);
    margin-right:8px;
}

.cwf-promo-single-body{
    color:#d7d1c9;
    font:500 1.05rem/1.85 var(--cwf-font-main);
}

.cwf-promo-single-body p{
    margin:0 0 18px;
    color:#d7d1c9;
}

.cwf-promo-single-body h2,
.cwf-promo-single-body h3,
.cwf-promo-single-body h4{
    margin:28px 0 12px;
    color:#fff;
    font-family:var(--cwf-font-alt);
    font-weight:900;
    letter-spacing:.02em;
    text-transform:uppercase;
    line-height:1.1;
}

.cwf-promo-single-body h2{
    font-size:1.9rem;
}

.cwf-promo-single-body h3{
    font-size:1.5rem;
}

.cwf-promo-single-body h4{
    font-size:1.2rem;
}

.cwf-promo-single-body a{
    color:var(--cwf-action-hover, #d94a2b);
    text-decoration:none;
}

.cwf-promo-single-body a:hover{
    color:#fff;
}

.cwf-promo-single-body img{
    display:block;
    max-width:100%;
    height:auto;
    margin:20px auto;
    border-radius:12px;
    border:1px solid rgba(199,67,50,.20);
}

.cwf-promo-single-body blockquote{
    margin:22px 0;
    padding:14px 18px;
    border-left:3px solid var(--cwf-action, #c74332);
    background:rgba(255,122,43,.05);
    border-radius:10px;
    color:#f0d7c7;
}

.cwf-promo-single-body ul,
.cwf-promo-single-body ol{
    margin:0 0 18px 24px;
}

.cwf-promo-single-body li{
    margin-bottom:8px;
}

.cwf-promo-single-footer{
    margin-top:26px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.06);
}

.cwf-promo-single-back{
    display:inline-flex;
    align-items:center;
    color:var(--cwf-action-hover, #d94a2b);
    font:900 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
    text-decoration:none;
}

.cwf-promo-single-back:hover{
    color:#fff;
}

@media (max-width: 760px){
    .cwf-promo-single-top{
        grid-template-columns:1fr;
    }

    .cwf-promo-single-image{
        max-width:220px;
    }

    .cwf-promo-single-title{
        font-size:clamp(1.6rem, 8vw, 2.3rem);
    }

    .cwf-promo-single-body{
        font-size:1rem;
        line-height:1.75;
    }
}

.cwf-event-listing{
    display:flex;
    flex-direction:column;
    gap:16px;
    padding-top:18px;
}

.cwf-event-list-card{
    display:grid;
    grid-template-columns:140px minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    padding:16px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:rgba(255,255,255,.02);
    box-shadow:0 0 0 1px rgba(255,255,255,.01) inset;
}

.cwf-event-list-logo-wrap{
    display:block;
}

.cwf-event-list-logo{
    display:block;
    width:100%;
    height:88px;
    object-fit:contain;
    border-radius:12px;
    border:1px solid rgba(199,67,50,.22);
    background:#080707;
    padding:8px;
}

.cwf-event-list-logo--empty{
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--cwf-muted);
    font:800 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-list-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:8px;
}

.cwf-event-list-meta{
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-list-title{
    margin:0;
    font:900 clamp(1.2rem, 2vw, 1.85rem)/1.08 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-event-list-title a{
    color:#fff;
    text-decoration:none;
}

.cwf-event-list-title a:hover{
    color:var(--cwf-action-hover, #d94a2b);
}

.cwf-event-list-location{
    color:var(--cwf-text);
    font:500 .98rem/1.5 var(--cwf-font-main);
}

.cwf-event-list-action{
    flex-shrink:0;
}

@media (max-width: 820px){
    .cwf-event-list-card{
        grid-template-columns:110px minmax(0,1fr);
    }

    .cwf-event-list-action{
        grid-column:2;
    }
}

@media (max-width: 640px){
    .cwf-event-list-card{
        grid-template-columns:1fr;
        align-items:start;
    }

    .cwf-event-list-logo{
        max-width:220px;
    }

    .cwf-event-list-action{
        grid-column:auto;
    }

    .cwf-event-list-action .cwf-neon-btn{
        width:100%;
        justify-content:center;
    }
}

.cwf-event-preview{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.cwf-event-preview-hero{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:20px;
    align-items:center;
    padding:18px;
}

.cwf-event-preview-logo-wrap{
    display:block;
}

.cwf-event-preview-logo{
    display:block;
    width:100%;
    height:160px;
    object-fit:contain;
    border-radius:14px;
    border:1px solid rgba(199,67,50,.22);
    background:#080707;
    padding:12px;
}

.cwf-event-preview-logo--empty{
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--cwf-muted);
    font:800 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-preview-header{
    display:grid;
    grid-template-columns:76px minmax(0,1fr);
    gap:18px;
    align-items:start;
}

.cwf-event-preview-datebox{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:76px;
    border:1px solid rgba(199,67,50,.32);
    border-radius:12px;
    background:rgba(83,225,255,.05);
}

.cwf-event-preview-datebox span{
    margin-bottom:4px;
    color:var(--cwf-action-hover, #d94a2b);
    font:900 10px/1 var(--cwf-font-alt);
    letter-spacing:.14em;
    text-transform:uppercase;
}

.cwf-event-preview-datebox strong{
    color:var(--cwf-action-hover, #d94a2b);
    font:900 30px/1 var(--cwf-font-alt);
}

.cwf-event-preview-headline{
    min-width:0;
}

.cwf-event-preview-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 12px;
    margin-bottom:10px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-preview-title{
    margin:0;
    color:#fff;
    font:900 clamp(1.9rem, 4vw, 3.2rem)/1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-event-preview-block{
    padding:18px;
    color:#d7d1c9;
    font:500 1.02rem/1.8 var(--cwf-font-main);
}

.cwf-event-preview-block p{
    margin:0 0 16px;
}

.cwf-event-preview-card{
    overflow:hidden;
}

.cwf-event-preview-card-body{
    padding:18px;
}

.cwf-event-preview-matches{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.cwf-event-preview-match{
    padding:16px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:rgba(255,255,255,.02);
}

.cwf-event-preview-match-top{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:14px;
    flex-wrap:wrap;
    margin-bottom:10px;
}

.cwf-event-preview-match-title{
    margin:0;
    color:#fff;
    font:900 clamp(1.1rem, 2vw, 1.5rem)/1.1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-event-preview-match-type{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 10px;
    border-radius:999px;
    border:1px solid rgba(255,122,43,.22);
    background:rgba(255,122,43,.08);
    color:var(--cwf-gold, #d7b169);
    font:900 10px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-preview-match-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 12px;
    margin-bottom:12px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.10em;
    text-transform:uppercase;
}

.cwf-event-preview-title-line{
    color:#ffd7c2;
}

.cwf-event-preview-match-body{
    color:#d7d1c9;
    font:500 .98rem/1.75 var(--cwf-font-main);
}

.cwf-event-preview-match-body p{
    margin:0 0 14px;
}

.cwf-event-preview-actions{
    display:flex;
    justify-content:flex-start;
}

@media (max-width: 820px){
    .cwf-event-preview-hero{
        grid-template-columns:1fr;
    }

    .cwf-event-preview-logo{
        max-width:240px;
    }

    .cwf-event-preview-header{
        grid-template-columns:1fr;
    }

    .cwf-event-preview-datebox{
        max-width:90px;
    }
}

.cwf-event-listing{
    display:flex;
    flex-direction:column;
    gap:16px;
    padding-top:18px;
}

.cwf-event-list-card{
    display:grid;
    grid-template-columns:140px minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    padding:16px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:rgba(255,255,255,.02);
    box-shadow:0 0 0 1px rgba(255,255,255,.01) inset;
}

.cwf-event-list-logo-wrap{
    display:block;
}

.cwf-event-list-logo{
    display:block;
    width:100%;
    height:88px;
    object-fit:contain;
    border-radius:12px;
    border:1px solid rgba(199,67,50,.22);
    background:#080707;
    padding:8px;
}

.cwf-event-list-logo--empty{
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--cwf-muted);
    font:800 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-list-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:8px;
}

.cwf-event-list-meta{
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-event-list-title{
    margin:0;
    font:900 clamp(1.2rem, 2vw, 1.85rem)/1.08 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-event-list-title a{
    color:#fff;
    text-decoration:none;
}

.cwf-event-list-title a:hover{
    color:var(--cwf-action-hover, #d94a2b);
}

.cwf-event-list-location{
    color:var(--cwf-text);
    font:500 .98rem/1.5 var(--cwf-font-main);
}

.cwf-event-list-action{
    flex-shrink:0;
}

@media (max-width: 820px){
    .cwf-event-list-card{
        grid-template-columns:110px minmax(0,1fr);
    }

    .cwf-event-list-action{
        grid-column:2;
    }
}

@media (max-width: 640px){
    .cwf-event-list-card{
        grid-template-columns:1fr;
        align-items:start;
    }

    .cwf-event-list-logo{
        max-width:220px;
    }

    .cwf-event-list-action{
        grid-column:auto;
    }

    .cwf-event-list-action .cwf-neon-btn{
        width:100%;
        justify-content:center;
    }
}

.cwf-public-event{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.cwf-public-event-hero{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:20px;
    align-items:center;
    padding:18px;
}

.cwf-public-event-logo-wrap{
    display:block;
}

.cwf-public-event-logo{
    display:block;
    width:100%;
    height:160px;
    object-fit:contain;
    border-radius:14px;
    border:1px solid rgba(199,67,50,.22);
    background:#080707;
    padding:12px;
}

.cwf-public-event-logo--empty{
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--cwf-muted);
    font:800 11px/1 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-public-event-headcopy{
    min-width:0;
}

.cwf-public-event-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 12px;
    margin-bottom:10px;
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cwf-public-event-title{
    margin:0 0 14px;
    color:#fff;
    font:900 clamp(1.9rem, 4vw, 3.2rem)/1 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
}

.cwf-public-event-actions,
.cwf-public-event-bottom-actions{
    display:flex;
    justify-content:flex-start;
    gap:12px;
    flex-wrap:wrap;
}

.cwf-public-event-block{
    overflow:hidden;
}

.cwf-public-event-block-head{
    padding:16px 18px 14px;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.cwf-public-event-block-head h2{
    margin:0;
    color:#fff;
    font:900 clamp(1.2rem, 2.5vw, 1.8rem)/1.08 var(--cwf-font-alt);
    letter-spacing:.02em;
    text-transform:uppercase;
    text-align:center;
}

.cwf-public-event-block-body{
    padding:18px;
    color:#d7d1c9;
    font:500 1.02rem/1.8 var(--cwf-font-main);
}

.cwf-public-event-block-body p{
    margin:0 0 16px;
}

.cwf-public-event-block-body h1,
.cwf-public-event-block-body h2,
.cwf-public-event-block-body h3,
.cwf-public-event-block-body h4{
    color:#fff;
}

.cwf-public-event-block-body img{
    max-width:100%;
    height:auto;
}

.cwf-public-event-credits{
    overflow:hidden;
}

.cwf-public-event-credits-body{
    padding:18px;
}

.cwf-public-event-credits-list{
    margin:0;
    padding-left:18px;
    color:#dce7f1;
}

.cwf-public-event-credits-list li{
    margin-bottom:10px;
    line-height:1.6;
}

.cwf-public-event-credits-note{
    margin-top:16px;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,.06);
    color:var(--cwf-muted);
    font:800 10px/1.4 var(--cwf-font-alt);
    letter-spacing:.12em;
    text-transform:uppercase;
}

@media (max-width: 820px){
    .cwf-public-event-hero{
        grid-template-columns:1fr;
    }

    .cwf-public-event-logo{
        max-width:240px;
    }
}

@media (max-width: 640px){
    .cwf-public-event-actions .cwf-neon-btn,
    .cwf-public-event-bottom-actions .cwf-neon-btn{
        width:100%;
        justify-content:center;
    }

    .cwf-public-event-title{
        font-size:clamp(1.5rem, 8vw, 2.2rem);
    }
}


/* =========================================================
   eMS Core Public Content Styles
   Drop this at the end of your current front-end CSS.
   Supports core user_content pages:
   character.php, promo.php, promos.php, event.php, event-preview.php
   ========================================================= */

:root {
  --ems-bg: #0f1117;
  --ems-panel: #171b24;
  --ems-panel-soft: #1f2530;
  --ems-border: rgba(255,255,255,0.11);
  --ems-border-strong: rgba(255,255,255,0.18);
  --ems-text: #f4f6fb;
  --ems-muted: #aab2c0;
  --ems-faint: #7f8796;
  --ems-accent: #d71920;
  --ems-accent-2: #d8a72f;
  --ems-accent-hover: #ef3340;
  --ems-success: #37c96f;
  --ems-radius: 18px;
  --ems-radius-lg: 26px;
  --ems-shadow: 0 18px 46px rgba(0,0,0,0.28);
  --ems-shadow-soft: 0 12px 30px rgba(0,0,0,0.2);
}

/* -----------------------------
   Shared public layout
----------------------------- */

.ems-subpage-wrap,
.ems-character-page,
.ems-event-page,
.ems-event-preview-page {
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
  padding: 28px 18px;
  box-sizing: border-box;
  color: var(--ems-text);
}

.ems-subpage-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 24px;
  align-items: start;
}

.ems-subpage-content {
  min-width: 0;
}

.ems-page-heading {
  position: relative;
  overflow: hidden;
  margin-bottom: 24px;
  padding: 24px;
  border-radius: var(--ems-radius-lg);
  background:
    radial-gradient(circle at top right, rgba(215,25,32,0.22), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.07), rgba(255,255,255,0.026)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow);
}

.ems-page-heading span,
.ems-character-panel__header span,
.ems-character-quick-card span,
.ems-single-promo-heading > span,
.ems-promo-kicker,
.ems-event-kicker,
.ems-event-card-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--ems-accent-2);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ems-page-heading span::before,
.ems-character-panel__header span::before,
.ems-single-promo-heading > span::before,
.ems-event-kicker::before,
.ems-event-card-kicker::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--ems-accent);
  box-shadow: 0 0 12px rgba(215,25,32,0.55);
}

.ems-page-heading h1,
.ems-character-hero h1,
.ems-single-promo-heading h1 {
  margin: 8px 0 10px;
  color: var(--ems-text);
  line-height: 1;
  font-size: clamp(2rem, 5vw, 4.5rem);
  font-weight: 950;
  letter-spacing: -0.045em;
  text-transform: uppercase;
}

.ems-page-heading p {
  max-width: 820px;
  margin: 0;
  color: var(--ems-muted);
  line-height: 1.6;
}

.ems-btn,
.ems-button,
.ems-btn--red {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 9px 16px;
  border-radius: 999px;
  border: 1px solid var(--ems-border-strong);
  background: rgba(255,255,255,0.08);
  color: var(--ems-text);
  font-weight: 850;
  text-decoration: none;
  transition: 0.18s ease;
}

.ems-btn:hover,
.ems-button:hover {
  color: #fff;
  background: rgba(216,167,47,0.16);
  border-color: rgba(216,167,47,0.38);
  text-decoration: none;
}

.ems-btn--red {
  background: linear-gradient(135deg, var(--ems-accent), #991b1b);
  border-color: rgba(255,255,255,0.08);
  color: #fff;
}

.ems-btn--red:hover {
  background: linear-gradient(135deg, var(--ems-accent-hover), var(--ems-accent));
  color: #fff;
}

.ems-empty-state,
.ems-character-empty {
  padding: 22px;
  border-radius: var(--ems-radius);
  background: rgba(255,255,255,0.045);
  border: 1px solid var(--ems-border);
  color: var(--ems-muted);
  text-align: center;
}

/* -----------------------------
   Character profile
----------------------------- */

.ems-character-hero {
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  gap: 24px;
  align-items: stretch;
  margin-bottom: 24px;
  padding: 24px;
  border-radius: var(--ems-radius-lg);
  background:
    radial-gradient(circle at top right, rgba(215,25,32,0.22), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.07), rgba(255,255,255,0.026)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow);
}

.ems-character-hero__image {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  min-height: 420px;
  overflow: hidden;
  border-radius: 22px;
  background:
    radial-gradient(circle at center, rgba(216,167,47,0.12), transparent 55%),
    #0b0f16;
  border: 1px solid var(--ems-border);
}

.ems-character-hero__image img {
  display: block;
  max-width: 100%;
  max-height: 430px;
  object-fit: contain;
}

.ems-character-hero__content {
  min-width: 0;
}

.ems-character-eyebrow {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 6px 12px;
  border-radius: 999px;
  color: var(--ems-accent-2);
  background: rgba(216,167,47,0.12);
  border: 1px solid rgba(216,167,47,0.26);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.ems-character-champion-badge {
  display: inline-flex;
  margin: 0 0 16px;
  padding: 8px 13px;
  border-radius: 999px;
  color: #ffe19a;
  background: rgba(216,167,47,0.14);
  border: 1px solid rgba(216,167,47,0.32);
  font-weight: 850;
  text-decoration: none;
}

.ems-character-stat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin: 18px 0;
}

.ems-character-stat {
  padding: 12px;
  border-radius: 14px;
  background: rgba(255,255,255,0.055);
  border: 1px solid var(--ems-border);
}

.ems-character-stat span {
  display: block;
  margin-bottom: 4px;
  color: var(--ems-faint);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.ems-character-stat strong {
  color: var(--ems-text);
  font-size: 15px;
}

.ems-character-bio {
  color: #d9dee8;
  line-height: 1.7;
}

.ems-character-bio p {
  margin: 0 0 1em;
}

.ems-character-panel,
.ems-character-tabs {
  margin-bottom: 24px;
  padding: 22px;
  border-radius: var(--ems-radius-lg);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow-soft);
}

.ems-character-panel__header {
  margin-bottom: 16px;
}

.ems-character-panel__header h2 {
  margin: 6px 0 0;
  color: var(--ems-text);
  font-size: 26px;
}

.ems-character-icon-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
  gap: 14px;
}

.ems-character-icon-card {
  padding: 14px;
  border-radius: 16px;
  background: rgba(255,255,255,0.045);
  border: 1px solid var(--ems-border);
  text-align: center;
}

.ems-character-icon-card img {
  width: 72px;
  height: 72px;
  object-fit: contain;
  margin-bottom: 10px;
}

.ems-character-icon-card span {
  display: block;
  color: var(--ems-text);
  font-size: 13px;
  font-weight: 850;
}

.ems-character-quick-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.ems-character-quick-card {
  padding: 18px;
  border-radius: var(--ems-radius);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow-soft);
}

.ems-character-quick-card p {
  margin: 8px 0 0;
  color: #d9dee8;
  line-height: 1.55;
}

.ems-character-quick-card a {
  color: #ffe19a;
  font-weight: 800;
}

.ems-character-music-card audio {
  width: 100%;
  margin-top: 10px;
}

.ems-character-tab-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}

.ems-character-tab-buttons button {
  min-height: 38px;
  padding: 8px 13px;
  border-radius: 999px;
  border: 1px solid var(--ems-border);
  background: rgba(255,255,255,0.065);
  color: var(--ems-text);
  font-weight: 850;
  cursor: pointer;
}

.ems-character-tab-buttons button.active,
.ems-character-tab-buttons button:hover {
  background: rgba(216,167,47,0.16);
  border-color: rgba(216,167,47,0.36);
  color: #ffe19a;
}

.ems-character-tab-content {
  display: none;
}

.ems-character-tab-content.active {
  display: block;
}

.ems-character-list {
  display: grid;
  gap: 12px;
}

.ems-character-list-item,
.ems-character-ring-card,
.ems-character-record-card {
  padding: 14px;
  border-radius: 16px;
  background: rgba(255,255,255,0.045);
  border: 1px solid var(--ems-border);
}

.ems-character-list-item a {
  color: #ffe19a;
  font-weight: 900;
}

.ems-character-list-item p {
  margin: 6px 0 0;
  color: var(--ems-muted);
}

.ems-character-table-wrap {
  overflow-x: auto;
}

.ems-character-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  min-width: 720px;
}

.ems-character-table th,
.ems-character-table td {
  padding: 12px;
  border-bottom: 1px solid var(--ems-border);
  text-align: left;
}

.ems-character-table th {
  color: var(--ems-text);
  background: rgba(255,255,255,0.065);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.ems-character-table td {
  color: #d9dee8;
}

.ems-character-table a {
  color: #ffe19a;
  font-weight: 800;
}

.ems-character-record-grid,
.ems-character-ring-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 12px;
}

.ems-character-record-card span,
.ems-character-ring-card span {
  display: block;
  margin-bottom: 6px;
  color: var(--ems-accent-2);
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.ems-character-record-card strong {
  color: var(--ems-text);
  font-size: 32px;
  line-height: 1;
}

.ems-character-ring-card p {
  margin: 0;
  color: #d9dee8;
  line-height: 1.55;
}

/* -----------------------------
   Promo listing
----------------------------- */

.ems-promo-list {
  display: grid;
  gap: 18px;
}

.ems-promo-card {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 18px;
  padding: 18px;
  border-radius: var(--ems-radius-lg);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow-soft);
}

.ems-promo-image {
  position: relative;
  display: block;
  min-height: 210px;
  overflow: hidden;
  border-radius: 18px;
  background: #0b0f16;
  border: 1px solid var(--ems-border);
}

.ems-promo-image img {
  width: 100%;
  height: 100%;
  min-height: 210px;
  object-fit: cover;
  display: block;
}

.ems-promo-play {
  position: absolute;
  right: 12px;
  bottom: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, var(--ems-accent), #991b1b);
  box-shadow: 0 10px 26px rgba(0,0,0,0.35);
}

.ems-promo-info {
  min-width: 0;
  align-self: center;
}

.ems-promo-info h2 {
  margin: 8px 0 10px;
  font-size: clamp(1.45rem, 3vw, 2.3rem);
  line-height: 1.05;
}

.ems-promo-info h2 a {
  color: var(--ems-text);
  text-decoration: none;
}

.ems-promo-info h2 a:hover {
  color: #ffe19a;
}

.ems-promo-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 14px;
}

.ems-promo-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  color: var(--ems-muted);
  background: rgba(255,255,255,0.06);
  border: 1px solid var(--ems-border);
  font-size: 12px;
  font-weight: 750;
}

.ems-promo-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

/* -----------------------------
   Single promo
----------------------------- */

.ems-single-promo {
  overflow: hidden;
  border-radius: var(--ems-radius-lg);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow);
}

.ems-single-promo-header {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 22px;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--ems-border);
  background:
    radial-gradient(circle at top right, rgba(215,25,32,0.18), transparent 34%),
    rgba(255,255,255,0.025);
}

.ems-single-promo-art {
  position: relative;
  min-height: 300px;
  overflow: hidden;
  border-radius: 20px;
  background: #0b0f16;
  border: 1px solid var(--ems-border);
}

.ems-single-promo-art img {
  display: block;
  width: 100%;
  height: 300px;
  object-fit: cover;
}

.ems-single-promo-heading {
  min-width: 0;
}

.ems-single-promo-body {
  padding: 28px;
  color: #d9dee8;
  line-height: 1.75;
  font-size: 1.04rem;
}

.ems-single-promo-body p {
  margin: 0 0 1em;
}

.ems-single-promo-body a {
  color: #ffe19a;
  font-weight: 800;
}

.ems-single-promo-footer {
  padding: 20px 28px 28px;
}

/* -----------------------------
   Event / preview neutral hooks
----------------------------- */

.ems-event-card,
.ems-event-panel,
.ems-event-preview-card,
.ems-event-match-card,
.ems-event-segment-card {
  margin-bottom: 18px;
  padding: 18px;
  border-radius: var(--ems-radius);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022)),
    var(--ems-panel);
  border: 1px solid var(--ems-border);
  box-shadow: var(--ems-shadow-soft);
}

.ems-event-card h2,
.ems-event-card h3,
.ems-event-panel h2,
.ems-event-panel h3,
.ems-event-preview-card h2,
.ems-event-preview-card h3,
.ems-event-match-card h2,
.ems-event-match-card h3,
.ems-event-segment-card h2,
.ems-event-segment-card h3 {
  margin-top: 0;
  color: var(--ems-text);
}

.ems-event-meta,
.ems-event-preview-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 14px;
}

.ems-event-meta span,
.ems-event-preview-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  color: var(--ems-muted);
  background: rgba(255,255,255,0.06);
  border: 1px solid var(--ems-border);
  font-size: 12px;
  font-weight: 750;
}

/* -----------------------------
   Responsive
----------------------------- */

@media (max-width: 1000px) {
  .ems-subpage-layout {
    grid-template-columns: 1fr;
  }

  .ems-character-hero,
  .ems-single-promo-header {
    grid-template-columns: 1fr;
  }

  .ems-character-hero__image {
    min-height: 320px;
  }

  .ems-single-promo-art,
  .ems-single-promo-art img {
    min-height: 260px;
    height: 260px;
  }
}

@media (max-width: 720px) {
  .ems-subpage-wrap,
  .ems-character-page,
  .ems-event-page,
  .ems-event-preview-page {
    padding: 18px 12px;
  }

  .ems-page-heading,
  .ems-character-hero,
  .ems-character-panel,
  .ems-character-tabs,
  .ems-single-promo-header,
  .ems-single-promo-body,
  .ems-single-promo-footer {
    padding: 18px;
  }

  .ems-promo-card {
    grid-template-columns: 1fr;
  }

  .ems-promo-image,
  .ems-promo-image img {
    min-height: 260px;
  }

  .ems-character-tab-buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .ems-character-tab-buttons button {
    width: 100%;
  }

  .ems-character-table {
    min-width: 640px;
  }
}

@media (max-width: 480px) {
  .ems-character-tab-buttons {
    grid-template-columns: 1fr;
  }

  .ems-page-heading h1,
  .ems-character-hero h1,
  .ems-single-promo-heading h1 {
    font-size: 2rem;
  }
}

/* =========================================================
   CWF Public Event - Chapter Select / Filter View
   Append after existing .cwf-public-event styles
   ========================================================= */

.cwf-public-event-chapters {
    overflow: hidden;
}

.cwf-public-event-chapters summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 20px;
    border-bottom: 1px solid rgba(255,255,255,.06);
    user-select: none;
}

.cwf-public-event-chapters summary::-webkit-details-marker {
    display: none;
}

.cwf-public-event-chapters__title {
    color: #fff;
    font: 900 1.05rem/1 var(--cwf-font-alt);
    letter-spacing: .12em;
    text-transform: uppercase;
}

.cwf-public-event-chapters__subtitle {
    color: var(--cwf-action-hover, #d94a2b);
    font: 800 10px/1.3 var(--cwf-font-alt);
    letter-spacing: .14em;
    text-transform: uppercase;
}

.cwf-public-event-chapters__inner {
    padding: 18px;
}

.cwf-public-event-filters {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 16px;
}

.cwf-public-event-filter-row {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
}

.cwf-public-event-filter-row label {
    color: var(--cwf-muted);
    font: 800 10px/1.3 var(--cwf-font-alt);
    letter-spacing: .12em;
    text-transform: uppercase;
}

.cwf-public-event-filter-row select {
    width: 100%;
    min-height: 42px;
    padding: 0 12px;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.03);
    color: #fff;
    font: 800 12px/1 var(--cwf-font-alt);
    letter-spacing: .04em;
    appearance: none;
    outline: none;
    box-shadow: none;
}

.cwf-public-event-filter-row select:focus {
    border-color: rgba(83,225,255,.26);
    box-shadow: 0 0 0 1px rgba(199,67,50,.22);
}

.cwf-public-event-filter-row option {
    color: #fff;
    background: #080707;
}

.cwf-public-event-filter-row--button {
    justify-content: flex-end;
}

.cwf-public-event-reset-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    border: 1px solid rgba(255,122,43,.24);
    background: rgba(255,122,43,.08);
    color: #ffbf96;
    font: 900 11px/1 var(--cwf-font-alt);
    letter-spacing: .14em;
    text-transform: uppercase;
    cursor: pointer;
    transition: .18s ease;
}

.cwf-public-event-reset-btn:hover {
    background: rgba(255,122,43,.14);
    color: #fff;
}

.cwf-public-event-results-note {
    margin-bottom: 14px;
    color: var(--cwf-muted);
    font: 800 10px/1.45 var(--cwf-font-alt);
    letter-spacing: .12em;
    text-transform: uppercase;
}

.cwf-public-event-chapter-list {
    margin: 0;
    padding-left: 22px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.cwf-public-event-chapter-item {
    padding: 12px 14px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 12px;
    background: rgba(255,255,255,.02);
}

.cwf-public-event-chapter-item a {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
    color: #fff;
    text-decoration: none;
}

.cwf-public-event-chapter-item a:hover .cwf-public-event-chapter-title-text {
    color: var(--cwf-action-hover, #d94a2b);
}

.cwf-public-event-chapter-number {
    color: var(--cwf-gold, #d7b169);
    font: 900 12px/1.2 var(--cwf-font-alt);
    letter-spacing: .08em;
}

.cwf-public-event-chapter-label {
    color: var(--cwf-action-hover, #d94a2b);
    font: 900 12px/1.2 var(--cwf-font-alt);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.cwf-public-event-chapter-title-text {
    color: #fff;
    font: 800 13px/1.45 var(--cwf-font-main);
    transition: color .18s ease;
}

.cwf-public-event-chapter-participants {
    margin-top: 8px;
    color: var(--cwf-muted);
    font: 800 10px/1.45 var(--cwf-font-alt);
    letter-spacing: .10em;
    text-transform: uppercase;
}

.cwf-public-event-empty {
    padding: 18px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 12px;
    background: rgba(255,255,255,.02);
    color: var(--cwf-muted);
    text-align: center;
    font: 800 11px/1.45 var(--cwf-font-alt);
    letter-spacing: .10em;
    text-transform: uppercase;
}

html {
    scroll-behavior: smooth;
}

@media (max-width: 900px) {
    .cwf-public-event-filters {
        grid-template-columns: 1fr 1fr;
    }

    .cwf-public-event-filter-row--button {
        grid-column: 1 / -1;
    }
}

@media (max-width: 640px) {
    .cwf-public-event-chapters summary {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .cwf-public-event-filters {
        grid-template-columns: 1fr;
    }

    .cwf-public-event-chapters__inner {
        padding: 16px;
    }

    .cwf-public-event-chapter-item {
        padding: 10px 12px;
    }
}

/* ============================================================
   CWF REDESIGN PRESERVED ADDITIONS
   These were added during the redesign and must stay in the final CSS.
   ============================================================ */

html {
    min-height: 100%;
    background:
        linear-gradient(
            rgba(3, 3, 3, .72),
            rgba(3, 3, 3, .88)
        ),
        url('https://cwf.ewplace.com/uploads/general/2026-05-25/img_6a149e2f0dcf80.01299773.png') center top / cover no-repeat fixed,
        #030303 !important;
}

body {
    min-height: 100%;
    background: transparent !important;
    color: var(--cwf-text);
    font-family: var(--cwf-body);
}

.cwf-site,
.cwf-shell,
.cwf-main,
.cwf-page-grid,
.cwf-content,
.cwf-sidebar {
    background: transparent !important;
}

/* Homepage - Upcoming Matches Panel, No Headshots */
.cwf-upcoming-matches-panel {
    min-height: 315px;
}

.cwf-upcoming-matches-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    text-align: left;
}

.cwf-upcoming-matches-head .cwf-panel-title {
    color: #f5ead2;
    font: 900 25px/1 var(--cwf-head);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    font-style: italic;
}

.cwf-upcoming-matches-head .cwf-panel-link {
    color: #d94a2b;
    font: 900 12px/1 var(--cwf-head);
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.cwf-upcoming-matches-head .cwf-panel-link:hover {
    color: #f5ead2;
}

.cwf-matches-list {
    position: relative;
    z-index: 1;
    min-height: 253px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 9px;
    padding: 12px;
}

.cwf-match-row {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 64px;
    padding: 12px 14px;
    border: 1px solid rgba(217, 74, 43, 0.22);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.015));
    color: #f5ead2;
    transition: 0.18s ease;
}

.cwf-match-row:hover {
    border-color: rgba(217, 74, 43, 0.5);
    background: linear-gradient(180deg, rgba(94, 18, 13, 0.44), rgba(12, 12, 12, 0.96));
    color: #fff;
}

.cwf-match-row--empty {
    min-height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.cwf-match-copy {
    width: 100%;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    text-align: center;
}

.cwf-match-type {
    width: 100%;
    text-align: center;
    color: #d8a84a;
    font: 900 10px/1.2 var(--cwf-head);
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.cwf-match-names {
    width: 100%;
    text-align: center;
    color: #f5ead2;
    font: 900 20px/1.05 var(--cwf-head);
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.cwf-vs {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 7px;
    color: #d94a2b;
    font-style: italic;
}

.cwf-match-more {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 14px;
    border: 1px solid rgba(217, 74, 43, 0.42);
    background: linear-gradient(180deg, rgba(92, 18, 13, 0.92), rgba(24, 7, 5, 0.98));
    color: #f5ead2;
    font: 900 12px/1 var(--cwf-head);
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.cwf-match-more:hover {
    background: linear-gradient(180deg, rgba(150, 33, 22, 0.96), rgba(58, 10, 8, 0.98));
    color: #fff;
}

/* Homepage - Random Quote / Random Fact Cards */
.cwf-pulse-flavor-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.cwf-pulse-flavor-card {
    width: 100%;
    min-height: 116px;
    padding: 13px 14px;
    border: 1px solid rgba(217, 74, 43, 0.24);
    background: linear-gradient(135deg, rgba(94, 18, 13, 0.36), rgba(0, 0, 0, 0.34)), rgba(255, 255, 255, 0.025);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 12px 24px rgba(0, 0, 0, 0.18);
}

.cwf-pulse-flavor-label {
    display: block;
    color: #d94a2b;
    font: 900 13px/1 var(--cwf-head);
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.cwf-pulse-flavor-card blockquote {
    margin: 9px 0 0;
    color: #f5ead2;
    font: 800 13px/1.4 var(--cwf-body);
}

.cwf-pulse-flavor-card strong {
    display: block;
    margin-top: 9px;
    color: #d8a84a;
    font: 900 13px/1 var(--cwf-head);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-align: right;
}

/* Mobile Hamburger Navigation */
.cwf-nav-toggle-input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.cwf-nav-toggle-label {
    display: none;
}

@media (max-width: 900px) {
    .cwf-nav-shell {
        width: min(100%, var(--cwf-max));
        margin: 0 auto;
        padding: 0 0 13px;
    }

    .cwf-nav-toggle-label {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        min-height: 52px;
        padding: 0 16px;
        border: 1px solid var(--cwf-border);
        background: linear-gradient(180deg, rgba(24, 24, 24, .98), rgba(7, 7, 7, .98));
        color: #f5ead2;
        font: 900 18px/1 var(--cwf-head);
        letter-spacing: .08em;
        text-transform: uppercase;
        cursor: pointer;
        box-shadow: 0 12px 28px rgba(0, 0, 0, .42);
    }

    .cwf-nav-toggle-icon {
        display: inline-flex;
        flex-direction: column;
        justify-content: center;
        gap: 5px;
        width: 28px;
        height: 24px;
    }

    .cwf-nav-toggle-icon span {
        display: block;
        width: 100%;
        height: 3px;
        background: #d94a2b;
        box-shadow: 0 0 8px rgba(217, 74, 43, .22);
        transition: transform .18s ease, opacity .18s ease;
    }

    .cwf-nav-toggle-text {
        margin-left: auto;
    }

    .cwf-nav {
        display: none;
        grid-template-columns: 1fr;
        width: 100%;
        border-top: 0;
        box-shadow: 0 18px 35px rgba(0, 0, 0, .55);
    }

    .cwf-nav-toggle-input:checked + .cwf-nav-toggle-label + .cwf-nav {
        display: grid;
    }

    .cwf-nav-toggle-input:checked + .cwf-nav-toggle-label .cwf-nav-toggle-icon span:nth-child(1) {
        transform: translateY(8px) rotate(45deg);
    }

    .cwf-nav-toggle-input:checked + .cwf-nav-toggle-label .cwf-nav-toggle-icon span:nth-child(2) {
        opacity: 0;
    }

    .cwf-nav-toggle-input:checked + .cwf-nav-toggle-label .cwf-nav-toggle-icon span:nth-child(3) {
        transform: translateY(-8px) rotate(-45deg);
    }

    .cwf-nav a {
        min-height: 48px;
        justify-content: flex-start;
        padding: 0 18px;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .08);
        font-size: 17px;
    }

    .cwf-nav a:last-child {
        border-bottom: 0;
    }

    .cwf-nav a::after {
        left: 0;
        right: auto;
        top: 0;
        bottom: 0;
        width: 4px;
        height: auto;
    }

    .cwf-nav a:hover::after,
    .cwf-nav a.active::after {
        background: #d94a2b;
    }

    .cwf-upcoming-matches-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .cwf-match-names {
        font-size: 17px;
    }
}

@media (max-width: 760px) {
    .cwf-pulse-flavor-grid {
        grid-template-columns: 1fr;
    }
}


/* ============================================================
   FINAL THEME NORMALIZATION FOR LEGACY CWF/eMS PAGE SUPPORT
   Keeps imported original CSS in the new redesign color/shape language.
   ============================================================ */
:root {
    --cwf-bg: #030303;
    --cwf-panel: #0b0c0d;
    --cwf-panel-2: #111315;
    --cwf-panel-3: #18100e;
    --cwf-border: rgba(199, 67, 50, 0.28);
    --cwf-line: rgba(199, 67, 50, 0.24);
    --cwf-line-strong: rgba(199, 67, 50, 0.42);
    --cwf-line-warm: rgba(199, 67, 50, 0.32);
    --cwf-cyan: #c74332;
    --cwf-cyan-2: #d94a2b;
    --cwf-orange: #c74332;
    --cwf-orange-2: #d8a84a;
    --cwf-action: #c74332;
    --cwf-action-hover: #d94a2b;
    --cwf-cream: #f5ead2;
    --cwf-gold: #d8a84a;
    --cwf-muted: #aaa39b;
    --cwf-text: #f3f1ec;
    --cwf-radius: 0;
    --cwf-radius-sm: 0;

    --ems-panel: #0f0d0c;
    --ems-panel-soft: #171210;
    --ems-border: rgba(199, 67, 50, 0.24);
    --ems-border-strong: rgba(199, 67, 50, 0.42);
    --ems-text: #f3f1ec;
    --ems-muted: #aaa39b;
    --ems-faint: #807b73;
    --ems-accent: #c74332;
    --ems-accent-2: #d8a84a;
    --ems-accent-hover: #d94a2b;
    --ems-radius: 0;
    --ems-radius-lg: 0;
}

.cwf-frame,
.cwf-panel,
.cwf-card,
.content-box,
.cwf-sidebar-card,
.cwf-feature-card,
.cwf-home-card,
.cwf-footer-panel,
.cwf-bottom-panel,
.cwf-side-panel,
.cwf-news-archive-item,
.cwf-promo-card,
.cwf-promo-single,
.cwf-event-list-card,
.cwf-event-preview-hero,
.cwf-event-preview-block,
.cwf-event-preview-card,
.cwf-public-event-hero,
.cwf-public-event-block,
.cwf-public-event-credits,
.ems-page-heading,
.ems-character-hero,
.ems-character-panel,
.ems-character-tabs,
.ems-character-quick-card,
.ems-promo-card,
.ems-single-promo,
.ems-event-card,
.ems-event-panel,
.ems-event-preview-card,
.ems-event-match-card,
.ems-event-segment-card {
    border-color: rgba(199, 67, 50, 0.26) !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, rgba(18, 16, 15, 0.98), rgba(5, 5, 5, 0.99)) !important;
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.42), inset 0 0 0 1px rgba(255, 255, 255, 0.025) !important;
}

.cwf-frame::before,
.cwf-panel::before,
.cwf-card::before,
.content-box::before,
.cwf-sidebar-card::before,
.cwf-feature-card::before,
.cwf-home-card::before,
.cwf-footer-panel::before {
    background:
        linear-gradient(90deg, rgba(199, 67, 50, 0.07), transparent 18%, transparent 82%, rgba(199, 67, 50, 0.045)),
        radial-gradient(circle at 50% 0, rgba(255, 255, 255, 0.04), transparent 20rem) !important;
}

.cwf-side-head,
.cwf-block-head,
.cwf-panel-head,
.cwf-panel__head,
.cwf-public-event-block-head,
.cwf-upcoming-matches-head {
    border-bottom-color: rgba(199, 67, 50, 0.58) !important;
    background: linear-gradient(180deg, rgba(89, 18, 11, 0.96), rgba(18, 18, 18, 0.78)) !important;
    color: #f5ead2 !important;
    text-shadow: none !important;
}

.cwf-btn,
.cwf-btn-primary,
.cwf-btn-secondary,
.cwf-button,
.cwf-button--blue,
.cwf-neon-btn,
.cwf-neon-btn--orange,
.cwf-public-event-reset-btn,
.ems-btn,
.ems-button,
.ems-btn--red {
    border-color: rgba(199, 67, 50, 0.62) !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, rgba(111, 24, 15, 0.92), rgba(39, 7, 3, 0.96)) !important;
    color: #f5ead2 !important;
    text-shadow: none !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 0 14px rgba(199,67,50,.10) !important;
}

.cwf-btn:hover,
.cwf-btn-primary:hover,
.cwf-btn-secondary:hover,
.cwf-button:hover,
.cwf-button--blue:hover,
.cwf-neon-btn:hover,
.cwf-neon-btn--orange:hover,
.cwf-public-event-reset-btn:hover,
.ems-btn:hover,
.ems-button:hover,
.ems-btn--red:hover {
    background: linear-gradient(180deg, rgba(151, 33, 22, 0.96), rgba(58, 10, 8, 0.98)) !important;
    color: #fff !important;
}

.cwf-datebox,
.cwf-datebox--red,
.cwf-event-date,
.cwf-event-preview-datebox {
    border-color: rgba(199, 67, 50, 0.45) !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, rgba(32, 27, 24, 0.98), rgba(10, 9, 8, 0.98)) !important;
}

.cwf-datebox span,
.cwf-datebox strong,
.cwf-event-date span,
.cwf-event-date strong,
.cwf-event-preview-datebox span,
.cwf-event-preview-datebox strong {
    color: #f5ead2 !important;
    text-shadow: none !important;
}

.cwf-news-image,
.cwf-news-featured-image,
.cwf-news-archive-thumb img,
.cwf-news-single-image img,
.cwf-promo-image,
.cwf-promo-single-image,
.cwf-latest-promo-image,
.cwf-roster-image,
.cwf-event-promo,
.cwf-event-list-logo,
.cwf-event-preview-logo,
.cwf-public-event-logo,
.ems-promo-image,
.ems-single-promo-art,
.ems-character-hero__image,
.ems-character-icon-card img {
    border-color: rgba(199, 67, 50, 0.24) !important;
    border-radius: 0 !important;
}

.cwf-news-tag,
.cwf-roster-badge,
.cwf-event-preview-match-type,
.cwf-section-kicker,
.ems-character-eyebrow,
.ems-character-champion-badge,
.ems-promo-meta span,
.ems-event-meta span,
.ems-event-preview-meta span {
    border-color: rgba(199, 67, 50, 0.56) !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, rgba(155, 34, 24, 0.95), rgba(74, 12, 9, 0.95)) !important;
    color: #fff !important;
    text-shadow: none !important;
}

.cwf-section-head a,
.cwf-story-row a,
.cwf-news-copy h3 a:hover,
.cwf-news-copy h4 a:hover,
.cwf-news-featured-copy h3 a:hover,
.cwf-news-archive-copy h2 a:hover,
.cwf-news-archive-readmore,
.cwf-news-single-body a,
.cwf-news-single-back,
.cwf-promo-title a:hover,
.cwf-promo-single-body a,
.cwf-promo-single-back,
.cwf-event-list-title a:hover,
.cwf-public-event-chapter-label,
.cwf-public-event-chapter-item a:hover .cwf-public-event-chapter-title-text,
.ems-character-quick-card a,
.ems-character-list-item a,
.ems-character-table a,
.ems-promo-info h2 a:hover,
.ems-single-promo-body a {
    color: #d94a2b !important;
}

.cwf-page-title,
.cwf-section-title,
.cwf-block-head h2,
.cwf-panel-head h2,
.cwf-panel-head h3,
.cwf-side-head,
.cwf-news-copy h3 a,
.cwf-news-copy h4 a,
.cwf-news-featured-copy h3 a,
.cwf-news-archive-copy h2 a,
.cwf-news-single-header h1,
.cwf-news-single-header h2,
.cwf-promo-title a,
.cwf-promo-single-title,
.cwf-event-list-title a,
.cwf-event-preview-title,
.cwf-public-event-title,
.ems-page-heading h1,
.ems-character-hero h1,
.ems-single-promo-heading h1,
.ems-promo-info h2 a {
    color: #f5ead2 !important;
    text-shadow: none !important;
}

.cwf-footer,
.cwf-footer__inner,
.cwf-footer-inner {
    border-top-color: rgba(199, 67, 50, 0.72) !important;
}

body,
button,
input,
select,
textarea {
    font-synthesis: none;
}
