/* --- Contact Section Styling --- */
/* CONTACT SECTION */

#contact{
max-width:1000px;
margin:auto;
padding:80px 20px;
font-family:"Inter",sans-serif;
color:#1a1a1a;
}

#contact h2{
text-align:center;
font-size:2.6rem;
margin-bottom:50px;
font-weight:700;
letter-spacing:.5px;
}

/* GRID */

.contact-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:30px;
justify-items: center;
}

/* CARDS */

.contact-card,
.hours-card{

background:rgba(255,255,255,0.9);
backdrop-filter:blur(10px);

border-radius:16px;
text-align: center;
padding:35px;

box-shadow:
0 10px 25px rgba(0,0,0,0.08);

transition:all .25s ease;

}

.contact-card:hover,
.hours-card:hover{
transform:translateY(-6px);
box-shadow:
0 18px 35px rgba(0,0,0,0.12);
}

/* CONTACT ITEMS */

.contact-item{
display:flex;
gap:15px;
margin-bottom:18px;
align-items:flex-start;

justify-content: center;
text-align: center;
}

.icon{
font-size:1.4rem;
margin-top:2px;
}

/* LINKS */

#contact a{
color:#0c7eff;
font-weight:600;
text-decoration:none;
border-bottom:2px solid transparent;
transition:all .2s ease;
}
/* Center text blocks inside cards */
.contact-card p,
.hours-card li {
  text-align: center;
}

#contact a:hover{
color:#005fcc;
border-color:#005fcc;
}

/* GUARANTEE */

.guarantee{

margin-top:25px;

padding:14px 18px;

background:linear-gradient(
135deg,
#f6faff,
#eef6ff
);

border-left:4px solid #0078ff;

border-radius:8px;

font-style:italic;

font-size:.95rem;
}

/* HOURS */

.hours-card h3{
font-size:1.5rem;
margin-bottom:18px;
}

.hours-card ul{
list-style:none;
padding:0;
}

.hours-card li{
margin-bottom:12px;
line-height:1.6;
}

/* --- Map Link Styling --- */

#contact a#mapLink {
    color: #0c7eff;
    font-weight: 600;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    padding-bottom: 2px;
    transition: color 0.2s ease, border-color 0.2s ease;
}

#contact a#mapLink:hover {
    color: #005fcc;
    border-color: #005fcc;
}

#contact a#mapLink:active {
    color: #003f88;
}

/* Optional: subtle icon animation if you add a pin emoji */
#contact a#mapLink:hover .pin {
    transform: translateY(-2px);
}



/* FOOTER */

footer{
background:#111;
color:#aaa;
text-align:center;
padding:20px;
font-size:0.9rem;
}

@media (max-width:750px) {
.contact-grid{
grid-template-columns:1fr;
}

#contact{
padding:60px 18px;
}

.contact-card,
.hours-card {
padding: 24px 20px;
}

#contact h2 {
font-size: 2rem;
}
}