/**
 * Supreme Punawale - Mobile Styles
 * Complete mobile redesign - single consolidated stylesheet
 * Breakpoints: 991px (tablet), 767px (mobile), 575px (small mobile), 480px, 360px
 */

/* ========== BASE ========== */
html, body {
  overflow-x: hidden;
  max-width: 100vw;
}

/* ========== TABLET (≤991px) ========== */
@media (max-width: 991px) {
  .menu_v1 .logo_panel { display: flex; }
  .menu_v1 .closebt, .menu_v1 .hamburger_2, .menu_v1 .layer { display: block; }
  header nav ul li:first-child { display: none; }
  .parallax_wrapper { padding-left: 25%; padding-right: 0; }
  .parallax_wrapper .img_over { left: 0; }
  .parallax_wrapper.inverted { padding-right: 25%; padding-left: inherit; }
  .parallax_wrapper.inverted .img_over { right: 0; left: inherit; }
  .margin_120 { padding-top: 60px; padding-bottom: 60px; }
  .margin_80 { padding-top: 40px; padding-bottom: 40px; }
  .location-map-sidebar { position: static; }
  .location-map-sidebar .map { min-height: 350px; }
}

/* ========== MOBILE (≤767px) ========== */
@media (max-width: 767px) {
  /* Banner visibility */
  .d-banner { display: none !important; }
  .m-banner { display: block !important; }

  /* Layout & containers */
  main .container, main .container-fluid { padding-left: 16px; padding-right: 16px; max-width: 100%; }
  .margin_120_95, .margin_120 { padding-top: 40px; padding-bottom: 40px; }
  .margin_80 { padding-top: 32px; padding-bottom: 32px; }
  main { padding-bottom: 70px; }
  .footer-bottom { padding-bottom: 70px; }

  /* Typography */
  main .title h2 { font-size: clamp(1.35rem, 5vw, 1.75rem); }
  main .title small { font-size: 0.8rem; }

  /* Header & Logo */
  header { padding: 15px 0; }
  .logo1 { width: 73px; }
  .logo2 { width: 100px; padding: 8px 10px; }

  /* Hero / Home */
  .hero.full-height { height: 87vh; }
  .rounded-img.project-section .item { width: 100%; padding: 5px; }
  .rounded-img.project-section { display: flex; flex-wrap: wrap; }

  /* Banner / Hero */
  .container.banner-text { margin-left: 0; padding-left: 16px; padding-right: 16px; top: 45%; }
  .slide-text.white h2 { font-size: clamp(1.5rem, 6vw, 2rem); line-height: 1.2; }
  .slide-text.white .banner-location { font-size: 0.85rem; }
  p.banner-high { font-size: 0.9rem; padding-bottom: 6px; }
  img.check-icon { width: 18px; margin-right: 6px; }
  .banner-typology .banner-typology-detail { padding: 8px 14px; font-size: 0.85rem; }
  .banner-price .banner-price-detail { font-size: 1rem; padding: 8px 14px; }
  .banner-price .banner-price-detail span { font-size: 1.25rem; }
  .banner-high.mt-10 { font-size: 0.85rem; margin-top: 8px !important; }
  .banner-form { display: none; }

  /* Overview */
  #overview { overflow-x: hidden; }
  #overview .intro p { font-size: 0.95rem; line-height: 1.6; }
  #overview .intro .btn_1 { width: 100%; text-align: center; display: block; }
  #overview .parallax_wrapper { padding-left: 0 !important; padding-right: 0 !important; }
  #overview .parallax_wrapper .img_over { left: 5% !important; right: 5% !important; }
  #overview .parallax_wrapper .img_over img { width: 90%; }

  /* Highlights */
  #highlights .row { flex-direction: column; }
  #highlights .col-lg-5 { order: 2; }
  #highlights .col-lg-6 { order: 1; margin-bottom: 24px; }
  .pinned-image--small { height: 45vh; min-height: 220px; }
  .highlights-riverside { display: flex; flex-wrap: wrap; gap: 8px; }
  .highlight-pill { font-size: 0.8rem; padding: 6px 12px; }
  .highlights-tagline { font-size: 0.95rem; }

  /* Marquee */
  .marquee .content { font-size: 0.9rem; padding: 12px 0; }

  /* Price */
  .price-section .price-box { padding: 24px 16px; margin: 8px 0; }
  .price-section .typology { font-size: 1rem; }
  .price-section .price-details { font-size: 1.1rem; }
  .price-section .price-disclaimer { font-size: 0.75rem; text-align: center; }

  /* Floor plan */
  .floor-plans .floor-img img { width: 100%; height: 280px; object-fit: cover; }
  .floor-plans .floor-img p { font-size: 1rem; }

  /* Gallery */
  #gallery .item img { height: 300px; object-fit: cover; }
  #gallery .title { margin-bottom: 1.5rem !important; }

  /* Location */
  .location-tabs { overflow-x: auto; flex-wrap: nowrap; -webkit-overflow-scrolling: touch; scrollbar-width: none; padding-bottom: 4px; }
  .location-tabs::-webkit-scrollbar { display: none; }
  .location-tabs .nav-link { font-size: 0.8rem; padding: 8px 12px; white-space: nowrap; }
  .location-tab-content { min-height: 280px; padding: 16px; }
  .location-tab-content .location-list { font-size: 0.9rem; }
  .location-map-sidebar .map { min-height: 280px; height: 280px; }
  .location-image { border-width: 4px; padding: 3px; }
  .map { height: 250px; width: 100%; }

  /* Walkthrough */
  .walkthrough .container { padding-left: 16px; padding-right: 16px; }
  .walkthrough-cover-img { min-height: 0; aspect-ratio: 16/9; }
  .walkthrough-play-btn { width: 64px; height: 64px; }
  .walkthrough-play-btn i { font-size: 2rem; }
  .walkthrough-play-text { font-size: 0.9rem; }
  .vedio { height: 300px; width: 100%; }

  /* Contact */
  .contact-section-footer-micro .row { flex-direction: column; }
  .contact-section-footer-micro .col-xl-6, .contact-section-footer-micro .col-xl-5 { max-width: 100%; margin-bottom: 24px; }
  .about-developer { font-size: 0.95rem; line-height: 1.6; }
  .form-heading { font-size: 1.25rem; }
  .disc label { font-size: 0.8rem; line-height: 1.5; }

  /* Footer */
  .footer-bottom { text-align: center; }
  .footer-bottom ul li { list-style: none; }
  .footer-bottom h4 { color: #fff; border-bottom: 1px solid rgba(117,117,117,0.5); padding-bottom: 10px; width: 70%; margin: auto; }
  .mobile-section-footer { display: flex !important; position: fixed; bottom: 0; z-index: 99; background: #e15e3f; width: 100%; padding: 10px 12px; gap: 8px; justify-content: center; align-items: center; }
  .mobile-section-footer .btn { flex: 1; font-size: 0.8rem; padding: 10px 8px; text-align: center; color: #fff; font-weight: 500; border-right: 1px solid rgba(255,255,255,0.3); border-radius: 0; }
  .mobile-section-footer .btn:last-child { border-right: 0; }

  /* Buttons */
  .btn_1.outline.appbtn, a.query-btn { padding: 10px 20px; font-size: 0.9rem; }
  center .btn_1 { display: inline-block; margin: 8px 0; }

  /* WhatsApp pop */
  .whatsapp-mini-text-img span { font-size: 10px; padding: 8px; left: 50px; }
}

/* ========== SMALL MOBILE (≤575px) ========== */
@media (max-width: 575px) {
  main .container, main .container-fluid { padding-left: 12px; padding-right: 12px; }
  .margin_120_95, .margin_120 { padding-top: 32px; padding-bottom: 32px; }
  .margin_80 { padding-top: 28px; padding-bottom: 28px; }
  .pinned-image--small { height: 40vh; min-height: 200px; }
  .price-section .price-box { padding: 20px 14px; }
  .floor-plans .floor-img img { height: 240px; }
  .location-map-sidebar .map { min-height: 250px; height: 250px; }
}

/* ========== EXTRA SMALL (≤480px) ========== */
@media (max-width: 480px) {
  .container.banner-text { padding-left: 12px; padding-right: 12px; }
  .slide-text.white h2 br { display: none; }
  .floor-plans .floor-img img { height: 220px; }
  .walkthrough-play-btn { width: 56px; height: 56px; }
  .walkthrough-play-btn i { font-size: 1.75rem; margin-left: 4px; }
  .walkthrough-play-text { font-size: 0.85rem; }
  .owl-stage-outer .item img { height: 280px; object-fit: cover; }
  .mobile-section-footer .btn { font-size: 0.75rem; padding: 10px 6px; }
}

/* ========== MINI (≤360px) ========== */
@media (max-width: 360px) {
  main .container { padding-left: 10px; padding-right: 10px; }
  .walkthrough-play-btn { width: 48px; height: 48px; }
  .walkthrough-play-btn i { font-size: 1.5rem; }
}
