.contact-footer {
   background-color: var(--footer-background);
   color: var(--footer-text-light);
   padding: 60px 20px;
   font-family: 'Roboto', sans-serif;
}

.contact-grid {
   max-width: 1000px;
   margin: 0 auto;
   /* Three columns: Info (2fr), Form (2fr), and Social (1.5fr) */
   grid-template-columns: 2fr 2fr 1.5fr;
   display: grid;
   gap: 40px;
   align-items: start;
}

/* Heading styles for all footer sections */
.contact-footer h3 {
   font-family: 'Poppins', sans-serif;
   color: var(--primary-accent); /* Use orange accent for heading */
   font-size: 1.5rem;
   margin-bottom: 25px;
   border-bottom: 2px solid var(--primary-dark);
   padding-bottom: 5px;
   display: inline-block;
}

/* Contact Details */
.contact-detail {
   display: flex;
   align-items: flex-start;
   margin-bottom: 15px;
   line-height: 1.6;
}

.contact-detail i {
   color: var(--primary-accent);
   margin-right: 15px;
   font-size: 1.2rem;
   margin-top: 3px;
}

.contact-detail a {
   color: var(--footer-text-light);
   text-decoration: none;
   transition: color 0.2s;
}

.contact-detail a:hover {
   /* color: var(--primary-accent); */
   color: #fff !important;

}

.contact-detail .phone-list a {
   display: block;
}

/* Contact Form Styles */
.contact-form-block form {
   display: flex;
   flex-direction: column;
   gap: 15px;
}

.contact-form-block input[type="text"],
.contact-form-block input[type="email"],
.contact-form-block textarea {
   background-color: rgba(255, 255, 255, 0.05); /* Very subtle white input background */
   border: 1px solid rgba(255, 255, 255, 0.2);
   padding: 12px;
   border-radius: 4px;
   color: var(--footer-text-light);
   font-size: 1rem;
   transition: border-color 0.2s, background-color 0.2s;
}

.contact-form-block input:focus,
.contact-form-block textarea:focus {
   border-color: var(--primary-accent);
   outline: none;
   background-color: rgba(255, 255, 255, 0.1);
}

.contact-form-block textarea {
   resize: vertical;
   min-height: 100px;
}

.send-button {
   background-color: var(--primary-accent);
   color: var(--background-white);
   border: none;
   padding: 12px 20px;
   border-radius: 4px;
   cursor: pointer;
   font-weight: 700;
   font-family: 'Poppins', sans-serif;
   text-transform: uppercase;
   letter-spacing: 0.05em;
   transition: background-color 0.2s, transform 0.1s;
}

.send-button:hover {
   background-color: #d1560f; /* Slightly darker orange */
   transform: translateY(-1px);
}

/* Social Media */
.social-links {
   display: flex;
   flex-wrap: wrap;
   gap: 15px;
   /* Align social links to the right on desktop for better spacing */
   justify-content: flex-end;
}

.social-icons h3 {
    /* Align heading to the right on desktop */
    text-align: right;
}

.social-link {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 45px;
   height: 45px;
   border-radius: 50%;
   background-color: var(--primary-accent);
   color: var(--background-light);
   font-size: 1.2rem;
   text-decoration: none;
   transition: background-color 0.3s, transform 0.2s, color 0.3s;
}

.social-link:hover {
   background-color: var(--primary-accent);
   color: var(--background-white);
   transform: translateY(-3px);
}

/* Copyright Bar */
.copyright {
   text-align: center;
   padding-top: 40px;
   border-top: 1px solid rgba(255, 255, 255, 0.1);
   font-size: 0.85rem;
   color: var(--text-secondary);
   margin-top: 40px;
}

@media (max-width: 768px) {
   .contact-grid {
       grid-template-columns: 1fr; /* Stack all columns vertically on mobile */
       text-align: center;
   }
   /* Center headings on mobile */
   .contact-footer h3 {
       display: block;
       text-align: center;
       border-bottom: none;
       margin-bottom: 10px;
   }
   .contact-info .contact-detail {
       justify-content: center;
   }
   .contact-detail i {
       margin-right: 10px;
   }
   /* Center social links on mobile */
   .social-links {
       justify-content: center;
   }
}
