.wrapper {
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 15px 50px rgba(0,0,0,0.25);
    height: 300px;
}
.contact-container {
    max-width: 1000px;
    margin: 50px auto 100px auto;
    padding: 0 20px;
}
h2 {
    text-align: center;
    color: #fff;
    font-size: 2.5em;
    margin-bottom: 20px;
    position: relative;
}
h2::after {
    content: '';
    display: block;
    width: 80px;
    height: 5px;
    background: linear-gradient(to right, #fbd118, #097b3e);
    margin: 10px auto 30px auto;
    border-radius: 3px;
}
.contact-info-centered {
    max-width: 800px;
    margin: 0 auto;
    background: rgba(255,255,255,0.96);
    padding: 70px;
    border-radius: 28px;
    box-shadow: 0 20px 70px rgba(0,0,0,0.2);
    backdrop-filter: blur(12px);
}
.info-item {
    margin-bottom: 50px;
    display: flex;
    align-items: flex-start;
    gap: 25px;
}
.info-icon {
    font-size: 3.2rem;
    background: -webkit-linear-gradient(left, #fbd118, #097b3e);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    min-width: 70px;
}
.info-text h4 {
    font-size: 1.5rem;
    margin-bottom: 12px;
}
.info-text p, .info-text a {
    font-size: 1.1rem;
    color: #333;
}
.info-text a {
    text-decoration: none;
}
.info-text a:hover {
    color: #ff9933;
    text-decoration: none;
}
@media (max-width: 768px) {
    h1 { font-size: 3.4rem; }
    .contact-main { padding: 80px 0 100px; }
    .info-item { flex-direction: column; align-items: center; text-align: center; gap: 15px; }
}