/* LUM | móvil primero. Solo cambia maquetación; no altera imágenes ni fichas de producto. */
.nav-help-button{display:none}
@media (max-width:800px){
  *,*::before,*::after{box-sizing:border-box}
  html{scroll-padding-top:70px}
  body{overflow-x:hidden}
  .site-head{height:65px!important;min-height:65px;padding:0 14px!important;position:sticky;top:0;z-index:180;background:#faf5ec!important;box-shadow:0 1px 0 #e0d8cc!important;backdrop-filter:none!important}
  body:has(.intro-hero) .site-head,body:has(.intro-hero--portafolio) .site-head{background:#faf5ec!important;box-shadow:0 1px 0 #e0d8cc!important}
  body:has(.intro-hero) main{margin-top:0!important}
  .site-head .brand{flex:0 0 auto}
  .site-head .brand img{width:57px!important;height:57px!important;object-fit:contain!important}
  .nav-end{margin-left:auto;gap:2px!important;display:flex;align-items:center}
  .site-head .nav-action,.site-head .hamburger,.site-head .nav-help-button{height:40px;width:39px;min-width:39px;display:flex;justify-content:center;align-items:center;padding:8px;flex:0 0 39px}
  .site-head .nav-action svg,.site-head .nav-help-button svg{width:21px;height:21px;fill:none;stroke:#333b31;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .site-head .nav-help-button{background:none;border:0;cursor:pointer}
  .site-head .hamburger{flex-direction:column;gap:5px}
  .site-head .hamburger span{width:21px}
  .site-head .nav-menu{top:65px!important;left:0;right:0;max-height:calc(100dvh - 65px);overflow-y:auto;padding:12px 23px 22px;background:#faf5ec;box-shadow:0 20px 30px #2e2a201c;gap:0!important;z-index:200}
  .site-head .nav-menu a{font-size:16px!important;line-height:1.25;padding:15px 1px!important;display:block;width:100%;border-bottom:1px solid #e5dbcc}
  .site-head .nav-menu a::after{display:none}
  .wrap{padding-left:18px!important;padding-right:18px!important}
  .section-head{margin-bottom:21px}
  .section-head h2{font-size:clamp(34px,9vw,49px)!important;line-height:1.13!important;margin:9px 0 0}
  .section-head>p{display:none!important}
  .eyebrow{font-size:10px!important;letter-spacing:.14em!important}
  /* Portada editorial: fotografía completa, texto y una sola acción. */
  body:has(.intro-hero--portafolio) .intro-hero--portafolio{display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important;background:#e8dbcb!important}
  body:has(.intro-hero--portafolio) .intro-hero--portafolio>img{position:relative!important;inset:auto!important;display:block!important;order:1;width:100%!important;height:auto!important;aspect-ratio:1 / 1!important;object-fit:contain!important;object-position:center!important}
  body:has(.intro-hero--portafolio) .intro-hero--portafolio::before{display:none!important}
  body:has(.intro-hero--portafolio) .intro-copy{order:2!important;position:relative!important;inset:auto!important;left:auto!important;top:auto!important;transform:none!important;padding:22px 20px 28px!important;max-width:100%!important;color:#252820!important}
  body:has(.intro-hero--portafolio) .intro-copy .eyebrow{display:none!important}
  body:has(.intro-hero--portafolio) .intro-copy h1{color:#282820!important;font-size:clamp(37px,10.4vw,55px)!important;line-height:1.05!important;letter-spacing:-.053em!important;margin:0 0 8px!important;max-width:300px}
  body:has(.intro-hero--portafolio) .intro-copy h1 br{display:none}
  body:has(.intro-hero--portafolio) .intro-copy h1 em{display:inline}
  body:has(.intro-hero--portafolio) .intro-copy p{font-size:12px!important;line-height:1.45!important;color:#675e54!important;max-width:310px!important;margin:0 0 18px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  body:has(.intro-hero--portafolio) .intro-copy .btn-row{margin-top:0!important;display:flex;align-items:center;gap:0}
  body:has(.intro-hero--portafolio) .intro-copy .btn-light{min-height:45px;display:inline-flex;align-items:center;justify-content:center;background:#4d5c42!important;border:1px solid #4d5c42!important;border-radius:4px;color:#fff!important;font-size:12px!important;padding:12px 20px!important}
  body:has(.intro-hero--portafolio) .intro-copy .btn-minimal-light{display:none!important}
  .intro-statement{display:none!important}
  /* Colecciones: tres fotografías con jerarquía, sin bloques largos de texto. */
  .collections-showcase{padding-top:39px!important;padding-bottom:50px!important}
  .collections-showcase .section-head{margin-bottom:17px!important}
  .collections-showcase .section-head h2{font-size:36px!important;margin:8px 0 0}
  .collection-layout{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:250px 155px!important;gap:10px!important}
  .collection-block,.collection-block:last-child{height:auto!important;min-height:0!important;grid-column:auto!important;grid-row:auto!important;overflow:hidden;border-radius:5px!important}
  .collection-block.is-large{grid-column:1/-1!important;grid-row:1!important}
  .collection-block>img{object-fit:cover;object-position:center center;width:100%;height:100%}
  .collection-label{left:14px!important;right:10px!important;bottom:13px!important}
  .collection-label span,.collection-label b{display:none!important}
  .collection-label h3{font-size:clamp(22px,6.7vw,30px)!important;letter-spacing:-.045em!important;margin:0!important}
  .collection-block.is-large .collection-label h3{font-size:36px!important}
  /* Materia, muestras y selección: aire, no repeticiones. */
  .editorial-material{display:grid!important;grid-template-columns:1fr!important;min-height:0!important}
  .editorial-material .material-feature{height:185px!important;min-height:185px!important}
  .editorial-material .material-feature img{width:100%;height:100%;object-fit:cover;object-position:center}
  .material-feature-copy{padding:25px 20px 30px!important}
  .material-feature-copy h2{font-size:clamp(38px,10.7vw,53px)!important;line-height:1.04!important;margin:12px 0 13px!important}
  .material-feature-copy h2 br{display:none}
  .material-feature-copy p{display:none!important}
  .material-feature-copy .swatch-row{margin:15px 0 16px!important;flex-wrap:wrap;gap:9px!important}
  .material-feature-copy .swatch{width:36px!important;height:36px!important;padding:0!important}
  .material-feature-copy .btn-text{font-size:12px}
  .selected-section{padding-top:45px!important;padding-bottom:43px!important}
  .selected-section .section-head{margin-bottom:15px}
  .selected-section .section-head h2{font-size:37px!important}
  .selected-section .editorial-grid{display:grid!important;grid-auto-flow:column;grid-auto-columns:min(68vw,260px);grid-template-columns:none!important;gap:12px!important;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding-bottom:10px;scrollbar-width:thin}
  .selected-section .product-card{scroll-snap-align:start;min-width:0;width:100%}
  .selected-section .product-cover{height:auto!important;aspect-ratio:1.17!important;padding:0!important}
  .selected-section .product-cover img{object-fit:cover}
  .selected-section .card-meta{padding-top:10px!important}
  .selected-section .card-meta h3{font-size:16px!important}
  .selected-section .card-price{font-size:12px!important}
  .lum-compras-resumen{padding:19px 0 29px!important;border-top:1px solid #d5c9ba}
  .lum-compras-resumen__grid{display:none!important}
  .lum-compras-resumen>a{font-size:13px;margin-top:10px}
  .closing-editorial{display:none!important}
  .wholesale-strip{padding:26px 0!important}
  .wholesale-strip .wrap{display:flex!important;align-items:center;justify-content:space-between;gap:14px;flex-direction:column}
  .wholesale-strip h3{font-size:26px!important;line-height:1.15}
  .wholesale-strip p{font-size:12px!important;line-height:1.4;margin-top:5px}
  .wholesale-strip .btn-light{margin:3px 0 0!important;align-self:flex-start}
  /* Catálogo: buscar siempre arriba, dos productos por fila. */
  .catalog-heading--clean{padding-top:24px!important;padding-bottom:45px!important}
  .catalog-heading--clean h1{font-size:clamp(38px,10vw,48px)!important;margin:6px 0 5px!important}
  .catalog-heading--clean .catalog-sub{display:none}
  .catalog-toolbar--clean{gap:8px!important;margin:15px 0 19px!important;padding:0 0 12px!important;align-items:stretch}
  .catalog-toolbar--clean .catalog-count{font-size:10px!important;margin-bottom:4px!important}
  .catalog-toolbar--clean .catalog-actions{display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:7px!important}
  .catalog-toolbar--clean .catalog-search{min-width:0!important;width:100%!important;min-height:44px!important;padding:7px 10px!important}
  .catalog-toolbar--clean .catalog-search input{min-width:0!important;width:100%!important}
  .catalog-toolbar--clean .catalog-actions select{min-width:0!important;width:114px!important;max-width:114px!important;padding:0 6px!important;font-size:10px!important}
  #productGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 10px!important}
  #productGrid .product-cover{height:auto!important;aspect-ratio:1.08!important;border-radius:4px!important;overflow:hidden;padding:0!important}
  #productGrid .product-cover img{object-fit:cover!important;width:100%;height:100%}
  #productGrid .card-num{left:7px!important;top:7px!important;font-size:8px!important;padding:3px 6px!important}
  #productGrid .card-meta{padding:9px 0 0!important}
  #productGrid .card-meta h3{font-size:14px!important;line-height:1.26!important;font-weight:500!important;overflow-wrap:anywhere}
  #productGrid .card-price{font-size:12px!important;margin-top:5px!important}
  .category-hero{min-height:0!important;display:grid!important;grid-template-columns:1fr!important}
  .category-hero .copy{padding:20px 20px 14px!important}
  .category-hero .copy h1{font-size:clamp(36px,11vw,48px)!important;margin:8px 0!important}
  .category-hero .copy p{display:none!important}
  .category-hero img{width:100%!important;max-width:100%!important;height:190px!important;padding:0!important;object-fit:cover!important;object-position:center!important}
  /* Fichas: fotos grandes, precios legibles, acciones táctiles sin superposiciones. */
  .detail-section{padding-top:12px!important}
  .detail-section .bread{font-size:10px!important;margin:4px 0 14px!important}
  .product-layout{display:grid!important;grid-template-columns:1fr!important;gap:21px!important}
  .gallery-main{width:100%;height:auto!important;min-height:0!important;aspect-ratio:1.12!important;overflow:hidden}
  .gallery-main img{width:100%;height:100%;object-fit:contain}
  .gallery-main img.photo-full{object-fit:cover}
  .gallery .thumbs{display:flex!important;gap:8px!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;margin-top:9px;padding-bottom:6px}
  .gallery .thumbs .thumb{height:72px!important;flex:0 0 83px;min-width:83px;max-width:83px;scroll-snap-align:start}
  .gallery .thumb span{display:none!important}
  .gallery>.small-note{display:none!important}
  .product-summary>.eyebrow{font-size:10px!important}
  .product-summary h1{font-size:clamp(35px,9.4vw,46px)!important;line-height:1.09!important;margin:8px 0 10px!important;overflow-wrap:normal!important}
  .product-summary .price{font-size:24px!important}
  .product-summary .small-note{font-size:11px!important}
  .product-summary .desc{display:none!important}
  .product-summary .divider{margin:18px 0!important}
  .product-summary .spec-row{padding:6px 0!important;font-size:12px!important;line-height:1.35}
  .product-summary .spec-row .label{font-size:12px}
  .product-summary .tone-label{margin-bottom:11px!important}
  .product-summary .swatch-row{display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px!important;margin:14px 0 8px!important}
  .product-summary .swatch{width:100%!important;height:auto!important;aspect-ratio:1!important;min-width:0!important;padding:0!important}
  .product-summary .stock-note{font-size:10px!important;line-height:1.4!important;margin:10px 0!important}
  .product-summary .buy-row{display:grid!important;grid-template-columns:74px 1fr!important;gap:9px!important;align-items:stretch!important;margin-top:15px!important}
  .product-summary .buy-row input{width:100%!important;height:51px!important;min-height:51px!important}
  .product-summary .buy-row .btn-dark{width:100%!important;min-width:0!important;height:51px!important;min-height:51px!important;padding:9px 10px!important;font-size:13px!important}
  .product-summary #askProduct{min-height:48px!important;font-size:12px!important}
  .product-summary .add-note{margin:10px 0!important;font-size:11px!important;line-height:1.5!important}
  .related-section{padding-top:37px!important;padding-bottom:40px!important}
  .related-section .section-head h2{font-size:31px!important}
  .related-section .related-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px 10px!important}
  .related-section .product-cover{aspect-ratio:1.1!important;height:auto!important}
  .related-section .card-meta h3{font-size:15px!important}
  /* Pedido: sin botones flotantes encima de la solicitud final. */
  .checkout-heading{padding-top:24px!important;padding-bottom:14px!important}
  .checkout-heading h1{font-size:40px!important;line-height:1.09!important}
  .checkout-heading .catalog-sub{font-size:13px!important;line-height:1.45!important;max-width:310px}
  .cart-layout{grid-template-columns:1fr!important;gap:20px!important}
  .cart-item{grid-template-columns:72px 1fr!important;gap:10px!important}
  .cart-item img{width:72px!important;height:76px!important}
  .checkout-panel{margin:16px 0 20px!important;padding:18px 15px!important}
  .checkout-panel>p{font-size:12px!important;line-height:1.5!important;margin-bottom:16px!important}
  .checkout-panel h2{font-size:29px!important}
  .checkout-form{gap:14px!important}
  .checkout-form .field input,.checkout-form .field textarea,.checkout-form #sellerCode{min-height:47px!important;font-size:16px!important;line-height:1.3!important}
  .checkout-form .seller-explain{font-size:11px!important;line-height:1.4!important}
  .checkout-form .checkout-accept{font-size:11px!important;line-height:1.5!important}
  .checkout-submit{display:block!important;position:relative!important;z-index:5!important;width:100%!important;min-height:58px!important;font-size:14px!important;touch-action:manipulation;scroll-margin-bottom:35vh!important}
  .secure-note{font-size:10px!important;line-height:1.5!important}
  .checkout-summary{padding:23px 18px!important}
  .checkout-summary .checkout-stages{display:none!important}
  .checkout-summary>.secure-note{display:none!important}
  .checkout-summary .small-note{font-size:11px!important;line-height:1.45!important}
  .empty{min-height:0!important;padding:32px 10px!important}
  .empty p{font-size:12px!important}
  /* Información comercial: los cuatro pasos siguen disponibles, sin muros de texto. */
  .lum-info-compra{padding:30px 0 45px!important;min-height:0!important}
  .lum-info-compra h1{font-size:44px!important}
  .lum-info-lead{font-size:13px!important;line-height:1.6!important;margin-bottom:20px!important}
  .lum-info-grid{gap:0!important}
  .lum-info-grid article{padding:15px 0 17px!important}
  .lum-info-grid h2{font-size:24px!important;margin:8px 0!important}
  .lum-info-grid article p{font-size:12px!important;line-height:1.55!important}
  .lum-info-cta{margin:20px 0!important;padding:20px!important}
  .lum-info-cta h2{font-size:25px!important}
  .lum-info-cta p{font-size:12px!important}
  /* Pie compacto y usable desde el celular. */
  .site-footer{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:30px 18px 24px!important;gap:21px 15px!important}
  .site-footer .footer-first{grid-column:1/-1!important}
  .site-footer .footer-first img{width:64px!important;height:auto!important}
  .site-footer .footer-first p{font-size:16px!important;line-height:1.2!important;max-width:none!important;margin:8px 0 0!important}
  .site-footer>div:nth-child(3){display:none!important}
  .site-footer h3{margin:0 0 9px!important;font-size:10px!important}
  .site-footer a{font-size:11px!important;line-height:1.65!important;margin-bottom:3px!important}
  .site-footer small{font-size:10px!important;line-height:1.4!important}
  .site-footer .footer-bottom{grid-column:1/-1!important;font-size:10px!important;margin:0!important;padding:13px 0 0!important;display:flex!important;justify-content:space-between;gap:15px;flex-wrap:wrap}
  .site-footer .footer-bottom span:last-child{display:none}
  /* La ayuda pasa al encabezado: nunca tapa el botón de compra/cotización. */
  .lum-help{position:static!important;z-index:auto!important}
  .lum-help-trigger{display:none!important}
  .lum-help-panel{position:fixed!important;left:12px!important;right:12px!important;bottom:max(12px,env(safe-area-inset-bottom))!important;top:auto!important;width:auto!important;max-height:calc(100dvh - 100px)!important;overflow-y:auto!important;z-index:310!important;border-radius:12px!important}
  body.lum-help-open{overflow:hidden!important}
  body.lum-help-open::after{content:'';position:fixed;inset:0;background:rgba(25,26,21,.48);z-index:300;pointer-events:none}
  .lum-help-head{padding:17px 17px 13px!important}
  .lum-help-head strong{font-size:24px!important}
  .lum-help-body{padding:14px 16px 17px!important}
  .toast{max-width:calc(100vw - 24px)!important;left:12px!important;right:12px!important;bottom:calc(18px + env(safe-area-inset-bottom))!important}
  /* Reducir solapamiento de banners de proveedores al desplazarse hasta una acción. */
  button,a,input,select,textarea{scroll-margin-bottom:140px;touch-action:manipulation}
}
@media(max-width:360px){
  .site-head{padding:0 10px!important}
  .site-head .nav-action,.site-head .hamburger,.site-head .nav-help-button{width:35px;min-width:35px;flex-basis:35px}
  .collection-layout{grid-template-rows:220px 138px!important}
  .catalog-toolbar--clean .catalog-actions select{width:100px!important;max-width:100px!important}
  .product-summary .swatch-row{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:800px){
  /* Mantener los saltos tipográficos: nunca juntar palabras al ocultar <br>. */
  body:has(.intro-hero--portafolio) .intro-copy h1 br{display:initial!important}
  .material-feature-copy h2 br{display:initial!important}
  .cart-layout:has(.empty) .cart-summary{display:none!important}
}
