/* WhatsApp float pulse */
@keyframes wapulse {
  0%   { box-shadow: 0 0 0 0 rgba(214,185,123,0.5); }
  70%  { box-shadow: 0 0 0 14px rgba(214,185,123,0); }
  100% { box-shadow: 0 0 0 0 rgba(214,185,123,0); }
}

/* ── Tablet ≤1024px ─────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  #navbar { padding: 16px 20px !important; }

  /* FIX 1: logo left-aligned — hide spacer, left-justify logo wrap */
  #nav-spacer   { display: none !important; }
  #nav-logo-wrap {
    flex: 0 0 auto !important;
    justify-content: flex-start !important;
  }

  /* CTA stays right and visible — shrink on tablet */
  #nav-cta {
    font-size: 11px !important;
    padding: 8px 18px !important;
    letter-spacing: 0.12em !important;
    white-space: nowrap !important;
  }
}

/* ── Mobile ≤768px ──────────────────────────────────────────────────── */
@media (max-width: 768px) {

  /* Labels */
  .lp-label { font-size: 10px; }

  /* Section horizontal padding — override inline styles */
  section {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Preserve correct vertical + zero horizontal per section */
  .why-bespoke-section  { padding: 80px 20px !important; }
  .how-it-works-section { padding: 80px 20px !important; }
  .portfolio-section    { padding: 80px 0   !important; }
  .fabric-section       { padding: 0        !important; }
  .booking-form-section { padding: 80px 20px !important; }
  .final-cta-section    { padding: 0        !important; }

  /* Navbar */
  #navbar {
    padding: 14px 20px !important;
  }

  /* CTA button — smaller on mobile, never hidden */
  #nav-cta {
    font-size: 10px !important;
    padding: 7px 12px !important;
    letter-spacing: 0.08em !important;
    white-space: nowrap !important;
  }

  /* Hide "Main Site" link on mobile if present */
  #navbar .nav-main-link {
    display: none !important;
  }

  /* FIX 3: Portfolio header — single column on mobile */
  .portfolio-header {
    padding: 0 20px !important;
  }
  .portfolio-header-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    margin-bottom: 40px !important;
  }
}
