/* =========================================================================
   BALAJEE ENTERPRISES — RESPONSIVE STYLESHEET
   Breakpoints follow Bootstrap 5 scale plus a few custom checkpoints.
   ========================================================================= */

/* -------- Large desktop refinements (>1440px) -------- */
@media (min-width:1440px){
  .container-fluid-custom{max-width:1520px;}
}

/* -------- Small laptops / large tablets (<=1280px) -------- */
@media (max-width:1280px){
  .card-grid,.products-grid{grid-template-columns:repeat(2,1fr);}
  .feature-grid{grid-template-columns:repeat(2,1fr);}
  .category-grid{grid-template-columns:repeat(2,1fr);}
  .trust-grid{grid-template-columns:repeat(2,1fr);}
}

/* -------- Tablets (<=1024px) -------- */
@media (max-width:1024px){
  .main-nav{gap:1.4rem;}
  .main-nav .nav-link{font-size:.66rem;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2.2rem;}
  .story-media{height:440px;}
  .pm-dialog{grid-template-columns:1fr;}
  .pm-media{min-height:240px;}
}

/* -------- Tablets / small laptops nav swap (<=991.98px) -------- */
@media (max-width:991.98px){
  .main-nav,.nav-dropdown,.site-header .nav-cta .btn-balajee.d-lg-inline-flex{display:none !important;}
  .nav-toggle{display:inline-flex;}
  .theme-toggle{display:inline-flex;}
  .hero{padding-top:6.5rem;align-items:flex-end;}
  .hero-inner{padding-bottom:3rem;}
  .contact-form-card,.contact-info-card{padding:2rem;}
}

/* -------- Portrait tablets (<=820px) -------- */
@media (max-width:820px){
  .card-grid,.products-grid,.feature-grid,.category-grid,.trust-grid{grid-template-columns:repeat(2,1fr);}
  .story-section .row{flex-direction:column-reverse;}
  .story-media{height:380px;margin-bottom:2rem;}
  .process-step{gap:1.2rem;}
}

/* -------- Large phones / small tablets (<=768px) -------- */
@media (max-width:767.98px){
  :root{--section-pad:clamp(3.4rem,10vw,5rem);}
  h1{font-size:clamp(2.1rem,9vw,3rem);}
  h2{font-size:clamp(1.7rem,7vw,2.4rem);}
  .card-grid,.products-grid,.feature-grid,.category-grid,.trust-grid{grid-template-columns:1fr 1fr;gap:1rem;}
  .footer-grid{grid-template-columns:1fr;gap:2rem;}
  .footer-bottom{flex-direction:column;align-items:flex-start;text-align:left;}
  .hero-scroll-cue{display:none;}
  .products-toolbar{flex-direction:column;align-items:stretch;}
  .search-wrap{min-width:0;}
  .stamp{width:88px;height:88px;}
}

/* -------- Phones (<=575.98px) -------- */
@media (max-width:575.98px){
  .card-grid,.products-grid,.feature-grid,.category-grid,.trust-grid{grid-template-columns:1fr;}
  .btn-balajee{padding:.85em 1.4em;font-size:.72rem;}
  .hero .hero-actions{flex-direction:column;align-items:stretch;}
  .hero .hero-actions .btn-balajee{justify-content:center;}
  .brand .brand-text{font-size:1rem;}
  .brand .brand-mark{width:32px;height:32px;}
  .offcanvas-panel{width:100vw;padding:6rem 1.4rem 2rem;}
  .offcanvas-nav .oc-link{font-size:1.5rem;}
  .contact-info-card,.contact-form-card{padding:1.6rem;}
  .service-card{padding:1.8rem;}
  .page-hero{padding:8.5rem 0 3.5rem;}
  .pm-body{padding:1.6rem;}
}

/* -------- Very small phones (<=414px / 390px / 375px / 320px) -------- */
@media (max-width:414px){
  .section{padding-block:3rem;}
  .trust-pill,.feature-card{padding:1.4rem 1.2rem;}
  .stamp{display:none;}
  .deco-glow{width:280px;height:280px;}
}
@media (max-width:340px){
  h1{font-size:1.9rem;}
  .btn-balajee{font-size:.66rem;padding:.75em 1.15em;}
}

/* -------- No-hover / touch devices: disable heavy mouse-only effects -------- */
@media (hover:none) and (pointer:coarse){
  .product-card:hover .card-media img,.category-tile:hover img{transform:none;}
  .product-card{transform:none !important;}
  .trust-pill:hover{transform:none;box-shadow:var(--shadow-soft);}
  .service-card:hover{transform:none;}
}

/* -------- Prevent horizontal overflow safety net -------- */
html,body{max-width:100%;overflow-x:hidden;}
