/* NCCM v19 — mobile/app cleanup for catalog category pages + Cotizar text cut fix
   Desktop remains untouched. Only mobile/narrow app screens. */
@media (max-width: 760px){
  html,body{overflow-x:hidden!important;}

  /* CATEGORY PAGES: make them feel like app screens, not huge website heroes */
  html body.catalog-app-category,
  html body.catalog-app-index{
    background:#120c08!important;
    color:#fffaf3!important;
    padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))!important;
  }

  html body.catalog-app-category .catalog-showroom-hero,
  html body.catalog-app-index .catalog-showroom-hero{
    display:flex!important;
    align-items:flex-end!important;
    width:100%!important;
    min-height:370px!important;
    height:370px!important;
    max-height:370px!important;
    margin:0!important;
    padding:0!important;
    border-radius:0 0 26px 26px!important;
    overflow:hidden!important;
    background-size:cover!important;
    background-position:center center!important;
    box-shadow:0 18px 42px rgba(0,0,0,.34)!important;
    border:0!important;
    position:relative!important;
    isolation:isolate!important;
  }

  html body.catalog-app-category .catalog-showroom-hero::before,
  html body.catalog-app-index .catalog-showroom-hero::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    pointer-events:none!important;
    background:
      linear-gradient(90deg,rgba(18,10,5,.64),rgba(18,10,5,.30) 58%,rgba(18,10,5,.08)),
      linear-gradient(0deg,rgba(0,0,0,.50),rgba(0,0,0,0) 62%)!important;
    z-index:1!important;
  }
  html body.catalog-app-category .catalog-showroom-hero::after,
  html body.catalog-app-index .catalog-showroom-hero::after{
    content:"✦"!important;
    position:absolute!important;
    right:15px!important;
    bottom:18px!important;
    width:50px!important;
    height:50px!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:rgba(50,31,18,.72)!important;
    border:1px solid rgba(255,255,255,.26)!important;
    color:#f0cf98!important;
    font-size:23px!important;
    z-index:2!important;
    box-shadow:0 16px 34px rgba(0,0,0,.35)!important;
  }

  html body.catalog-app-category .catalog-showroom-hero .container,
  html body.catalog-app-index .catalog-showroom-hero .container{
    position:relative!important;
    z-index:3!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 16px 26px!important;
  }
  html body.catalog-app-category .catalog-showroom-hero .breadcrumbs,
  html body.catalog-app-index .catalog-showroom-hero .breadcrumbs{
    display:inline-flex!important;
    max-width:calc(100vw - 34px)!important;
    margin:0 0 10px!important;
    padding:8px 11px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.18)!important;
    border:1px solid rgba(255,255,255,.22)!important;
    color:#ffe0ad!important;
    font-size:11px!important;
    font-weight:1000!important;
    line-height:1.1!important;
    letter-spacing:.15px!important;
    text-transform:uppercase!important;
    text-shadow:0 3px 12px rgba(0,0,0,.62)!important;
    white-space:normal!important;
  }
  html body.catalog-app-category .catalog-showroom-hero .title,
  html body.catalog-app-index .catalog-showroom-hero .title{
    color:#fffaf3!important;
    font-size:clamp(38px,10.8vw,50px)!important;
    line-height:.96!important;
    letter-spacing:-.8px!important;
    max-width:calc(100vw - 32px)!important;
    margin:0 0 8px!important;
    text-shadow:0 6px 22px rgba(0,0,0,.58)!important;
  }
  html body.catalog-app-category .catalog-showroom-hero .lead,
  html body.catalog-app-index .catalog-showroom-hero .lead{
    color:#fff6e8!important;
    font-size:15.5px!important;
    line-height:1.35!important;
    max-width:calc(100vw - 32px)!important;
    margin:0!important;
    text-shadow:0 4px 16px rgba(0,0,0,.62)!important;
  }
  html body.catalog-app-category .catalog-hero-actions,
  html body.catalog-app-index .catalog-hero-actions{
    display:flex!important;
    gap:9px!important;
    margin-top:14px!important;
    flex-wrap:wrap!important;
  }
  html body.catalog-app-category .catalog-hero-actions a,
  html body.catalog-app-index .catalog-hero-actions a{
    padding:11px 14px!important;
    border-radius:999px!important;
    font-size:12px!important;
    font-weight:1000!important;
    letter-spacing:.35px!important;
    text-transform:uppercase!important;
  }

  /* horizontal category chips under category hero */
  html body.catalog-app-category .catalog-category-strip,
  html body.catalog-app-index .catalog-category-strip{
    background:#120c08!important;
    padding:12px 0 8px!important;
  }
  html body.catalog-app-category .catalog-see-all,
  html body.catalog-app-index .catalog-see-all{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 14px 7px!important;
    overflow-x:auto!important;
    display:flex!important;
    gap:8px!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body.catalog-app-category .catalog-see-all::-webkit-scrollbar,
  html body.catalog-app-index .catalog-see-all::-webkit-scrollbar{display:none!important;}
  html body.catalog-app-category .catalog-see-all a,
  html body.catalog-app-index .catalog-see-all a{
    flex:0 0 auto!important;
    border-radius:999px!important;
    padding:9px 13px!important;
    background:rgba(255,255,255,.08)!important;
    color:#fffaf3!important;
    border:1px solid rgba(255,255,255,.14)!important;
    text-decoration:none!important;
    font-size:12px!important;
    font-weight:1000!important;
  }
  html body.catalog-app-category .catalog-see-all a.active,
  html body.catalog-app-index .catalog-see-all a.active{
    background:linear-gradient(135deg,#c7975e,#e8c78f)!important;
    color:#20130c!important;
  }

  html body.catalog-app-category .catalog-page-intro,
  html body.catalog-app-category section:has(.catalog-page-intro){display:none!important;}

  html body.catalog-app-category #productos,
  html body.catalog-app-index #productos,
  html body.catalog-app-category .section,
  html body.catalog-app-index .section{
    background:#120c08!important;
    padding:14px 0 22px!important;
  }
  html body.catalog-app-category .catalog-products-head,
  html body.catalog-app-index .catalog-products-head{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 14px 12px!important;
    color:#fffaf3!important;
  }
  html body.catalog-app-category .catalog-products-head .kicker,
  html body.catalog-app-index .catalog-products-head .kicker{
    color:#e8c78f!important;
    font-size:11px!important;
    letter-spacing:2.5px!important;
  }
  html body.catalog-app-category .catalog-products-head h2,
  html body.catalog-app-index .catalog-products-head h2{
    color:#fffaf3!important;
    font-size:30px!important;
    line-height:1.02!important;
    margin:5px 0 7px!important;
  }
  html body.catalog-app-category .catalog-products-head p,
  html body.catalog-app-index .catalog-products-head p{
    color:#d9c4a8!important;
    font-size:13.5px!important;
    line-height:1.35!important;
    margin:0!important;
  }
  html body.catalog-app-category .catalog-products-head .btn,
  html body.catalog-app-index .catalog-products-head .btn{display:none!important;}

  html body.catalog-app-category .featured-catalog-grid,
  html body.catalog-app-index .featured-catalog-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 12px 92px!important;
  }
  html body.catalog-app-category [data-dyn-catalog-list] .clean-catalog-card,
  html body.catalog-app-index [data-dyn-catalog-list] .clean-catalog-card{
    background:rgba(255,255,255,.07)!important;
    border:1px solid rgba(255,255,255,.13)!important;
    border-radius:18px!important;
    overflow:hidden!important;
    box-shadow:0 14px 32px rgba(0,0,0,.24)!important;
  }
  html body.catalog-app-category [data-dyn-catalog-list] .clean-catalog-media,
  html body.catalog-app-index [data-dyn-catalog-list] .clean-catalog-media{
    aspect-ratio:1.08/1!important;
    background:#1a100b!important;
    border:0!important;
  }
  html body.catalog-app-category [data-dyn-catalog-list] .clean-catalog-media img,
  html body.catalog-app-index [data-dyn-catalog-list] .clean-catalog-media img{
    width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;
  }
  html body.catalog-app-category [data-dyn-catalog-list] .clean-catalog-body,
  html body.catalog-app-index [data-dyn-catalog-list] .clean-catalog-body{
    padding:9px 9px 10px!important;
    background:transparent!important;
    color:#fffaf3!important;
  }
  html body.catalog-app-category [data-dyn-catalog-list] .clean-catalog-body .tag,
  html body.catalog-app-index [data-dyn-catalog-list] .clean-catalog-body .tag{
    font-size:8.5px!important;padding:4px 6px!important;margin:0 0 6px!important;background:rgba(232,199,143,.15)!important;color:#efd097!important;
  }
  html body.catalog-app-category [data-dyn-catalog-list] .clean-catalog-body h3,
  html body.catalog-app-index [data-dyn-catalog-list] .clean-catalog-body h3{
    color:#fffaf3!important;
    font-size:15px!important;
    line-height:1.05!important;
    margin:0 0 4px!important;
  }
  html body.catalog-app-category [data-dyn-catalog-list] .clean-catalog-body p,
  html body.catalog-app-index [data-dyn-catalog-list] .clean-catalog-body p{
    color:#d8b384!important;
    font-size:11.5px!important;
    line-height:1.23!important;
    margin:0 0 6px!important;
    display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
  }
  html body.catalog-app-category [data-dyn-catalog-list] .catalog-meta,
  html body.catalog-app-index [data-dyn-catalog-list] .catalog-meta,
  html body.catalog-app-category [data-dyn-catalog-list] .clean-catalog-actions .mini-btn.light,
  html body.catalog-app-index [data-dyn-catalog-list] .clean-catalog-actions .mini-btn.light{display:none!important;}
  html body.catalog-app-category [data-dyn-catalog-list] .clean-catalog-actions .mini-btn,
  html body.catalog-app-index [data-dyn-catalog-list] .clean-catalog-actions .mini-btn{
    width:100%!important;justify-content:center!important;padding:8px!important;font-size:10px!important;border-radius:999px!important;
  }

  /* COTIZAR: stop text/cards from being cut on mobile */
  html body.quote-page{
    background:#fff7ed!important;
    overflow-x:hidden!important;
    padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))!important;
  }
  html body.quote-page .quote-hero{
    min-height:330px!important;
    height:auto!important;
    padding:110px 0 34px!important;
    align-items:flex-end!important;
    overflow:hidden!important;
  }
  html body.quote-page .quote-hero .container{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 16px!important;
    box-sizing:border-box!important;
  }
  html body.quote-page .quote-hero .breadcrumbs{
    display:inline-flex!important;
    max-width:calc(100vw - 32px)!important;
    white-space:normal!important;
    line-height:1.15!important;
  }
  html body.quote-page .quote-hero .title{
    font-size:clamp(38px,11vw,50px)!important;
    line-height:.98!important;
    letter-spacing:-1px!important;
    max-width:calc(100vw - 32px)!important;
    margin:8px 0 12px!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
  html body.quote-page .quote-hero .lead{
    font-size:16px!important;
    line-height:1.42!important;
    max-width:calc(100vw - 32px)!important;
    margin:0!important;
    overflow-wrap:break-word!important;
  }
  html body.quote-page .section{
    width:100%!important;
    max-width:100%!important;
    padding:18px 0 20px!important;
    overflow:hidden!important;
  }
  html body.quote-page .quote-shell{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 14px!important;
    box-sizing:border-box!important;
  }
  html body.quote-page .quote-panel,
  html body.quote-page .quote-form-card{
    position:relative!important;
    top:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 16px!important;
    padding:22px!important;
    border-radius:26px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  html body.quote-page .quote-panel h2,
  html body.quote-page .quote-form-card h2,
  html body.quote-page .quote-form-card .title{
    font-size:clamp(32px,9.2vw,42px)!important;
    line-height:1.02!important;
    letter-spacing:-.7px!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
    margin:0 0 12px!important;
  }
  html body.quote-page .quote-panel p,
  html body.quote-page .quote-form-card p,
  html body.quote-page .quote-form-card .lead{
    font-size:15px!important;
    line-height:1.45!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
  }
  html body.quote-page .quote-list div{
    display:grid!important;
    grid-template-columns:32px 1fr!important;
    gap:10px!important;
    align-items:start!important;
    max-width:100%!important;
    padding:13px 14px!important;
    box-sizing:border-box!important;
  }
  html body.quote-page .quote-list div span{
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
    line-height:1.32!important;
  }
  html body.quote-page .form .two,
  html body.quote-page .form .three{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  html body.quote-page .form input,
  html body.quote-page .form select,
  html body.quote-page .form textarea{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}

@media (max-width:390px){
  html body.catalog-app-category .catalog-showroom-hero,
  html body.catalog-app-index .catalog-showroom-hero{height:350px!important;min-height:350px!important;max-height:350px!important;}
  html body.catalog-app-category .catalog-showroom-hero .title,
  html body.catalog-app-index .catalog-showroom-hero .title{font-size:36px!important;}
  html body.quote-page .quote-hero .title{font-size:38px!important;}
}
