/* Reviewed visual concept: homepage composition; all numbers remain live API data. */
.pn-page-home .hero.clean-hero {
    position:relative; isolation:isolate; overflow:hidden;
    padding:66px 0 76px; color:#f5fbf7;
    background:radial-gradient(ellipse at 92% 12%,#1b5643 0,transparent 52%),#102b26;
    border-bottom:1px solid #2e5545;
}
.pn-page-home .hero.clean-hero::before {
    content:""; position:absolute; z-index:-1; inset:0;
    background-image:linear-gradient(#c4eed905 1px,transparent 1px),linear-gradient(90deg,#c4eed905 1px,transparent 1px);
    background-size:80px 80px; mask-image:linear-gradient(90deg,transparent,#000);
}
.pn-page-home .hero.clean-hero::after {
    content:""; position:absolute; bottom:0; left:max(24px,calc((100% - 1220px)/2));
    width:112px; height:5px; background:var(--pn-mint); transform:skewX(-25deg); transform-origin:bottom left;
}
.pn-page-home .hero-layout { grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:64px; align-items:center; }
.pn-page-home .hero-copy { padding:8px 0; }
.pn-page-home .hero-copy>.eyebrow { display:flex; align-items:center; gap:10px; font-size:10px; line-height:1.65; letter-spacing:.15em; color:#86edbc; }
.pn-page-home .hero-copy>.eyebrow::before { content:""; display:block; flex:0 0 7px; width:7px; height:7px; border-radius:1px; background:#46e5a3; transform:rotate(-12deg); }
.pn-page-home .hero-layout h1 { font-family:var(--pn-font); font-size:clamp(44px,4.45vw,64px); line-height:1.065; font-weight:800; letter-spacing:-.065em; margin:23px 0 24px; max-width:640px; text-wrap:balance; }
.pn-page-home .hero-description { max-width:540px; color:#bdd0c6; font-size:15px; line-height:1.8; margin:0; }
.pn-page-home .hero-actions { gap:10px; margin-top:28px; }
.pn-page-home .home-cta { border-radius:8px; font-family:var(--pn-font); font-size:12px; font-weight:800; padding:14px 17px; min-height:48px; transition:background .16s,box-shadow .16s,transform .16s; }
.pn-page-home .home-cta.primary { background:#46e5a3; color:#102b26; box-shadow:0 3px 0 #09372b20; }
.pn-page-home .home-cta.primary:hover { background:#82efbf; filter:none; transform:translateY(-1px); }
.pn-page-home .home-cta.secondary { background:#ffffff05; border:1px solid #9ecab055; color:#edf9f2; }
.pn-page-home .home-cta.secondary:hover { background:#ffffff12; filter:none; }
.pn-page-home .hero-copy .hero-report-note { color:#9fb9aa; max-width:465px; font-size:11px; line-height:1.7; margin:17px 0 0; }
.pn-page-home .home-highlights { padding:0; border:1px solid #b6e8c82b; border-radius:17px; background:#09291f66; box-shadow:0 20px 70px #001c1a35; overflow:hidden; position:relative; }
.pn-page-home .home-highlights-heading { position:relative; isolation:isolate; padding:26px 26px 22px; min-height:169px; overflow:hidden; }
.pn-page-home .home-highlights-heading::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,#112e28 0%,#112e28b3 43%,transparent 85%); }
.pn-page-home .home-pitch-art { position:absolute; z-index:-2; width:455px; height:292px; object-fit:cover; right:-106px; top:-39px; opacity:.94; pointer-events:none; }
.pn-page-home .home-highlights .eyebrow { color:#86edbc; font-size:9px; letter-spacing:.13em; }
.pn-page-home .home-highlights h2 { font-size:24px; font-weight:750; line-height:1.2; letter-spacing:-.04em; max-width:225px; margin:10px 0; color:#f2faf5; }
.pn-page-home .highlight-scope { color:#b7ccbf; margin:0; font-size:11px; }
.pn-page-home .highlight-grid { gap:0; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #c9eed320; }
.pn-page-home .highlight-card { border:0; border-radius:0; padding:21px 17px 19px; background:#051e1533; min-width:0; }
.pn-page-home .highlight-grid>.highlight-card:nth-child(2),.pn-page-home .highlight-grid>.highlight-card:nth-child(3) { border-left:1px solid #c9eed31c; }
.pn-page-home .highlight-value { font-size:29px; font-weight:800; letter-spacing:-.045em; color:#6eecb4; }
.pn-page-home .highlight-card .highlight-label { font-size:10px; line-height:1.5; color:#f0f8f3; font-weight:750; margin-top:7px; }
.pn-page-home .highlight-detail { font-size:10px; color:#a6bfb0; line-height:1.6; margin-top:5px; }
.pn-page-home .highlight-country-links { gap:4px 9px; margin-top:7px; }
.pn-page-home .highlight-country-links a { font-size:10px; color:#85edbd; }
.pn-page-home .weekend-spotlight { border-top:1px solid #c9eed32a; margin:0; padding:18px 24px; background:linear-gradient(120deg,#d7f2de0a,#d7f2de03); }
.pn-page-home .weekend-spotlight:hover { background:#7be9aa0d; }
.pn-page-home .spotlight-eyebrow { font-size:9px; color:#91ddbb; letter-spacing:.12em; }
.pn-page-home .spotlight-teams { margin:13px 0 11px; gap:9px; grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr); }
.pn-page-home .spotlight-side img { height:43px; width:43px; border-radius:50%; padding:5px; box-shadow:0 2px 12px #0002; }
.pn-page-home .spotlight-side strong { font-size:10px; line-height:1.5; margin-top:6px; }
.pn-page-home .spotlight-side small { font-size:10px; margin-bottom:7px; color:#b7ccbf; }
.pn-page-home .spotlight-vs { border:1px solid #b7ccbf38; height:26px; width:26px; display:flex; align-items:center; justify-content:center; border-radius:50%; font-size:10px; color:#b7ccbf; }
.pn-page-home .spotlight-meta { font-size:10px; text-align:center; color:#b7ccbf; margin-bottom:8px; }
.pn-page-home .spotlight-outcomes { gap:6px 11px; font-size:10px; color:#dcebe2; }
.pn-page-home .spotlight-action { color:#82edb8; font-size:10px; margin-top:11px; }
.pn-page-home .highlight-note { margin:0; padding:13px 20px; font-size:10px; line-height:1.7; color:#b4c9bc; border-top:1px solid #b7ccbf20; background:#05201738; }
.pn-page-home .stats-section { background:#fff; padding:56px 0 59px; border-bottom:1px solid var(--pn-border); }
.pn-page-home .stats-section .section-heading { display:grid; grid-template-columns:1fr auto; align-items:end; gap:7px 28px; margin-bottom:29px; }
.pn-page-home .stats-section .section-heading>div:first-child { grid-column:1; grid-row:1; }
.pn-page-home .stats-section .section-note { grid-column:1; grid-row:2; margin:0; font-size:12px; color:#688174; }
.pn-page-home .section-label { color:#087f5b; font-size:10px; font-weight:800; letter-spacing:.16em; }
.pn-page-home .stats-section h2,.pn-page-home .home-reports-header h2 { color:#102b26; font-size:30px; line-height:1.2; letter-spacing:-.045em; margin:9px 0 0; }
.pn-page-home .database-freshness { grid-column:2; grid-row:1/3; gap:6px; max-width:320px; }
.pn-page-home .database-freshness time { font-size:10px; color:#61766a; }
.pn-page-home .database-freshness small { font-size:10px; color:#61766a; }
.pn-page-home .database-freshness .status-badge { padding:6px 10px; font-size:9px; background:#edf6ef; color:#146944; }
.pn-page-home #databaseStatus.online::before { background:#168758; animation:none; width:6px; height:6px; flex-basis:6px; box-shadow:0 0 0 3px #16875815; }
.pn-page-home .stats-grid { grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; border:1px solid var(--pn-border); border-radius:12px; overflow:hidden; }
.pn-page-home .stat-card { border:0; border-radius:0; background:#fbfdfb; padding:23px 24px; position:relative; }
.pn-page-home .stat-card+.stat-card { border-left:1px solid var(--pn-border); }
.pn-page-home .stat-design-icon { display:block; height:25px; width:25px; color:#16805a; margin-bottom:17px; stroke-width:1.5; }
.pn-page-home .stat-label { color:#557366; font-size:10px; font-weight:800; letter-spacing:.08em; }
.pn-page-home .stat-card strong { font-family:var(--pn-font); font-size:clamp(24px,2.5vw,36px); font-weight:800; color:#153f2e; letter-spacing:-.055em; margin:8px 0 7px; }
.pn-page-home .stat-description { font-size:10px; color:#6d8276; line-height:1.5; }
.pn-page-home .home-reports { background:#f2f6f1; padding:69px 0; border-bottom:1px solid var(--pn-border); }
.pn-page-home .home-reports-header { margin-bottom:33px; }
.pn-page-home .home-reports-header>div { display:grid; grid-template-columns:1fr 1fr; gap:0 58px; width:100%; align-items:center; }
.pn-page-home .home-reports-header .section-label { grid-column:1; grid-row:1; }
.pn-page-home .home-reports-header h2 { grid-column:1; grid-row:2; max-width:400px; margin:10px 0 0; font-size:35px; }
.pn-page-home .home-reports-header p { grid-column:2; grid-row:1/3; font-size:13px; color:#597467; line-height:1.85; }
.pn-page-home .report-preview-grid { gap:28px; }
.pn-page-home .report-preview-card { background:#fff; padding:25px; border:1px solid #d7e4d9; border-radius:14px; box-shadow:0 5px 16px #173f2604; }
.pn-page-home .report-preview-card>h3 { color:#183e2d; font-size:19px; letter-spacing:-.04em; margin:0 0 10px; display:flex; gap:10px; align-items:center; }
.pn-page-home .report-design-icon { width:30px; height:30px; padding:5px; background:#edf7ef; color:#117750; border-radius:6px; flex-shrink:0; }
.pn-page-home .report-preview-card>p { font-size:12px; color:#637b6e; line-height:1.75; margin:0 0 21px; }
.pn-page-home .report-preview-card>.sample-report-preview { background:#f0f5f0; border:1px solid #e2ebe0; border-radius:10px; padding:10px; }
.pn-page-home .sample-preview-enlarge { font-family:var(--pn-font); font-size:11px; color:#14613f; border:1px solid #cfdfd0; background:#f4f9f3; border-radius:7px; }
.pn-page-home .sample-preview-enlarge:hover { background:#eaf5e9; border-color:#93bba0; }
.pn-page-home .report-sample-note { color:#5d7566; font-size:11px; }
.pn-page-home .home-report-actions { border-top:1px solid #d3e1d4; padding-top:25px; gap:19px; }
.pn-page-home .home-report-actions .home-cta.primary { background:#116846; color:#fff; }
.pn-page-home .home-report-actions p { font-size:12px; color:#597166; }
@media(min-width:1500px) { .pn-page-home .hero.clean-hero { padding-top:78px; padding-bottom:88px; } }
@media(max-width:1100px) {
 .pn-page-home .hero-layout { gap:35px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .pn-page-home .hero-layout h1 { font-size:49px; }
 .pn-page-home .hero-description { font-size:13px; }
 .pn-page-home .hero-actions .home-cta { font-size:11px; padding:13px 14px; }
 .pn-page-home .highlight-card { padding:19px 12px; }
 .pn-page-home .highlight-value { font-size:26px; }
 .pn-page-home .stat-card { padding:22px 19px; }
}
@media(max-width:800px) {
 .pn-page-home .hero.clean-hero { padding:43px 0 46px; }
 .pn-page-home .hero-layout { grid-template-columns:1fr; gap:32px; }
 .pn-page-home .hero-copy { max-width:650px; }
 .pn-page-home .hero-layout h1 { max-width:580px; font-size:48px; margin:18px 0 19px; }
 .pn-page-home .hero-description { max-width:620px; font-size:14px; }
 .pn-page-home .hero-actions { margin-top:22px; }
 .pn-page-home .hero-copy .hero-report-note { max-width:580px; margin-top:13px; }
 .pn-page-home .home-highlights { max-width:none; width:100%; }
 .pn-page-home .home-highlights-heading { min-height:124px; padding:21px 23px; }
 .pn-page-home .home-highlights h2 { max-width:300px; font-size:22px; }
 .pn-page-home .home-pitch-art { right:-30px; top:-70px; }
 .pn-page-home .highlight-card { padding:17px 21px; }
 .pn-page-home .highlight-grid>.highlight-card:nth-child(3) { grid-column:auto; }
 .pn-page-home .highlight-value { font-size:27px; }
 .pn-page-home .weekend-spotlight { padding:17px 22px; }
 .pn-page-home .spotlight-teams { margin:10px 0; }
 .pn-page-home .spotlight-side { display:grid; grid-template-columns:43px 1fr; gap:4px 10px; text-align:left; align-items:center; }
 .pn-page-home .spotlight-side small { grid-column:2; margin:0; }
 .pn-page-home .spotlight-side img { grid-column:1; grid-row:1/3; }
 .pn-page-home .spotlight-side strong { grid-column:2; margin:0; }
 .pn-page-home .spotlight-meta { font-size:10px; }
 .pn-page-home .stats-section,.pn-page-home .home-reports { padding:44px 0; }
 .pn-page-home .stats-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .pn-page-home .stat-card:nth-child(4) { border-left:0; }
 .pn-page-home .stat-card:nth-child(n+4) { border-top:1px solid var(--pn-border); }
 .pn-page-home .stat-card { padding:19px; }
 .pn-page-home .stat-card strong { font-size:29px; }
 .pn-page-home .home-reports-header>div { gap:0 30px; }
 .pn-page-home .home-reports-header h2 { font-size:29px; }
 .pn-page-home .home-reports-header p { font-size:13px; }
 .pn-page-home .report-preview-grid { gap:19px; }
 .pn-page-home .report-preview-card { padding:18px; }
}
@media(max-width:550px) {
 .pn-page-home .hero.clean-hero { padding:29px 0 33px; }
 .pn-page-home .hero-layout { gap:25px; }
 .pn-page-home .hero-copy { padding:0; }
 .pn-page-home .hero-copy>.eyebrow { font-size:9px; letter-spacing:.12em; gap:8px; }
 .pn-page-home .hero-layout h1 { font-size:clamp(34px,9.2vw,46px); line-height:1.1; letter-spacing:-.055em; margin:16px 0; }
 .pn-page-home .hero-description { font-size:13px; line-height:1.8; }
 .pn-page-home .hero-actions { margin-top:19px; gap:9px; }
 .pn-page-home .hero-actions .home-cta { flex:1; font-size:11px; padding:11px 9px; min-height:46px; }
 .pn-page-home .hero-copy .hero-report-note { font-size:13px; line-height:1.65; margin-top:12px; }
 .pn-page-home .home-highlights { border-radius:12px; }
 .pn-page-home .home-highlights-heading { padding:18px; min-height:119px; }
 .pn-page-home .home-highlights .eyebrow { font-size:9px; }
 .pn-page-home .home-highlights h2 { font-size:20px; max-width:215px; margin:8px 0; }
 .pn-page-home .highlight-scope { font-size:10px; }
 .pn-page-home .home-pitch-art { width:330px; height:212px; right:-110px; top:-18px; }
 .pn-page-home .highlight-card { padding:14px 11px; }
 .pn-page-home .highlight-value { font-size:clamp(20px,6.2vw,27px); }
 .pn-page-home .highlight-card .highlight-label { font-size:10px; margin-top:5px; }
 .pn-page-home .highlight-detail { font-size:10px; }
 .pn-page-home .highlight-country-links a { font-size:10px; }
 .pn-page-home .weekend-spotlight { padding:14px; }
 .pn-page-home .spotlight-eyebrow { font-size:9px; }
 .pn-page-home .spotlight-teams { gap:7px; grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr); }
 .pn-page-home .spotlight-side { grid-template-columns:31px 1fr; gap:3px 7px; }
 .pn-page-home .spotlight-side img { width:31px; height:31px; padding:3px; }
 .pn-page-home .spotlight-side strong { font-size:10px; line-height:1.55; }
 .pn-page-home .spotlight-side small { font-size:10px; }
 .pn-page-home .spotlight-vs { width:22px; height:22px; font-size:9px; }
 .pn-page-home .spotlight-outcomes { font-size:10px; gap:5px 7px; }
 .pn-page-home .highlight-note { font-size:10px; padding:11px 14px; }
 .pn-page-home .stats-section .section-heading { display:block; margin-bottom:21px; }
 .pn-page-home .stats-section h2 { font-size:26px; margin:8px 0; }
 .pn-page-home .stats-section .section-note { font-size:11px; }
 .pn-page-home .database-freshness { margin-top:17px; max-width:none; align-items:flex-start; text-align:left; }
 .pn-page-home .stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pn-page-home .stat-card:nth-child(4) { border-left:1px solid var(--pn-border); }
 .pn-page-home .stat-card:nth-child(odd) { border-left:0; }
 .pn-page-home .stat-card:nth-child(n+3) { border-top:1px solid var(--pn-border); }
 .pn-page-home .stat-card:last-child { grid-column:1/-1; padding-left:61px; }
 .pn-page-home .stat-card:last-child .stat-design-icon { position:absolute; left:20px; top:24px; }
 .pn-page-home .stat-card:last-child strong { display:inline-block; margin:8px 12px 0 0; }
 .pn-page-home .stat-card { padding:18px; }
 .pn-page-home .stat-design-icon { width:22px; height:22px; margin-bottom:13px; }
 .pn-page-home .stat-card strong { font-size:29px; }
 .pn-page-home .home-reports-header { margin-bottom:23px; }
 .pn-page-home .home-reports-header>div { display:block; }
 .pn-page-home .home-reports-header h2 { font-size:29px; max-width:320px; margin:10px 0 16px; }
 .pn-page-home .home-reports-header p { font-size:13px; }
 .pn-page-home .report-preview-card { padding:17px; }
 .pn-page-home .report-preview-card>h3 { font-size:17px; }
 .pn-page-home .report-preview-card>p { font-size:13px; }
 .pn-page-home .home-report-actions { gap:13px; padding-top:20px; }
 .pn-page-home .home-report-actions p { font-size:13px; }
}
@media(prefers-reduced-motion:reduce) { .pn-page-home .home-cta { transition:none; } }
