/* HERO */

.contact-hero{

padding:180px 0 120px;

background:
linear-gradient(
rgba(15,35,55,.85),
rgba(15,35,55,.85)
),
url('../images/church.png');

background-size:cover;
background-position:center;

text-align:center;

}

.contact-hero h1{

font-size:4.5rem;

color:#fff;

margin-bottom:20px;

}

.contact-hero p{

max-width:750px;

margin:auto;

line-height:1.8;

color:#e2e8f0;

}
.contact-hero .hero-subtitle{

color:#d4a017;

}

.contact-hero p{

color:#e2e8f0;

}


/* CONTACT INFO */

.contact-info{

padding:100px 0;

background:#fff;

}

.contact-grid{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:30px;

}

.contact-card{

background:#f8fafc;

padding:40px;

text-align:center;

border-radius:20px;

box-shadow:
0 10px 25px rgba(0,0,0,.08);

}

.contact-card i{

font-size:40px;

color:#d4a017;

margin-bottom:20px;

}
/* =========================================
SOCIAL MEDIA SECTION
========================================= */

.social-section{

padding:100px 0;

background:#f8fafc;

text-align:center;

}

.social-section .section-title{

margin-bottom:60px;

}

.social-links{

display:flex;

justify-content:center;

align-items:center;

gap:30px;

flex-wrap:wrap;

margin-top:50px;

}

.social-card{

width:220px;

height:180px;

background:#ffffff;

border-radius:20px;

display:flex;

flex-direction:column;

align-items:center;

justify-content:center;

text-decoration:none;

box-shadow:
0 10px 25px rgba(0,0,0,.08);

transition:.3s;

}

.social-card::before{

content:"";

position:absolute;

top:0;

left:-100%;

width:100%;

height:100%;

background:
linear-gradient(
90deg,
transparent,
rgba(255,255,255,.2),
transparent
);

transition:.6s;

}

.social-card:hover::before{

left:100%;

}

.social-card:hover{

transform:
translateY(-10px);

box-shadow:
0 20px 40px rgba(0,0,0,.15);

}

.social-card i{

font-size:3rem;

margin-bottom:15px;

color:#d4a017;

transition:.3s;

}

.social-card span{

font-size:1.1rem;

font-weight:600;

color:#143a52;

transition:.3s;

}

.social-card:hover span{

color:#143a52;

}

.social-card:hover i{

transform:scale(1.15);

}


/* FACEBOOK */

.facebook:hover{

background:#1877f2;

}

.facebook:hover span{

color:#fff;

}

.facebook:hover i{

color:#fff;

}


/* YOUTUBE */

.youtube:hover{

background:#ff0000;

}

.youtube:hover span{

color:#fff;

}

.youtube:hover i{

color:#fff;

}


/* INSTAGRAM */

.instagram:hover{

background:
linear-gradient(
45deg,
#f58529,
#dd2a7b,
#8134af,
#515bd4
);

}

.instagram:hover span{

color:#fff;

}

.instagram:hover i{

color:#fff;

}


/* WHATSAPP */

.whatsapp:hover{

background:#25d366;

}

.whatsapp:hover span{

color:#fff;

}

.whatsapp:hover i{

color:#fff;

}


/* =========================================
RESPONSIVE
========================================= */

@media(max-width:991px){

.social-links{

grid-template-columns:
repeat(2,1fr);

}

}

@media(max-width:768px){

.social-links{

grid-template-columns:1fr;

}

.social-card{

min-height:140px;

padding:30px;

}

.social-card i{

font-size:2.5rem;

}

}


/* FORM */

.contact-form-section{

padding:100px 0;

background:#f8fafc;

}

.contact-form{

text-align:center;

}

.contact-form .btn-primary{

display:inline-flex;

justify-content:center;

align-items:center;

margin-top:10px;

}
.form-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:20px;

margin-bottom:20px;

}

.contact-form input,
.contact-form textarea{

width:100%;

padding:18px;

border:1px solid #ddd;

border-radius:12px;

font-size:1rem;

margin-bottom:20px;

}

.contact-form textarea{

resize:none;

}


/* SERVICE TIMES */

.service-times{

padding:100px 0;

background:#fff;

}

.service-grid{

display:flex;

justify-content:center;

gap:25px;

flex-wrap:wrap;

}

.service-card{

background:#f8fafc;

padding:35px;

border-radius:20px;

text-align:center;

box-shadow:
0 10px 25px rgba(0,0,0,.08);

}

.service-card h3{

margin-bottom:10px;

color:#143a52;

}


/* MAP */

.map-section{

padding:100px 0;

background:#f8fafc;

}

.map-box{

overflow:hidden;

border-radius:20px;

box-shadow:
0 10px 25px rgba(0,0,0,.08);

}

.map-box iframe{

width:100%;

height:500px;

border:none;

}


/* CTA */

.contact-cta{

padding:100px 0;

background:#143a52;

text-align:center;

}

.contact-cta h2{

color:#fff;

margin-bottom:20px;

}

.contact-cta p{

max-width:700px;

margin:auto;

margin-bottom:30px;

color:#dbe4ef;

line-height:1.8;

}


/* MOBILE */

@media(max-width:991px){

.contact-grid,
.service-grid{

grid-template-columns:1fr;

}

}

@media(max-width:768px){

.contact-hero h1{

font-size:2.7rem;

}

.form-grid{

grid-template-columns:1fr;

}

/* =========================================
SOCIAL MEDIA
========================================= */

.social-section{

padding:100px 0;

background:#ffffff;

}

.social-links{

display:flex;

justify-content:center;

gap:25px;

flex-wrap:wrap;

}

.social-card{

width:180px;

height:180px;

background:#f8fafc;

border-radius:20px;

display:flex;

flex-direction:column;

align-items:center;

justify-content:center;

text-decoration:none;

color:#143a52;

box-shadow:
0 10px 25px rgba(0,0,0,.08);

transition:.3s;

}

.social-card:hover{

transform:translateY(-8px);

background:#143a52;

color:#ffffff;

}

.social-card i{

font-size:45px;

margin-bottom:15px;

color:#d4a017;

}

.social-card span{

font-weight:600;

font-size:1.05rem;

}

@media(max-width:768px){

.social-card{

width:140px;

height:140px;

}

.social-card i{

font-size:35px;

}


}