/* First-team page: approved navy, subdued artwork and four-pixel corners. */
.ft-page{background:#f7f7f5;color:#0e1626}
.ft-hero{background:#071428;color:#fff;padding:42px 0 30px;background-image:linear-gradient(#071428d1,#071428d1),url('../img/results-background.webp');background-size:cover;background-position:center 62%}
.ft-hero .crumbs{margin:0 0 26px;color:#d9e0eb;font-size:.8rem}
.ft-hero__row{display:flex;align-items:center;justify-content:space-between;gap:24px}
.ft-hero h1{font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.3;margin:0;font-weight:850}
.ft-hero__row p{margin:12px 0 0;color:#d9e0eb}
.ft-hero__english{font-family:var(--font-num);font-size:clamp(2rem,5vw,5rem);line-height:1;color:#e3cd8f;opacity:.65;letter-spacing:.01em}
.ft-jump{display:flex;gap:28px;margin-top:30px;border-top:1px solid #ffffff25;padding-top:16px}
.ft-jump a{min-height:44px;display:flex;align-items:center;text-decoration:none;font-size:.9rem}
.ft-jump a:hover{color:#e3cd8f}
.ft-content{padding-top:56px;padding-bottom:72px}
.ft-coach{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr);gap:48px;background:#071428;color:white;border-radius:4px;padding:36px 48px 0;overflow:hidden;scroll-margin-top:130px;background-image:linear-gradient(#071428d1,#071428d1),url('../img/results-background.webp');background-size:cover}
.ft-coach__portrait{align-self:end;max-height:480px;display:flex;align-items:flex-end;justify-content:center}
.ft-coach__portrait img{display:block;max-width:100%;height:480px;width:auto;object-fit:contain;object-position:bottom}
.ft-coach__body{align-self:center;padding:12px 0 40px;max-width:640px}
.ft-coach__role{color:#e3cd8f;font-size:.85rem;margin:0 0 10px}
.ft-coach h2{font-size:clamp(2rem,3.8vw,3.5rem);line-height:1.4;margin:0;font-weight:850}
.ft-coach__english{font-family:var(--font-num);font-size:1.2rem;letter-spacing:.12em;color:#e3cd8f;text-align:right;margin:4px 0 24px}
.ft-coach__bio{font-size:1rem;line-height:2;color:#e0e7f0;margin:0;max-width:54ch}
.ft-coach__facts{display:flex;flex-wrap:wrap;gap:24px 40px;border-top:1px solid #ffffff25;padding-top:20px;margin:24px 0 16px}
.ft-coach__facts dt{font-size:.75rem;color:#b6c4d6;margin-bottom:6px}
.ft-coach__facts dd{margin:0;font-size:.85rem;font-weight:700}
.ft-coach__source{font-size:.7rem;color:#b6c4d6;text-underline-offset:4px}
.ft-squad{padding-top:58px;scroll-margin-top:120px}
.ft-squad__heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:70px}
.ft-squad__heading h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:0}
.ft-squad__heading span{font-family:var(--font-num);font-size:.95rem;color:#59616e;letter-spacing:.12em}
.ft-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:80px 24px}
.ft-player{position:relative;min-width:0;aspect-ratio:3/4;border-radius:4px;background:#071428;background-image:linear-gradient(#071428d1,#071428d1),url('../img/results-background.webp');background-size:cover;background-position:center 62%;isolation:isolate}
.ft-player__photo{position:absolute;inset:auto 0 0;width:100%;height:calc(100% + 48px);object-fit:cover;object-position:top center;border-radius:0 0 4px 4px;transform-origin:bottom;transition:transform 220ms cubic-bezier(.23,1,.32,1)}
.ft-player::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(0deg,#071428 0%,#071428e8 12%,#07142855 35%,transparent 60%);z-index:1;pointer-events:none}
.ft-player__name{position:absolute;bottom:20px;inset-inline:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:2;color:white}
.ft-player h3{font-size:clamp(.9rem,1.35vw,1.3rem);line-height:1.6;margin:0;font-weight:800}
.ft-player__name img{width:28px;height:36px;object-fit:contain;flex-shrink:0}
.ft-page a:focus-visible{outline:2px solid #c9a44c;outline-offset:5px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.ft-player:hover .ft-player__photo{transform:scale(1.012)}}
@media(max-width:1000px){.ft-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ft-coach{gap:24px;padding-inline:28px}.ft-coach__portrait img{height:420px}}
@media(max-width:700px){.ft-hero{padding-top:28px}.ft-hero__english{font-size:1.45rem}.ft-hero__row{align-items:flex-start}.ft-hero__row p{font-size:.8rem}.ft-content{padding-top:28px;padding-bottom:44px}.ft-coach{grid-template-columns:1fr;padding:24px 22px 0;gap:12px}.ft-coach__body{grid-row:1;padding:0}.ft-coach__portrait{grid-row:2;max-height:300px}.ft-coach__portrait img{height:300px}.ft-coach__bio{font-size:.9rem}.ft-coach__english{margin-bottom:16px}.ft-coach__facts{gap:18px;margin-top:18px}.ft-coach__source{display:inline-block;margin-bottom:8px}.ft-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:60px 16px}.ft-squad{padding-top:40px}.ft-squad__heading{margin-bottom:60px}.ft-player__photo{height:calc(100% + 38px)}.ft-player__name{inset-inline:10px;bottom:12px;gap:6px}.ft-player__name img{width:21px;height:28px}.ft-player h3{font-size:.88rem}.ft-squad__heading span{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.ft-player__photo{transition:none!important;transform:none!important}}

/* Owner-supplied training photograph: preserve the complete frame. */
.ft-coach--field{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);padding:36px;gap:36px}
.ft-coach--field .ft-coach__portrait{align-self:center;max-height:none}
.ft-coach--field .ft-coach__portrait img{width:100%;height:auto;object-fit:contain;border-radius:4px}
.ft-coach--field .ft-coach__body{padding:0}
@media(max-width:700px){.ft-coach--field{grid-template-columns:1fr;padding:22px;gap:24px}}

/* shirt number above the name (official FDL start lists) */
.ft-player__no{display:block;text-align:right;font-family:var(--font-num);font-weight:700;font-size:2.4rem;line-height:1;color:#fff}
