/* =========================================================
   MOF HALL OF FAME PROFILE
   Matches the current MOF/HOF landing-page background + fonts
   while preserving the premium profile layout.
   ========================================================= */

body.hof-profile-page {
    background-color: #0c141a !important;
    background-image:
        linear-gradient(
            rgba(9, 17, 23, 0.88),
            rgba(9, 17, 23, 0.88)
        ),
        url('/pictures/mof_hof_blank.png') !important;

    background-position: center top !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-attachment: fixed !important;
}

body.hof-profile-page:before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        linear-gradient(115deg, transparent 0 38%, rgba(255,255,255,.018) 50%, transparent 62%),
        repeating-linear-gradient(
            90deg,
            rgba(255,255,255,.012) 0,
            rgba(255,255,255,.012) 1px,
            transparent 1px,
            transparent 8px
        );
}

.hof-profile-page-shell {
    width: min(1200px, calc(100% - 34px));
    margin: 28px auto 48px;
    padding: 22px;
    box-sizing: border-box;
    background:
        linear-gradient(180deg, #efede8 0%, #e8e5df 100%);
    border: 1px solid #d0cbc2;
    box-shadow: 0 18px 42px rgba(0,0,0,.30);
}

.hof-shell {
    width: 100%;
    margin: 0;
    padding: 0;
}

/* HERO */

.hof-profile-hero {
    position: relative;
    display: grid;
    grid-template-columns: 340px minmax(0, 1fr);
    min-height: 390px;
    overflow: hidden;
    border: 1px solid #5a4429;
    background:
        radial-gradient(circle at 12% 35%, rgba(174,118,55,.28), transparent 36%),
        linear-gradient(120deg, #17110d 0%, #211a14 48%, #111 100%);
    box-shadow: 0 12px 28px rgba(0,0,0,.24);
}

.hof-profile-hero-glow {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(110deg, transparent 35%, rgba(255,255,255,.025) 50%, transparent 65%);
}

.hof-profile-plaque-column {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 26px;
}

.hof-profile-plaque {
    display: block;
    width: 100%;
    max-width: 290px;
    max-height: 340px;
    object-fit: contain;
    filter: drop-shadow(0 12px 20px rgba(0,0,0,.42));
}

.hof-profile-intro {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 42px 42px 36px;
    font-family: Arial, Helvetica, sans-serif;
}

.hof-section-kicker {
    color: #d3a45b;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.hof-profile-intro h1 {
    margin: 8px 0 10px;
    color: #fff;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: clamp(40px, 5.2vw, 66px);
    font-weight: 700;
    line-height: .96;
    letter-spacing: -.8px;
    text-transform: uppercase;
    text-shadow: 0 3px 16px rgba(0,0,0,.42);
}

.hof-profile-class {
    width: fit-content;
    padding: 7px 11px;
    border: 1px solid #74552d;
    background: rgba(0,0,0,.18);
    color: #d8b06c;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .8px;
}

.hof-profile-role {
    margin-top: 10px;
    color: #bbb;
    font-size: 14px;
    font-weight: 400;
}

.hof-profile-trophy-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 16px;
}

.hof-profile-trophy-row img {
    width: 34px;
    height: 34px;
    object-fit: contain;
}

.hof-profile-trophy-row span {
    margin-left: 7px;
    color: #d8b06c;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.hof-profile-summary-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 8px;
    margin-top: 22px;
}

.hof-profile-summary-stats > div {
    padding: 11px;
    border: 1px solid #343434;
    background: rgba(0,0,0,.28);
}

.hof-profile-summary-stats span {
    display: block;
    color: #8f8f8f;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
}

.hof-profile-summary-stats strong {
    display: block;
    margin-top: 4px;
    color: #fff;
    font-size: 19px;
    font-weight: 600;
}

/* NOTE + SPEECH */

.hof-legacy-copy-grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 14px;
    margin-top: 16px;
}

.hof-note-card,
.hof-speech-card {
    border: 1px solid #bbb5ac;
    box-shadow: 0 6px 16px rgba(0,0,0,.10);
}

.hof-note-card {
    background:
        linear-gradient(180deg, #8a4936 0%, #6d382a 100%);
}

.hof-speech-card {
    background:
        linear-gradient(180deg, #747474 0%, #595959 100%);
}

.hof-copy-label {
    padding: 11px 14px;
    border-bottom: 1px solid rgba(255,255,255,.12);
    color: #f0c27a;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
}

.hof-copy-body {
    padding: 18px;
    color: #fff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.65;
}

/* TABS */

.hof-profile-data {
    margin-top: 16px;
}

.hof-profile-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
    padding: 5px;
    border: 1px solid #c2bdb4;
    border-bottom: 0;
    background: #dad6cf;
}

.hof-profile-tab {
    appearance: none;
    border: 1px solid transparent;
    background: transparent;
    color: #4f4f4f;
    padding: 10px 14px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .25px;
    cursor: pointer;
}

.hof-profile-tab:hover {
    background: #eeeae3;
    color: #111;
}

.hof-profile-tab.active {
    border-color: #0b4f82;
    background: #0b4f82;
    color: #fff;
}

.hof-profile-panel {
    display: none;
    padding: 18px;
    border: 1px solid #c2bdb4;
    background:
        linear-gradient(180deg, #f1eee8 0%, #e8e4dc 100%);
}

.hof-profile-panel.active {
    display: block;
}

/* CAREER */

.hof-career-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 10px;
}

.hof-career-stat {
    padding: 16px;
    border: 1px solid #cbc5bb;
    background: #f7f4ee;
}

.hof-career-stat span {
    display: block;
    color: #77716a;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
}

.hof-career-stat strong {
    display: block;
    margin-top: 6px;
    color: #9d6a2d;
    font-size: 27px;
    font-weight: 600;
}

/* TABLES */

.hof-table-wrap {
    overflow-x: auto;
}

.hof-data-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    background: #fff;
}

.hof-data-table th {
    padding: 10px;
    border: 1px solid #d0cbc2;
    background: #0b4f82;
    color: #fff;
    text-align: left;
    font-size: 10px;
    font-weight: 700;
}

.hof-data-table td {
    padding: 10px;
    border: 1px solid #d0cbc2;
    color: #222;
    font-size: 12px;
    font-weight: 400;
}

.hof-data-table tbody tr:nth-child(even) {
    background: #efefef;
}

/* AWARDS / RECORDS / FRANCHISE CARDS */

.hof-awards-grid,
.hof-records-grid,
.hof-franchise-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 10px;
}

.hof-award-card,
.hof-record-card,
.hof-franchise-card {
    display: block;
    padding: 13px;
    border: 1px solid #cbc5bb;
    background: #f8f5ef;
    color: #222 !important;
    text-decoration: none !important;
}

.hof-award-card:hover,
.hof-record-card:hover,
.hof-franchise-card:hover {
    border-color: #0b4f82;
}

.hof-award-card {
    display: flex;
    align-items: center;
    gap: 11px;
}

.hof-award-visual {
    position: relative;
    flex: 0 0 66px;
    width: 66px;
    height: 72px;
}

.hof-award-player {
    width: 58px;
    height: 68px;
    object-fit: cover;
    object-position: center top;
}

.hof-award-helmet {
    position: absolute;
    right: -4px;
    bottom: 0;
    width: 33px;
    height: 33px;
    object-fit: contain;
}

.hof-award-copy span,
.hof-award-copy small {
    display: block;
    color: #777;
    font-size: 9px;
    font-weight: 400;
}

.hof-award-copy strong {
    display: block;
    margin: 4px 0;
    color: #111;
    font-size: 12px;
    font-weight: 600;
}

.hof-record-card {
    text-align: center;
}

.hof-record-type,
.hof-record-category {
    display: block;
    color: #77716a;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
}

.hof-record-card strong {
    display: block;
    margin-top: 6px;
    color: #111;
    font-size: 13px;
    font-weight: 600;
}

.hof-record-number {
    margin: 9px 0 4px;
    color: #ff2a00;
    font-size: 30px;
    font-weight: 800;
    text-shadow:
        0 1px 0 #fff,
        0 3px 8px rgba(255,42,0,.24);
}

.hof-record-number small {
    color: #666;
    font-size: 11px;
}

.hof-franchise-card {
    text-align: center;
}

.hof-franchise-card img {
    width: 88px;
    height: 88px;
    object-fit: contain;
}

.hof-franchise-card strong {
    display: block;
    margin-top: 9px;
    color: #222;
    font-size: 13px;
    font-weight: 600;
}

.hof-franchise-card span {
    display: block;
    margin-top: 4px;
    color: #777;
    font-size: 10px;
}

.hof-empty {
    padding: 28px;
    border: 1px dashed #bdb7ae;
    background: #f6f2eb;
    color: #777;
    text-align: center;
}

/* FOOTER / FLOW */

body.hof-profile-page footer,
body.hof-profile-page #footer,
body.hof-profile-page .footer,
body.hof-profile-page #footer_container,
body.hof-profile-page .footer-container {
    position: relative !important;
    clear: both !important;
    float: none !important;
    width: 100% !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
}

/* RESPONSIVE */

@media (max-width: 850px) {
    .hof-profile-hero {
        grid-template-columns: 1fr;
    }

    .hof-profile-plaque-column {
        padding-bottom: 0;
    }

    .hof-profile-intro {
        align-items: center;
        padding: 28px;
        text-align: center;
    }

    .hof-profile-summary-stats,
    .hof-career-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .hof-legacy-copy-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .hof-profile-page-shell {
        width: calc(100% - 16px);
        padding: 10px;
    }

    .hof-profile-summary-stats,
    .hof-career-grid {
        grid-template-columns: 1fr;
    }

    .hof-profile-tabs {
        flex-direction: column;
    }

    .hof-profile-tab {
        width: 100%;
        text-align: left;
    }
}
