/*==========================================================
CONTACT HERO
==========================================================*/

.contact-hero{

    padding:220px 0 120px;

}

.contact-layout{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

}

.contact-content{

    max-width:620px;

}

.contact-content .section-label{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 20px;

    border-radius:50px;

    background:rgba(255,193,7,.08);

    color:var(--color-primary);

    font-size:1.4rem;

    font-weight:600;

    margin-bottom:24px;

}

.contact-content .hero-title{

    font-size:6rem;

    line-height:1.1;

    margin-bottom:28px;

}

.contact-content .hero-description{

    color:var(--color-text-light);

    line-height:1.9;

    font-size:1.8rem;

    margin-bottom:40px;

}

.hero-buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

}

.contact-hero-card{

    background:var(--color-surface);

    border:1px solid rgba(255,255,255,.08);

    border-radius:30px;

    padding:45px;

}

.hero-info{

    display:flex;

    align-items:flex-start;

    gap:20px;

    padding:22px 0;

    border-bottom:1px solid rgba(255,255,255,.08);

}

.hero-info:last-child{

    border-bottom:none;

}

.hero-info i{

    width:56px;

    height:56px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(255,193,7,.08);

    color:var(--color-primary);

    font-size:2rem;

}

.hero-info h4{

    margin-bottom:8px;

}

.hero-info p{

    color:var(--color-text-light);

}
/*==========================================================
CONTACT INFO
==========================================================*/

.contact-info{

    padding:120px 0;

}

.info-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.info-card{

    background:var(--color-surface);

    border:1px solid rgba(255,255,255,.08);

    border-radius:24px;

    padding:40px 30px;

    text-align:center;

    transition:.35s;

}

.info-card:hover{

    transform:translateY(-8px);

    border-color:var(--color-primary);

}

.info-card i{

    font-size:3rem;

    color:var(--color-primary);

    margin-bottom:24px;

}

.info-card h3{

    margin-bottom:16px;

}

.info-card p{

    color:var(--color-text-light);

    margin-bottom:18px;

    line-height:1.8;

}

.info-card a,
.info-card span{

    color:var(--color-primary);

    font-weight:600;

}
/*==========================================================
CONTACT FORM
==========================================================*/

.contact-section{

    padding:120px 0;

}

.contact-grid{

    display:grid;

    grid-template-columns:1.2fr .8fr;

    gap:60px;

    align-items:start;

}

.contact-form-wrapper{

    background:var(--color-surface);

    border:1px solid rgba(255,255,255,.08);

    border-radius:28px;

    padding:50px;

}

.contact-form{

    margin-top:35px;

}

.form-group{

    margin-bottom:20px;

}

.contact-form input,
.contact-form select,
.contact-form textarea{

    width:100%;

    padding:18px 20px;

    background:#111;

    border:1px solid rgba(255,255,255,.08);

    border-radius:14px;

    color:#fff;

    font-size:1.6rem;

    outline:none;

}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{

    border-color:var(--color-primary);

}

.contact-form textarea{

    resize:vertical;

}

.office-info{

    display:flex;

    flex-direction:column;

    gap:24px;

}

.office-card{

    background:var(--color-surface);

    border:1px solid rgba(255,255,255,.08);

    border-radius:24px;

    padding:30px;

}
.contact-faq{

    padding:120px 0;

}

.faq-grid{

    display:grid;

    gap:25px;

    max-width:900px;

    margin:70px auto 0;

}

.faq-card{

    background:var(--color-surface);

    border:1px solid rgba(255,255,255,.08);

    border-radius:20px;

    padding:30px;

}

.faq-card h3{

    margin-bottom:12px;

}

.faq-card p{

    color:var(--color-text-light);

    line-height:1.8;

}
.contact-cta{

    padding:120px 0;

}
/*==========================================================
CTA
==========================================================*/

.contact-cta{

    padding:120px 0;
}

.contact-cta .cta-box{

    max-width:1000px;

    margin:0 auto;

    background:linear-gradient(180deg,#1a1a1a,#131313);

    border:1px solid rgba(255,255,255,.08);

    border-radius:30px;

    padding:80px;

    text-align:center;

}

.contact-cta .cta-box h2{

    font-size:4.8rem;

    margin:20px 0;

}

.contact-cta .cta-box p{

    max-width:700px;

    margin:0 auto 40px;

    color:var(--color-text-light);

    line-height:1.9;

}

.contact-cta .cta-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

}