/* =============================
   HOME
   ============================= */

.hero{
    position:relative;
    height:100vh;
    overflow:hidden;
}

.hero img{
    width:100%;
    height:100%;
    object-fit:cover;
    filter:brightness(55%);
}

.hero .hero-text{
    position:absolute;
    left:2%;
    bottom:10%;
    top:auto;
    right:auto;
    transform:none;
    text-align:left;
    color:white;
    max-width:700px;
}

.hero-text h1,
.hero-text h2{
    font-size:72px;
    line-height:1.15;
    margin-bottom:25px;
}

.hero-text p{
    font-size:22px;
    line-height:1.8;
    margin-bottom:40px;
}

.hero-buttons{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    margin-top:40px;
    width:100%;
}

.scroll-down{
    position:absolute;
    bottom:35px;
    left:50%;
    transform:translateX(-50%);
    color:white;
    letter-spacing:4px;
    font-size:13px;
}

.scroll-down span{
    display:block;
    width:2px;
    height:40px;
    background:white;
    margin:12px auto 0;
    animation:scroll 1.8s infinite;
}

@keyframes scroll{
    0%{ transform:translateY(0); opacity:1; }
    100%{ transform:translateY(20px); opacity:0; }
}

.about{
    padding:100px 8%;
    background:white;
}

.about h2{
    text-align:center;
    font-size:42px;
    color:#0d3b2a;
}

.subtitle{
    text-align:center;
    color:#777;
    margin-top:15px;
    margin-bottom:60px;
    font-size:20px;
}

.about-button{
    text-align:center;
    margin-bottom:60px;
}

.btn-about{
    display:inline-block;
    padding:18px 45px;
    background:#0d3b2a;
    color:white;
    text-decoration:none;
    font-weight:700;
    border-radius:50px;
    transition:.3s;
    box-shadow:0 10px 25px rgba(0,0,0,.15);
}

.btn-about:hover{
    background:#146b49;
    transform:translateY(-4px);
    box-shadow:0 15px 35px rgba(0,0,0,.2);
}

.about-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.about-card{
    background:#f7f7f7;
    padding:40px;
    border-radius:15px;
    opacity:0;
    transform:translateY(60px);
    transition:0.8s;
}

.about-card.show{
    opacity:1;
    transform:translateY(0);
}

.about-card:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 30px rgba(0,0,0,.12);
}

.about-card h3{
    color:#0d3b2a;
    margin-bottom:20px;
    font-size:24px;
}

.about-card p{
    line-height:2;
}

.numbers,
.match,
.news,
.partners,
.contact{
    padding:120px 8%;
}

.numbers,
.news,
.contact{
    background:#f7f7f7;
}

.partners,
.about{
    background:white;
}

.number-grid,
.partner-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
    margin-top:60px;
}

.number-card,
.partner-card{
    background:white;
    border-radius:20px;
    padding:50px 20px;
    text-align:center;
    transition:.3s;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.partner-card{
    background:#f7f7f7;
    border:2px dashed #ddd;
}

.number-card:hover,
.partner-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(0,0,0,.15);
}

.number-card h3{
    font-size:60px;
    color:#0d3b2a;
    margin-bottom:15px;
}

.number-card p{
    letter-spacing:2px;
    font-weight:bold;
}

.match-card{
    display:flex;
    align-items:center;
    gap:50px;
    background:#fff;
    border-radius:20px;
    padding:30px;
    margin-top:60px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.match-image{ flex:1.5; }

.match-image img{
    width:100%;
    height:320px;
    object-fit:cover;
    border-radius:15px;
}

.match-content{ flex:1; }

.match-title{
    font-size:36px;
    font-weight:700;
    color:#111;
    line-height:1.5;
    margin-bottom:25px;
}

.match-title span{
    color:#0d3b2a;
    font-size:48px;
    font-weight:900;
}

.match-date{
    font-size:20px;
    color:#777;
    margin-bottom:35px;
}

.match-link{
    color:#0d3b2a;
    text-decoration:none;
    font-weight:bold;
    font-size:20px;
}

.news-list{ margin-top:60px; }

.news-item{
    display:flex;
    align-items:center;
    gap:40px;
    padding:30px 0;
    border-bottom:1px solid #ddd;
    transition:.3s;
    cursor:pointer;
}

.news-item:hover{
    padding-left:20px;
    color:#0d3b2a;
}

.news-item span{
    font-weight:bold;
    color:#0d3b2a;
    min-width:120px;
}

.news-item p{ font-size:18px; }

.partner-card h3{
    color:#0d3b2a;
    margin-bottom:15px;
}

.partner-button{
    text-align:center;
    margin-top:60px;
}

.partner-button a{
    display:inline-block;
    background:#0d3b2a;
    color:white;
    text-decoration:none;
    padding:18px 45px;
    border-radius:50px;
    transition:.3s;
}

.partner-button a:hover{ background:#146b49; }

.contact-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:40px;
    margin-top:60px;
}

.contact-card{
    background:white;
    padding:60px;
    border-radius:20px;
    text-align:center;
    transition:.3s;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.contact-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(0,0,0,.12);
}

.contact-card h3{
    color:#0d3b2a;
    margin-bottom:20px;
}

.contact-card p{ margin-bottom:30px; }

.contact-card a{
    color:white;
    background:#0d3b2a;
    padding:15px 35px;
    text-decoration:none;
    border-radius:50px;
    display:inline-block;
}

@media (max-width:900px){
    .hero{ height:90vh; }

    .hero .hero-text{
        left:6%;
        right:6%;
        bottom:8%;
        top:auto;
        transform:none;
        text-align:left;
        width:auto;
        max-width:none;
    }

    .hero-text h1,
    .hero-text h2{
        font-size:42px;
        line-height:1.25;
    }

    .hero-text p{
        font-size:16px;
        line-height:1.8;
    }

    .hero-buttons{
        flex-direction:column;
        align-items:center;
        gap:14px;
    }

    .btn{
        width:220px;
        text-align:center;
        padding:13px 24px;
    }

    .about,
    .numbers,
    .match,
    .news,
    .partners,
    .contact{
        padding:80px 6%;
    }

    .about h2{ font-size:32px; }
    .subtitle{ font-size:16px; margin-bottom:40px; }

    .about-grid,
    .number-grid,
    .partner-grid,
    .contact-grid{
        grid-template-columns:1fr;
        gap:22px;
    }

    .match-card{
        flex-direction:column;
        align-items:stretch;
        gap:25px;
        padding:22px;
    }

    .match-image img{
        width:100%;
        height:auto;
        max-height:260px;
    }

    .match-title{ font-size:26px; }
    .match-title span{ font-size:34px; }

    .news-item{
        display:block;
        padding:24px 0;
    }

    .news-item span{
        display:block;
        margin-bottom:10px;
    }

    .contact-card{ padding:32px 24px; }
}

@media (max-width:480px){
    .hero-text h1,
    .hero-text h2{ font-size:34px; }
    .hero-text p{ font-size:14px; }
    .scroll-down{ font-size:11px; bottom:24px; }
    .about-card,
    .number-card,
    .partner-card{ padding:28px 22px; }
    .number-card h3{ font-size:44px; }
    .contact-card a,
    .partner-button a{ width:100%; text-align:center; }
}
/* ===== HERO BUTTON FIX ===== */

.hero-buttons .btn{
    display:inline-block !important;
    padding:18px 45px !important;
    border:2px solid #ffffff !important;
    background:transparent !important;
    color:#ffffff !important;
    text-decoration:none !important;
    font-weight:700 !important;
    border-radius:50px !important;
}

.hero-buttons .btn:hover{
    background:#ffffff !important;
    color:#0d3b2a !important;
}
/* ===== HOME HERO BUTTON ===== */

.hero .hero-buttons .btn{
    display:inline-block !important;
    padding:18px 45px !important;
    background:#0d3b2a !important;
    color:#ffffff !important;
    border:2px solid #0d3b2a !important;
    border-radius:50px !important;
    text-decoration:none !important;
    font-weight:700 !important;
    transition:.3s !important;
}

.hero .hero-buttons .btn:hover{
    background:#146b49 !important;
    border-color:#146b49 !important;
    color:#ffffff !important;
}