/* =====================================================
   BP-XS.CSS — Telefoane mici
   max-width: 575.98px
   ===================================================== */
@media (max-width: 575.98px) {

  /* Header */
  :root { --header-height: 65px; }

  .main-nav { display: none; }
  .header-cta-btn { display: none; }
  .hamburger-btn { display: flex !important; margin-right: 20px; }

  .logo-text-main { font-size: 1.05rem; }
  .logo-text-sub  { display: none; }

  /* Header — fără micșorare la scroll pe mobile */
  #main-header.scrolled { --header-height: 65px; }

  /* Logo — mobile: fără efect stemă, logo-main mereu vizibil */
  .logo-stema { display: none !important; }

  #main-header:not(.scrolled) .logo-main {
    max-width: 140px;
    transform: none; /* fără hang pe ecrane mici */
  }
  /* override starea scrolled — logo-main rămâne vizibil */
  #main-header.scrolled .logo-main {
    opacity: 1 !important;
    max-width: 140px !important;
    overflow: visible !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  /* Hero */
  .hero-content { padding: 90px 0 60px; }
  .hero-title   { font-size: 1.9rem; }
  .hero-subtitle { font-size: 1rem; }
  .hero-badge   { font-size: 0.8rem; padding: 5px 14px; }

  .hero-buttons { flex-direction: column; }
  .hero-buttons .btn-calb { width: 100%; justify-content: center; }

  .hero-mini-stats { gap: 18px; justify-content: center; }
  .hero-mini-stat .mstat-num { font-size: 1.6rem; }

  .hero-panel { display: none; }

  .hero-feature-icons { gap: 18px; margin-top: 28px; }
  .hfi i { width: 48px; height: 48px; font-size: 1.5rem; }
  .hfi span { font-size: 0.75rem; }

  .hero-ctrl { display: none; } /* ascundem prev/next pe mobile mic */

  /* Stats bar */
  .stat-box {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,0.12);
    padding: 14px 10px;
  }
  .stat-box:last-child { border-bottom: none; }
  .stat-box .snum { font-size: 2.2rem; }

  /* Secțiuni */
  .section-calb    { padding: 45px 0; }
  .section-calb-sm { padding: 32px 0; }

  .section-title { font-size: 1.7rem; }
  .section-header { margin-bottom: 30px; }

  /* Carduri servicii */
  .service-card { padding: 28px 20px; }
  .service-icon { width: 62px; height: 62px; font-size: 1.5rem; }

  /* Despre noi */
  .about-img-main img { height: 280px; }
  .about-img-placeholder { height: 280px; }
  .about-badge-box { right: 10px; bottom: 15px; padding: 14px 18px; }
  .about-badge-box .abnum { font-size: 1.8rem; }

  /* Pași */
  .step-card::after { display: none; }

  /* Galerie grid */
  .gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; }

  /* Contact rapid */
  .contact-info-panel { padding: 22px; }
  .contact-item { gap: 12px; }
  .contact-item-icon { width: 42px; height: 42px; font-size: 1rem; }

  /* CTA */
  .cta-section { padding: 50px 0; }
  .cta-section h2 { font-size: 1.7rem; }
  .cta-phone-big  { font-size: 1.5rem; }

  /* Footer */
  #main-footer { padding: 45px 0 0; }
  .contact-form-wrap { padding: 22px; }

  /* Page banner */
  .page-banner { padding: 40px 0; }
  .page-banner h1 { font-size: 1.65rem; }

  /* Scroll top */
  #scroll-top { bottom: 18px; right: 18px; width: 40px; height: 40px; font-size: 0.9rem; }

  /* Buttons full width pe mobile */
  .btn-calb-block-xs { width: 100% !important; justify-content: center !important; }

  /* Paginare */
  .pagination { flex-wrap: wrap; gap: 3px; }
  .pagination .page-link { padding: 6px 11px; font-size: 0.88rem; }
}
