/* Breathtaking Lagoon v5.2.1 — compact mobile refinement */
@media (max-width: 680px) {
  /* Keep consent visible without swallowing the screen. */
  .bl-cookie-banner {
    left: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
    padding: 13px 14px !important;
    border-radius: 15px !important;
    max-height: min(44vh, 350px) !important;
    overflow: auto !important;
  }
  .bl-cookie-inner { display:block !important; }
  .bl-cookie-copy { padding-right: 34px !important; }
  .bl-cookie-copy strong { font-size: .96rem !important; margin-bottom: 3px !important; }
  .bl-cookie-copy p { font-size: .82rem !important; line-height: 1.38 !important; }
  .bl-cookie-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 7px !important;
    margin-top: 10px !important;
    width: 100% !important;
  }
  .bl-cookie-actions button {
    min-height: 42px !important;
    padding: 8px 10px !important;
    border-radius: 10px !important;
    font-size: .8rem !important;
    line-height: 1.15 !important;
  }
  .bl-cookie-close {
    position: absolute !important;
    top: 7px !important;
    right: 8px !important;
    width: 32px !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: #edf6f3 !important;
    font-size: 0 !important;
    text-decoration: none !important;
  }
  .bl-cookie-close::before { content: '×'; font-size: 20px; line-height: 1; }

  /* Flights: make the first screen feel like a travel page, not a giant card stack. */
  .flight-hero { min-height: 0 !important; }
  .flight-hero-inner {
    padding-top: 24px !important;
    padding-bottom: 82px !important;
    gap: 18px !important;
  }
  .flight-hero h1 {
    font-size: clamp(2.15rem, 11vw, 2.85rem) !important;
    line-height: 1 !important;
    margin: 12px 0 12px !important;
  }
  .flight-hero-copy { font-size: .94rem !important; line-height: 1.52 !important; }
  .flight-benefits { gap: 7px !important; margin-top: 14px !important; }
  .flight-benefits span { font-size: .72rem !important; padding: 6px 9px !important; }
  .hero-search-card {
    padding: 18px !important;
    border-radius: 18px !important;
    max-width: none !important;
    box-shadow: 0 16px 38px rgba(0,31,29,.2) !important;
  }
  .hero-search-card .mini-label { font-size: .68rem !important; }
  .hero-search-card h2 { font-size: 1.45rem !important; line-height: 1.08 !important; margin: 7px 0 8px !important; }
  .hero-search-card p { font-size: .88rem !important; line-height: 1.45 !important; }
  .hero-search-card .btn {
    min-height: 46px !important;
    margin-top: 13px !important;
    padding: 10px 18px !important;
    font-size: .9rem !important;
  }
  .flight-main { margin-top: -38px !important; }
  .flight-widget-shell { padding: 17px !important; border-radius: 18px !important; }
  .flight-widget-head h2 { font-size: 1.55rem !important; }
  .flight-widget-head p { font-size: .86rem !important; line-height: 1.45 !important; }
  .flight-proof { gap: 8px !important; }
  .flight-proof-item { padding: 12px 8px !important; }

  /* Organic traffic pages: compact, scan-friendly mobile sizing. */
  .te-hero { padding: 36px 16px 30px !important; }
  .te-hero h1 { font-size: clamp(2rem, 10vw, 2.7rem) !important; line-height: 1.04 !important; margin: 9px 0 12px !important; }
  .te-hero p { font-size: .94rem !important; line-height: 1.52 !important; }
  .te-actions { margin-top: 16px !important; gap: 8px !important; }
  .te-btn { min-height: 44px !important; padding: 9px 14px !important; font-size: .86rem !important; border-radius: 10px !important; }
  .te-section { padding: 34px 14px !important; }
  .te-heading { margin-bottom: 18px !important; }
  .te-heading h2 { font-size: 1.72rem !important; margin: 6px 0 8px !important; }
  .te-heading p { font-size: .9rem !important; line-height: 1.55 !important; }
  .te-card { padding: 17px !important; border-radius: 16px !important; box-shadow: 0 10px 28px rgba(2,57,55,.06) !important; }
  .te-card p { font-size: .88rem !important; line-height: 1.5 !important; margin-bottom: 12px !important; }
  .te-icon { font-size: 1.55rem !important; margin-bottom: 9px !important; }
  .te-tool { padding: 17px !important; border-radius: 16px !important; }
  .te-field input,.te-field select,.te-field textarea { min-height: 44px !important; padding: 9px 10px !important; border-radius: 10px !important; }
  .te-airport-result { padding: 12px !important; gap: 11px !important; border-radius: 13px !important; }
  .bl-home-growth { padding: 38px 14px !important; }

  /* PWA install help should also stay compact on phones. */
  .bl-app-install-dialog { padding: 12px !important; }
  .bl-app-install-card { width:min(94vw,420px) !important; padding:20px !important; border-radius:18px !important; }
  .bl-app-install-card img { width:58px !important; height:58px !important; border-radius:14px !important; margin-bottom:10px !important; }
  .bl-app-install-card h2 { font-size:1.25rem !important; margin:0 2.2rem .55rem 0 !important; }
  .bl-app-install-copy { font-size:.9rem !important; line-height:1.45 !important; }
  .bl-app-install-close { top:10px !important; right:10px !important; width:34px !important; height:34px !important; font-size:22px !important; }
}
