/* ===========================================================================
   SONALIKA · MOBILE PREMIUM ENHANCEMENT LAYER  (additive, mobile-only)
   Loaded LAST on every page. Refines the experience on phones only.
   App-style bottom nav + top call button + premium hero/section polish.
   =========================================================================== */

.mpx-nav, .mpx-phone{ display:none; }

@media (max-width: 768px){

  :root{ --mpx-nav-h: 78px; }

  /* no sideways scroll, smooth momentum */
  html, body{ max-width:100%; overflow-x:hidden; -webkit-overflow-scrolling:touch; }

  /* keep content + footer clear of the fixed bottom nav */
  body{ padding-bottom: calc(var(--mpx-nav-h) + env(safe-area-inset-bottom, 0px)); }

  a, button{ -webkit-tap-highlight-color: transparent; }

  /* hide the page's own burger — the bottom nav handles navigation now */
  .hnav .hburger{ display:none !important; }

  /* comfortable tap targets + premium press feedback */
  .btn, .ni-btn-gold, .ni-btn-outline, .scx-btn, .ibtn, .part-enq, .cm-btn, .bslot{ min-height:46px; }
  .btn:active, .ni-btn-gold:active, .ni-btn-outline:active, .scx-btn:active,
  .ibtn:active, .part-enq:active, .part:active, .tcard:active, .mcard:active,
  .cm-tcard:active{ transform: scale(.975); transition: transform .12s ease; }

  /* ---------- PREMIUM HERO POLISH ---------- */
  .ni-hero, .tt-hero, .sp-hero, .ab-hero{ min-height:100svh; position:relative; }
  .tt-hero::after, .sp-hero::after, .ab-hero::after{
    content:""; display:block; position:absolute; left:0; right:0; bottom:0; height:48%;
    background:linear-gradient(180deg, transparent, rgba(2,6,20,.82)); z-index:1; pointer-events:none;
  }
  .ni-wrap, .tt-hero > .wrap, .sp-hero > .wrap, .ab-hero > .wrap{
    position:relative; z-index:2; padding-bottom: clamp(26px, 7vw, 48px);
  }
  .ni-title, .tt-hero h1, .sp-hero h1, .ab-hero h1{ letter-spacing:-.03em; line-height:1.06; }

  /* refined glass stats card on the home hero */
  .ni-stats{
    background:rgba(13,20,42,.55) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    box-shadow:0 14px 40px -16px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.08) !important;
  }

  /* ---------- light section premium polish ---------- */
  .section{ padding-top:clamp(46px,9vw,64px); padding-bottom:clamp(46px,9vw,64px); }
  .scx-stage-wrap, .tcard, .part, .why2-card, .talk-card, .booking, .compare,
  .mcard, .stat4{ border-radius:20px; }
  .tcard, .part, .why2-card{ box-shadow:0 18px 40px -22px rgba(0,0,0,.55); }
}

/* ===================== TOP CALL BUTTON (FAB) ===================== */
@media (max-width: 768px){
  .mpx-phone{
    position:fixed; top:14px; right:14px; z-index:9600;
    width:46px; height:46px; border-radius:14px;
    background:rgba(18,26,48,.7); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
    border:1px solid rgba(255,255,255,.16); color:#fff;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 10px 24px -10px rgba(0,0,0,.6);
    animation:mpxFade .5s ease .4s both;
  }
  .mpx-phone svg{ width:21px; height:21px; }
  .mpx-phone .dot{
    position:absolute; top:9px; right:9px; width:8px; height:8px; border-radius:50%;
    background:#f4b400; box-shadow:0 0 0 2px rgba(18,26,48,.95);
  }
}

/* ===================== APP-STYLE BOTTOM NAV ===================== */
@media (max-width: 768px){
  .mpx-nav{
    position:fixed; left:0; right:0; bottom:0; z-index:9500;
    display:grid; grid-template-columns:repeat(5,1fr); align-items:end;
    padding:9px 6px calc(9px + env(safe-area-inset-bottom, 0px));
    background:rgba(10,15,30,.9); -webkit-backdrop-filter:blur(22px) saturate(150%); backdrop-filter:blur(22px) saturate(150%);
    border-top:1px solid rgba(255,255,255,.1);
    box-shadow:0 -12px 34px -16px rgba(0,0,0,.7);
    animation:mpxUp .55s cubic-bezier(.16,1,.3,1) .2s both;
  }
  @keyframes mpxUp{ from{ transform:translateY(120%);} to{ transform:none;} }
  @keyframes mpxFade{ from{ opacity:0; transform:translateY(-6px);} to{ opacity:1; transform:none;} }

  .mpx-item{
    display:flex; flex-direction:column; align-items:center; gap:4px;
    text-decoration:none; color:rgba(255,255,255,.62);
    font-size:10px; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
    padding:4px 2px; cursor:pointer; background:none; border:none; font-family:inherit;
    transition:color .2s;
  }
  .mpx-item svg{ width:22px; height:22px; }
  .mpx-item .mpx-label{ line-height:1; }
  .mpx-item:active{ transform:scale(.94); }
  .mpx-item.active{ color:#f4b400; }

  /* center highlighted action (Parts) */
  .mpx-center{ position:relative; }
  .mpx-center .mpx-fab{
    width:56px; height:56px; margin-bottom:6px; border-radius:50%;
    background:linear-gradient(150deg,#ffd25e,#f4b400); color:#16224d;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 12px 26px -8px rgba(244,180,0,.8), 0 0 0 5px rgba(10,15,30,.92);
  }
  .mpx-center .mpx-fab svg{ width:26px; height:26px; }
  .mpx-center.active .mpx-label, .mpx-center .mpx-label{ color:#f4b400; }
}

@media (prefers-reduced-motion: reduce){
  .mpx-nav, .mpx-phone{ animation:none; }
  .ni-hero{ animation:none !important; }
  .btn:active, .ni-btn-gold:active, .ni-btn-outline:active, .scx-btn:active,
  .ibtn:active, .part-enq:active, .part:active, .tcard:active, .mcard:active,
  .cm-tcard:active, .mpx-item:active{ transform:none; }
}
