.fh-home-board{
    display:grid;
    grid-template-columns:minmax(0, 1.15fr) minmax(340px, 1fr);
    gap:18px;
    align-items:stretch;
    width:100%;
    padding:18px 40px 8px;
    box-sizing:border-box;
}

.fh-home-news{
    min-width:0;
    padding:14px;
    border:1px solid #d6a72b;
    border-radius:18px;
    background:#070707;
    box-shadow:0 0 18px rgba(214,167,43,.18);
}

.fh-news-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:12px;
}

.fh-news-head h2{
    display:flex;
    align-items:center;
    gap:8px;
    margin:0;
    color:#f2c94c;
    font-size:22px;
    font-weight:900;
    letter-spacing:.4px;
    text-transform:uppercase;
}

.fh-news-head h2 span{
    color:#fff;
}

.fh-news-head svg{
    width:22px;
    height:22px;
    fill:none;
    stroke:#f2c94c;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.fh-news-all{
    color:#f2c94c;
    font-size:13px;
    font-weight:800;
}

.fh-news-all:hover{
    color:#fff;
}

.fh-news-empty{
    margin:0;
    color:#cfcfcf;
    font-size:14px;
}

.fh-news-slot-line,
.fh-news-slot-line-short{
    display:block;
    height:10px;
    margin-top:8px;
    border-radius:4px;
    background:rgba(255,255,255,.16);
}

.fh-news-slot-line{
    width:74%;
}

.fh-news-slot-line-short{
    width:42%;
}

.fh-news-feature.is-empty .fh-news-slot-line{
    height:16px;
    width:68%;
}

.is-empty{
    pointer-events:none;
}

.fh-news-top{
    display:grid;
    grid-template-columns:minmax(0, 1.35fr) minmax(180px, .85fr);
    gap:12px;
}

.fh-news-feature-slider{
    position:relative;
    min-width:0;
    border-radius:14px;
    overflow:hidden;
    background:#111;
}

.fh-news-feature-track{
    display:flex;
    width:100%;
    transition:transform .45s ease;
}

.fh-news-feature{
    position:relative;
    display:block;
    flex:0 0 100%;
    width:100%;
    min-height:280px;
    border-radius:14px;
    overflow:hidden;
    color:#fff;
    background:#111;
}

.fh-news-feature img,
.fh-news-feature .fh-news-photo-fallback{
    width:100%;
    height:100%;
    min-height:280px;
    object-fit:cover;
}

.fh-news-feature-nav{
    position:absolute;
    top:50%;
    z-index:2;
    width:34px;
    height:34px;
    margin:0;
    padding:0;
    border:0;
    border-radius:50%;
    background:rgba(0,0,0,.55);
    color:#f2c94c;
    font-size:24px;
    line-height:1;
    cursor:pointer;
    transform:translateY(-50%);
}

.fh-news-feature-nav.is-prev{
    left:10px;
}

.fh-news-feature-nav.is-next{
    right:10px;
}

.fh-news-feature-nav:hover{
    background:rgba(0,0,0,.78);
    color:#fff;
}

.fh-news-feature-dots{
    position:absolute;
    left:0;
    right:0;
    bottom:10px;
    z-index:2;
    display:flex;
    justify-content:center;
    gap:6px;
    pointer-events:none;
}

.fh-news-feature-dot{
    width:8px;
    height:8px;
    margin:0;
    padding:0;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.35);
    cursor:pointer;
    pointer-events:auto;
}

.fh-news-feature-dot.is-active{
    background:#f2c94c;
}

.fh-news-feature-copy{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    display:flex;
    flex-direction:column;
    gap:6px;
    padding:54px 16px 16px;
    background:linear-gradient(to top, rgba(0,0,0,.92), rgba(0,0,0,.2) 70%, transparent);
}

.fh-news-feature-copy strong{
    font-size:26px;
    line-height:1.15;
}

.fh-news-excerpt{
    color:#e6e6e6;
    font-size:14px;
    line-height:1.4;
}

.fh-news-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:58px;
    width:max-content;
    padding:2px 7px;
    border-radius:3px;
    background:#e10600;
    color:#f7b500;
    font-size:10px;
    font-weight:900;
    letter-spacing:.4px;
    text-transform:uppercase;
    box-sizing:border-box;
}

.fh-news-badge.is-fhl{
    background:#e10600;
    color:#f7b500;
}

.fh-news-badge.is-prime{
    background:#f7b500;
    color:#111;
}

.fh-news-badge.is-elite{
    background:#b8b8b8;
    color:#111;
}

.fh-news-badge.is-dynasty{
    background:#cd7f32;
    color:#fff;
}

.fh-news-badge.is-rising{
    background:#ff2d2d;
    color:#fff;
}

.fh-news-badge.is-crows{
    background:#2d7dff;
    color:#fff;
}

.fh-news-feature > .fh-news-badge{
    position:absolute;
    top:12px;
    left:12px;
    z-index:1;
}

.fh-news-date{
    color:#d0d0d0;
    font-size:12px;
    font-weight:700;
}

.fh-news-list{
    display:flex;
    flex-direction:column;
    gap:8px;
    min-width:0;
}

.fh-news-row,
.fh-news-card{
    display:grid;
    grid-template-columns:72px minmax(0, 1fr) auto;
    gap:10px;
    align-items:center;
    min-width:0;
    color:#fff;
}

.fh-news-row img,
.fh-news-row .fh-news-photo-fallback,
.fh-news-card img,
.fh-news-card .fh-news-photo-fallback{
    width:72px;
    height:56px;
    object-fit:cover;
    border-radius:8px;
    background:#161616;
}

.fh-news-photo-fallback{
    display:block;
    background:
        radial-gradient(circle at 30% 30%, rgba(214,167,43,.35), transparent 55%),
        #141414;
}

.fh-news-row-copy,
.fh-news-card-copy{
    display:flex;
    flex-direction:column;
    gap:4px;
    min-width:0;
}

.fh-news-kicker{
    display:flex;
    align-items:center;
    gap:8px;
}

.fh-news-row strong,
.fh-news-card strong{
    font-size:14px;
    line-height:1.25;
}

.fh-news-chevron{
    color:#f2c94c;
    font-size:22px;
    line-height:1;
}

.fh-news-cards{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:12px;
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid rgba(214,167,43,.35);
}

.fh-news-card{
    grid-template-columns:1fr auto;
    align-items:end;
    position:relative;
    min-height:150px;
    padding:10px;
    border-radius:12px;
    overflow:hidden;
    background:#101010;
}

.fh-news-card img,
.fh-news-card .fh-news-photo-fallback{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border-radius:0;
}

.fh-news-card-copy,
.fh-news-card .fh-news-chevron{
    position:relative;
    z-index:1;
}

.fh-news-card-copy{
    align-self:end;
    padding-top:48px;
    background:linear-gradient(to top, rgba(0,0,0,.88), transparent);
}

.fh-home-side{
    display:flex;
    flex-direction:column;
    min-width:0;
    height:100%;
}

.fh-home-side .fh-promo-wrapper{
    margin:0;
}

.fh-home-side .fh-promo-container{
    padding:0;
    gap:12px;
}

.fh-home-side .fh-promo-banner{
    width:100%;
    height:auto;
    aspect-ratio:1024 / 409;
    padding:0;
}

.fh-home-side .fh-promo-banner img{
    margin:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.fh-home-side .btn-promo{
    width:auto;
    max-width:calc(100% - 12px);
    height:24px;
    padding:0 10px;
    right:6px;
    bottom:6px;
    font-size:9px;
    border-radius:12px;
}

.fh-home-side .fhl-leagues-grid{
    flex:1 1 auto;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    grid-template-rows:repeat(2, minmax(0, 1fr));
    gap:10px;
    padding:12px 0 0;
}

.fh-home-side .league-card{
    height:100%;
    min-height:0;
}

.fh-home-side .league-image{
    flex:1 1 auto;
    height:auto;
    min-height:88px;
    padding:6px;
}

.fh-home-side .league-content{
    padding:8px;
}

.fh-home-side .league-caption{
    margin-bottom:6px;
    font-size:9px;
    letter-spacing:0;
}

.fh-home-side .league-button{
    padding:7px 4px;
    font-size:10px;
}

@media (max-width: 1100px){
    .fh-home-board{
        grid-template-columns:1fr;
        padding:16px 20px 8px;
    }

    .fh-home-side{
        height:auto;
    }

    .fh-home-side .fh-promo-container{
        grid-template-columns:1fr;
    }

    .fh-home-side .fhl-leagues-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr));
        grid-template-rows:none;
    }

    .fh-home-side .btn-promo{
        width:auto;
        font-size:12px;
        height:30px;
    }

    .fh-news-cards{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .fh-news-top{
        grid-template-columns:minmax(0, 1.2fr) minmax(160px, .8fr);
    }
}

@media (max-width: 900px){
    .fh-news-top{
        grid-template-columns:1fr;
    }
}

@media (max-width: 760px){
    .fh-news-top{
        grid-template-columns:1fr;
    }

    .fh-news-feature,
    .fh-news-feature img,
    .fh-news-feature .fh-news-photo-fallback,
    .fh-news-feature-slider{
        min-height:220px;
    }

    .fh-news-feature-copy strong{
        font-size:22px;
    }

    .fh-news-head h2{
        font-size:18px;
    }

    .fh-home-side .fhl-leagues-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        grid-template-rows:none;
    }

    .fh-news-cards{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .fh-home-side .fh-promo-banner{
        aspect-ratio:auto;
        padding:12px;
    }

    .fh-home-side .btn-promo{
        position:static;
        width:100%;
        max-width:100%;
        height:40px;
        margin-top:8px;
    }
}

@media (max-width: 480px){
    .fh-home-board{
        padding:12px 12px 4px;
    }

    .fh-home-side .fhl-leagues-grid{
        grid-template-columns:1fr;
        grid-template-rows:none;
    }

    .fh-news-cards{
        grid-template-columns:1fr;
    }

    .fh-news-row{
        grid-template-columns:64px minmax(0, 1fr) auto;
    }

    .fh-news-archive-head{
        font-size:22px;
    }

    .fh-news-article h2{
        font-size:20px;
    }

    .fh-news-article{
        padding:12px;
    }
}

.fh-news-archive{
    width:min(980px, calc(100% - 32px));
    margin:28px auto 48px;
}

.fh-news-archive-head{
    margin:0 0 18px;
    color:#f2c94c;
    font-size:28px;
    font-weight:900;
    text-transform:uppercase;
}

.fh-news-article{
    margin:0 0 22px;
    padding:16px;
    border:1px solid #2a2a2a;
    border-radius:16px;
    background:#0c0c0c;
}

.fh-news-article img{
    width:100%;
    max-height:420px;
    object-fit:cover;
    border-radius:12px;
    margin-bottom:12px;
}

.fh-news-article h2{
    margin:8px 0;
    color:#fff;
    font-size:26px;
    line-height:1.2;
}

.fh-news-article p{
    margin:0;
    color:#ddd;
    font-size:16px;
    line-height:1.55;
    white-space:pre-wrap;
}

.fh-news-article .fh-news-author{
    display:block;
    margin-top:10px;
    color:#f2c94c;
    font-size:13px;
    font-weight:700;
}
