/* ========================================================================== 
   NFL Fantasy Mate - shared internal-page visual shell
   Homepage deliberately excluded.
   Canonical reference: Players charcoal/gold product hero.
   ========================================================================== */

/* Navigation normalization ------------------------------------------------ */
/* Every real destination uses the same anchor styling even if an older page
   omitted the historical nav-placeholder helper class. */
.primary-nav > a.nav-link {
    color: #f4f4f2;
    font-size: .92rem;
    font-weight: 650;
    padding: 31px 0 27px;
    border-bottom: 3px solid transparent;
    cursor: pointer;
}

.primary-nav > a.nav-link:hover {
    color: var(--fm-gold-soft, #ffe27a);
}

.primary-nav > a.nav-link.is-active,
.primary-nav > a.nav-link[aria-current="page"] {
    color: var(--fm-gold, #f2c230);
    border-bottom-color: var(--fm-gold, #f2c230);
}


/* Expanded primary navigation --------------------------------------------- */
/* The two new public destinations add width to the desktop navigation.
   Tighten the shared gap slightly while retaining the existing mobile menu. */
.primary-nav {
    gap: 20px;
}

.footer-links a {
    color: inherit;
}

.footer-links a:hover {
    color: var(--fm-gold, #f2c230);
}

/* Shared charcoal hero ---------------------------------------------------- */
.market-intro,
.signals-intro,
.teams-intro,
.coaching-hero,
.player-intro {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border-bottom: 1px solid rgba(242, 194, 48, .22) !important;
    background: linear-gradient(118deg, #111315 0%, #191c1e 58%, #202326 100%) !important;
}

.market-intro::before,
.signals-intro::before,
.teams-intro::before,
.coaching-hero::before,
.player-intro::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    pointer-events: none;
    background:
        radial-gradient(circle at 82% 12%, rgba(242, 194, 48, .22), transparent 22rem),
        radial-gradient(circle at 66% 110%, rgba(242, 194, 48, .08), transparent 28rem);
}

.market-intro::after,
.signals-intro::after,
.teams-intro::after,
.coaching-hero::after,
.player-intro::after {
    position: absolute;
    right: max(28px, calc((100vw - var(--max-width)) / 2 + 28px));
    bottom: -22px;
    z-index: -1;
    color: rgba(255, 255, 255, .035);
    font-size: clamp(4.6rem, 9vw, 9rem);
    line-height: .82;
    font-weight: 950;
    letter-spacing: -.07em;
    pointer-events: none;
}

.market-intro::after { content: "MARKET"; }
.signals-intro::after { content: "SIGNALS"; }
.teams-intro::after { content: "TEAMS"; }
.coaching-hero::after { content: "COACHING"; }
.player-intro::after { content: "PLAYER"; }

.market-intro-inner,
.signals-intro-inner,
.teams-intro-inner,
.coaching-hero-inner,
.player-intro-inner {
    position: relative;
    z-index: 1;
}

/* Keep the internal pages related to Players without forcing identical height.
   Players itself retains its existing, taller discovery-control hero. */
.market-intro-inner,
.signals-intro-inner {
    min-height: 245px !important;
    padding-top: 48px !important;
    padding-bottom: 48px !important;
}

.teams-intro-inner {
    min-height: 235px !important;
    padding-top: 46px !important;
    padding-bottom: 44px !important;
}

.coaching-hero-inner {
    min-height: 235px;
    padding-top: 46px !important;
    padding-bottom: 44px !important;
}

/* Gold eyebrow, white title, muted supporting copy. */
.market-intro .eyebrow,
.signals-intro .eyebrow,
.teams-intro .eyebrow,
.coaching-eyebrow {
    color: var(--fm-gold, #f2c230) !important;
}

.market-intro h1,
.signals-intro h1,
.teams-intro h1,
.coaching-hero h1,
.player-intro h1 {
    color: #ffffff !important;
    text-shadow: 0 1px 0 rgba(255, 255, 255, .02);
}

.market-intro h1,
.signals-intro h1,
.teams-intro h1,
.coaching-hero h1 {
    font-size: clamp(2.4rem, 4vw, 4rem) !important;
    line-height: .96 !important;
    letter-spacing: -.055em !important;
}

.market-intro-copy,
.signals-intro-copy,
.teams-intro-copy,
.coaching-hero p:not(.coaching-eyebrow),
.player-intro-copy {
    color: #c7ccce !important;
}

/* Shared snapshot/freshness badge. */
.market-freshness,
.signals-freshness,
.teams-freshness,
.coaching-freshness,
.player-freshness {
    flex: 0 0 auto;
    min-width: 220px;
    max-width: 420px;
    padding: 12px 15px !important;
    border: 1px solid rgba(242, 194, 48, .25) !important;
    border-radius: 11px !important;
    background: rgba(255, 255, 255, .045) !important;
    color: #adb3b6 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
    font-size: .78rem;
    font-weight: 750;
    line-height: 1.45;
    text-align: right;
}

.market-freshness strong,
.signals-freshness strong,
.teams-freshness strong,
.coaching-freshness strong,
.player-freshness strong {
    color: var(--fm-gold, #f2c230) !important;
}

/* Individual Player page -------------------------------------------------- */
/* The breadcrumb becomes part of the charcoal product header instead of a
   light strip sitting between navigation and the Player hero. */
.player-page .player-breadcrumb {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 18px max(28px, calc((100vw - var(--max-width)) / 2 + 28px)) 0;
    background: #111315;
    color: #8f979a;
}

.player-page .player-breadcrumb a {
    color: var(--fm-gold, #f2c230);
}

.player-page .player-intro {
    border-top: 0;
}

.player-page .player-intro-inner {
    padding-top: 32px;
    padding-bottom: 48px;
}

.player-page .player-secondary-meta {
    color: #9fa6a9;
}

.player-page .player-position-pill {
    border: 1px solid rgba(242, 194, 48, .40);
    background: rgba(242, 194, 48, .10);
    color: var(--fm-gold, #f2c230);
}

.player-page .player-team-pill {
    border-color: rgba(255, 255, 255, .13);
    background: rgba(255, 255, 255, .07);
    color: #e2e5e6;
}

/* Responsive shell -------------------------------------------------------- */
@media (max-width: 1100px) {
    .primary-nav {
        gap: 0;
    }

    .primary-nav > a.nav-link {
        padding: 13px 12px;
        border-bottom: 0;
        border-left: 3px solid transparent;
    }

    .primary-nav > a.nav-link.is-active,
    .primary-nav > a.nav-link[aria-current="page"] {
        border-bottom-color: transparent;
        border-left-color: var(--fm-gold, #f2c230);
    }
}

@media (max-width: 900px) {
    .market-intro-inner,
    .signals-intro-inner,
    .teams-intro-inner,
    .coaching-hero-inner,
    .player-intro-inner {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 24px !important;
    }

    .market-freshness,
    .signals-freshness,
    .teams-freshness,
    .coaching-freshness,
    .player-freshness {
        min-width: 0;
        width: 100%;
        max-width: none;
        text-align: left;
    }
}

@media (max-width: 720px) {
    .market-intro::after,
    .signals-intro::after,
    .teams-intro::after,
    .coaching-hero::after,
    .player-intro::after {
        right: 10px;
        bottom: -10px;
        font-size: 4.7rem;
    }

    .market-intro-inner,
    .signals-intro-inner,
    .teams-intro-inner,
    .coaching-hero-inner {
        min-height: 0 !important;
        padding-top: 36px !important;
        padding-bottom: 38px !important;
    }

    .player-page .player-breadcrumb {
        padding: 15px 18px 0;
    }

    .player-page .player-intro-inner {
        padding-top: 26px;
        padding-bottom: 36px;
    }
}
