/* Homepage spacing polish — desktop only unless noted */

nav .nav-logo-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 50%;
}

.coverage-intro {
  margin-bottom: 28px;
}

footer iframe {
  border: 0;
}

.footer-credit-label,
.footer-credit-brand {
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}

.footer-credit-label {
  color: #fcfcf7;
}

.footer-credit-brand {
  color: #cba855;
}

/* Keep the existing floating contact control valid after the footer markup cleanup. */
.whatsapp-float {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  color: #fff;
  font-size: 30px;
  text-align: center;
  text-decoration: none;
  background: #25d366;
  border-radius: 50%;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
  transition: transform 0.3s ease;
}

.whatsapp-float:hover {
  transform: scale(1.1);
}

@media (min-width: 1025px) {
  /* header.css already supplies the 88px header + 16px scroll padding. */
  body > section[id] {
    scroll-margin-top: 0;
  }

  /* Dense visual sections need a tighter frame than text-led sections. */
  #services.section-pad {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  #services .services-header {
    margin-bottom: 40px;
  }

  #services .services-header .section-title {
    margin-bottom: 0;
  }

  #booking.section-pad {
    padding-top: 88px;
    padding-bottom: 88px;
  }

  #fleet.section-pad,
  #about.section-pad,
  #testimonials.section-pad,
  #coverage.section-pad {
    padding-top: 96px;
    padding-bottom: 96px;
  }

  #fleet .fleet-header,
  #testimonials .testimonials-header {
    margin-bottom: 48px;
  }

  #about .why-list {
    margin-top: 32px;
    gap: 16px;
  }

  #about .why-item {
    padding-bottom: 16px;
  }

  #cta-banner {
    padding: 64px clamp(28px, 4.2vw, 60px);
  }

  /* Compact, refined homepage footer: preserve every link and the location map
     while removing the oversized vertical footprint of the original layout. */
  body.page-home footer {
    padding: 40px clamp(28px, 4.2vw, 60px) 24px;
  }

  body.page-home footer .footer-grid {
    grid-template-columns: minmax(280px, 1.65fr) repeat(3, minmax(0, 1fr));
    align-items: start;
    gap: clamp(24px, 2.2vw, 32px);
    margin-bottom: 20px;
  }

  body.page-home footer .footer-brand-name {
    margin-bottom: 8px;
    line-height: 1.2;
  }

  body.page-home footer .footer-tagline {
    max-width: 34ch;
    margin-bottom: 14px;
  }

  body.page-home footer .footer-phone {
    font-size: 20px;
    line-height: 1.3;
    margin-bottom: 4px;
  }

  body.page-home footer .footer-email {
    display: block;
  }

  body.page-home footer .footer-col-title {
    margin-bottom: 14px;
  }

  body.page-home footer .footer-col-title::after {
    content: "";
    display: block;
    width: 28px;
    height: 1px;
    margin-top: 8px;
    background: rgba(201, 168, 76, 0.55);
  }

  body.page-home footer .footer-links {
    gap: 8px;
  }

  body.page-home footer iframe {
    display: block;
    width: 100%;
    max-width: 360px;
    height: 128px;
    margin-top: 16px;
    border: 1px solid rgba(201, 168, 76, 0.18);
  }

  body.page-home footer .footer-bottom {
    padding-top: 16px;
    padding-right: clamp(0px, calc(1400px - 100vw), 72px);
    gap: 16px;
  }

  body.page-home footer .footer-credit-label,
  body.page-home footer .footer-credit-brand {
    font-size: 13px;
    font-weight: 600;
  }

  body.page-home footer a:focus-visible {
    outline: 2px solid var(--gold-light);
    outline-offset: 4px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .whatsapp-float {
    transition: none;
  }
}
