/* Public profiles only. Shared IFR typography, navigation and footer stay in the theme. */
.flp-page{--flp-primary:#191c27;--flp-secondary:#ffdd6d;--flp-on-primary:#fff;--flp-on-secondary:#000;--flp-line:#dfe1e6;--flp-muted:#5f6572;background:var(--canvas,#f5f5f3);color:#191c27;padding-bottom:80px}
.flp-page [hidden]{display:none!important}
.flp-page :is(a,input){-webkit-tap-highlight-color:transparent}
.flp-page :is(a,input):focus-visible{outline:3px solid #3683af;outline-offset:4px}
.flp-shell{width:min(1200px,calc(100% - 80px));margin:auto}
.flp-page :is(h1,h2,h3,p,dl,dd){margin:0}
.flp-page :is(h1,h2,h3){font-weight:900;line-height:1.16;letter-spacing:-.035em;overflow-wrap:anywhere}
.flp-page h2{font-size:30px}.flp-page h3{font-size:20px}
.flp-page a{color:inherit;text-decoration:none}
.flp-page a:hover h3,.flp-page .flp-text-link:hover,.flp-club:hover span{text-decoration:underline;text-underline-offset:4px}
.flp-arrow{width:19px;height:19px;flex-shrink:0;vertical-align:middle}
.flp-eyebrow{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.flp-muted{color:var(--flp-muted);font-size:13px;line-height:1.7}
.flp-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:27px 0;font-size:12px;color:var(--flp-muted)}
.flp-breadcrumb strong{color:#191c27}.flp-breadcrumb a:hover{text-decoration:underline}
.flp-hero{background:var(--flp-header,var(--flp-primary));color:var(--flp-on-header,var(--flp-on-primary));padding:44px 48px;display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:40px;min-height:300px;border-bottom:8px solid var(--flp-secondary)}
.flp-hero .flp-eyebrow{margin-bottom:22px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}
.flp-hero .flp-eyebrow>span{border-left:1px solid currentColor;padding-left:15px;opacity:1}
.flp-hero h1{font-size:clamp(38px,5vw,66px);max-width:780px;line-height:1.08}
.flp-hero-description{margin-top:23px!important;font-size:15px;line-height:1.7;max-width:500px}
.flp-hero-logo{width:180px;height:180px;background:#fff;border:2px solid var(--flp-secondary);border-radius:50%;display:grid;place-items:center;overflow:hidden}.flp-hero-logo>.ifr-team-crest{width:100%;height:100%;border:0}
.flp-hero-logo img{width:140px;height:140px;object-fit:contain}
.flp-hero-shirt{background:var(--flp-secondary);padding:16px 20px;width:190px;display:grid;place-items:center}
.flp-shirt{width:140px;height:160px;max-width:100%;display:block}
.flp-team-link{display:inline-flex;align-items:center;gap:10px;margin-top:24px;border-bottom:1px solid currentColor;padding-bottom:6px;font-size:14px;font-weight:800;max-width:100%}
.flp-team-link>.ifr-team-crest{width:30px;height:30px}
.flp-player-facts{display:flex;gap:26px;flex-wrap:wrap;margin-top:22px;font-size:12px}.flp-player-facts strong{font-size:20px;margin-right:5px}
.flp-season-strip{display:grid;grid-template-columns:1.5fr repeat(4,minmax(0,1fr));background:#191c27;color:white;padding:26px 32px}
.flp-season-intro{display:flex;flex-direction:column;justify-content:center;gap:6px}.flp-season-intro .flp-eyebrow{color:#ffdd6d;font-size:10px}.flp-season-intro>span{font-size:12px;color:#cdd0d7}
.flp-metric{display:flex;flex-direction:column;gap:7px;border-left:1px solid #ffffff25;padding-left:26px;min-width:0}.flp-metric strong{font-size:32px;font-weight:900;line-height:1;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.flp-metric span{font-size:11px;color:#cdd0d7}
.flp-player-metrics{grid-template-columns:1.3fr repeat(5,minmax(0,1fr))}.flp-player-metrics .flp-metric{padding-left:20px}
.flp-tabs{display:flex;gap:32px;border-bottom:1px solid #d6d8df;min-height:70px;margin-bottom:36px;overflow-x:auto}
.flp-tabs>a,.flp-tabs>span{display:inline-flex;align-items:center;gap:9px;border-bottom:3px solid transparent;padding:19px 0 16px;font-size:13px;font-weight:800;white-space:nowrap}
.flp-tabs [aria-current=page]{border-color:#191c27}.flp-count{font-size:10px;padding:1px 7px;background:#e6e7eb;border-radius:2px}.flp-tabs [aria-current=page] .flp-count{background:var(--flp-primary);color:var(--flp-on-primary)}
.flp-content{scroll-margin-top:140px}.flp-overview-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:26px}.flp-panel{background:#fff;border:1px solid var(--flp-line)}
.flp-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}.flp-section-heading .flp-eyebrow{color:var(--flp-muted);margin-bottom:8px}
.flp-text-link{display:inline-flex;align-items:center;gap:9px;border-bottom:1px solid currentColor;padding-bottom:4px;font-size:12px;font-weight:800;flex-shrink:0}
.flp-about{padding:28px}.flp-about .flp-eyebrow{color:var(--flp-muted);margin-bottom:15px}.flp-about h2{font-size:24px;margin-bottom:14px}.flp-about>p:not(.flp-eyebrow){font-size:14px;line-height:1.8;color:var(--flp-muted);overflow-wrap:anywhere}
.flp-colours{display:flex;align-items:center;gap:8px;margin-top:25px}.flp-colours>span{width:20px;height:20px;border:1px solid #191c2740;background:var(--flp-primary)}.flp-colours>span+span{background:var(--flp-secondary)}.flp-colours strong{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.flp-match{background:#fff;border:1px solid var(--flp-line);min-width:0}.flp-match-meta{display:flex;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--flp-line);font-size:11px}.flp-match-meta strong{font-weight:800}
.flp-match-teams{display:grid;grid-template-columns:minmax(0,1fr) 95px minmax(0,1fr);align-items:center;padding:26px 18px;gap:10px;text-align:center}.flp-club{display:grid;justify-items:center;gap:12px;font-size:14px;font-weight:800;line-height:1.35;overflow-wrap:anywhere}.flp-club>.ifr-team-crest{width:58px;height:58px}
.flp-score{display:grid;gap:7px}.flp-score strong{font-size:28px;font-weight:900;letter-spacing:-.035em;line-height:1.15;font-variant-numeric:tabular-nums}.flp-score span{font-size:10px;color:var(--flp-muted)}
.flp-match-foot{display:flex;justify-content:space-between;gap:12px;padding:12px 20px;border-top:1px solid var(--flp-line);font-size:11px;color:var(--flp-muted)}.flp-fixtures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.flp-fixture-note{margin-top:20px!important}
.flp-squad-section,.flp-next-section{margin-top:36px}.flp-player-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.flp-player-card,.flp-team-card{background:#fff;border:1px solid var(--flp-line);min-width:0;display:block;transition:transform .15s,border-color .15s}.flp-player-card:hover,.flp-team-card:hover{border-color:#191c27;transform:translateY(-2px)}
.flp-card-art{height:164px;background:#eceeec;position:relative;display:grid;place-items:center;border-bottom:4px solid var(--flp-secondary)}.flp-card-art>.flp-shirt{width:108px;height:130px;position:relative}.flp-card-art>span{position:absolute;left:16px;top:9px;font-size:32px;font-weight:900;color:#7a8089;opacity:.45}
.flp-card-copy{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px;min-width:0}.flp-card-copy h3{font-size:18px;line-height:1.3;letter-spacing:-.02em}.flp-card-copy p{font-size:11px;color:var(--flp-muted);margin-top:7px}.flp-card-copy>.flp-arrow{width:17px;height:17px}
.flp-squad-tools{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:25px}.flp-squad-tools p{font-size:13px;color:var(--flp-muted)}.flp-squad-tools strong{color:#191c27}.flp-search{width:315px;flex-shrink:0}.flp-search input{width:100%;border:1px solid var(--flp-line);background:#fff;border-radius:0;padding:13px 15px;font-size:13px;min-height:46px}
.flp-message{padding:24px;font-size:14px;line-height:1.7}.flp-empty{padding:45px 30px;text-align:center}.flp-empty h1{font-size:clamp(30px,4vw,48px);margin:16px 0}.flp-empty p{color:var(--flp-muted);font-size:14px;max-width:600px;margin:14px auto}.flp-empty .button{margin-top:15px;color:#191c27}
.flp-player-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:28px}.flp-details{padding:28px}.flp-details h2{font-size:24px;margin-bottom:20px}.flp-details dl>div{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid var(--flp-line);font-size:13px}.flp-details dl>div:last-child{border-bottom:0}.flp-details dt{color:var(--flp-muted)}.flp-details dd{font-weight:800;text-align:right;overflow-wrap:anywhere}
.flp-team-back{display:flex;gap:16px;align-items:center;background:var(--flp-secondary);color:var(--flp-on-secondary)!important;padding:22px;margin-top:20px}.flp-team-back>.ifr-team-crest{width:46px;height:46px}.flp-team-back small{display:block;font-size:9px;font-weight:800;letter-spacing:.07em;margin-bottom:3px}.flp-team-back strong{font-size:14px;line-height:1.3;display:block}.flp-team-back .flp-arrow{margin-left:auto}
.flp-history{padding:28px}.flp-history .flp-eyebrow{color:var(--flp-muted);margin-bottom:12px}.flp-history>p:not(.flp-eyebrow){font-size:14px;color:var(--flp-muted);line-height:1.8;margin-top:15px}
.flp-directory-heading{padding:35px 0 40px}.flp-directory-heading .flp-eyebrow{color:var(--flp-muted);margin-bottom:15px}.flp-directory-heading h1{font-size:clamp(38px,5vw,64px)}.flp-directory-heading>p:last-child{color:var(--flp-muted);font-size:16px;margin-top:20px;max-width:600px}
.flp-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.flp-team-card{overflow:hidden}.flp-team-art{height:108px;position:relative;background:var(--flp-primary);border-top:5px solid var(--flp-secondary)}
.flp-team-season{position:absolute;right:22px;top:18px;color:var(--flp-on-primary);font-size:11px;font-weight:800;letter-spacing:.08em}
.flp-directory-crest{position:absolute;left:24px;bottom:-37px;padding:5px;background:#fff;border-radius:50%}
.flp-team-card-body{padding:55px 24px 0}.flp-team-card h2{font-size:24px;line-height:1.25;letter-spacing:-.025em}.flp-team-card-body>p{font-size:12px;color:var(--flp-muted);margin-top:10px;margin-bottom:23px}
.flp-team-card-foot{display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-top:1px solid var(--flp-line);font-size:12px;font-weight:800}.flp-team-card-foot .flp-arrow{width:17px;height:17px}.flp-team-card:hover .flp-team-card-foot{color:#3e4b65}
@media(max-width:1000px){
 .flp-shell{width:calc(100% - 48px)}.flp-hero{padding:36px;gap:24px;grid-template-columns:minmax(0,1fr) 150px}.flp-hero-logo{width:150px;height:150px}.flp-hero-logo img{width:115px;height:115px}.flp-hero-shirt{width:150px;padding:15px}.flp-season-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 0}.flp-season-intro{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between}.flp-metric:nth-child(2){border-left:0;padding-left:0}.flp-player-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.flp-player-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.flp-overview-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.flp-player-layout{grid-template-columns:280px minmax(0,1fr)}.flp-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 .flp-page{padding-bottom:48px}.flp-shell{width:calc(100% - 36px)}.flp-breadcrumb{padding:22px 0;font-size:10px;gap:7px}.flp-hero{padding:27px 22px;grid-template-columns:minmax(0,1fr) 82px;gap:18px;min-height:245px;border-bottom-width:6px}.flp-hero h1{font-size:clamp(26px,7vw,40px)}.flp-hero .flp-eyebrow{font-size:8px;gap:7px;margin-bottom:16px}.flp-hero .flp-eyebrow>span{padding-left:7px}.flp-hero-description{font-size:12px;line-height:1.7;margin-top:18px!important}.flp-hero-logo{width:82px;height:82px;border-width:2px}.flp-hero-logo img{width:62px;height:62px}.flp-hero-shirt{width:82px;padding:6px;height:124px}.flp-team-link{font-size:11px;gap:6px;margin-top:20px}.flp-team-link>.ifr-team-crest{width:24px;height:24px}.flp-team-link .flp-arrow{width:13px;height:13px}.flp-player-facts{font-size:10px;gap:8px 15px;margin-top:18px}.flp-player-facts strong{font-size:16px;margin-right:3px}.flp-season-strip{padding:20px 16px;gap:21px 0}.flp-season-intro .flp-eyebrow{font-size:8px}.flp-season-intro>span{font-size:10px}.flp-metric{padding-left:12px;gap:9px}.flp-metric strong{font-size:27px}.flp-metric span{font-size:9px}.flp-player-metrics .flp-metric{padding-left:8px}.flp-player-metrics .flp-metric:nth-child(2){padding-left:0}.flp-player-metrics .flp-metric span{font-size:8px}.flp-tabs{gap:24px;justify-content:space-between;margin-bottom:28px;min-height:62px}.flp-tabs>a,.flp-tabs>span{font-size:11px;gap:7px;padding:17px 0 14px}.flp-count{font-size:9px;padding:1px 6px}.flp-tabs .flp-arrow{width:14px;height:14px}.flp-overview-grid,.flp-player-layout,.flp-fixtures{grid-template-columns:1fr;gap:24px}.flp-page h2{font-size:26px}.flp-section-heading{gap:12px;margin-bottom:19px}.flp-section-heading .flp-eyebrow{font-size:9px}.flp-text-link{font-size:10px;gap:6px}.flp-text-link .flp-arrow{width:15px;height:15px}.flp-about{padding:24px}.flp-about h2{font-size:23px}.flp-about>p:not(.flp-eyebrow){font-size:13px}.flp-match-meta{padding:14px 15px;font-size:10px;gap:8px}.flp-match-teams{grid-template-columns:minmax(0,1fr) 76px minmax(0,1fr);padding:23px 14px;gap:6px}.flp-club{font-size:12px;gap:10px}.flp-club>.ifr-team-crest{width:44px;height:44px}.flp-score strong{font-size:24px}.flp-score span{font-size:9px}.flp-match-foot{padding:12px 15px;font-size:10px;flex-wrap:wrap}.flp-player-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.flp-card-art{height:137px}.flp-card-art>.flp-shirt{width:88px;height:110px}.flp-card-art>span{font-size:27px;left:12px;top:9px}.flp-card-copy{padding:16px 12px;gap:7px}.flp-card-copy h3{font-size:15px}.flp-card-copy p{font-size:10px}.flp-card-copy>.flp-arrow{width:13px;height:13px}.flp-squad-tools{flex-direction:column;align-items:stretch;gap:15px}.flp-squad-tools p{font-size:12px}.flp-search{width:100%}.flp-search input{font-size:16px}.flp-details,.flp-history{padding:24px}.flp-details h2{font-size:23px}.flp-details dl>div{font-size:12px;padding:12px 0}.flp-team-back{padding:20px}.flp-history>p:not(.flp-eyebrow){font-size:13px}.flp-directory-heading{padding:16px 0 30px}.flp-directory-heading h1{font-size:40px}.flp-directory-heading>p:last-child{font-size:14px}.flp-team-grid{gap:20px;grid-template-columns:1fr}.flp-team-art{height:90px}.flp-directory-crest{left:20px;bottom:-33px}.flp-directory-crest>.ifr-team-crest{width:82px;height:82px}.flp-team-card-body{padding:48px 20px 0}.flp-team-card h2{font-size:24px}.flp-team-card-body>p{margin-bottom:19px}.flp-empty{padding:35px 20px}
}
@media(prefers-reduced-motion:reduce){.flp-player-card,.flp-team-card{transition:none}.flp-player-card:hover,.flp-team-card:hover{transform:none}}

/* Team sections switch in place, with one compact row on phones. */
.flp-team-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;overflow:visible}
.flp-team-tabs>a{justify-content:center;gap:8px;min-width:0;padding:20px 8px 17px}
.flp-tab-icon{width:20px;height:20px;flex:none}.flp-label-short{display:none}
.flp-team-tabs a[aria-current=page]{background:#191c2707}
.flp-team-tabs a:focus-visible{outline-offset:-4px}
[data-flp-panel].is-entering{animation:flp-panel-enter .18s ease-out}
@keyframes flp-panel-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:700px){
 .flp-hero:not(.flp-hero-player){grid-template-columns:72px minmax(0,1fr);gap:10px 16px;min-height:0;padding:24px 20px 22px;border-bottom-width:3px}
 .flp-hero:not(.flp-hero-player) .flp-hero-copy{display:contents}
 .flp-hero:not(.flp-hero-player) .flp-eyebrow{grid-column:2;grid-row:1;align-self:end;font-size:9px;letter-spacing:.055em;margin:0;gap:6px}
 .flp-hero:not(.flp-hero-player) h1{grid-column:2;grid-row:2;align-self:start;font-size:clamp(24px,6.5vw,34px);line-height:1.12}
 .flp-hero:not(.flp-hero-player) .flp-hero-logo{grid-column:1;grid-row:1/3;width:72px;height:72px;border-width:2px}
 .flp-hero:not(.flp-hero-player) .flp-hero-logo img{width:100%;height:100%}
 .flp-hero:not(.flp-hero-player) .flp-hero-description{grid-column:1/-1;grid-row:3;margin:5px 0 0!important;font-size:12px;line-height:1.65;opacity:.85}
 .flp-season-strip:not(.flp-player-metrics){padding:18px 16px;gap:17px 0}
 .flp-season-strip:not(.flp-player-metrics) .flp-eyebrow{font-size:9px}
 .flp-season-strip:not(.flp-player-metrics) .flp-metric{padding-left:10px;gap:7px}
 .flp-season-strip:not(.flp-player-metrics) .flp-metric:nth-child(2){padding-left:0}
 .flp-season-strip:not(.flp-player-metrics) .flp-metric strong{font-size:25px}
 .flp-team-tabs{min-height:68px;margin-bottom:26px}
 .flp-team-tabs>a{flex-direction:column;gap:6px;padding:14px 2px 12px;min-height:68px;font-size:10px;line-height:1.25}
 .flp-team-tabs .flp-count,.flp-team-tabs .flp-label-wide{display:none}
 .flp-team-tabs .flp-label-short{display:inline}
 .flp-team-tabs .flp-tab-icon{width:19px;height:19px}
}
@media(prefers-reduced-motion:reduce){[data-flp-panel].is-entering{animation:none}}
