@font-face { font-family: '365 Sans'; src: url('/wp-content/uploads/fonts/365-Sans-Regular.otf') format('opentype'); font-weight: 400; font-style: normal; font-display: swap; } @font-face { font-family: '365 Sans'; src: url('/wp-content/uploads/fonts/365-Sans-Bold.otf') format('opentype'); font-weight: 700; font-style: normal; font-display: swap; } #scores-article-template { --primary: #3B82F6; --primary-hover: #2563EB; --page-bg: #ffffff; --surface-bg: #ffffff; --card-bg: #ffffff; --border: #F3F4F6; --text: #111827; --muted: #4B5563; --soft: #F3F4F6; --soft-hover: #E5E7EB; --shadow: rgba(15, 23, 42, 0.12); --overlay: rgba(0, 0, 0, 0.52); font-family: '365 Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important; background: var(--page-bg) !important; color: var(--text) !important; min-height: 100vh !important; scroll-behavior: smooth; position: relative; z-index: 1; line-height: 1.5; } #scores-article-template.scores-dark { --page-bg: #020617; --surface-bg: #0F172A; --card-bg: #111827; --border: #1F2937; --text: #F9FAFB; --muted: #D1D5DB; --soft: #1F2937; --soft-hover: #374151; --shadow: rgba(0, 0, 0, 0.42); --overlay: rgba(0, 0, 0, 0.75); } #scores-article-template * { box-sizing: border-box !important; } #scores-article-template .scores-header { position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important; z-index: 99999 !important; background: var(--surface-bg); border-bottom: 1px solid var(--border); box-shadow: 0 2px 10px var(--shadow); } button.scores-next-button { width: 145px; background-color: #3b82f6; color: white; border-radius: 15px; margin-top: 30px; min-height: 40px; } .scores-header-inner { max-width: 1280px; margin: 0 auto; padding: 14px 16px; display: flex; align-items: center; gap: 16px; } .scores-nav { display: flex; gap: 8px; overflow-x: auto; flex: 1; scrollbar-width: none; } .scores-nav::-webkit-scrollbar { display: none; } .scores-nav-button { min-width: 40px; height: 40px; padding: 0 13px; border-radius: 999px; background: var(--soft); color: var(--muted); font-weight: 600; border: none; cursor: pointer; white-space: nowrap; transition: none; } .scores-nav-button.is-active { background: var(--primary); color: #fff !important; } .scores-hero { min-height: 72vh; position: relative; display: flex; align-items: center; justify-content: center; padding: 112px 16px 52px; text-align: left; color: #fff !important; background-color: #020617; overflow: hidden; } .scores-hero::after { content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(2, 6, 23, 0.50) 0%, rgba(2, 6, 23, 0.28) 46%, rgba(2, 6, 23, 0.58) 100%); } .scores-hero-bg { position: absolute; inset: 0; background-size: cover; background-position: center 28%; z-index: 0; opacity: 1; transform: scale(1.02); overflow: hidden; } .scores-hero-bg-img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 28%; } .scores-hero-content { position: relative; z-index: 2; width: 100%; max-width: 1180px; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.88fr); gap: 34px; align-items: center; } .scores-hero-text { min-width: 0; } .scores-hero-kicker { display: inline-flex; align-items: center; width: max-content; max-width: 100%; margin-bottom: 14px; padding: 7px 12px; border-radius: 999px; background: rgba(59, 130, 246, 0.24); border: 1px solid rgba(147, 197, 253, 0.5); color: #DBEAFE !important; font-size: 12px; font-weight: 800; line-height: 1; letter-spacing: 0.08em; text-transform: uppercase; } .scores-hero-title { font-size: clamp(34px, 6.8vw, 68px) !important; font-weight: 800; margin: 0 0 14px; color: #fff !important; line-height: 1.05 !important; text-wrap: balance; } .scores-hero-subtitle { margin: 0 0 18px; font-size: clamp(18px, 2.3vw, 24px); font-weight: 700!important; color: #fff !important; text-shadow: 0 0 20px rgba(59, 130, 246, 0.85), 0 2px 10px rgba(0, 0, 0, 0.5); } .scores-hero-copy p { max-width: 720px; margin: 0; color: #E5E7EB !important; font-size: clamp(16px, 1.9vw, 19px); line-height: 1.65; } .scores-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; } .scores-start-button, .scores-hero-secondary-button { min-height: 46px; padding: 12px 24px; border-radius: 999px; border: 1px solid transparent; font-weight: 800; cursor: pointer; line-height: 1; } .scores-start-button { background: var(--primary); color: #fff !important; box-shadow: 0 12px 24px rgba(37, 99, 235, 0.32); } .scores-hero-secondary-button { background: rgba(255, 255, 255, 0.12); color: #fff !important; border-color: rgba(255, 255, 255, 0.26); } .scores-hero-preview { width: 100%; padding: 18px; border-radius: 24px; background: rgba(15, 23, 42, 0.72); border: 1px solid rgba(255, 255, 255, 0.18); box-shadow: 0 24px 60px rgba(0, 0, 0, 0.34); backdrop-filter: blur(12px); } .scores-hero-preview-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; color: #DBEAFE !important; } .scores-hero-preview-head span { font-size: 13px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; } .scores-hero-preview-head strong { color: #fff !important; font-size: 13px; font-weight: 800; white-space: nowrap; } .scores-hero-preview-list { display: grid; gap: 10px; } .scores-hero-preview-item { width: 100%; display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 12px; align-items: center; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.14); border-radius: 16px; background: rgba(2, 6, 23, 0.56); color: #fff !important; text-align: left; cursor: pointer; } .scores-hero-preview-item:hover { background: rgba(59, 130, 246, 0.22); } .scores-hero-preview-thumb, .scores-hero-preview-rank-chip { width: 58px; height: 48px; border-radius: 12px; overflow: hidden; background: rgba(59, 130, 246, 0.26); } .scores-hero-preview-thumb img { width: 100%; height: 100%; object-fit: cover; object-position: center 22%; display: block; } .scores-hero-preview-rank-chip { display: flex; align-items: center; justify-content: center; color: #fff !important; font-weight: 800; font-size: 18px; } .scores-hero-preview-text { min-width: 0; display: grid; gap: 3px; } .scores-hero-preview-rankline { color: #93C5FD !important; font-size: 12px; font-weight: 800; line-height: 1.1; } .scores-hero-preview-name { color: #fff !important; font-size: 15px; font-weight: 800; line-height: 1.2; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } @media (max-width: 760px) { .scores-hero { min-height: auto; padding: 96px 14px 34px; } .scores-hero::after { background: linear-gradient(180deg, rgba(2, 6, 23, 0.92) 0%, rgba(2, 6, 23, 0.84) 54%, rgba(2, 6, 23, 0.96) 100%); } .scores-hero-bg { opacity: 0.36; background-position: center top; } .scores-hero-content { grid-template-columns: 1fr; gap: 22px; } .scores-hero-title { font-size: clamp(30px, 9vw, 46px) !important; } .scores-hero-subtitle { font-size: 18px; margin-bottom: 14px; } .scores-hero-actions { gap: 10px; margin-top: 20px; } .scores-start-button, .scores-hero-secondary-button { flex: 1 1 150px; padding-left: 16px; padding-right: 16px; } .scores-hero-preview { padding: 14px; border-radius: 20px; } .scores-hero-preview-item { grid-template-columns: 52px minmax(0, 1fr); padding: 9px; } .scores-hero-preview-thumb, .scores-hero-preview-rank-chip { width: 52px; height: 44px; } .scores-hero-preview-name { font-size: 14px; } .scores-hero-preview-item:nth-child(n+4) { display: none; } } .scores-section-shell { min-height: 100vh; scroll-margin-top: 80px; } .scores-card { max-width: 800px; margin: 90px auto; background: var(--card-bg); border-radius: 24px; border: 1px solid var(--border); box-shadow: 0 10px 30px var(--shadow); overflow: hidden; } .scores-card-header { padding: 30px 30px 12px; border-bottom: 0; } .scores-card-header h2 { margin: 0; font-size: 28px; font-weight: 800; } .scores-card-body { padding: 10px 30px 30px; color: var(--muted); font-size: 18px; line-height: 1.7; } .scores-card-body > p:first-child { margin-top: 0; } .scores-image-wrap { width: 100%; height: 250px; background: #eee; margin: 20px 0; border-radius: 12px; overflow: hidden; } .scores-image-wrap img { width: 100%; height: 100%; object-fit: cover; object-position: var(--image-position, center 22%); } .scores-stats-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; margin-top: 25px; align-items: stretch; } .scores-stats-grid.is-empty { display: none; } .scores-stats-count-1 { grid-template-columns: minmax(0, 260px); justify-content: center; } .scores-stats-count-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .scores-stats-count-3 .scores-stat:last-child { grid-column: 1 / -1; justify-self: center; width: min(100%, 260px); } .scores-stat { min-width: 0; padding: 18px 12px; background: var(--soft); border-radius: 16px; text-align: center; border: 1px solid var(--border); display: flex; flex-direction: column; align-items: center; justify-content: center; } .scores-stat-icon { width: 32px; height: 32px; margin: 0 auto 10px; color: var(--primary); display: flex; align-items: center; justify-content: center; flex: 0 0 auto; } .scores-stat-icon img { width: 100%; height: 100%; object-fit: contain; } .scores-stat.no-icon .scores-stat-value { margin-top: 0; } .scores-stat-value { font-size: 24px; font-weight: 800; color: var(--text); line-height: 1.15; margin-bottom: 4px; overflow-wrap: anywhere; } .scores-stat-label { font-size: 11px; color: var(--muted); text-transform: uppercase; font-weight: 700; letter-spacing: 0.05em; line-height: 1.3; } @media (max-width: 599px) { .scores-card { margin: 56px 12px; border-radius: 20px; } .scores-card-header { padding: 22px 18px 14px; } .scores-card-header h2 { font-size: 24px; line-height: 1.2; } .scores-card-body { padding: 8px 18px 24px; font-size: 16px; line-height: 1.65; } .scores-image-wrap { height: 230px; margin: 18px 0; } .scores-stats-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 22px; } .scores-stats-count-1 { grid-template-columns: minmax(0, 1fr); } .scores-stats-count-3 .scores-stat:last-child { grid-column: 1 / -1; justify-self: center; width: min(100%, 260px); } .scores-stat { min-height: 118px; padding: 14px 10px; } .scores-stat-icon { width: 28px; height: 28px; margin-bottom: 8px; } .scores-stat-value { font-size: 20px; line-height: 1.15; } .scores-stat-label { font-size: 10px; line-height: 1.3; } button.scores-next-button { width: 100%; margin-top: 24px; } } @media (min-width: 600px) { .scores-stats-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } .scores-stats-count-1 { grid-template-columns: minmax(0, 260px); justify-content: center; } .scores-stats-count-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 520px; margin-left: auto; margin-right: auto; } .scores-stats-count-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 690px; margin-left: auto; margin-right: auto; } .scores-stats-count-3 .scores-stat:last-child { grid-column: auto; justify-self: stretch; width: auto; } .scores-stats-count-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); max-width: none; } .scores-image-wrap { height: 400px; } } .scores-icon-button { background: var(--soft); border: none; width: 40px; height: 40px; border-radius: 20px; cursor: pointer; display: flex; align-items: center; justify-content: center; color: var(--text); } .scores-toc-drawer { position: fixed; top: 0; right: 0; bottom: 0; width: 300px; background: var(--surface-bg); z-index: 100000; transform: translateX(100%); transition: transform 0.3s ease; padding: 20px; box-shadow: -5px 0 15px var(--shadow); overflow-y: auto; } .scores-toc-drawer.is-open { transform: translateX(0); } .scores-toc-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 99999; display: none; } .scores-toc-overlay.is-open { display: block; } .scores-hero-first-item { width: 100%; padding: 18px; border-radius: 24px; background: rgba(15, 23, 42, 0.78); border: 1px solid rgba(255, 255, 255, 0.18); box-shadow: 0 24px 60px rgba(0, 0, 0, 0.34); backdrop-filter: blur(12px); color: #fff !important; } .scores-hero-first-kicker { display: inline-flex; margin-bottom: 10px; padding: 6px 10px; border-radius: 999px; background: rgba(59, 130, 246, 0.26); color: #DBEAFE !important; font-size: 12px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; } .scores-hero-first-title { margin: 0 0 12px; color: #fff !important; font-size: clamp(22px, 3vw, 32px); font-weight: 800; line-height: 1.12; } .scores-hero-first-image { width: 100%; height: 230px; margin: 12px 0 14px; border-radius: 18px; overflow: hidden; background: rgba(255,255,255,0.1); } .scores-hero-first-image img { width: 100%; height: 100%; object-fit: cover; object-position: var(--image-position, center 22%); display: block; } .scores-hero-first-copy { display: grid; gap: 10px; } .scores-hero-first-copy p { margin: 0; color: #E5E7EB !important; font-size: 15px; line-height: 1.55; } .scores-hero-first-copy p:nth-child(2) { color: #CBD5E1 !important; } .scores-hero-first-actions { margin-top: 16px; display: flex; gap: 10px; flex-wrap: wrap; } .scores-hero-first-actions .scores-next-button { margin-top: 0; } @media (max-width: 760px) { .scores-hero-first-item { padding: 14px; border-radius: 20px; } .scores-hero-first-image { height: 190px; border-radius: 16px; } .scores-hero-first-title { font-size: 23px; } .scores-hero-first-copy p { font-size: 14px; line-height: 1.5; } } /* Traditional first-item landing variant */ .scores-hero { min-height: auto; align-items: flex-start; justify-content: center; padding: 104px 16px 56px; text-align: center; } .scores-hero::after { background: linear-gradient(180deg, rgba(2, 6, 23, 0.38) 0%, rgba(2, 6, 23, 0.30) 45%, rgba(2, 6, 23, 0.48) 100%); } .scores-hero-bg { opacity: 1; background-position: center top; } .scores-hero-bg-img { opacity: 1; } .scores-hero-content { max-width: 860px; display: flex; flex-direction: column; gap: 20px; align-items: stretch; } .scores-hero-text { text-align: center; } .scores-hero-kicker { margin-left: auto; margin-right: auto; margin-bottom: 12px; } .scores-hero-title { max-width: 820px; margin: 0 auto 12px; font-size: clamp(30px, 5.2vw, 54px) !important; line-height: 1.08 !important; } .scores-hero-copy p { max-width: 760px; margin: 0 auto; font-size: clamp(15px, 1.7vw, 18px); line-height: 1.55; } .scores-hero-actions { justify-content: center; margin-top: 2px; } .scores-hero-first-item { width: 100%; padding: 0; border-radius: 24px; background: var(--card-bg); border: 1px solid var(--border); box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28); backdrop-filter: none; color: var(--text) !important; overflow: hidden; text-align: left; } .scores-hero-first-kicker { margin: 28px 30px 8px; background: rgba(59, 130, 246, 0.12); color: var(--primary) !important; } .scores-hero-first-title { margin: 0 30px 10px; color: var(--text) !important; font-size: clamp(23px, 3.2vw, 32px); line-height: 1.16; } .scores-hero-first-copy { display: block; padding: 0 30px; } .scores-hero-first-copy p { margin: 0 0 16px; color: var(--muted) !important; font-size: 17px; line-height: 1.65; } .scores-hero-first-copy p:nth-child(2) { color: var(--muted) !important; } .scores-hero-first-image { width: auto; height: 360px; margin: 16px 30px 18px; border-radius: 16px; background: #E5E7EB; } .scores-hero-first-actions { margin: 18px 30px 30px; } @media (max-width: 760px) { .scores-hero { padding: 88px 12px 34px; } .scores-hero-content { gap: 16px; } .scores-hero-title { font-size: clamp(28px, 8.4vw, 40px) !important; } .scores-hero-copy p { font-size: 15px; line-height: 1.5; } .scores-hero-first-item { border-radius: 20px; } .scores-hero-first-kicker { margin: 20px 18px 8px; } .scores-hero-first-title { margin: 0 18px 10px; font-size: 22px; line-height: 1.18; } .scores-hero-first-copy { padding: 0 18px; } .scores-hero-first-copy p { font-size: 15px; line-height: 1.55; margin-bottom: 14px; } .scores-hero-first-image { height: 210px; margin: 14px 18px 16px; border-radius: 14px; } .scores-hero-actions { display: grid; grid-template-columns: 1fr; width: 100%; } .scores-start-button, .scores-hero-secondary-button { width: 100%; } } /* Align the featured landing item title with the regular article-card layout */ .scores-hero-first-title { display: block !important; margin: 0 0 10px !important; padding: 0 30px !important; width: 100% !important; box-sizing: border-box !important; } .scores-hero-first-copy { padding-left: 30px !important; padding-right: 30px !important; } @media (max-width: 599px) { .scores-hero-first-kicker { margin: 22px 18px 8px !important; } .scores-hero-first-title { padding-left: 18px !important; padding-right: 18px !important; margin-bottom: 10px !important; font-size: 24px !important; line-height: 1.2 !important; } .scores-hero-first-copy { padding-left: 18px !important; padding-right: 18px !important; } } /* 365Scores brand blue for metric values only */ .scores-stat-value, .scores-stat-card .scores-stat-value { color: #179BFF !important; } /* Metric layout: label above value */ .scores-stat-card, .scores-stat { display: flex; flex-direction: column !important; align-items: center; justify-content: center; text-align: center; } .scores-stat-label, .scores-stat-card .scores-stat-label { order: 1; margin: 0 0 6px 0 !important; } .scores-stat-value, .scores-stat-card .scores-stat-value { order: 2; margin: 0 !important; } .scores-stat-icon, .scores-stat-card .scores-stat-icon { order: 0; margin: 0 0 6px 0 !important; } /* Prevent club names / metric values from breaking in the middle of words */ .scores-stat-value, .scores-stat-card .scores-stat-value { white-space: normal !important; overflow-wrap: normal !important; word-break: normal !important; hyphens: none !important; line-height: 1.12 !important; max-width: 100%; } .scores-stat-label, .scores-stat-card .scores-stat-label { white-space: normal !important; overflow-wrap: normal !important; word-break: normal !important; hyphens: none !important; } .scores-stat-card, .scores-stat { overflow: hidden; padding-left: 10px !important; padding-right: 10px !important; } /* Long text values need a little less size so they wrap by full words */ .scores-stat-value { font-size: clamp(18px, 4.6vw, 25px) !important; } @media (min-width: 700px) { .scores-stat-value { font-size: clamp(19px, 2.1vw, 26px) !important; } } ☰ Continuar Lendo Conteúdo × let scoresProgrammaticScroll = false; let scoresScrollSettleTimer = null; let scoresProgrammaticFallbackTimer = null; function setActiveNavButton(id) { const activeId = String(id); const nav = document.getElementById('js-nav'); if (!nav) return; nav.querySelectorAll('.scores-nav-button').forEach(button => { button.classList.toggle('is-active', button.dataset.articleId === activeId || button.textContent.trim() === activeId); }); } function finishProgrammaticScroll() { scoresProgrammaticScroll = false; if (scoresScrollSettleTimer) window.clearTimeout(scoresScrollSettleTimer); if (scoresProgrammaticFallbackTimer) window.clearTimeout(scoresProgrammaticFallbackTimer); scoresScrollSettleTimer = null; scoresProgrammaticFallbackTimer = null; } window.addEventListener('scroll', function() { if (!scoresProgrammaticScroll) return; if (scoresScrollSettleTimer) window.clearTimeout(scoresScrollSettleTimer); scoresScrollSettleTimer = window.setTimeout(finishProgrammaticScroll, 180); }, { passive: true }); function scrollToSection(id) { scoresProgrammaticScroll = true; setActiveNavButton(id); if (scoresProgrammaticFallbackTimer) window.clearTimeout(scoresProgrammaticFallbackTimer); scoresProgrammaticFallbackTimer = window.setTimeout(finishProgrammaticScroll, 2200); const el = document.getElementById(`article-item-${id}`); if (el) { const offset = 80; const bodyRect = document.body.getBoundingClientRect().top; const elementRect = el.getBoundingClientRect().top; const elementPosition = elementRect - bodyRect; const offsetPosition = elementPosition - offset; window.scrollTo({ top: offsetPosition, behavior: 'smooth' }); } } document.addEventListener('DOMContentLoaded', function() { const data = { "logo": "A", "hero": { "title": "As 15 contratações mais caras da janela de transferências até agora", "subtitle": "", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/hero_image_transfers", "copy": "Estamos acompanhando as contratações mais caras da janela de transferências até o momento para manter você atualizado sobre o mercado agitado deste verão europeu. Nossa análise das métricas dos jogadores e das necessidades dos clubes será atualizada semanalmente à medida que esses acordos continuam a remodelar o cenário do futebol global." }, "items": [ { "id": 15, "name": "Ismael Saibari", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/saibari", "imagePosition": "center 22%", "textTop": "O Bayern de Munique reforçou o seu meio-campo com o armador marroquino Ismael Saibari, do PSV Eindhoven. Buscando um criador imprevisível e resistente à pressão para jogar sob o comando do técnico Vincent Kompany, o Bayern pagou cinquenta milhões de euros. Saibari conquistou esta transferência de alto nível após vencer o prêmio de Jogador do Ano da Eredivisie, registrando 15 gols e oito assistências para guiar o PSV a títulos consecutivos.", "textBottom": "Na Copa do Mundo, o jogador de 25 anos marcou em todas as partidas da fase de grupos antes de converter o pênalti decisivo contra a Holanda. Christoph Freund priorizou a intensidade de pressão física e a versatilidade ofensiva de Saibari para sustentar o domínio nacional do Bayern. Esse investimento massivo posiciona o marroquino como uma das contratações mais caras e aguardadas da história da Bundesliga.", "stats": [ { "icon": "", "value": "25", "label": "Idade" }, { "icon": "", "value": "€50M", "label": "Valor da Transferência" }, { "icon": "", "value": "PSV Eindhoven", "label": "De" }, { "icon": "", "value": "Bayern Munique", "label": "Para" } ] }, { "id": 14, "name": "Luka Vuskovic", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/vuskovic", "imagePosition": "center 22%", "textTop": "O Brighton quebrou seu recorde de transferências ao contratar o zagueiro croata de 19 anos, Luka Vuskovic, do Tottenham. Preparando-se para a sua próxima campanha na Conference League, o Brighton precisava de um jovem pilar altamente cotado para reforçar a linha defensiva de Fabian Hürzeler. A rara combinação de domínio físico aéreo e compostura com a bola de Vuskovic se encaixou perfeitamente no plano tático de recrutamento do Brighton.", "textBottom": "O croata surgiu como uma das principais promessas defensivas enquanto estava emprestado ao Hamburgo, marcando seis gols em 28 partidas do campeonato. Sua campanha notável lhe rendeu o prêmio de Novato do Ano da Bundesliga e um lugar na Seleção da Temporada da liga. Escolher o Brighton em vez de gigantes europeus garante que Vuskovic receba o tempo de jogo necessário para o seu desenvolvimento e alcance o seu potencial de classe mundial.", "stats": [ { "icon": "", "value": "19", "label": "Idade" }, { "icon": "", "value": "€54M", "label": "Valor da Transferência" }, { "icon": "", "value": "Tottenham", "label": "De" }, { "icon": "", "value": "Brighton", "label": "Para" } ] }, { "id": 13, "name": "Marc Cucurella", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/cucurella", "imagePosition": "center 22%", "textTop": "O Real Madrid garantiu o lateral-esquerdo espanhol Marc Cucurella, do Chelsea, para reforçar sua rotação defensiva para a extenuante campanha. Após uma temporada difícil no clube, o Madrid buscou um defensor tenaz capaz de executar imediatamente sistemas baseados em transição. A taxa de trabalho, versatilidade e experiência de Cucurella fizeram dele uma solução lógica para competir em várias frentes.", "textBottom": "O jogador de 27 anos alcançou recentemente a glória absoluta na Copa do Mundo, jogando todos os cento e vinte minutos da final para ajudar a Espanha a derrotar a Argentina. O Real Madrid pagou cinquenta e cinco milhões de euros para finalizar a transferência, priorizando um lateral de elite comprovado para garantir estabilidade tática imediata. Esta aquisição permite que o clube mantenha a coesão defensiva durante intensas campanhas de copas e partidas do campeonato.", "stats": [ { "icon": "", "value": "27", "label": "Idade" }, { "icon": "", "value": "€55M", "label": "Valor da Transferência" }, { "icon": "", "value": "Chelsea", "label": "De" }, { "icon": "", "value": "Real Madrid", "label": "Para" } ] }, { "id": 12, "name": "Andrey Santos", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/Santos", "imagePosition": "center 22%", "textTop": "A primeira grande contratação de Michael Carrick no Manchester United viu a chegada do meio-campista brasileiro Andrey Santos, vindo de Stamford Bridge. Após a saída de alto perfil de Casemiro e uma grave lesão no joelho de Manuel Ugarte na Copa do Mundo, o United precisava desesperadamente de reforços imediatos. Santos fará parceria com Kobbie Mainoo, oferecendo uma presença combativa para proteger a linha defensiva.", "textBottom": "O jogador de 22 anos havia se destacado anteriormente em um empréstimo ao Strasbourg, marcando 10 gols na Ligue 1 e conquistando uma vaga na Seleção da Temporada. Santos possui uma impressionante taxa de sucesso de passes de noventa por cento e uma taxa de sucesso de desarmes de setenta e quatro por cento. Sua força defensiva e passes compostos dão a Carrick um meio-campista completo, capaz de lidar com as demandas táticas da Liga dos Campeões.", "stats": [ { "icon": "", "value": "22", "label": "Idade" }, { "icon": "", "value": "€56.3M", "label": "Valor da Transferência" }, { "icon": "", "value": "Chelsea", "label": "De" }, { "icon": "", "value": "Manchester United", "label": "Para" } ] }, { "id": 11, "name": "Marco Palestra", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/Palestra", "imagePosition": "center 22%", "textTop": "O Chelsea adicionou o ala italiano de elite Marco Palestra, vindo da Atalanta, ao seu elenco, abordando um requisito crucial para flexibilidade tática. Sob o comando do novo técnico Xabi Alonso, o Chelsea buscou um jogador de lado de campo dinâmico para executar um sistema exigente de alta pressão pelo flanco direito. Palestra, que possui excepcional habilidade de cruzamento e resistência física, se encaixou perfeitamente na progressiva reestruturação tática do clube.", "textBottom": "O promissor jogador de 21 anos passou a última temporada emprestado ao Cagliari, onde explodiu para o estrelato e ganhou o prestigioso prêmio de Defensor do Ano da Serie A. Palestra registrou um gol e quatro assistências em 37 aparições na liga. O Chelsea pagou 57 milhões de euros para concluir a transferência, garantindo um dos perfis jovens mais cobiçados da Europa para revitalizar a sua defesa.", "stats": [ { "icon": "", "value": "21", "label": "Idade" }, { "icon": "", "value": "€57M", "label": "Valor da Transferência" }, { "icon": "", "value": "Atalanta", "label": "De" }, { "icon": "", "value": "Chelsea", "label": "Para" } ] }, { "id": 10, "name": "Johan Manzambi", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/manzambi-vila", "imagePosition": "center 22%", "textTop": "O Aston Villa garantiu o conceituado armador suíço Johan Manzambi, do Freiburg, para ancorar o meio-campo de Unai Emery. Substituindo a saída de Youri Tielemans, o Villa queria um motor criativo capaz de impulsioná-los na sua campanha na Liga dos Campeões. Manzambi, eleito o Jovem Jogador da Temporada da Liga Europa após levar o Freiburg à final, surgiu como a aquisição perfeita.", "textBottom": "O criativo jogador de 20 anos marcou cinco gols e distribuiu cinco assistências em 27 partidas da Bundesliga antes de marcar três gols na Copa do Mundo. O Villa atravessou o acordo existente do Newcastle para assinar com o talentoso meio-campista por 60 milhões de euros. Sua força física, velocidade de transição e versatilidade tática satisfazem as exigências de Emery por um moderno armador box-to-box.", "stats": [ { "icon": "", "value": "20", "label": "Idade" }, { "icon": "", "value": "€60M", "label": "Valor da Transferência" }, { "icon": "", "value": "Freiburg", "label": "De" }, { "icon": "", "value": "Aston Villa", "label": "Para" } ] }, { "id": 9, "name": "Jan Paul van Hecke", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/vanhecke", "imagePosition": "center 22%", "textTop": "O Tottenham contratou o confiável zagueiro holandês Jan Paul van Hecke, do Brighton, para reconstruir sua linha defensiva sob o comando de Roberto De Zerbi. Após terminar em 17º em temporadas consecutivas na Premier League, o Tottenham precisava de defensores comprovados e fisicamente dominantes. De Zerbi priorizou Van Hecke por sua excepcional inteligência posicional e precisão de passe para implementar seu sistema baseado na posse de bola.", "textBottom": "O jogador de 26 anos foi um destaque na Costa Sul, estabelecendo-se como um defensor altamente confiável. Ele traduziu essa forma para o cenário internacional, representando a Holanda na Copa do Mundo, inclusive jogando todos os 120 nas oitavas de final. O Tottenham gastou 60 milhões de euros para trazer Van Hecke para o norte de Londres.", "stats": [ { "icon": "", "value": "26", "label": "Idade" }, { "icon": "", "value": "€60M", "label": "Valor da Transferência" }, { "icon": "", "value": "Brighton", "label": "De" }, { "icon": "", "value": "Tottenham", "label": "Para" } ] }, { "id": 8, "name": "Jérémy Jacquet", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/jacquet", "imagePosition": "center 22%", "textTop": "O Liverpool concluiu a contratação do zagueiro francês de 20 anos Jérémy Jacquet, do Rennes, no último dia da janela de transferências. Com um núcleo defensivo envelhecido, o departamento esportivo do Liverpool priorizou garantir um zagueiro jovem e tecnicamente talentoso para ser a base de futuras disputas pelo título da Premier League. Jacquet, conhecido pelo seu domínio físico e jogo calmo sob pressão, atendeu perfeitamente às suas exigências táticas.", "textBottom": "O jovem se destacou na Ligue 1, apresentando métricas de passes progressivos que se adequavam às táticas focadas em transição de Andoni Iraola. O Liverpool gastou 63,6 milhões de euros para superar o Chelsea e o Real Madrid, garantindo um prospecto de elite com alto potencial. A capacidade de Jacquet de vencer duelos aéreos e executar viradas de jogo longas fornece uma segurança defensiva crucial.", "stats": [ { "icon": "", "value": "20", "label": "Idade" }, { "icon": "", "value": "€63.6M", "label": "Valor da Transferência" }, { "icon": "", "value": "Rennes", "label": "De" }, { "icon": "", "value": "Liverpool", "label": "Para" } ] }, { "id": 7, "name": "Crysencio Summerville", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/summerville", "imagePosition": "center 22%", "textTop": "O Al-Hilal, da Saudi Pro League, concluiu a contratação do ponta holandês Crysencio Summerville, do West Ham, para reforçar sua linha de ataque. Após o rebaixamento do West Ham na liga nacional, a diretoria do Al-Hilal priorizou a adição de um ponta rápido e direto que pudesse impactar imediatamente a sua linha de frente. Summerville, que possui notáveis habilidades de drible e instintos de finalização precisos, foi identificado como o alvo ofensivo principal.", "textBottom": "O ponta de 24 anos registrou cinco gols e duas assistências em 31 jogos da Premier League na última temporada. Ele também impressionou na Copa do Mundo deste verão, marcando duas vezes e dando duas assistências em quatro partidas pela Holanda, antes de sua derrota nos pênaltis para o Marrocos. O Al-Hilal pagou 64.5 milhões de euros para garantir o talentoso ponta, adicionando uma arma letal ao time.", "stats": [ { "icon": "", "value": "24", "label": "Idade" }, { "icon": "", "value": "€64.5M", "label": "Valor da Transferência" }, { "icon": "", "value": "West Ham", "label": "De" }, { "icon": "", "value": "Al-Hilal", "label": "Para" } ] }, { "id": 6, "name": "Gonçalo Ramos", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/ramos", "imagePosition": "center 22%", "textTop": "O Milan completou uma transferência permanente para trazer o atacante internacional português Gonçalo Ramos do Paris Saint-Germain para o San Siro. O Milan precisava desesperadamente de um ponto de referência de classe mundial para o seu ataque, a fim de liderá-los de volta à glória europeia. Ramos, conhecido por sua finalização precisa e movimentação implacável sem a bola, foi contratado para ser a ponta de lança de sua linha ofensiva.", "textBottom": "O atacante de 25 anos é tricampeão francês e marcou um gol decisivo na campanha de Portugal na Copa do Mundo antes de chegar a Milão. O clube italiano gastou 74 milhões de euros para concluir esta transferência, estabelecendo um grande recorde para o clube no processo. Sua eficiência na grande área e seu estilo de pressão intensa satisfazem a necessidade do Milan por um atacante moderno e trabalhador.", "stats": [ { "icon": "", "value": "25", "label": "Idade" }, { "icon": "", "value": "€74M", "label": "Valor da Transferência" }, { "icon": "", "value": "Paris Saint-Germain", "label": "De" }, { "icon": "", "value": "Milan", "label": "Para" } ] }, { "id": 5, "name": "Anthony Gordon", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/gordon", "imagePosition": "center 22%", "textTop": "O Barcelona contratou o ponta inglês Anthony Gordon, do Newcastle, para trazer ritmo explosivo e flexibilidade tática ao seu ataque. Buscando reconstruir o seu elenco sob o seu ambicioso projeto esportivo, o Barcelona procurou um ponta de elite capaz de impactar tanto as fases ofensivas quanto defensivas.", "textBottom": "O ponta de 25 anos estabeleceu-se como um jogador de elite na Premier League, combinando velocidade alucinante com incansável pressão de alta intensidade. Ele traduziu essa forma para o cenário internacional, sendo titular na semifinal da Copa do Mundo e marcando o gol da Inglaterra contra a Argentina. O Barcelona gastou 80 milhões de euros para garantir os seus serviços, trazendo uma opção altamente potente para o flanco esquerdo.", "stats": [ { "icon": "", "value": "25", "label": "Idade" }, { "icon": "", "value": "€80M", "label": "Valor da Transferência" }, { "icon": "", "value": "Newcastle", "label": "De" }, { "icon": "", "value": "Barcelona", "label": "Para" } ] }, { "id": 4, "name": "Mateus Fernandes", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/Fernandes", "imagePosition": "center 22%", "textTop": "O Tottenham concluiu a transferência do promissor meio-campista português Mateus Fernandes, do West Ham, para revitalizar seu motor criativo sob o comando de Roberto De Zerbi. O Tottenham exigia meio-campistas centrais altamente técnicos e resistentes à pressão, que pudessem transitar o jogo perfeitamente. A excelente capacidade de condução de bola e a visão tática excepcional de Fernandes fizeram dele uma adição ideal à sua rotação de meio-campo em reconstrução.", "textBottom": "O West Ham precisava arrecadar mais de 100 milhões de libras após o seu rebaixamento, tornando o meio-campista um ativo principal. O Tottenham pagou 99 milhões de euros para garantir o internacional português, que fez 38 aparições e marcou quatro gols na temporada passada. Ele fez sua estreia recente na seleção principal de Portugal.", "stats": [ { "icon": "", "value": "21", "label": "Idade" }, { "icon": "", "value": "€99M", "label": "Valor da Transferência" }, { "icon": "", "value": "West Ham", "label": "De" }, { "icon": "", "value": "Tottenham", "label": "Para" } ] }, { "id": 3, "name": "Sandro Tonali", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/Tonali", "imagePosition": "center 22%", "textTop": "Se Mateus Fernandes representa o investimento do Tottenham em potencial, Sandro Tonali parece a versão de resposta imediata para a mesma ideia. Após perder o controle em muitas grandes batalhas no meio-campo, os Spurs se moveram em busca de um jogador que já entende o ritmo da Premier League, a pressão física e a responsabilidade de carregar a posse de bola através de áreas centrais congestionadas.", "textBottom": "A chegada de Tonali dá ao Tottenham um ponto de referência mais estabelecido ao lado de suas peças de meio-campo mais jovens. Ao contrário de Fernandes, cuja transferência foi construída em torno do desenvolvimento e do teto a longo prazo, espera-se que Tonali eleve o nível desde o primeiro dia: progressão mais limpa, mais autoridade sem a bola e uma presença mais calma quando as partidas se tornam abertas. A taxa é alta, mas a lógica é clara — os Spurs estão tentando transformar o potencial do meio-campo em controle do meio-campo.", "stats": [ { "icon": "", "value": "26", "label": "Idade" }, { "icon": "", "value": "€108M", "label": "Valor da Transferência" }, { "icon": "", "value": "Newcastle", "label": "De" }, { "icon": "", "value": "Tottenham", "label": "Para" } ] }, { "id": 2, "name": "Elliot Anderson", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/anderson", "imagePosition": "center 22%", "textTop": "A transferência de Elliot Anderson para o Manchester City chega em um momento fascinante para o planejamento do meio-campo do clube. Com Rodri ligado a uma mudança para o Real Madrid, o City agiu cedo para trazer um jogador que pode lhes dar pernas extras, controle e uma intensidade pronta para a Premier League em áreas centrais.", "textBottom": "Anderson não é um substituto direto de Rodri, e é isso que torna a transferência interessante. Ele oferece um perfil diferente: mais móvel, mais agressivo em duelos e capaz de carregar a bola através da pressão, em vez de simplesmente ancorar a posse vindo de trás. Para o City, esta parece ser uma jogada construída em torno da flexibilidade — protegendo-se de uma possível saída de Rodri enquanto adicionam outro meio-campista de alta energia que pode crescer dentro do sistema de Pep Guardiola.", "stats": [ { "icon": "", "value": "23", "label": "Idade" }, { "icon": "", "value": "€135M", "label": "Valor da Transferência" }, { "icon": "", "value": "Nottingham Forest", "label": "De" }, { "icon": "", "value": "Manchester City", "label": "Para" } ] }, { "id": 1, "name": "Morgan Rogers", "img": "https://imagescache.365scores.com/image/upload/c_limit,q_auto:eco/Magazines/ENG-magazine/Transfers/Expensive/rogers", "imagePosition": "center 22%", "textTop": "O internacional inglês Morgan Rogers completou uma transferência monumental para o Chelsea vindo do Aston Villa, servindo como a joia da coroa da sua janela de transferências de verão. O técnico do Chelsea, Xabi Alonso, queria desesperadamente um atacante versátil que pudesse desempenhar várias funções ofensivas ao lado de Cole Palmer. Rogers, que possui imensa inteligência tática e habilidades de drible precisas, foi contratado para revitalizar a sua linha de frente.", "textBottom": "O jogador de 23 anos guiou anteriormente o Villa ao título da Liga Europa e a uma colocação entre os quatro primeiros, marcando 21 gols em 85 jogos na Premier League. Ele também brilhou pela Inglaterra na Copa do Mundo, ajudando a equipe a garantir o terceiro lugar. O Chelsea pagou a marca histórica de 138 milhões de euros para finalizar o acordo, garantindo um motor ofensivo vencedor de campeonatos.", "stats": [ { "icon": "", "value": "23", "label": "Idade" }, { "icon": "", "value": "€138M", "label": "Valor da Transferência" }, { "icon": "", "value": "Aston Villa", "label": "De" }, { "icon": "", "value": "Chelsea", "label": "Para" } ] } ] }; const nav = document.getElementById('js-nav'); const sections = document.getElementById('js-sections'); const tocList = document.getElementById('js-toc-list'); // Init Hero document.getElementById('js-hero-title').textContent = data.hero.title; const heroBg = document.getElementById('js-hero-bg'); const heroImg = document.getElementById('js-hero-img'); if (heroBg) heroBg.style.backgroundImage = data.hero.img ? `url("${data.hero.img}")` : 'none'; if (heroImg) { if (data.hero.img) { heroImg.src = data.hero.img; heroImg.style.display = 'block'; } else { heroImg.removeAttribute('src'); heroImg.style.display = 'none'; } } document.getElementById('js-hero-copy').innerHTML = data.hero.copy ? `${data.hero.copy}` : ''; const heroSection = document.querySelector('.scores-hero'); const firstItem = data.items && data.items.length ? data.items[0] : null; if (heroSection && firstItem) heroSection.id = `article-item-${firstItem.id}`; const heroFirstItem = document.getElementById('js-hero-first-item'); if (heroFirstItem) { if (firstItem) { const secondItem = data.items[1] || null; const visibleStats = (firstItem.stats || []).filter(s => s && ( String(s.icon || '').trim() || String(s.value || '').trim() || String(s.label || '').trim() )); const statsHtml = visibleStats.map(s => { const hasIcon = Boolean(String(s.icon || '').trim()); const iconHtml = hasIcon ? `` : ''; return ` ${iconHtml} ${s.label || ''} ${s.value || ''} `; }).join(''); heroFirstItem.innerHTML = ` ${firstItem.id}. ${firstItem.name || ''} ${firstItem.textTop ? `${firstItem.textTop}` : ''} ${firstItem.img ? `` : ''} ${firstItem.textBottom ? `${firstItem.textBottom}` : ''} ${visibleStats.length ? `${statsHtml}` : ''} `; } else { heroFirstItem.style.display = 'none'; } } // Build article items data.items.forEach((d, index) => { const nextDriver = data.items[index + 1]; const nextId = nextDriver ? nextDriver.id : null; // Nav button const btn = document.createElement('button'); btn.className = 'scores-nav-button'; btn.textContent = d.id; btn.dataset.articleId = String(d.id); btn.onclick = () => scrollToSection(d.id); nav.appendChild(btn); // ToC entry const tocBtn = document.createElement('button'); tocBtn.style = 'display:block; width:100%; text-align:left; padding:12px; margin-bottom:8px; border:none; background:var(--soft); cursor:pointer; border-radius:12px; font-weight:700; color:var(--text);'; tocBtn.textContent = `${d.id}. ${d.name}`; tocBtn.onclick = () => { scrollToSection(d.id); toggleToC(false); }; tocList.appendChild(tocBtn); if (index === 0) return; // Stats HTML const visibleStats = (d.stats || []).filter(s => s && ( String(s.icon || '').trim() || String(s.value || '').trim() || String(s.label || '').trim() )); const statsHtml = visibleStats.map(s => { const hasIcon = Boolean(String(s.icon || '').trim()); const iconHtml = hasIcon ? `` : ''; return ` ${iconHtml} ${s.label || ''} ${s.value || ''} `; }).join(''); // Card const sect = document.createElement('section'); sect.className = 'scores-section-shell'; sect.id = `article-item-${d.id}`; sect.innerHTML = ` ${d.id}. ${d.name} ${d.textTop} ${d.img ? `` : ''} ${d.textBottom} ${visibleStats.length ? `${statsHtml}` : ''} ${nextId ? `Próximo ›` : ''} `; sections.appendChild(sect); }); // ToC controls function toggleToC(open) { document.getElementById('js-toc-drawer').classList.toggle('is-open', open); document.getElementById('js-toc-overlay').classList.toggle('is-open', open); } document.getElementById('js-toc-open').onclick = () => toggleToC(true); document.getElementById('js-toc-close').onclick = () => toggleToC(false); document.getElementById('js-toc-overlay').onclick = () => toggleToC(false); document.getElementById('js-start').onclick = () => { if (data.items.length > 1) scrollToSection(data.items[1].id); else if (data.items.length) scrollToSection(data.items[0].id); }; // Active nav highlight for manual scrolling only. Clicks set the active state immediately. const observer = new IntersectionObserver((entries) => { if (scoresProgrammaticScroll) return; entries.forEach(entry => { if (entry.isIntersecting) { const id = entry.target.id.replace('article-item-', ''); setActiveNavButton(id); } }); }, { rootMargin: '-20% 0px -70% 0px' }); const observedHero = document.querySelector('.scores-hero[id^="article-item-"]'); if (observedHero) observer.observe(observedHero); document.querySelectorAll('.scores-section-shell').forEach(s => observer.observe(s)); });