.luna-footer {
    position: relative;
    margin-top: 0;
    overflow: hidden;
    color: rgba(255,255,255,.72);
    background: linear-gradient(rgba(7,18,36,.94), rgba(7,18,36,.97)), url('../images/luna/punta-cana-luxury-transfer-hero.png') center/cover no-repeat;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

.luna-footer:before {
    position: absolute;
    content: '';
    top: -260px;
    right: -190px;
    width: 560px;
    height: 560px;
    border: 1px solid rgba(181,138,66,.18);
    border-radius: 50%;
    box-shadow: 0 0 0 90px rgba(181,138,66,.025), 0 0 0 180px rgba(181,138,66,.018);
    pointer-events: none;
}

.luna-footer .container { position: relative; z-index: 1; }

.luna-footer__main {
    display: grid;
    grid-template-columns: 1.4fr .72fr 1fr .72fr;
    gap: 58px;
    padding: 68px 0 62px;
}

.luna-footer__brand > a { display: inline-block; overflow: hidden; border-radius: 6px; background: #fff; }
.luna-footer__brand img { display: block; width: 230px; height: 128px; object-fit: contain; object-position: center; }
.luna-footer__brand > p { max-width: 340px; margin: 24px 0; color: rgba(255,255,255,.65); font-size: 14px; line-height: 1.75; }
.luna-footer__service-note { display: flex; gap: 13px; align-items: flex-start; max-width: 330px; }
.luna-footer__service-note > i { color: #d7bb7a; font-size: 23px; }
.luna-footer__service-note span { font-size: 11px; line-height: 1.55; }
.luna-footer__service-note strong { display: block; color: #fff; font-size: 12px; }

.luna-footer__column h3 {
    margin: 8px 0 25px;
    color: #fff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.luna-footer__column ul { margin: 0; padding: 0; list-style: none; }
.luna-footer__column li { margin-bottom: 13px; }
.luna-footer__column li a { color: rgba(255,255,255,.67); font-size: 13px; }
.luna-footer__column li a:hover { color: #d7bb7a; }
.luna-footer__contact li { margin-bottom: 16px; }
.luna-footer__contact li a,
.luna-footer__location { display: flex; align-items: flex-start; gap: 10px; line-height: 1.45; }
.luna-footer__contact i { flex: 0 0 18px; color: #d7bb7a; font-size: 17px; }

.luna-footer__socials { display: flex; flex-wrap: wrap; gap: 9px; }
.luna-footer__socials a {
    display: inline-flex;
    width: 41px;
    height: 41px;
    align-items: center;
    justify-content: center;
    color: #fff;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 50%;
    transition: border-color .2s ease, background .2s ease;
}
.luna-footer__socials a:hover { color: #fff; border-color: #b58a42; background: #b58a42; }
.luna-footer__social-copy { margin-top: 20px; color: rgba(255,255,255,.48); font-size: 12px; line-height: 1.65; }

.luna-footer__bottom {
    display: flex;
    min-height: 92px;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    border-top: 1px solid rgba(255,255,255,.13);
}

.luna-footer__legal { display: flex; flex-direction: column; gap: 5px; color: rgba(255,255,255,.48); font-size: 11px; }
.luna-footer__legal p { display: inline; margin: 0; }
.luna-footer__legal a { color: #d7bb7a; }
.luna-footer__payments { display: flex; align-items: center; gap: 8px; }
.luna-footer__payments img { width: 40px; height: 25px; padding: 3px; border-radius: 3px; background: #fff; object-fit: contain; }

@media (max-width: 991.98px) {
    .luna-footer__main { grid-template-columns: 1.2fr 1fr; gap: 45px 60px; }
}

@media (max-width: 767.98px) {
    .luna-footer__main { grid-template-columns: 1fr; gap: 38px; padding: 50px 0; }
    .luna-footer__brand > p { max-width: none; }
    .luna-footer__column h3 { margin-bottom: 18px; }
    .luna-footer__bottom { align-items: flex-start; flex-direction: column; padding: 28px 0; }
    .luna-footer__payments { flex-wrap: wrap; }
}
