/* Buy-Yacht-only mobile navigation. Never move this into flex_v2. */
.buy-yacht-footer-grid {
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: clamp(3rem, 9vw, 9rem) !important;
  max-width: 1180px;
  margin-inline: auto;
}
.buy-yacht-footer-brand,
.buy-yacht-footer-brand .py-footer-company { text-align: left; }
.buy-yacht-footer-logo {
  display: block;
  height: 42px;
  width: auto;
  margin-bottom: 1.1rem;
}
.buy-yacht-footer-badges {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(1.5rem, 4vw, 3.5rem);
}
.buy-yacht-footer-badges img {
  width: auto;
  max-width: 190px;
  max-height: 92px;
  object-fit: contain;
}
@media (max-width: 620px) {
  .buy-yacht-footer-grid {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }
  .buy-yacht-footer-badges { justify-content: flex-start; }
  .buy-yacht-footer-badges img { max-width: 145px; max-height: 72px; }
}
.buy-yacht-mobile-overlay { display: none; }

@media (max-width: 767px) {
  .py-bottom-bar { grid-template-columns: repeat(3, 1fr) !important; }
  .py-bottom-bar-item[aria-label="Offers"] { display: none !important; }

  .buy-yacht-mobile-overlay {
    position: fixed;
    z-index: 10002;
    left: 0;
    right: 0;
    bottom: var(--py-bottom-bar-height, 64px);
    display: block;
    max-height: min(76vh, 680px);
    padding: 12px 18px 22px;
    overflow-y: auto;
    color: #fff;
    background: #101a2b;
    border-radius: 22px 22px 0 0;
    box-shadow: 0 -12px 38px rgba(4, 11, 22, .3);
    transform: translateY(calc(100% + 80px));
    visibility: hidden;
    transition: transform .28s ease, visibility .28s;
  }
  .buy-yacht-mobile-overlay.open { transform: translateY(0); visibility: visible; }
  .buy-yacht-overlay-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
  .buy-yacht-overlay-head h2 { margin:0; color:#fff; font-size:1.35rem; line-height:1.2; }
  .buy-yacht-overlay-close { width:38px; height:38px; flex:0 0 38px; border:1px solid rgba(255,255,255,.22); border-radius:50%; background:rgba(255,255,255,.09); color:#fff; font-size:26px; line-height:34px; cursor:pointer; }
  .buy-yacht-about-link { display:block; padding:17px 18px; border:1px solid rgba(255,255,255,.16); border-radius:14px; color:#fff !important; background:rgba(255,255,255,.07); font-size:1rem; font-weight:650; text-decoration:none !important; }
  .buy-yacht-contact-data { display:grid; gap:8px; margin-bottom:18px; }
  .buy-yacht-contact-data a { color:#fff !important; text-decoration:none; opacity:.9; }
  .buy-yacht-contact-form { display:grid; gap:11px; }
  .buy-yacht-contact-form input, .buy-yacht-contact-form textarea { width:100%; box-sizing:border-box; padding:12px 14px; border:1px solid rgba(255,255,255,.2); border-radius:11px; background:#fff; color:#101827; font:inherit; }
  .buy-yacht-contact-form textarea { min-height:105px; resize:vertical; }
  .buy-yacht-channel-label { margin:4px 0 0; font-size:.78rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; opacity:.72; }
  .buy-yacht-channels { display:grid; grid-template-columns:repeat(3, 1fr); gap:7px; }
  .buy-yacht-channel { position:relative; }
  .buy-yacht-channel input { position:absolute; opacity:0; pointer-events:none; }
  .buy-yacht-channel span { display:block; padding:10px 5px; border:1px solid rgba(255,255,255,.25); border-radius:10px; text-align:center; font-size:.78rem; cursor:pointer; }
  .buy-yacht-channel input:checked + span { color:#101a2b; background:#fff; border-color:#fff; font-weight:700; }
  .buy-yacht-contact-submit { padding:13px 18px; border:0; border-radius:11px; color:#101a2b; background:#d8b36a; font:inherit; font-weight:750; cursor:pointer; }
  #buy-yacht-filter-content .py-sale-filters {
    margin:0 !important;
    width:100% !important;
    max-width:none !important;
    gap:12px !important;
    padding:16px !important;
    border:1px solid rgba(216,179,106,.24) !important;
    border-radius:16px !important;
    background:#f7f6f2 !important;
    box-shadow:0 12px 30px rgba(3,10,22,.16) !important;
  }
  #buy-yacht-filter-content .py-sale-filters > label {
    flex:0 0 auto !important;
    height:auto !important;
    min-height:0 !important;
    color:#8b7042 !important;
    font-size:10px !important;
    font-weight:750 !important;
    line-height:1.2 !important;
    letter-spacing:.1em !important;
    text-transform:uppercase !important;
  }
  #buy-yacht-filter-content .py-sale-filters select {
    width:100% !important;
    min-height:48px !important;
    margin-top:6px !important;
    padding:11px 42px 11px 14px !important;
    appearance:none !important;
    border:1px solid #ddd8ce !important;
    border-radius:11px !important;
    color:#172033 !important;
    background-color:#fff !important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b7042' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
    background-repeat:no-repeat !important;
    background-position:right 14px center !important;
    box-shadow:0 3px 10px rgba(15,25,42,.06) !important;
    font-size:15px !important;
    font-weight:600 !important;
  }
  #buy-yacht-filter-content .py-sale-filters select:focus {
    border-color:#b99758 !important;
    outline:3px solid rgba(216,179,106,.2) !important;
  }
  #buy-yacht-filter-content .py-sale-count { color:#667085 !important; font-size:12px !important; text-align:center !important; }
  #buy-yacht-filter-content .py-sale-filters, #buy-yacht-filter-content .py-sale-filters * { box-sizing:border-box; }
}
