/* =========================================================
   M.V. ENGINEERING WORKS — custom stylesheet
   Theme: Industrial Red & Dark Grey
   ========================================================= */

:root{
  --mv-dark:      #1a1d21;
  --mv-dark-2:    #24282e;
  --mv-red:       #c8202f;
  --mv-red-dark:  #9c1622;
  --mv-steel:     #4a5058;
  --mv-grey-bg:   #f3f4f6;
  --mv-grey-line: #dfe1e4;
  --mv-white:     #ffffff;
  --mv-text:      #232629;
  --mv-text-soft: #6b7075;

  --font-head: 'Montserrat', sans-serif;
  --font-body: 'Montserrat', sans-serif;
}

html{ scroll-behavior:smooth; }

body{
  font-family: var(--font-body);
  color: var(--mv-text);
  background: var(--mv-white);
  line-height:1.65;
}

h1,h2,h3,h4,h5,.font-head{
  font-family: var(--font-head);
  letter-spacing:.01em;
  font-weight:700;
  color: var(--mv-dark);
}

a{ text-decoration:none; }
img{ max-width:100%; }

/* Reusable */
.text-red{ color: var(--mv-red); }
.bg-mv-dark{ background: var(--mv-dark); }
.bg-mv-grey{ background: var(--mv-grey-bg); }

.section-pad{ padding:5.5rem 0; }
@media (max-width:767.98px){ .section-pad{ padding:3.25rem 0; } }

.section-head{ margin-bottom:2.2rem; }
.section-head .kicker{
  display:inline-block;
  font-family: var(--font-head);
  color: var(--mv-red);
  font-weight:600;
  font-size:.95rem;
  letter-spacing:.08em;
  margin-bottom:.35rem;
}
.section-head h2{ font-size:2.15rem; margin-bottom:.5rem; }
.section-head p{ color: var(--mv-text-soft); }

.btn-mv-red{
  background: var(--mv-red);
  border:2px solid var(--mv-red);
  color:#fff;
  font-family: var(--font-head);
  text-transform:uppercase;
  letter-spacing:.04em;
  font-weight:600;
  padding:.7rem 1.75rem;
  border-radius:2px;
  transition: all .25s ease;
}
.btn-mv-red:hover{ background: var(--mv-red-dark); border-color:var(--mv-red-dark); color:#fff; }

.btn-mv-outline{
  background:transparent;
  border:2px solid #fff;
  color:#fff;
  font-family: var(--font-head);
  text-transform:uppercase;
  letter-spacing:.04em;
  font-weight:600;
  padding:.7rem 1.75rem;
  border-radius:2px;
  transition: all .25s ease;
}
.btn-mv-outline:hover{ background:#fff; color: var(--mv-dark); }

.btn-mv-dark{
  background: var(--mv-dark);
  border:2px solid var(--mv-dark);
  color:#fff;
  font-family: var(--font-head);
  text-transform:uppercase;
  letter-spacing:.04em;
  font-weight:600;
  padding:.6rem 1.5rem;
  border-radius:2px;
  transition: all .25s ease;
}
.btn-mv-dark:hover{ background: var(--mv-red); border-color:var(--mv-red); color:#fff; }

/* =========== TOP BAR =========== */
.mv-topbar{
  background: var(--mv-dark);
  color:#c9cccf;
  font-size:.85rem;
  padding:.45rem 0;
  border-bottom:1px solid #303539;
}
.mv-topbar a{ color:#c9cccf; }
.mv-topbar a:hover{ color: var(--mv-red); }
.mv-topbar .phone-highlight{
  color:#fff;
  font-weight:600;
  letter-spacing:.02em;
}
.mv-topbar .phone-highlight i{ color: var(--mv-red); }

/* =========== NAVBAR =========== */
.mv-navbar{
  background:#fff;
  padding:.75rem 0;
  box-shadow:0 2px 12px rgba(0,0,0,.06);
}
.mv-navbar .navbar-brand{
  font-family: var(--font-head);
  font-weight:700;
  font-size:1.5rem;
  color: var(--mv-dark);
  line-height:1.1;
}
.mv-navbar .navbar-brand span{
  display:block;
  font-size:1.2rem;
  font-weight:600;
  color:#000;
}

.mv-navbar .navbar-brand span span{
  display:block;
  font-size:0.8rem;
  font-weight:600;
  color: var(--mv-red);
}

.mv-navbar .navbar-brand .brand-mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px; height:44px;
  background: var(--mv-red);
  color:#fff;
  margin-right:.6rem;
  font-family: var(--font-head);
  font-size:1.15rem;
  transform: skew(-8deg);
}
.mv-navbar .nav-link{
  font-family: var(--font-head);
  text-transform:uppercase;
  font-size:.9rem;
  letter-spacing:.03em;
  color: var(--mv-dark);
  font-weight:500;
  padding:.5rem 1rem !important;
  position:relative;
}
.mv-navbar .nav-link:hover,
.mv-navbar .nav-link:focus{ color: var(--mv-red); }
.mv-navbar .nav-link.active{ color: var(--mv-red); }

.mv-navbar .dropdown-menu{
  border:none;
  border-top:3px solid var(--mv-red);
  border-radius:0;
  box-shadow:0 12px 24px rgba(0,0,0,.12);
  padding:.4rem 0;
}
.mv-navbar .dropdown-item{
  font-size:.9rem;
  padding:.55rem 1.25rem;
  color: var(--mv-text);
}
.mv-navbar .dropdown-item:hover{ background: var(--mv-grey-bg); color: var(--mv-red); }

/* =========== HERO CAROUSEL =========== */
.mv-hero{ position:relative; }
.mv-hero .carousel-item{
  height:88vh;
  min-height:520px;
  background-size:cover;
  background-position:center;
  position:relative;
  display:flex;
  align-items:center;
}
.mv-hero .carousel-item::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(15,17,19,.55) 0%, rgba(15,17,19,.72) 100%);
}
.mv-hero .slide-caption{
  position:relative;
  z-index:2;
  max-width:720px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.mv-hero .slide-tag{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  color:#fff;
  background: var(--mv-red);
  font-family: var(--font-head);
  font-size:.8rem;
  letter-spacing:.08em;
  padding:.35rem .9rem;
  margin-bottom:1.25rem;
  width:fit-content;
  transform: skew(-8deg);
}
.mv-hero .slide-tag span{ display:inline-block; transform: skew(8deg); }
.mv-hero h1{
  color:#fff;
  font-size:3.1rem;
  line-height:1.15;
  margin-bottom:1rem;
}
.mv-hero p{
  color:#dfe2e5;
  font-size:1.1rem;
  margin-bottom:1.75rem;
  max-width:560px;
  margin-left:auto;
  margin-right:auto;
}
.mv-hero .carousel-indicators [data-bs-target]{
  width:38px; height:4px; border-radius:0;
  background: rgba(255,255,255,.4);
}
.mv-hero .carousel-indicators .active{ background: var(--mv-red); }
.mv-hero .carousel-control-prev,
.mv-hero .carousel-control-next{ width:5%; opacity:.7; }

@media (max-width:767.98px){
  .mv-hero .carousel-item{ height:78vh; min-height:460px; }
  .mv-hero h1{ font-size:2.1rem; }
}

/* =========== STRIP STATS =========== */
.mv-stats {
    background: #f2f3f5;
    color: #fff;
}
.mv-stats .stat-num {
    font-family: var(--font-head);
    font-size: 1rem;
    color: var(--mv-red);
    line-height: 1;
    font-weight: bold;
}
.mv-stats .stat-label{
  font-size:.85rem;
  color:#000;
  letter-spacing:.06em;
}

/* =========== ABOUT =========== */
.mv-about-img{
  position:relative;
}
.mv-about-img img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.mv-about-img::before{
  content:"";
  position:absolute;
  top:-18px; left:-18px;
  width:70%; height:70%;
  border:6px solid var(--mv-red);
  z-index:-1;
}
.mv-about-badge{
  position:absolute;
  bottom:-24px; right:-18px;
  background: var(--mv-red);
  color:#fff;
  padding:1.1rem 1.4rem;
  text-align:center;
  font-family: var(--font-head);
}
.mv-about-badge .num{ font-size:1.9rem; display:block; line-height:1; }
.mv-about-badge .lbl{ font-size:.72rem; letter-spacing:.05em; text-transform:uppercase; }

.mv-check-list li{
  display:flex;
  align-items:flex-start;
  gap:.65rem;
  margin-bottom:.65rem;
}
.mv-check-list i{ color: var(--mv-red); margin-top:.25rem; }

/* =========== PRODUCTS SLIDER =========== */
.mv-product-card{
  background:#fff;
  border:1px solid var(--mv-grey-line);
  margin:0 12px;
  transition: box-shadow .25s ease, transform .25s ease;
  height:100%;
}
.mv-product-card:hover{
  box-shadow:0 18px 30px rgba(20,22,25,.12);
  transform: translateY(-4px);
}
.mv-product-card .img-wrap{
  overflow:hidden;
  height:210px;
  position:relative;
}
.mv-product-card .img-wrap img{
  width:100%; min-height:100%; object-fit:cover;
  transition: transform .5s ease;
}
.mv-product-card:hover .img-wrap img{ transform: scale(1.08); }
.mv-product-card .tag{
  position:absolute; top:12px; left:12px;
  background: var(--mv-red);
  color:#fff;
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  padding:.25rem .6rem;
}
.mv-product-card .body{ padding:1.25rem 1rem 1.4rem; }
.mv-product-card h5{ font-size:1.05rem; margin-bottom:.5rem; }
.mv-product-card p{ font-size:.9rem; color: var(--mv-text-soft); margin-bottom:1rem; min-height:60px; }
.mv-product-card .card-footer-row{
  display:flex; align-items:center; justify-content:space-between;
  border-top:1px solid var(--mv-grey-line);
  padding-top:.9rem;
}
.mv-product-card .enquire-link{
  font-family: var(--font-head);
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.03em;
  color: var(--mv-red);
  font-weight:600;
}
.mv-product-card .enquire-link i{ margin-left:.3rem; transition: margin-left .2s ease; }
.mv-product-card .enquire-link:hover i{ margin-left:.55rem; }

/* Slick arrows */
.mv-slick .slick-prev, .mv-slick .slick-next{
  width:44px; height:44px;
  background: var(--mv-dark);
  z-index:5;
}
.mv-slick .slick-prev{ left:-6px; }
.mv-slick .slick-next{ right:-6px; }
.mv-slick .slick-prev:hover, .mv-slick .slick-next:hover{ background: var(--mv-red); }
.mv-slick .slick-prev:before{ content:"\f104"; font-family:"Font Awesome 6 Free"; font-weight:900; }
.mv-slick .slick-next:before{ content:"\f105"; font-family:"Font Awesome 6 Free"; font-weight:900; }
.mv-slick .slick-dots li button:before{ font-size:9px; }
.mv-slick .slick-dots li.slick-active button:before{ color: var(--mv-red); }
.mv-slick .slick-slide{ padding-bottom:6px; }
.mv-testimonials-slider{ padding-bottom:2rem; }
.mv-testimonials-slider .slick-dots{ bottom:-2.2rem; }

/* =========== WHY CHOOSE US =========== */
.mv-why-card{
  padding:2rem 1.6rem;
  height:100%;
  background:#fff;
  border-left:3px solid transparent;
  transition: border-color .25s ease, box-shadow .25s ease;
}
.mv-why-card:hover{
  border-left-color: var(--mv-red);
  box-shadow:0 12px 26px rgba(20,22,25,.08);
}
.mv-why-card .icon{
  width:56px; height:56px;
  display:flex; align-items:center; justify-content:center;
  background: var(--mv-grey-bg);
  color: var(--mv-red);
  font-size:1.35rem;
  margin-bottom:1.1rem;
}
.mv-why-card h5{ font-size:1.05rem; margin-bottom:.6rem; }
.mv-why-card p{ font-size:.9rem; color: var(--mv-text-soft); margin-bottom:0; }

/* =========== INDUSTRIES =========== */
.mv-industry-tile{
  position:relative;
  overflow:hidden;
  height:260px;
}
.mv-industry-tile img{
  width:100%; height:100%; object-fit:cover;
  transition: transform .5s ease;
}
.mv-industry-tile::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(26,29,33,0) 30%, rgba(26,29,33,.92) 100%);
}
.mv-industry-tile:hover img{ transform: scale(1.1); }
.mv-industry-tile .label{
  position:absolute; left:0; right:0; bottom:0;
  z-index:2;
  padding:1.1rem 1.2rem;
  color:#fff;
}
.mv-industry-tile .label h5{ color:#fff; margin-bottom:.15rem; font-size:1rem; }
.mv-industry-tile .label span{ font-size:.78rem; color:#c9cccf; }

/* =========== GALLERY =========== */
.mv-gallery-item{
  position:relative;
  overflow:hidden;
  aspect-ratio: 4/3;
}
.mv-gallery-item img{
  width:100%; height:100%; object-fit:cover;
  transition: transform .5s ease;
}
.mv-gallery-item:hover img{ transform: scale(1.12); }
.mv-gallery-item::after{
  content:"\f00e";
  font-family:"Font Awesome 6 Free"; font-weight:900;
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  background: rgba(200,32,47,0);
  color:#fff; font-size:1.4rem;
  opacity:0;
  transition: all .3s ease;
}
.mv-gallery-item:hover::after{ background: rgba(200,32,47,.78); opacity:1; }

/* =========== TESTIMONIALS =========== */
.mv-testimonial-card{
  background:#fff;
  padding:2.2rem;
  border-top:3px solid var(--mv-red);
  height:100%;
  box-shadow:0 10px 24px rgba(20,22,25,.06);
}
.mv-testimonial-card i.fa-quote-left{ color: var(--mv-grey-line); font-size:1.7rem; margin-bottom:1rem; }
.mv-testimonial-card p.quote{ color: var(--mv-text-soft); font-size:.95rem; margin-bottom:1.4rem; }
.mv-testimonial-card .person{ display:flex; align-items:center; gap:.75rem; }
.mv-testimonial-card .person .avatar{
  width:46px; height:46px; border-radius:50%;
  background: var(--mv-dark); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-family: var(--font-head); font-size:1rem;
}
.mv-testimonial-card .person h6{ margin-bottom:0; font-size:.92rem; }
.mv-testimonial-card .person span{ font-size:.78rem; color: var(--mv-text-soft); }

/* =========== CONTACT =========== */
.mv-contact{ background: var(--mv-dark); color:#fff; }
.mv-contact .section-head p{ color:#c9cccf; }
.mv-contact .contact-info-item{
  display:flex; gap:1rem; margin-bottom:1.6rem;
}
.mv-contact .contact-info-item .icon{
  width:46px; height:46px; min-width:46px;
  background: rgba(255,255,255,.06);
  display:flex; align-items:center; justify-content:center;
  color: var(--mv-red);
}
.mv-contact .contact-info-item h6{ color:#fff; margin-bottom:.2rem; font-size:.9rem; text-transform:uppercase; letter-spacing:.03em; }
.mv-contact .contact-info-item p{ color:#c9cccf; margin-bottom:0; font-size:.9rem; }

.mv-form{ background:#fff; }
.mv-form label{ font-size:.82rem; text-transform:uppercase; letter-spacing:.03em; color: var(--mv-text-soft); margin-bottom:.35rem; }
.mv-form .form-control, .mv-form .form-select{
  border-radius:0;
  border:1px solid var(--mv-grey-line);
  padding:.65rem .85rem;
}
.mv-form .form-control:focus, .mv-form .form-select:focus{
  border-color: var(--mv-red);
  box-shadow:0 0 0 .2rem rgba(200,32,47,.15);
}

/* =========== FOOTER =========== */
.mv-footer{ background:#111316; color:#c9cccf; }
.mv-footer h6{ color:#fff; text-transform:uppercase; font-size:.9rem; letter-spacing:.05em; margin-bottom:1.1rem; }
.mv-footer a{ color:#c9cccf; }
.mv-footer a:hover{ color: var(--mv-red); }
.mv-footer .footer-links li{ margin-bottom:.55rem; font-size:.9rem; }
.mv-footer .footer-links i{ color: var(--mv-red); font-size:.7rem; margin-right:.4rem; }
.mv-footer p.small-text{ font-size:.88rem; color:#9ea2a7; }
.mv-footer .social-icons a{
  width:36px; height:36px;
  display:inline-flex; align-items:center; justify-content:center;
  background: rgba(255,255,255,.06);
  margin-right:.5rem;
}
.mv-footer .social-icons a:hover{ background: var(--mv-red); color:#fff; }
.mv-footer-bottom{
  font-size:.85rem;
  color:#9ea2a7;
}

/* =========== BACK TO TOP =========== */
.mv-back-top{
  position:fixed; right:22px; bottom:22px;
  width:46px; height:46px;
  background: var(--mv-red); color:#fff;
  display:flex; align-items:center; justify-content:center;
  z-index:999; opacity:0; visibility:hidden;
  transition: all .3s ease;
}
.mv-back-top.show{ opacity:1; visibility:visible; }
.mv-back-top:hover{ background: var(--mv-dark); color:#fff; }

/* =========== PRODUCT DETAIL PAGE =========== */
.mv-page-header{
  background: var(--mv-dark);
  color:#fff;
  padding:3.5rem 0 2.5rem;
  position:relative;
  background-size:cover;
  background-position:center;
}
.mv-page-header::before{
  content:"";
  position:absolute; inset:0;
  background: rgba(20,22,25,.82);
}
.mv-page-header .inner{ position:relative; z-index:2; }
.mv-page-header .breadcrumb-item a{ color:#c9cccf; }
.mv-page-header .breadcrumb-item.active{ color: var(--mv-red); }
.mv-page-header h1{ color:#fff; margin-bottom:0; }

.mv-product-nav{
  background:#fff;
  border-bottom:1px solid var(--mv-grey-line);
  position:sticky; top:0; z-index:1030;
}
.mv-product-nav .nav-link{
  font-family: var(--font-head);
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.02em;
  color: var(--mv-text);
  padding:.9rem .85rem;
  border-bottom:3px solid transparent;
  white-space:nowrap;
}
.mv-product-nav .nav-link.active, .mv-product-nav .nav-link:hover{
  color: var(--mv-red);
  border-bottom-color: var(--mv-red);
}
.mv-product-nav .nav{ flex-wrap:nowrap; overflow-x:auto; }

.mv-product-detail{ padding:4.5rem 0; border-bottom:1px solid var(--mv-grey-line); scroll-margin-top:70px; }
.mv-product-detail:nth-child(even){ background: var(--mv-grey-bg); }
.mv-product-detail .spec-list{ list-style:none; padding:0; margin:1.5rem 0; }
.mv-product-detail .spec-list li{
  display:flex; justify-content:space-between;
  padding:.6rem 0; border-bottom:1px dashed var(--mv-grey-line);
  font-size:.92rem;
}
.mv-product-detail .spec-list li span:first-child{ color: var(--mv-text-soft); }
.mv-product-detail .spec-list li span:last-child{ font-weight:600; color: var(--mv-dark); }
.mv-product-detail img.detail-img{
  width:100%; height:380px; object-fit:cover;
  border-top:4px solid var(--mv-red);
}

/* Utility fade-in on load for hero only (single orchestrated moment) */
@media (prefers-reduced-motion: no-preference){
  .mv-hero h1, .mv-hero p, .mv-hero .btn, .mv-hero .slide-tag{
    animation: mvFadeUp .7s ease both;
  }
  .mv-hero .slide-tag{ animation-delay:.05s; }
  .mv-hero h1{ animation-delay:.15s; }
  .mv-hero p{ animation-delay:.25s; }
  .mv-hero .btn{ animation-delay:.35s; }
}
@keyframes mvFadeUp{
  from{ opacity:0; transform: translateY(18px); }
  to{ opacity:1; transform: translateY(0); }
}

/* =========================================================
   CATALOG PAGE — IndiaMART-style company strip + product grid
   ========================================================= */

/* =========== COMPANY PROFILE STRIP =========== */
.mv-company-strip{
  background:#fff;
  padding:2.2rem 0;
  border-bottom:1px solid var(--mv-grey-line);
}
.mv-company-card{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:1.75rem;
  justify-content:space-between;
}
.mv-company-logo{
  width:72px; height:72px;
  min-width:72px;
  background: var(--mv-red);
  color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-family: var(--font-head);
  font-size:1.5rem;
  font-weight:700;
  transform: skew(-8deg);
}
.mv-company-info{ flex:1; min-width:260px; }
.mv-company-info h2{ font-size:1.5rem; margin-bottom:.5rem; }
.mv-company-meta{
  display:flex; flex-wrap:wrap; gap:1.25rem;
  font-size:.85rem; color: var(--mv-text-soft);
  margin-bottom:.6rem;
}
.mv-company-meta i{ color: var(--mv-red); margin-right:.35rem; }
.mv-company-rating{ display:flex; align-items:center; gap:.5rem; font-size:.85rem; }
.mv-company-rating .stars{ color:#f5a623; letter-spacing:.1em; }
.mv-company-rating .rating-num{ font-weight:700; color: var(--mv-dark); }
.mv-company-rating .rating-count{ color: var(--mv-text-soft); }
.mv-company-actions{ display:flex; flex-wrap:wrap; gap:.6rem; }
.mv-company-actions .btn{ font-size:.82rem; padding:.6rem 1.2rem; }

.btn-mv-outline-dark{
  background:transparent;
  border:2px solid var(--mv-dark);
  color: var(--mv-dark);
  font-family: var(--font-head);
  text-transform:uppercase;
  letter-spacing:.04em;
  font-weight:600;
  padding:.6rem 1.2rem;
  border-radius:2px;
  transition: all .25s ease;
}
.btn-mv-outline-dark:hover{ background: var(--mv-dark); color:#fff; }

/* =========== PRODUCT CATALOG GRID (category-grouped) =========== */
.mv-catalog{ padding:4.5rem 0; }
.mv-cat-block{ margin-bottom:2.75rem; }
.mv-cat-block:last-child{ margin-bottom:0; }
.mv-cat-title{
  font-size:1.05rem;
  text-transform:uppercase;
  letter-spacing:.03em;
  padding-bottom:.6rem;
  margin-bottom:1.25rem;
  border-bottom:2px solid var(--mv-grey-line);
  display:flex; align-items:baseline; gap:.5rem;
}
.mv-cat-title span{
  font-size:.8rem; font-weight:500;
  color: var(--mv-text-soft);
  text-transform:none; letter-spacing:0;
}
.mv-cat-grid{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(172px,1fr));
  gap:1.1rem;
}
.mv-mini-card{
  background:#fff;
  border:1px solid var(--mv-grey-line);
  display:flex; flex-direction:column;
  overflow:hidden;
  color: var(--mv-text);
  transition: box-shadow .25s ease, border-color .25s ease, transform .25s ease;
}
.mv-mini-card:hover{
  border-color: var(--mv-red);
  box-shadow:0 12px 24px rgba(20,22,25,.1);
  transform: translateY(-3px);
  color: var(--mv-text);
}
.mv-mini-thumb{ aspect-ratio:1/1; overflow:hidden; background: var(--mv-grey-bg); }
.mv-mini-thumb img{ width:100%; height:100%; object-fit:cover; transition: transform .5s ease; }
.mv-mini-card:hover .mv-mini-thumb img{ transform: scale(1.08); }
.mv-mini-title{
  font-family: var(--font-head);
  font-size:.85rem;
  font-weight:600;
  padding:.75rem .85rem .3rem;
  color: var(--mv-dark);
  line-height:1.3;
}
.mv-mini-link{
  font-family: var(--font-head);
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.03em;
  color: var(--mv-red);
  font-weight:600;
  padding:.4rem .85rem .85rem;
  margin-top:auto;
}
.mv-mini-link i{ margin-left:.25rem; font-size:.65rem; }

@media (max-width:575.98px){
  .mv-cat-grid{ grid-template-columns: repeat(auto-fill, minmax(120px,1fr)); }
  .mv-company-card{ flex-direction:column; align-items:flex-start; }
  .mv-company-actions{ width:100%; }
}
