footer{
    background: whitesmoke;
    color: #1f2937;
    padding: 60px 0 25px;
    margin-top: 60px;
}

footer h6{
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 40px;
    color: #fbbf24;
}

footer p{
    font-size: 20px;
}

.footer-links .mb-2{
    font-size: 20px;
}

footer hr{
    border: 0;
    height: 1px;
    background: rgba(255,255,255,.15);
    margin: 35px 0;
}

.copyright-text a:hover{
    color: #ffffff;
}

.contact-item{
    margin-left: 80px;
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 18px;
}

.contact-item i{
    width: 20px;
    font-size: 18px;
    color: #fbbf24;
    margin-top: 3px;
}

.contact-item span{
    font-size: 20px;
    word-break: break-word;   /* ADDED */
}

.contact-title{
    padding-left: 120px;
}

.contact-item img{
    width: 30px;
    height: 30px;
}

@media (max-width: 768px) {
    footer { padding: 35px 20px 22px; margin-top: 35px; }
    footer h6 { font-size: 16px; margin: 20px 0 14px; }
    footer p, .footer-links .mb-2, .contact-item span { font-size: 15px; }
    .contact-title { padding-left: 0; }
    .contact-item { margin-left: 0; gap: 10px; margin-bottom: 12px; }
}

/* Footer sections stack on mobile so email, phone, and address do not break letter-by-letter. */
@media (max-width: 768px) {
    footer .row { row-gap: 22px; }
    footer .row > [class*="col-"] { flex: 0 0 100%; width: 100%; max-width: 100%; }
    footer .contact-item { width: 100%; margin-left: 0; }
    footer .contact-item span { flex: 1; min-width: 0; overflow-wrap: anywhere; word-break: normal; }
    footer .copyright-text { text-align: center; }
}

/* Phone browsers in desktop-mode still use this touch-device layout. */
@media (hover: none) and (pointer: coarse) {
    footer { padding: 34px 20px 24px; }
    footer .container { width: 100%; max-width: 100%; padding: 0; }
    footer .row { display: flex; flex-direction: column; row-gap: 24px; margin: 0; }
    footer .row > [class*="col-"] { flex: 0 0 100%; width: 100%; max-width: 100%; padding: 0; }
    footer h6, .contact-title { padding-left: 0; margin: 0 0 14px; font-size: 17px; }
    footer p { font-size: 16px; line-height: 1.55; }
    footer .contact-item { display: flex; align-items: flex-start; width: 100%; margin: 0 0 14px; gap: 12px; }
    footer .contact-item img { flex: 0 0 24px; width: 24px; height: 24px; margin-top: 1px; }
    footer .contact-item span { display: block; flex: 1 1 auto; min-width: 0; font-size: 16px; line-height: 1.45; overflow-wrap: anywhere; word-break: normal; }
}
