/* === WORLD CUP LANDING PAGE OVERRIDES === */
html, body {
background-color: #0a0f1e !important;
color: #f1f5f9 !important;
}

/* Hide Elementor Global Header/Footer */
header.elementor-location-header,
footer.elementor-location-footer,
[data-elementor-type=”header”],
[data-elementor-type=”footer”] {
display: none !important;
}

/* ==================== HIDE THEME ELEMENTS ==================== */
.elementor-location-header,
.elementor-location-footer,
header[data-elementor-type=”header”],
footer[data-elementor-type=”footer”] {
display: none !important;
}

body {
background: #0a0f1e !important;
color: #f1f5f9 !important;
}

/* ==================== GLOBAL STYLES ==================== */
:root {
–bg-primary: #0a0f1e;
–bg-card: #111827;
–bg-card-hover: #1a2332;
–gold: #fbbf24;
–green: #22c55e;
–red: #ef4444;
–blue: #3b82f6;
–cyan: #06b6d4;
–text-primary: #f1f5f9;
–text-secondary: #94a3b8;
–text-muted: #64748b;
–border: #1e293b;
–gradient-gold: linear-gradient(135deg, #fbbf24, #f59e0b);
–gradient-green: linear-gradient(135deg, #22c55e, #16a34a);
–gradient-blue: linear-gradient(135deg, #3b82f6, #2563eb);
–gradient-hero: linear-gradient(135deg, #0a0f1e 0%, #1a1040 50%, #0f172a 100%);
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
background: var(–bg-primary) !important;
color: var(–text-primary) !important;
font-family: ‘Inter’, -apple-system, BlinkMacSystemFont, sans-serif;
line-height: 1.6;
}

.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.section { padding: 60px 0; }
.section-title {
font-size: 28px;
font-weight: 700;
margin-bottom: 8px;
color: var(–text-primary) !important;
}
.section-subtitle {
font-size: 15px;
color: var(–text-secondary) !important;
margin-bottom: 32px;
}
.badge {
display: inline-block;
padding: 4px 12px;
border-radius: 20px;
font-size: 12px;
font-weight: 600;
text-transform: uppercase;
}
.badge-hot { background: rgba(239,68,68,0.15) !important; color: #ef4444 !important; }
.badge-live { background: rgba(34,197,94,0.15) !important; color: #22c55e !important; }
.badge-featured { background: rgba(251,191,36,0.15) !important; color: #fbbf24 !important; }

/* ==================== AD SLOTS ==================== */
.ad-slot {
background: linear-gradient(135deg, #1a1040, #0f172a) !important;
border: 1px dashed #334155;
border-radius: 12px;
padding: 16px;
text-align: center;
position: relative;
overflow: hidden;
}
.ad-slot::before {
content: ‘AD’;
position: absolute;
top: 6px;
right: 8px;
font-size: 9px;
color: #475569 !important;
letter-spacing: 1px;
}
.ad-banner-top {
max-width: 1200px;
margin: 12px auto;
min-height: 90px;
display: flex;
align-items: center;
justify-content: center;
}
.ad-banner-top .ad-inner {
background: linear-gradient(90deg, #1e1b4b, #312e81) !important;
border: 1px solid #4338ca;
border-radius: 10px;
padding: 20px 40px;
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
}
.ad-banner-top .ad-text h3 {
font-size: 18px;
color: #a5b4fc !important;
margin-bottom: 4px;
}
.ad-banner-top .ad-text p {
font-size: 13px;
color: #818cf8 !important;
}
.ad-cta-btn {
background: var(–gradient-gold) !important;
color: #000 !important;
font-weight: 700;
padding: 10px 24px;
border-radius: 8px;
border: none;
cursor: pointer;
font-size: 14px;
white-space: nowrap;
text-decoration: none;
display: inline-block;
transition: transform 0.2s;
}
.ad-cta-btn:hover { transform: scale(1.05); }

.ad-sidebar-card {
background: linear-gradient(135deg, #1a0f2e, #0f172a) !important;
border: 1px solid #2d1f4e;
border-radius: 12px;
padding: 20px;
text-align: center;
}
.ad-sidebar-card h4 {
color: #c084fc !important;
font-size: 14px;
margin-bottom: 8px;
}
.ad-sidebar-card p {
color: #a78bfa !important;
font-size: 12px;
margin-bottom: 12px;
}
.ad-sidebar-card .ad-cta-btn {
font-size: 12px;
padding: 8px 16px;
}

.ad-inline {
background: linear-gradient(90deg, #1a1040, #172554) !important;
border: 1px solid #1e3a5f;
border-radius: 12px;
padding: 20px 28px;
margin: 24px 0;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
}
.ad-inline .ad-icon {
font-size: 32px;
flex-shrink: 0;
}
.ad-inline .ad-info h4 {
color: #93c5fd !important;
font-size: 16px;
margin-bottom: 2px;
}
.ad-inline .ad-info p {
color: #60a5fa !important;
font-size: 13px;
}

.ad-sticky-bottom {
position: fixed;
bottom: 0;
left: 0;
right: 0;
background: rgba(10,15,30,0.95) !important;
backdrop-filter: blur(10px);
border-top: 1px solid var(–border);
padding: 10px 20px;
display: flex;
align-items: center;
justify-content: center;
gap: 16px;
z-index: 1000;
}
.ad-sticky-bottom .sticky-text {
color: var(–gold) !important;
font-weight: 600;
font-size: 14px;
}
.ad-sticky-bottom .ad-cta-btn {
padding: 8px 20px;
font-size: 13px;
}

.ad-popup-overlay {
display: none;
position: fixed;
inset: 0;
background: rgba(0,0,0,0.7) !important;
z-index: 2000;
align-items: center;
justify-content: center;
}
.ad-popup-overlay.show { display: flex; }
.ad-popup {
background: linear-gradient(135deg, #1a0f2e, #0a0f1e) !important;
border: 1px solid #7c3aed;
border-radius: 16px;
padding: 32px;
max-width: 420px;
text-align: center;
position: relative;
}
.ad-popup .close-btn {
position: absolute;
top: 12px;
right: 16px;
background: none !important;
border: none;
color: #64748b !important;
font-size: 24px;
cursor: pointer;
}
.ad-popup h3 {
color: var(–gold) !important;
font-size: 22px;
margin-bottom: 8px;
}
.ad-popup p {
color: var(–text-secondary) !important;
font-size: 14px;
margin-bottom: 20px;
}

/* ==================== HERO SECTION ==================== */
.hero {
background: var(–gradient-hero) !important;
padding: 80px 0 60px;
position: relative;
overflow: hidden;
}
.hero::before {
content: ”;
position: absolute;
top: -50%;
right: -20%;
width: 600px;
height: 600px;
background: radial-gradient(circle, rgba(124,58,237,0.15), transparent 70%) !important;
border-radius: 50%;
}
.hero::after {
content: ”;
position: absolute;
bottom: -30%;
left: -10%;
width: 400px;
height: 400px;
background: radial-gradient(circle, rgba(251,191,36,0.1), transparent 70%) !important;
border-radius: 50%;
}
.hero-content { position: relative; z-index: 1; }
.hero-badge {
display: inline-flex;
align-items: center;
gap: 6px;
background: rgba(251,191,36,0.1) !important;
border: 1px solid rgba(251,191,36,0.3);
border-radius: 20px;
padding: 6px 16px;
font-size: 13px;
color: var(–gold) !important;
margin-bottom: 20px;
}
.hero-badge .dot {
width: 8px;
height: 8px;
background: var(–green) !important;
border-radius: 50%;
animation: pulse 2s infinite;
}
@keyframes pulse {
0%, 100% { opacity: 1; }
50% { opacity: 0.4; }
}
.hero h1 {
font-size: 48px;
font-weight: 800;
line-height: 1.1;
margin-bottom: 16px;
background: linear-gradient(135deg, #f1f5f9, #a5b4fc) !important;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent !important;
}
.hero h1 .highlight {
background: var(–gradient-gold) !important;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent !important;
}
.hero p {
font-size: 18px;
color: var(–text-secondary) !important;
max-width: 560px;
margin-bottom: 28px;
}
.hero-stats {
display: flex;
gap: 40px;
margin-top: 32px;
}
.hero-stat .number {
font-size: 32px;
font-weight: 800;
color: var(–gold) !important;
}
.hero-stat .label {
font-size: 13px;
color: var(–text-muted) !important;
}
.hero-countdown {
display: inline-flex;
align-items: center;
gap: 12px;
background: rgba(255,255,255,0.05) !important;
border: 1px solid var(–border);
border-radius: 12px;
padding: 12px 20px;
margin-bottom: 24px;
}
.countdown-item {
text-align: center;
}
.countdown-item .num {
font-size: 24px;
font-weight: 700;
color: var(–text-primary) !important;
}
.countdown-item .unit {
font-size: 11px;
color: var(–text-muted) !important;
text-transform: uppercase;
}
.countdown-sep {
color: var(–text-muted) !important;
font-size: 20px;
}
.hero-buttons {
display: flex;
gap: 12px;
flex-wrap: wrap;
}
.btn-primary {
background: var(–gradient-gold) !important;
color: #000 !important;
font-weight: 700;
padding: 14px 32px;
border-radius: 10px;
border: none;
cursor: pointer;
font-size: 16px;
text-decoration: none;
display: inline-flex;
align-items: center;
gap: 8px;
transition: transform 0.2s, box-shadow 0.2s;
}
.btn-primary:hover {
transform: translateY(-2px);
box-shadow: 0 8px 24px rgba(251,191,36,0.3);
}
.btn-secondary {
background: rgba(255,255,255,0.05) !important;
border: 1px solid var(–border);
color: var(–text-primary) !important;
padding: 14px 32px;
border-radius: 10px;
cursor: pointer;
font-size: 16px;
text-decoration: none;
display: inline-flex;
align-items: center;
gap: 8px;
transition: background 0.2s;
}
.btn-secondary:hover { background: rgba(255,255,255,0.1) !important; }

/* ==================== FEATURED MATCH ==================== */
.featured-match {
background: linear-gradient(135deg, #111827, #1a1040) !important;
border: 1px solid #2d1f4e;
border-radius: 20px;
padding: 40px;
margin-top: -30px;
position: relative;
z-index: 2;
box-shadow: 0 20px 60px rgba(0,0,0,0.5);
}
.featured-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 24px;
}
.featured-header .match-info {
font-size: 13px;
color: var(–text-muted) !important;
}
.featured-teams {
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
margin-bottom: 28px;
}
.team {
text-align: center;
flex: 1;
}
.team-flag {
font-size: 64px;
margin-bottom: 8px;
}
.team-name {
font-size: 20px;
font-weight: 700;
}
.team-rank {
font-size: 12px;
color: var(–text-muted) !important;
}
.vs-divider {
display: flex;
flex-direction: column;
align-items: center;
gap: 4px;
}
.vs-text {
font-size: 24px;
font-weight: 800;
color: var(–gold) !important;
}
.vs-time {
font-size: 13px;
color: var(–text-muted) !important;
}
.prediction-bars {
display: flex;
gap: 12px;
margin-bottom: 16px;
}
.pred-bar {
flex: 1;
background: rgba(255,255,255,0.05) !important;
border-radius: 10px;
padding: 14px;
text-align: center;
position: relative;
overflow: hidden;
border: 1px solid var(–border);
transition: transform 0.2s;
cursor: pointer;
}
.pred-bar:hover { transform: translateY(-2px); }
.pred-bar .fill {
position: absolute;
bottom: 0;
left: 0;
right: 0;
opacity: 0.15;
border-radius: 0 0 10px 10px;
}
.pred-bar.home .fill { background: var(–green) !important; }
.pred-bar.draw .fill { background: var(–gold) !important; }
.pred-bar.away .fill { background: var(–red) !important; }
.pred-bar .team-label {
font-size: 12px;
color: var(–text-muted) !important;
margin-bottom: 4px;
position: relative;
}
.pred-bar .pct {
font-size: 28px;
font-weight: 800;
position: relative;
}
.pred-bar.home .pct { color: var(–green) !important; }
.pred-bar.draw .pct { color: var(–gold) !important; }
.pred-bar.away .pct { color: var(–red) !important; }
.confidence-bar {
display: flex;
align-items: center;
justify-content: space-between;
background: rgba(255,255,255,0.03) !important;
border-radius: 8px;
padding: 10px 16px;
font-size: 13px;
}
.confidence-bar .label { color: var(–text-muted) !important; }
.confidence-bar .value { color: var(–green) !important; font-weight: 600; }
.confidence-bar .updated { color: var(–text-muted) !important; font-size: 12px; }

/* ==================== PREDICTION GRID ==================== */
.filter-tabs {
display: flex;
gap: 8px;
margin-bottom: 24px;
flex-wrap: wrap;
}
.filter-tab {
padding: 8px 20px;
border-radius: 20px;
font-size: 13px;
font-weight: 500;
cursor: pointer;
border: 1px solid var(–border);
background: transparent !important;
color: var(–text-secondary) !important;
transition: all 0.2s;
}
.filter-tab.active, .filter-tab:hover {
background: rgba(251,191,36,0.1) !important;
border-color: var(–gold) !important;
color: var(–gold) !important;
}
.match-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}
@media (max-width: 900px) { .match-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .match-grid { grid-template-columns: 1fr; } }
.match-card {
background: var(–bg-card) !important;
border: 1px solid var(–border);
border-radius: 14px;
padding: 20px;
transition: transform 0.2s, border-color 0.2s;
cursor: pointer;
position: relative;
}
.match-card:hover {
transform: translateY(-4px);
border-color: rgba(251,191,36,0.4) !important;
}
.match-card .card-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 14px;
}
.match-card .card-stage {
font-size: 11px;
color: var(–text-muted) !important;
text-transform: uppercase;
}
.match-card .card-time {
font-size: 11px;
color: var(–text-muted) !important;
}
.match-card .teams-row {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 14px;
}
.match-card .mini-team {
display: flex;
align-items: center;
gap: 8px;
}
.match-card .mini-flag { font-size: 24px; }
.match-card .mini-name {
font-size: 14px;
font-weight: 600;
}
.match-card .mini-vs {
font-size: 12px;
color: var(–text-muted) !important;
}
.match-card .mini-preds {
display: flex;
gap: 8px;
}
.match-card .mini-pred {
flex: 1;
text-align: center;
padding: 8px 4px;
border-radius: 8px;
background: rgba(255,255,255,0.03) !important;
}
.match-card .mini-pred .pct-val {
font-size: 16px;
font-weight: 700;
}
.match-card .mini-pred .pct-label {
font-size: 10px;
color: var(–text-muted) !important;
}
.match-card .mini-pred.win .pct-val { color: var(–green) !important; }
.match-card .mini-pred.draw .pct-val { color: var(–gold) !important; }
.match-card .mini-pred.lose .pct-val { color: var(–red) !important; }
.load-more-btn {
display: block;
margin: 28px auto 0;
background: rgba(255,255,255,0.05) !important;
border: 1px solid var(–border);
color: var(–text-secondary) !important;
padding: 12px 32px;
border-radius: 10px;
cursor: pointer;
font-size: 14px;
transition: all 0.2s;
}
.load-more-btn:hover {
background: rgba(255,255,255,0.1) !important;
color: var(–text-primary) !important;
}

/* ==================== CHAMPION PREDICTIONS ==================== */
.champion-section {
background: linear-gradient(135deg, #0f172a, #1a0f2e) !important;
border: 1px solid #2d1f4e;
border-radius: 20px;
padding: 36px;
}
.champion-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 12px;
}
@media (max-width: 900px) { .champion-grid { grid-template-columns: repeat(2, 1fr); } }
.champion-card {
background: rgba(255,255,255,0.03) !important;
border: 1px solid var(–border);
border-radius: 12px;
padding: 16px;
text-align: center;
transition: all 0.2s;
cursor: pointer;
}
.champion-card:hover {
border-color: rgba(251,191,36,0.4) !important;
transform: translateY(-2px);
}
.champion-card .c-flag { font-size: 36px; margin-bottom: 6px; }
.champion-card .c-name {
font-size: 14px;
font-weight: 600;
margin-bottom: 4px;
}
.champion-card .c-pct {
font-size: 22px;
font-weight: 800;
color: var(–gold) !important;
}
.champion-card .c-label {
font-size: 11px;
color: var(–text-muted) !important;
}

/* ==================== MODEL ACCURACY ==================== */
.accuracy-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px;
margin-bottom: 28px;
}
@media (max-width: 768px) { .accuracy-grid { grid-template-columns: repeat(2, 1fr); } }
.accuracy-card {
background: var(–bg-card) !important;
border: 1px solid var(–border);
border-radius: 14px;
padding: 24px;
text-align: center;
}
.accuracy-card .acc-number {
font-size: 36px;
font-weight: 800;
background: var(–gradient-green) !important;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent !important;
}
.accuracy-card .acc-label {
font-size: 13px;
color: var(–text-muted) !important;
margin-top: 4px;
}
.history-table {
width: 100%;
border-collapse: collapse;
background: var(–bg-card) !important;
border-radius: 14px;
overflow: hidden;
}
.history-table th {
background: rgba(255,255,255,0.03) !important;
padding: 12px 16px;
font-size: 12px;
color: var(–text-muted) !important;
text-align: left;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.history-table td {
padding: 12px 16px;
font-size: 14px;
border-top: 1px solid var(–border);
}
.result-correct { color: var(–green) !important; font-weight: 600; }
.result-wrong { color: var(–red) !important; font-weight: 600; }

/* ==================== DATA SOURCES ==================== */
.sources-grid {
display: flex;
flex-wrap: wrap;
gap: 12px;
justify-content: center;
}
.source-badge {
background: var(–bg-card) !important;
border: 1px solid var(–border);
border-radius: 10px;
padding: 12px 20px;
font-size: 13px;
color: var(–text-secondary) !important;
font-weight: 500;
transition: all 0.2s;
}
.source-badge:hover {
border-color: var(–gold) !important;
color: var(–gold) !important;
}
.update-freq {
text-align: center;
margin-top: 20px;
font-size: 13px;
color: var(–text-muted) !important;
}

/* ==================== NEWSLETTER ==================== */
.newsletter {
background: linear-gradient(135deg, #1a0f2e, #0f172a) !important;
border: 1px solid #2d1f4e;
border-radius: 20px;
padding: 48px;
text-align: center;
}
.newsletter h2 {
font-size: 28px;
margin-bottom: 8px;
}
.newsletter p {
color: var(–text-secondary) !important;
margin-bottom: 24px;
}
.newsletter-form {
display: flex;
gap: 8px;
max-width: 480px;
margin: 0 auto 16px;
}
.newsletter-form input {
flex: 1;
padding: 14px 20px;
border-radius: 10px;
border: 1px solid var(–border);
background: rgba(255,255,255,0.05) !important;
color: var(–text-primary) !important;
font-size: 15px;
}
.newsletter-form input::placeholder { color: var(–text-muted) !important; }
.newsletter-form input:focus {
outline: none;
border-color: var(–gold) !important;
}
.newsletter-proof {
font-size: 13px;
color: var(–text-muted) !important;
}

/* ==================== TRENDING ==================== */
.trending-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}
@media (max-width: 768px) { .trending-grid { grid-template-columns: 1fr; } }
.trending-card {
background: var(–bg-card) !important;
border: 1px solid var(–border);
border-radius: 14px;
padding: 20px;
transition: all 0.2s;
cursor: pointer;
}
.trending-card:hover {
transform: translateY(-2px);
border-color: rgba(251,191,36,0.4) !important;
}
.trending-card .t-icon { font-size: 28px; margin-bottom: 10px; }
.trending-card .t-title {
font-size: 15px;
font-weight: 600;
margin-bottom: 4px;
}
.trending-card .t-desc {
font-size: 13px;
color: var(–text-muted) !important;
}
.trending-card .t-badge {
margin-top: 10px;
font-size: 11px;
}

/* ==================== MAIN LAYOUT WITH SIDEBAR ==================== */
.main-layout {
display: grid;
grid-template-columns: 1fr 280px;
gap: 24px;
}
@media (max-width: 900px) {
.main-layout { grid-template-columns: 1fr; }
}
.sidebar {
display: flex;
flex-direction: column;
gap: 16px;
}
.sidebar-sticky {
position: sticky;
top: 20px;
}

/* ==================== FOOTER ==================== */
.site-footer {
background: #060a14 !important;
border-top: 1px solid var(–border);
padding: 40px 0 20px;
margin-top: 40px;
}
.footer-grid {
display: grid;
grid-template-columns: 2fr 1fr 1fr 1fr;
gap: 32px;
margin-bottom: 32px;
}
@media (max-width: 768px) { .footer-grid { grid-template-columns: 1fr 1fr; } }
.footer-brand .footer-logo {
font-size: 18px;
font-weight: 700;
color: var(–text-primary) !important;
margin-bottom: 8px;
}
.footer-brand .footer-desc {
font-size: 13px;
color: var(–text-muted) !important;
line-height: 1.6;
}
.footer-col h4 {
font-size: 13px;
font-weight: 600;
color: var(–text-secondary) !important;
text-transform: uppercase;
letter-spacing: 0.5px;
margin-bottom: 12px;
}
.footer-col a {
display: block;
color: var(–text-muted) !important;
text-decoration: none;
font-size: 13px;
margin-bottom: 8px;
transition: color 0.2s;
}
.footer-col a:hover { color: var(–gold) !important; }
.footer-bottom {
border-top: 1px solid var(–border);
padding-top: 20px;
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
gap: 12px;
}
.footer-bottom .copyright {
font-size: 12px;
color: var(–text-muted) !important;
}
.footer-disclaimer {
font-size: 11px;
color: #475569 !important;
line-height: 1.5;
max-width: 600px;
}

/* ==================== RESPONSIVE ==================== */
@media (max-width: 768px) {
.hero h1 { font-size: 32px; }
.hero-stats { gap: 20px; flex-wrap: wrap; }
.hero-stat .number { font-size: 24px; }
.featured-match { padding: 24px; }
.featured-teams { flex-direction: column; gap: 12px; }
.prediction-bars { flex-direction: column; }
.newsletter { padding: 28px; }
.newsletter-form { flex-direction: column; }
.accuracy-grid { grid-template-columns: repeat(2, 1fr); }
.champion-grid { grid-template-columns: repeat(2, 1fr); }
.footer-grid { grid-template-columns: 1fr; }
.ad-inline { flex-direction: column; text-align: center; }
}

Leave a Reply

Your email address will not be published. Required fields are marked *