/*
Theme Name: SportVerse Child
Theme URI: https://sportverse.it
Description: Tema child per SportVerse, basato su Astra.
Author: SportVerse Team
Template: astra
Version: 1.0.0
Text Domain: sportverse-child
*/

:root {
    --primary: #E94560;
    --secondary: #0F3460;
    --dark: #1A1A2E;
    --light: #F4F4F4;
    --white: #FFFFFF;
}

body { font-family: 'Poppins', sans-serif; color: #333; }
h1, h2, h3, h4, h5, h6 { font-family: 'Poppins', sans-serif; font-weight: 700; color: var(--dark); }

.site-header { background: var(--dark); padding: 10px 0; }
.site-header .logo { font-size: 2rem; font-weight: 800; color: var(--primary); text-transform: uppercase; letter-spacing: 2px; }
.site-header .menu a { color: var(--white); font-weight: 500; padding: 10px 15px; transition: all 0.3s; }
.site-header .menu a:hover { color: var(--primary); }

.btn-sportverse {
    background: var(--primary); color: var(--white); padding: 12px 24px; border-radius: 30px;
    font-weight: 700; text-transform: uppercase; letter-spacing: 1px; transition: all 0.3s;
    display: inline-block; text-decoration: none;
}
.btn-sportverse:hover { background: var(--secondary); color: var(--white); }

.hero-sportverse {
    background: linear-gradient(135deg, var(--dark), var(--secondary));
    color: var(--white); text-align: center; padding: 100px 20px;
}
.hero-sportverse h1 { font-size: 3.5rem; color: var(--white); margin-bottom: 20px; }
.hero-sportverse p { font-size: 1.2rem; max-width: 700px; margin: 0 auto 30px; }

.marquee-sportverse { overflow: hidden; background: var(--secondary); color: var(--white); padding: 10px 0; white-space: nowrap; }
.marquee-sportverse span { display: inline-block; animation: scroll-sportverse 30s linear infinite; font-size: 1.2rem; font-weight: 600; }
@keyframes scroll-sportverse { from { transform: translateX(100%); } to { transform: translateX(-100%); } }

.sport-card {
    background: var(--white); border-radius: 15px; padding: 30px; text-align: center;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1); transition: transform 0.3s, box-shadow 0.3s; margin-bottom: 20px;
}
.sport-card:hover { transform: translateY(-10px); box-shadow: 0 10px 25px rgba(0,0,0,0.15); }
.sport-card .icon { font-size: 3rem; margin-bottom: 15px; }
.sport-card h3 { font-size: 1.5rem; margin-bottom: 10px; color: var(--primary); }

.section-sportverse { padding: 60px 20px; }
.section-dark { background: var(--dark); color: var(--white); }
.section-dark h2 { color: var(--white); }

.step-sportverse { text-align: center; padding: 20px; background: var(--light); border-radius: 10px; margin-bottom: 20px; }
.step-sportverse .numero {
    display: inline-block; background: var(--primary); color: var(--white); width: 40px; height: 40px;
    line-height: 40px; border-radius: 50%; font-weight: 700; margin-bottom: 10px;
}

.site-footer { background: var(--dark); color: var(--white); padding: 40px 20px; text-align: center; }
.site-footer a { color: var(--primary); text-decoration: none; }

/* Avviso obblighi pre-partita, mostrato nelle pagine partite */
.sportverse-avviso-regole {
    background: #fff3cd; border-left: 4px solid #E94560; padding: 12px 16px; margin-bottom: 16px; border-radius: 4px;
}

@media (max-width: 768px) {
    .hero-sportverse h1 { font-size: 2.2rem; }
    .marquee-sportverse span { font-size: 1rem; }
    .sport-card { padding: 20px; }
}
