/* ==========================================
   CONTACTS PAGE
========================================== */

.contacts-page{

    padding:60px 0;

}

.contacts-header{

    text-align:center;

    margin-bottom:60px;

}

.contacts-header h1{

    font-size:42px;

    font-weight:800;

    color:#111827;

    margin-bottom:15px;

}

.contacts-header h1 i{

    color:#2563eb;

    margin-right:12px;

}

.contacts-header p{

    color:#6b7280;

    font-size:18px;

}


/* ==========================================
   GRID
========================================== */

.contacts-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

    margin-bottom:60px;

}


/* ==========================================
   CARD
========================================== */

.contact-card{

    background:#fff;

    border-radius:20px;

    padding:35px;

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.35s;

}

.contact-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(37,99,235,.18);

}

.contact-icon{

    width:75px;

    height:75px;

    border-radius:50%;

    margin:0 auto 20px;

    background:#2563eb;

    display:flex;

    align-items:center;

    justify-content:center;

}

.contact-icon i{

    color:#fff;

    font-size:30px;

}

.contact-card h3{

    font-size:22px;

    margin-bottom:15px;

    color:#111827;

}

.contact-card p{

    color:#6b7280;

    line-height:1.8;

    margin-bottom:20px;

}
/* ==========================================
   BUTTON
========================================== */

.contact-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 24px;

    border-radius:12px;

    background:#2563eb;

    color:#fff;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.contact-btn:hover{

    background:#1d4ed8;

    transform:translateY(-3px);

}


/* ==========================================
   MAP
========================================== */

.contacts-map{

    margin-top:20px;

    background:#fff;

    border-radius:24px;

    padding:35px;

    box-shadow:0 10px 35px rgba(0,0,0,.08);

}

.map-header{

    text-align:center;

    margin-bottom:30px;

}

.map-header h2{

    font-size:32px;

    color:#111827;

    margin-bottom:10px;

}

.map-header i{

    color:#2563eb;

    margin-right:10px;

}

.map-header p{

    color:#6b7280;

}

.map-box{

    border-radius:18px;

    overflow:hidden;

    background:#f8fafc;

    border:2px dashed #dbeafe;

}

.map-placeholder{

    min-height:320px;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    text-align:center;

    padding:40px;

}

.map-placeholder i{

    font-size:70px;

    color:#2563eb;

    margin-bottom:20px;

}

.map-placeholder h3{

    font-size:28px;

    margin-bottom:12px;

    color:#111827;

}

.map-placeholder p{

    color:#6b7280;

    margin-bottom:30px;

}

.map-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:14px 30px;

    border-radius:14px;

    background:#16a34a;

    color:#fff;

    text-decoration:none;

    font-weight:700;

    transition:.3s;

}

.map-btn:hover{

    background:#15803d;

    transform:translateY(-3px);

}
/* ==========================================
   INFO BLOCK
========================================== */

.contacts-info{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:25px;

    margin-top:50px;

}

.info-card{

    background:#fff;

    border-radius:20px;

    padding:35px;

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.35s;

}

.info-card:hover{

    transform:translateY(-6px);

    box-shadow:0 20px 45px rgba(37,99,235,.15);

}

.info-card i{

    font-size:46px;

    color:#2563eb;

    margin-bottom:20px;

}

.info-card h3{

    font-size:22px;

    color:#111827;

    margin-bottom:15px;

}

.info-card p{

    color:#6b7280;

    line-height:1.8;

}


/* ==========================================
   MOBILE
========================================== */

@media(max-width:992px){

.contacts-grid{

    grid-template-columns:repeat(2,1fr);

}

.contacts-info{

    grid-template-columns:1fr;

}

}

@media(max-width:768px){

.contacts-page{

    padding:35px 0;

}

.contacts-header{

    margin-bottom:35px;

}

.contacts-header h1{

    font-size:30px;

}

.contacts-header p{

    font-size:15px;

}

.contacts-grid{

    grid-template-columns:1fr;

    gap:18px;

}

.contact-card{

    padding:25px;

}

.contact-icon{

    width:65px;

    height:65px;

}

.contact-icon i{

    font-size:26px;

}

.contacts-map{

    padding:20px;

    margin-top:35px;

}

.map-header h2{

    font-size:24px;

}

.map-placeholder{

    min-height:220px;

    padding:25px;

}

.map-placeholder i{

    font-size:52px;

}

.map-placeholder h3{

    font-size:22px;

}

.map-btn{

    width:100%;

    justify-content:center;

}

.footer-space{

    height:20px;

}

}