/* =========================================================
KAPCSOLAT OLDAL
========================================================= */

.contact-hero{

    padding:190px 0 120px;

    background:
        linear-gradient(
            rgba(255,255,255,.82),
            rgba(255,255,255,.82)
        ),
        url("../assets/contact-hero.webp");

    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;

    text-align:center;

}

.contact-hero-content{

    max-width:900px;

    margin:auto;

}

.contact-hero h1{

    font-size:64px;

    line-height:1.05;

    margin:25px 0;

}

.contact-hero p{

    font-size:22px;

    color:var(--text-light);

    max-width:800px;

    margin:auto;

}

/* =========================================================
KAPCSOLAT + FORM
========================================================= */

.contact-section{

    padding:80px 0;

    background:#ffffff;

}

.contact-grid{

    display:grid;

    grid-template-columns:420px 1fr;

    gap:40px;

    align-items:start;

}

.contact-info{

    background:
        linear-gradient(
            180deg,
            #07111E,
            #0B1728
        );

    color:#fff;

    border-radius:30px;

    padding:40px;

    border:
        1px solid rgba(126,211,33,.15);

}

.contact-info h2{

    font-size:32px;

    margin-bottom:15px;

}

.contact-info p{

    color:rgba(255,255,255,.75);

    margin-bottom:35px;

}

.contact-card{

    display:flex;

    gap:18px;

    align-items:flex-start;

    margin-bottom:30px;

}

.contact-card i{

    width:54px;
    height:54px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:16px;

    background:
        rgba(126,211,33,.10);

    color:#7ED321;

    font-size:22px;

}

.contact-card strong{

    display:block;

    margin-bottom:6px;

}

.contact-card a,
.contact-card span{

    color:rgba(255,255,255,.85);

}

.contact-form-card{

    background:#fff;

    border-radius:30px;

    padding:50px;

    box-shadow:
        0 20px 60px rgba(15,23,42,.08);

    border:
        1px solid rgba(0,0,0,.05);

}

.contact-form-card h2{

    margin-bottom:30px;

    font-size:32px;

}

/* =========================================================
LÉPÉSEK
========================================================= */

.contact-steps{

    padding:90px 0;

    background:
        linear-gradient(
            180deg,
            #f8fafc,
            #eef4f8
        );

}

.steps-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.step-card{

    background:#fff;

    border-radius:24px;

    padding:35px;

    text-align:center;

    border:
        1px solid rgba(0,0,0,.05);

    box-shadow:
        0 15px 40px rgba(15,23,42,.05);

}

.step-number{

    width:65px;
    height:65px;

    margin:0 auto 20px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:
        linear-gradient(
            135deg,
            var(--primary),
            var(--primary-dark)
        );

    color:#fff;

    font-size:28px;

    font-weight:800;

}

.step-card h3{

    font-size:20px;

    line-height:1.3;

}

/* =========================================================
HELP SECTION
========================================================= */

.help-section{

    padding:90px 0;

    background:#ffffff;

}

.help-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:25px;

}

.help-card{

    background:#fff;

    border-radius:24px;

    padding:35px;

    text-align:center;

    border:
        1px solid rgba(0,0,0,.05);

    box-shadow:
        0 15px 40px rgba(15,23,42,.05);

    transition:.3s;

}

.help-card:hover{

    transform:translateY(-6px);

}

.help-card i{

    font-size:40px;

    color:#7ED321;

    margin-bottom:20px;

}

.help-card h3{

    font-size:22px;

}

/* =========================================================
RESPONSIVE
========================================================= */

@media(max-width:992px){

    .contact-grid{

        grid-template-columns:1fr;

    }

    .steps-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .help-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

@media(max-width:768px){

    .contact-hero{

        padding:150px 0 80px;

    }

    .contact-hero h1{

        font-size:38px;

    }

    .contact-hero p{

        font-size:18px;

    }

    .contact-form-card{

        padding:30px;

    }

    .steps-grid{

        grid-template-columns:1fr;

    }

    .help-grid{

        grid-template-columns:1fr;

    }

    .contact-info{

        padding:30px;

    }

}