/* ── Manali Escape — Global Responsive Styles ──────────────────────────────── */

/* Hamburger button */
.nav-toggle {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  z-index: 1100;
}
.nav-toggle span {
  display: block;
  width: 24px;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  transition: all .3s ease;
}
.nav-toggle.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nav-toggle.open span:nth-child(2) { opacity: 0; }
.nav-toggle.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

@media (max-width: 900px) {
  /* Show hamburger, hide nav links */
  .nav-toggle { display: flex; }

  nav ul {
    position: fixed;
    top: 90px;
    left: 0;
    right: 0;
    background: rgba(15,39,68,0.98);
    backdrop-filter: blur(12px);
    flex-direction: column;
    gap: 0;
    padding: 16px 0 24px;
    display: none;
    z-index: 999;
    border-bottom: 1px solid rgba(255,255,255,0.1);
  }
  nav ul.open { display: flex; }
  nav ul li { width: 100%; }
  nav ul a {
    display: block;
    padding: 14px 32px;
    font-size: 1rem;
    border-radius: 0;
    border-bottom: 1px solid rgba(255,255,255,0.05);
  }
  nav { padding: 0 20px; height: 70px; }
  nav ul { top: 70px; }

  /* Hero */
  .hero h1, .hero-content h1 { font-size: 2.4rem !important; }
  .hero p { font-size: 1rem !important; }
  .hero-btns { flex-direction: column; align-items: center; }

  /* Stats */
  .stats { gap: 28px; padding: 28px 20px; }
  .stat .num { font-size: 1.8rem; }

  /* Section padding */
  section, .container { padding-left: 20px !important; padding-right: 20px !important; }

  /* Destination grid */
  .dest-grid { grid-template-columns: 1fr !important; }
  .dest-card.large { grid-column: span 1 !important; }

  /* Experience grid */
  .exp-grid { grid-template-columns: repeat(2, 1fr) !important; }

  /* Highlight strip */
  .highlight { flex-direction: column !important; padding: 40px 20px !important; gap: 28px !important; }
  .highlight-img { height: 240px !important; width: 100%; }

  /* Main grid (booking) */
  .main-grid { grid-template-columns: 1fr !important; padding: 24px 16px !important; }

  /* Contact layout */
  .contact-layout { grid-template-columns: 1fr !important; padding: 40px 20px !important; gap: 32px !important; }

  /* Hotel/package grid */
  .hotel-grid, .pkg-grid { grid-template-columns: 1fr !important; }

  /* Footer grid */
  .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 24px !important; }

  /* Gallery masonry */
  .gallery-grid { columns: 2 !important; }

  /* Driver grid */
  .driver-grid .driver-card { flex-direction: column; text-align: center; }
  .driver-card .driver-avatar { margin: 0 auto; }
  .driver-card .driver-actions { justify-content: center; }

  /* Form rows */
  .row2, .form-row { grid-template-columns: 1fr !important; gap: 0 !important; }

  /* Page hero */
  .page-hero { margin-top: 70px; }
  .page-hero-content h1 { font-size: 2.2rem !important; }

  /* Taxi section in booking */
  div[style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; }

  /* Logo text size */
  .logo span { font-size: 1rem !important; }
  .logo img { height: 56px !important; }
}

@media (max-width: 480px) {
  .hero h1, .hero-content h1 { font-size: 1.9rem !important; }
  .section-title { font-size: 1.8rem !important; }
  .exp-grid { grid-template-columns: 1fr !important; }
  .footer-grid { grid-template-columns: 1fr !important; }
  .gallery-grid { columns: 1 !important; }
  .stats { flex-direction: column; gap: 20px; }
  footer { padding: 40px 20px 24px !important; }
}

/* ═══════════════════ PREMIUM FOOTER ═══════════════════ */
.pf{background:#07131f;padding:0 0 0;color:rgba(255,255,255,.55);}
.pf-inner{max-width:1400px;margin:0 auto;padding:60px 32px 48px;display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:48px;}
.pf-logo{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.pf-logo img{height:56px;mix-blend-mode:lighten;}
.pf-logo span{font-family:'Playfair Display',Georgia,serif;font-size:1.1rem;font-weight:700;color:#fff;}
.pf-about p{font-size:.84rem;line-height:1.7;max-width:270px;margin-bottom:18px;}
.pf-social{display:flex;gap:10px;}
.pf-soc-btn{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;text-decoration:none;color:#fff;transition:all .2s;background:rgba(255,255,255,.1);}
.pf-soc-btn:hover{transform:translateY(-3px);box-shadow:0 4px 16px rgba(0,0,0,.3);}
.pf-fb:hover{background:#1877f2;}
.pf-ig:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);}
.pf-wa:hover{background:#25d366;}
.pf-col h4{font-family:'Playfair Display',Georgia,serif;font-size:.95rem;color:#fff;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08);}
.pf-col ul{list-style:none;padding:0;}
.pf-col ul li{margin-bottom:9px;}
.pf-col ul li a{color:rgba(255,255,255,.5);font-size:.84rem;text-decoration:none;transition:color .2s;}
.pf-col ul li a:hover{color:#c9a84c;}
.pf-blogs li a{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pf-nl-form{display:flex;flex-direction:column;gap:8px;}
.pf-nl-form input{padding:11px 14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#fff;font-size:.88rem;font-family:inherit;outline:none;transition:border-color .2s;}
.pf-nl-form input::placeholder{color:rgba(255,255,255,.35);}
.pf-nl-form input:focus{border-color:#e8622a;}
.pf-nl-form button{padding:11px;background:#e8622a;color:#fff;border:none;border-radius:6px;font-size:.88rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s;}
.pf-nl-form button:hover{background:#cf5520;}
.pf-contact p{font-size:.82rem;color:rgba(255,255,255,.5);line-height:1.7;margin-bottom:4px;}
.pf-contact a{color:rgba(255,255,255,.5);text-decoration:none;transition:color .2s;}
.pf-contact a:hover{color:#c9a84c;}
.pf-bar{border-top:1px solid rgba(255,255,255,.06);padding:18px 0;}
.pf-bar-inner{max-width:1400px;margin:0 auto;padding:0 32px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-size:.78rem;color:rgba(255,255,255,.3);}
.pf-bar-links{display:flex;gap:20px;}
.pf-bar-links a{color:rgba(255,255,255,.3);text-decoration:none;transition:color .2s;}
.pf-bar-links a:hover{color:rgba(255,255,255,.7);}

@media(max-width:1024px){
  .pf-inner{grid-template-columns:1fr 1fr;gap:32px;}
}
@media(max-width:640px){
  .pf-inner{grid-template-columns:1fr;gap:28px;padding:40px 20px 32px;}
  .pf-bar-inner{flex-direction:column;text-align:center;}
}
