/*
 * Aegis Distribution — Responsive CSS v1.1
 * Mobile-first overrides for aegis-marketplace theme
 * !important used on layout properties to override theme specificity
 */

/* ============================================================
   MOBILE < 768px
   ============================================================ */
@media (max-width: 767px) {

  /* 0. Reset */
  html, body {
    overflow-x: hidden !important;
    max-width: 100vw !important;
  }

  /* 1. UTILITY BAR */
  .util-bar {
    padding: 0 16px !important;
    font-size: 11px !important;
  }
  .util-bar .left,
  .util-bar .right {
    gap: 6px !important;
  }
  .util-bar .right a:first-child {
    display: none !important;
  }

  /* 2. HEADER */
  .site-header {
    padding: 0 !important;
  }
  .header-main {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    grid-template-rows: auto auto !important;
    grid-template-areas:
      "logo actions"
      "search search" !important;
    gap: 10px !important;
    padding: 12px 16px !important;
    align-items: center !important;
  }
  .site-logo {
    grid-area: logo !important;
  }
  .header-actions {
    grid-area: actions !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
  }
  .header-actions .action-label {
    display: none !important;
  }
  .search-bar {
    grid-area: search !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .search-bar input,
  .search-bar form {
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* 3. NAVIGATION */
  .cat-nav {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    padding: 0 16px !important;
  }
  .cat-nav::-webkit-scrollbar {
    display: none !important;
  }
  .cat-nav ul,
  .cat-nav nav,
  .cat-nav > div,
  .cat-nav > * {
    display: flex !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    gap: 24px !important;
    min-width: max-content !important;
  }
  .cat-nav a,
  .cat-nav li {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
  }

  /* 4. HERO 3 BLOCS */
  .hero {
    padding: 12px 16px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .hero-grid,
  .hero .hero-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: none !important;
  }
  .hero-main,
  .hero .hero-main,
  .hero-grid .hero-main {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 24px !important;
    order: 1 !important;
    overflow: hidden !important;
  }
  .hero-side,
  .hero .hero-side,
  .hero-grid .hero-side {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 24px !important;
    overflow: hidden !important;
  }
  .hero-side.ppf-roll { order: 2 !important; }
  .hero-side.delivery  { order: 3 !important; }

  /* 5. STATS STRIP */
  .stats-strip {
    padding: 16px !important;
    box-sizing: border-box !important;
  }
  .stats-grid,
  .stats-strip .stats-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }

  /* 6. COLOR STUDIO IA */
  .simulator-wrap {
    padding: 16px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .simulator,
  .simulator-wrap .simulator {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    grid-template-columns: none !important;
  }
  .sim-stage {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    width: 100% !important;
  }
  .sim-canvas {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    padding: 20px !important;
    float: none !important;
  }
  .sim-readout {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .sim-controls {
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .sim-upload,
  [class*="upload"] {
    width: 100% !important;
    padding: 20px !important;
    box-sizing: border-box !important;
  }

  /* 7. ROLLS SECTION */
  .rolls-section {
    padding: 16px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .rolls-section .section-head {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
  }
  .rolls-section .section-head .see-all {
    align-self: flex-start !important;
    order: 2 !important;
  }
  .rolls-stage,
  .rolls-section .rolls-stage {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
  }
  .roll,
  .rolls-stage .roll {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 16px !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
  }

  /* 8. SOLUTIONS GRID */
  .solutions-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    grid-template-columns: none !important;
  }
  .solution-card {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 24px !important;
  }

  /* 9. WHY-AEGIS */
  .why-aegis {
    padding: 16px !important;
    box-sizing: border-box !important;
  }
  .why-grid,
  .why-aegis .why-grid,
  .why-inner .why-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
  }

  /* 10. PRODUCTS GRID */
  .products-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }
  .product-card {
    box-sizing: border-box !important;
    padding: 16px !important;
    min-width: 0 !important;
  }

  /* 11. PRO BANNER */
  .section .pro-banner,
  .pro-banner {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    padding: 24px !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }
  .pb-text {
    width: 100% !important;
  }

  /* 12. SECTION HEAD generique */
  .section-head {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
  }

  /* 13. SECTIONS generiques */
  .section {
    padding: 16px !important;
    box-sizing: border-box !iimportant;
    overflow: hidden !important;
  }

  /* 14. BOUTONS */
  .btn-primary,
  .btn-secondary,
  a.btn-primary,
  a.btn-secondary,
  button:not(.woocommerce-button):not(.wp-block-button__link) {
    min-height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 100% !important;
    white-space: normal !important;
    word-break: break-word !important;
    box-sizing: border-box !important;
  }

  /* 15. FOOTER */
  .site-footer {
    padding: 16px !important;
    box-sizing: border-box !important;
  }
  .foot-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    grid-template-columns: none !important;
  }
  .foot-bottom {
    flex-direction: column !important;
    gap: 8px !important;
    text-align: center !important;
  }

  /* 16. Anti-overflow global */
  img {
    max-width: 100% !important;
    height: auto !important;
  }
  .hero-main *,
  .hero-side *,
  .roll,
  .solution-card,
  .product-card {
    max-width: 100% !important;
    word-break: break-word !important;
  }(((QILAQ%P5=	%1(􀨼)ݥѠँ((ݡ䵝ɥ(ݡ䵅̀ݡ䵝ɥ(ݡ䵥Ȁݡ䵝ɥ(ɥѕєյřȀх((х̵ɥ(х̵ɥх̵ɥ(ɥѕєյřȀх((ɽՍ̵ɥ(ɥѕєյřȀх(()(((Q	1QQ(􀨼)ݥѠँݥѠँ((ѵ(ٕəܵ聡х((ȵ(х(х((ɼɥ(ɼɼɥ(ɥѕєյřȀřȀх(ɥѕєɽ聅ѼѼх((ɼ(ɼɼ(ɥյĀȀх(ɥɽĀ̀х((ɼͥɽ(ɥյȀ̀х(ɥɽĀȀх((ɼٕͥ(ɥյȀ̀х(ɥɽȀ̀х((х̵ɥ(х̵ɥх̵ɥ(ɥѕєյřȀřȀх((ݡ䵝ɥ(ݡ䵅̀ݡ䵝ɥ(ɥѕєյřȀřȀх((ͽѥ̵ɥ(ɥѕєյřȀřȀх(聝ɥх((ɽՍ̵ɥ(ɥѕєյřȀřȀх((ͥձѽȰ(ͥձѽȵɅͥձѽȁ(൑ɕѥ聍յх(聙х((ɽ̵х(ɽ̵͕ѥɽ̵х(聝ɥх(ɥѕєյřȀřȀх(х(൑ɕѥչ͕Ѐх((ɽ(ɽ̵хɽ(ݥѠх((е؁(ٕəܵ聅Ѽх(͍ɽȵݥѠ聹х((еݕе͍ɽȁ쁑聹х(Ѹɥ(Ѹ͕(Ѹɥ(Ѹ͕(х(((ݥѠх(聅Ѽх(()(