/* Fighter pages use the live site's HFC typography, chamfers and gold actions. */
:root{--font-display:'HFC Velocity Bold','HFC Display';--font-skinny:'HFC Display Skinny','HFC Velocity Bold','HFC Display';--font-body:var(--font-skinny);--font-mono:var(--font-display)}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--bg);scroll-padding-top:100px;font-kerning:normal}
body{background:var(--bg);color:var(--text);font:400 14px/1.8 var(--font-body);font-synthesis:none;letter-spacing:0;-webkit-font-smoothing:antialiased}
a{color:inherit}img{display:block;max-width:100%}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--focus);outline-offset:5px}
.ff-wrap{max-width:1320px;margin-inline:auto;padding-inline:clamp(20px,4vw,56px)}
.ff-skip{position:fixed;top:10px;left:16px;z-index:200;background:var(--gold);color:var(--on-gold);padding:10px 20px;transform:translateY(-200%)}.ff-skip:focus{transform:none}
.ff-display,.ff-heading,.ff-card-name,.ff-record strong,.ff-stats dd,.ff-rival strong{font-family:var(--font-display);font-style:normal;font-weight:400;font-synthesis:none;letter-spacing:0;line-height:1.1;text-transform:uppercase}
.ff-display{font-size:clamp(34px,5vw,68px);padding-right:.22em}
.ff-heading{font-size:clamp(23px,2.5vw,34px);padding-right:.18em}
.ff-kicker,.ff-label,.ff-back,.ff-tab,.ff-meta,.ff-preview{font-family:var(--font-skinny);font-weight:400;font-style:normal;letter-spacing:0;text-transform:uppercase}
.ff-kicker{font-size:12px;color:var(--text-2);display:flex;align-items:center;gap:12px}.ff-kicker::before{content:'';width:26px;height:3px;background:var(--fighter,var(--gold));transform:skewX(-28deg)}
.ff-preview{font-size:10px;line-height:1.6;border-bottom:1px solid var(--line);color:var(--text-muted);padding-block:9px}
.ff-hub-head{padding-block:48px 36px}.ff-hub-head h1{margin-top:18px}.ff-lede{color:var(--text-2);font-size:15px;max-width:76ch;margin-top:20px}
.ff-mini-note{font-size:11px;line-height:1.8;color:var(--text-muted);margin-top:12px;max-width:80ch}
.ff-jump{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.ff-tab{min-width:66px}.ff-tab.btn-secondary{font-family:var(--font-display);font-size:13px}
.ff-match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 22px;padding-bottom:48px}
.ff-match{min-width:0;display:grid;grid-template-rows:auto 1fr}.ff-match-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;margin-bottom:16px;padding-top:22px;border-top:1px solid var(--line)}.ff-match-head h2{font-size:27px}.ff-match-head p{color:var(--text-2);font-size:12px;line-height:1.6;max-width:48ch}
.ff-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;position:relative}
.ff-versus{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);z-index:3;display:grid;place-items:center;width:44px;height:38px;background:#111114;clip-path:var(--clip-s);font-family:var(--font-display);font-size:18px;color:var(--text-2);pointer-events:none}
.ff-card{position:relative;display:flex;flex-direction:column;min-width:0;text-decoration:none;background:#111114;border-top:1px solid #28282e;clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px);isolation:isolate;transition:transform .22s var(--ease),background .22s var(--ease)}
.ff-card::after{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid #29292f}
.ff-card-art{position:relative;isolation:isolate;display:grid;place-items:end center;min-width:0;height:clamp(210px,23vw,310px);padding-top:0;overflow:hidden}
.ff-card-art::before{content:'';position:absolute;inset:24% 8px 5%;z-index:-1;background:radial-gradient(ellipse at 50% 20%,color-mix(in srgb,var(--fighter) 62%,#14161e),color-mix(in srgb,var(--fighter) 17%,#090a0d) 80%);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}
.ff-card-art img{height:100%;width:100%;min-height:0;object-fit:cover;object-position:center top;transition:transform .35s var(--ease)}
.ff-card-copy{display:flex;flex-direction:column;position:relative;z-index:2;margin-top:-45px;padding:32px 16px 17px;background:linear-gradient(180deg,transparent,#0e0e11 40%);flex:1}
.ff-card-name{font-size:clamp(21px,2.15vw,29px);padding-right:.12em;overflow-wrap:normal}.ff-card-name span{display:block}.ff-card-name::after{content:'';display:block;width:36px;height:3px;margin-top:13px;background:var(--fighter);transform:skewX(-28deg);transition:width .25s var(--ease)}
.ff-identity{font-size:12px;line-height:1.6;color:var(--text-2);margin-block:12px 7px;min-height:38px}
.ff-story-link{font-family:var(--font-skinny);font-size:11px;display:inline-flex;align-items:center;gap:12px;min-height:36px;line-height:1.4}
.ff-icon{display:inline-flex;flex:none;width:16px;height:16px;align-items:center;justify-content:center}.ff-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6}.ff-icon--left{transform:rotate(180deg)}
.ff-card:focus-visible{outline:0;box-shadow:inset 0 0 0 3px var(--gold)}.ff-card:focus-visible::after{border:3px solid var(--gold)}
@media(hover:hover){.ff-card:hover{background:#19191e}.ff-card:hover .ff-card-art img{transform:scale(1.025)}.ff-card:hover .ff-card-name::after{width:70px}.ff-card:hover .ff-story-link{color:var(--gold)}}
.ff-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:600px}
.ff-action.btn-primary,.ff-action.btn-secondary{font-family:var(--font-display);font-size:14px;min-height:52px;padding:14px 18px;line-height:1.25}
.ff-actions>.btn-primary{grid-column:1/-1;font-size:19px;min-height:58px}
.ff-action .ff-icon{width:15px;height:15px}
.ff-hub-bottom{border-top:1px solid var(--line);padding-block:42px 60px;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}.ff-hub-bottom p{color:var(--text-2);margin-top:14px;font-size:13px;max-width:60ch}.ff-hub-bottom .ff-actions{min-width:280px;grid-template-columns:1fr}.ff-hub-bottom .ff-action{min-height:48px;font-size:15px}
.ff-back{display:inline-flex;align-items:center;gap:12px;font-size:11px;min-height:44px;text-decoration:none;margin-top:18px;color:var(--text-2)}.ff-back:hover{color:var(--text)}
.ff-profile-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(30px,5vw,72px);align-items:center;padding-block:16px 56px}
.ff-portrait{aspect-ratio:3/4;max-height:690px;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,color-mix(in srgb,var(--fighter) 13%,transparent),transparent 70%)}
.ff-portrait::before{content:'';position:absolute;inset:16% 0 0;z-index:-1;background:linear-gradient(130deg,color-mix(in srgb,var(--fighter) 38%,#13141a),color-mix(in srgb,var(--fighter) 12%,#0a0a0c) 55%,#0b0b0e);clip-path:polygon(24px 0,100% 0,100% calc(100% - 24px),calc(100% - 24px) 100%,0 100%,0 24px)}
.ff-portrait::after{content:'';position:absolute;bottom:0;left:0;right:24px;height:3px;background:var(--fighter)}
.ff-portrait img{width:100%;height:100%;object-fit:contain;position:relative;z-index:1}
.ff-portrait-fallback{position:absolute;inset:0;display:grid;place-content:center;font-family:var(--font-display);font-size:clamp(26px,4vw,45px);padding:30px;text-align:center;background:var(--surface)}
.ff-profile-summary{min-width:0}.ff-profile-summary h1{margin-block:18px 12px;font-size:clamp(42px,5vw,78px)}.ff-profile-summary h1 span{display:block}.ff-profile-identity{font-family:var(--font-display);font-size:clamp(17px,1.6vw,23px);color:var(--text-2);line-height:1.4}.ff-hook{font-size:14px;line-height:1.85;color:var(--text-2);margin-block:25px;max-width:56ch}
.ff-record{border-block:1px solid var(--line);margin-top:26px;padding-block:20px;display:flex;gap:30px}.ff-record>div+div{border-left:1px solid var(--line);padding-left:30px}.ff-record strong{font-size:35px;display:block;line-height:1.2}.ff-record span{display:block;font-size:10px;color:var(--text-muted);margin-top:8px}
.ff-intro-link{margin-top:20px}.ff-intro-link.btn-secondary{font-size:13px;min-height:46px;padding:10px 18px}.ff-profile-summary>.ff-mini-note{font-size:10px;max-width:60ch}
.ff-section{border-top:1px solid var(--line);padding-block:42px}.ff-section-head{margin-bottom:26px}.ff-section-head p{color:var(--text-muted);font-size:11px;line-height:1.8;margin-top:14px;max-width:90ch}
.ff-story-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(30px,5vw,72px)}.ff-prose{font-size:13px;line-height:1.95;color:var(--text-2);max-width:78ch}.ff-prose p+p{margin-top:22px}.ff-cause{align-self:start;border-left:3px solid var(--fighter);padding:4px 0 4px 26px}.ff-label{font-size:11px;color:var(--text-muted)}.ff-cause p{font-family:var(--font-display);font-size:clamp(19px,1.8vw,25px);line-height:1.5;margin-top:16px}.ff-catchphrase{margin-top:28px;border-top:1px solid var(--line);padding-top:20px}.ff-catchphrase p{color:var(--text)}
.ff-playbook{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.ff-playbook>div{border-left:2px solid var(--fighter);padding-left:20px}.ff-playbook dt{font-size:11px;color:var(--text-muted);margin-bottom:14px}.ff-playbook dd{color:var(--text-2);font-size:13px;line-height:1.9}.ff-playbook dd strong{display:block;font-family:var(--font-display);color:var(--text);font-size:19px;font-weight:400;line-height:1.35;margin-bottom:14px}
.ff-competition{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}.ff-competition>div,.ff-rival>div,.ff-stats>div{min-width:0}.ff-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px}.ff-stats div{padding-block:18px;border-bottom:1px solid var(--line)}.ff-stats dt{font-size:10px;color:var(--text-muted)}.ff-stats dd{font-size:21px;color:var(--text);margin-top:10px;line-height:1.4}
.ff-rival{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:22px;text-decoration:none;margin-top:24px;background:linear-gradient(125deg,color-mix(in srgb,var(--rival) 14%,#101013),#101013 70%);border-top:1px solid var(--line);border-bottom:2px solid var(--rival);padding:16px 22px 0 12px;clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px);transition:background .2s var(--ease)}.ff-rival:hover{background:color-mix(in srgb,var(--rival) 12%,#151518)}.ff-rival img{width:130px;aspect-ratio:3/4;object-fit:contain}.ff-rival strong{font-size:25px}.ff-rival p{color:var(--text-2);font-size:11px;line-height:1.6;margin-block:12px}.ff-rival:focus-visible{outline-offset:-5px}
.ff-news{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ff-news li{min-width:0}.ff-news a{position:relative;display:flex;flex-direction:column;align-items:start;padding:25px;border:1px solid var(--line);text-decoration:none;background:linear-gradient(145deg,#16161a,#0d0d10);height:100%;clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px)}.ff-news a:hover{border-color:var(--text-muted)}.ff-news a:focus-visible{outline-offset:-5px}.ff-news h3{font-family:var(--font-display);font-weight:400;font-size:22px;line-height:1.3;margin-bottom:16px;overflow-wrap:anywhere}.ff-news .ff-story-link{margin-top:auto}.ff-news .ff-meta{color:var(--text-muted);font-size:10px;margin-bottom:16px}
.ff-fans{position:relative;padding:36px;border-top:2px solid var(--fighter);background:linear-gradient(120deg,color-mix(in srgb,var(--fighter) 10%,#111114),#101013 70%);margin-block:0 44px;clip-path:polygon(20px 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%,0 20px)}.ff-fans>p{color:var(--text-2);margin-block:18px 24px;max-width:88ch;font-size:13px}.ff-fans .ff-actions{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}.ff-fans .ff-actions>.btn-primary{grid-column:auto;font-size:16px;min-height:54px}.ff-fans p.ff-mini-note{font-size:10px;margin-bottom:0;color:var(--text-muted)}
.ff-next{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-block:24px 50px;border-top:1px solid var(--line)}.ff-next a{display:flex;flex-direction:column;gap:10px;text-decoration:none;min-height:44px}.ff-next a:last-child{text-align:right;align-items:end}.ff-next a>span{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-size:20px;line-height:1.3}.ff-next small{font-size:10px;color:var(--text-muted)}.ff-next a:hover{color:var(--gold)}
.ff-footer{border-top:1px solid var(--line);padding-block:28px;font-size:10px;color:var(--text-muted)}.ff-footer-inner{display:flex;flex-wrap:wrap;gap:20px 30px;justify-content:space-between}.ff-footer nav{display:flex;gap:24px;flex-wrap:wrap}.ff-footer a:hover{color:var(--text)}
.ff-video-box{margin-top:24px;background:#000;border:1px solid var(--line-strong)}.ff-video-box video{display:block;width:100%;max-height:650px;object-fit:contain}.ff-video-close{width:100%;margin:0}.ff-video-error{padding:24px;color:var(--text-2);font-size:12px}
@media(max-width:1050px){.ff-profile-hero{gap:30px}.ff-profile-summary h1{font-size:clamp(35px,5.4vw,60px)}.ff-profile-summary .ff-action{font-size:12px;padding-inline:12px}.ff-profile-summary .ff-actions>.btn-primary{font-size:17px}.ff-rival{grid-template-columns:100px minmax(0,1fr);gap:16px;padding-right:16px}.ff-rival img{width:100px}.ff-rival strong{font-size:22px}.ff-competition{gap:30px}}
@media(max-width:760px){.ff-match-grid{grid-template-columns:1fr;gap:16px}.ff-card-art{height:clamp(215px,48vw,340px)}.ff-card-name{font-size:clamp(23px,4.5vw,33px)}.ff-card-name span{display:inline}.ff-card-name span+span::before{content:' '}.ff-identity{min-height:0}.ff-profile-hero{grid-template-columns:1fr;gap:28px;padding-bottom:36px}.ff-portrait{width:100%;max-height:560px;aspect-ratio:4/5}.ff-profile-summary h1{font-size:clamp(38px,9vw,64px)}.ff-profile-summary h1 span{display:inline}.ff-profile-summary h1 span+span::before{content:' '}.ff-profile-summary .ff-action{font-size:14px}.ff-profile-summary .ff-actions>.btn-primary{font-size:18px}.ff-story-grid{grid-template-columns:1fr;gap:30px}.ff-prose{max-width:none}.ff-cause{max-width:650px}.ff-playbook{grid-template-columns:1fr;gap:26px}.ff-competition{grid-template-columns:1fr;gap:32px}.ff-rival{grid-template-columns:110px minmax(0,1fr)}.ff-rival img{width:110px}.ff-rival strong{font-size:27px}.ff-hub-bottom{grid-template-columns:1fr}.ff-hub-bottom .ff-actions{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.ff-hub-bottom .ff-actions>.btn-primary{grid-column:auto}.ff-fans .ff-actions{grid-template-columns:1fr}.ff-fans .ff-action{font-size:15px}.ff-news h3{font-size:20px}}
@media(max-width:480px){body{font-size:13px}.ff-wrap{padding-inline:20px}.ff-preview{font-size:9px}.ff-hub-head{padding-block:30px 26px}.ff-display{font-size:34px}.ff-lede{font-size:13px;line-height:1.8}.ff-match-head{gap:14px}.ff-match-head h2{font-size:24px}.ff-match-head p{font-size:11px}.ff-pair{gap:10px}.ff-card-art{height:clamp(205px,57vw,270px)}.ff-card-copy{padding:28px 12px 13px}.ff-card-name{font-size:clamp(19px,5vw,24px)}.ff-card-name span{display:block}.ff-card-name span+span::before{content:none}.ff-card-name::after{margin-top:10px}.ff-identity{font-size:10px;min-height:32px;margin-top:10px}.ff-story-link{font-size:10px;gap:8px}.ff-versus{font-size:14px;width:34px;height:30px;top:39%}.ff-profile-hero{padding-top:10px;gap:24px}.ff-portrait{aspect-ratio:3/4;max-height:440px}.ff-profile-summary h1{font-size:clamp(34px,9.5vw,46px)}.ff-hook{font-size:13px;margin-block:20px}.ff-profile-summary .ff-actions{grid-template-columns:1fr}.ff-profile-summary .ff-action{font-size:15px;min-height:48px}.ff-profile-summary .ff-actions>.btn-primary{font-size:18px;min-height:54px}.ff-record{margin-top:22px;padding-block:18px}.ff-record strong{font-size:32px}.ff-section{padding-block:32px}.ff-heading{font-size:24px}.ff-section-head p{font-size:10px}.ff-prose{font-size:12px;line-height:2}.ff-cause{padding-left:20px}.ff-cause p{font-size:20px}.ff-playbook dd{font-size:12px}.ff-stats dd{font-size:19px}.ff-rival{grid-template-columns:90px minmax(0,1fr);padding:12px 12px 0;gap:14px}.ff-rival img{width:90px}.ff-rival strong{font-size:21px}.ff-rival p{font-size:10px}.ff-rival .ff-story-link{flex-wrap:wrap}.ff-news{grid-template-columns:1fr}.ff-news a{padding:22px}.ff-fans{padding:28px 20px}.ff-fans>p{font-size:12px}.ff-next a>span{font-size:16px;gap:8px}.ff-next .ff-icon{width:12px}.ff-footer-inner{display:block}.ff-footer nav{margin-top:18px;gap:16px 22px}.ff-hub-bottom .ff-actions{grid-template-columns:1fr}}
@media(max-width:359px){.ff-card-name{font-size:18px}.ff-card-copy{padding-inline:9px}.ff-stats dd{font-size:17px}.ff-rival strong{font-size:18px}.ff-next a>span{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.ff-card:hover,.ff-card:hover .ff-card-art img{transform:none}}
@media(forced-colors:active){.ff-card,.ff-rival,.ff-news a{border:1px solid ButtonText;clip-path:none}.ff-card:focus-visible{outline:2px solid Highlight}.ff-portrait{border:1px solid CanvasText}}
/* Keep the inner-page ticket action identical to the live homepage action. */
#gnav .gnav-cta,#gsheet .gsheet-cta{background:var(--gold-fill);color:var(--on-gold)}
#gnav .gnav-cta::before,#gsheet .gsheet-cta::before{display:none}
#gnav .gnav-cta:focus-visible,#gsheet .gsheet-cta:focus-visible{outline-color:var(--focus-on-gold)}
#gnav .gnav-links a,#gnav .gnav-contact,#gsheet .gsheet-link{-webkit-text-stroke:0}
@media(hover:hover){#gnav .gnav-cta:hover,#gsheet .gsheet-cta:hover{background:var(--gold-hi)}}

/* Always-visible story action; the entire fighter card remains clickable. */
.ff-card .ff-story-cta{--line-strong:#62636b;display:flex;width:100%;min-height:44px;margin-top:auto;padding:10px 9px;gap:9px;font-family:var(--font-display);font-size:clamp(10px,1.15vw,13px);line-height:1.25;background:rgba(255,255,255,.045);color:var(--text);text-transform:uppercase}
.ff-card .ff-story-cta .ff-icon{width:14px;height:14px}
.ff-card:is(:hover,:focus-visible) .ff-story-cta{background:#fff;color:#0a0a0b}

.ff-card-copy>.ff-identity{margin-bottom:19px}

.ff-hub-head .ff-kicker::before{display:none}

/* Centre Adrius and match the other fighters’ portrait scale. */
.ff-card-art img[src="/fighters/avatars/adrius.png"]{object-position:76% top;transform:translateX(-14%) scale(1.45);transform-origin:76% 8%}
@media(hover:hover){.ff-card:hover .ff-card-art img[src="/fighters/avatars/adrius.png"]{transform:translateX(-14%) scale(1.49)}}
