/* =========================================================
   Dorado Artículos de Pesca — MOBILE UX FINAL
   Cargado DESPUÉS de site.css para centralizar los ajustes
   responsive sin seguir acumulando reglas dentro del CSS grande.
========================================================= */

/* Tablets y celulares */
@media (max-width: 900px){
  html,body{max-width:100%;overflow-x:hidden}

  /* Dock móvil: site.css tenía un display:none!important posterior
     que anulaba el dock original. */
  .mobile-dock{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    left:8px!important;
    right:8px!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    min-height:62px!important;
    padding:6px 4px!important;
    border-radius:20px!important;
    background:rgba(250,250,247,.96)!important;
    border:1px solid rgba(13,14,16,.10)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    backdrop-filter:blur(18px)!important;
    box-shadow:0 14px 42px rgba(13,14,16,.16)!important;
    z-index:150!important;
  }

  .mobile-dock-item{
    min-width:0!important;
    min-height:48px!important;
    padding:4px 2px!important;
    border:0!important;
    border-radius:13px!important;
    background:transparent!important;
    color:#777980!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    font-size:7px!important;
    font-weight:800!important;
  }
  .mobile-dock-item .ui-icon{width:19px!important;height:19px!important}
  .mobile-dock-item span{white-space:nowrap!important}
  .mobile-dock-item.active{color:#111214!important;background:#f0ede5!important}

  body{
    padding-bottom:calc(82px + env(safe-area-inset-bottom))!important;
  }

  /* Evita duplicar dos accesos flotantes a WhatsApp en celular. */
  .float-wa{display:none!important}

  /* Nunca superponer el dock sobre capas de compra. */
  body.cart-open .mobile-dock,
  body.checkout-open .mobile-dock,
  body.modal-open .mobile-dock,
  body.orders-open .mobile-dock,
  body.payment-result-open .mobile-dock,
  body.menu-open .mobile-dock{
    display:none!important;
  }

  .cart-toast{
    bottom:calc(86px + env(safe-area-inset-bottom))!important;
    z-index:230!important;
  }
}

/* Celulares */
@media (max-width: 640px){
  :root{--mobile-pad:14px}

  /* Header */
  .nav{
    min-height:64px!important;
    padding-left:var(--mobile-pad)!important;
    padding-right:var(--mobile-pad)!important;
  }
  .menu-toggle,.cart-trigger{
    width:42px!important;
    height:42px!important;
    min-height:42px!important;
  }

  /* Catálogo: controles táctiles claros y coherentes */
  .catalog-section{padding-top:58px!important;padding-bottom:72px!important}
  .section-head{gap:22px!important;margin-bottom:28px!important}
  .catalog-search{
    min-height:50px!important;
    border-radius:16px!important;
  }

  .products{gap:38px!important}
  .product{width:100%!important}
  .product-img{
    border-radius:22px!important;
    overflow:hidden!important;
  }
  .product-info{padding:16px 2px 0!important}
  .product-info h3{
    font-size:17px!important;
    line-height:1.32!important;
  }
  .product-card-description{
    margin-top:7px!important;
    font-size:10.5px!important;
    line-height:1.55!important;
  }
  .product-price{font-size:23px!important}
  .product-actions{margin-top:14px!important;padding-top:4px!important}

  .view-product{
    min-height:44px!important;
    padding:0 2px!important;
    font-size:9px!important;
  }

  .card-quantity-row{
    display:flex!important;
    margin:10px 0 12px!important;
    padding:8px 9px 8px 12px!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 7px 20px rgba(13,14,16,.045)!important;
  }
  .card-quantity-row>span{
    font-size:7px!important;
    color:#777980!important;
  }
  .card-quantity-selector,
  .quantity-selector{
    border-radius:999px!important;
  }
  .card-quantity-selector{
    grid-template-columns:38px 44px 38px!important;
    min-height:40px!important;
    background:#f4f2ec!important;
    border:0!important;
  }
  .card-quantity-selector .qty-btn{
    width:38px!important;
    height:40px!important;
  }
  .card-quantity-selector .qty-input{
    width:44px!important;
    height:40px!important;
    font-size:12px!important;
    background:transparent!important;
  }
  .add-card-product{
    min-height:50px!important;
    border-radius:999px!important;
    font-size:9px!important;
  }

  /* Ficha de producto */
  .product-detail{
    padding:0!important;
    background:#fff!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  .product-detail-inner{
    width:100%!important;
    min-height:100dvh!important;
    border-radius:0!important;
    padding-bottom:calc(86px + env(safe-area-inset-bottom))!important;
  }
  .product-detail-close{
    position:fixed!important;
    top:calc(10px + env(safe-area-inset-top))!important;
    right:12px!important;
    width:42px!important;
    height:42px!important;
    z-index:260!important;
    box-shadow:0 6px 18px rgba(0,0,0,.09)!important;
  }
  .product-detail-image{
    min-height:34svh!important;
    max-height:360px!important;
    padding:54px 20px 18px!important;
  }
  .dynamic-product-image{
    width:88%!important;
    max-height:285px!important;
  }
  .product-detail-info{
    padding:24px 16px 30px!important;
    overflow:visible!important;
  }
  .dynamic-product-name{
    font-size:clamp(28px,8.2vw,34px)!important;
    line-height:1.04!important;
  }
  .dynamic-product-description,
  .dynamic-product-features{
    font-size:12px!important;
    line-height:1.7!important;
  }
  .dynamic-product-price{font-size:30px!important}
  .quantity-label-row{align-items:flex-end!important}
  .dynamic-qty-help{
    max-width:52%!important;
    text-align:right!important;
    line-height:1.35!important;
  }
  .product-detail .quantity-selector{
    grid-template-columns:42px 50px 42px!important;
    min-height:42px!important;
    border-radius:999px!important;
  }
  .product-detail .quantity-selector .qty-btn{
    width:42px!important;height:42px!important;border-radius:999px!important
  }
  .product-detail .quantity-selector .qty-input{
    width:50px!important;height:42px!important;font-size:13px!important
  }
  .product-mobile-buybar{
    z-index:250!important;
    gap:10px!important;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom))!important;
    background:rgba(255,255,255,.97)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    backdrop-filter:blur(18px)!important;
  }
  .product-mobile-price{min-width:92px!important}
  .product-mobile-price strong{font-size:18px!important}
  .dynamic-add-cart-mobile{
    min-width:0!important;
    min-height:50px!important;
    border-radius:999px!important;
  }

  /* Carrito */
  .cart-drawer{
    width:100%!important;
    height:100dvh!important;
    max-width:none!important;
  }
  .cart-head{
    flex:0 0 auto!important;
    padding:calc(14px + env(safe-area-inset-top)) 16px 14px!important;
    background:#fff!important;
  }
  .cart-head-copy strong{font-size:20px!important}
  .cart-close{width:42px!important;height:42px!important}
  .cart-items{
    min-height:0!important;
    padding:8px 14px 16px!important;
    overscroll-behavior:contain!important;
  }
  .cart-item{
    grid-template-columns:64px minmax(0,1fr)!important;
    gap:11px!important;
    padding:14px 0!important;
  }
  .cart-item-image{
    width:64px!important;
    height:64px!important;
    border-radius:15px!important;
  }
  .cart-item-name{font-size:11px!important}
  .cart-item-bottom{align-items:center!important}
  .cart-item .quantity-selector{
    grid-template-columns:32px 38px 32px!important;
    border-radius:999px!important;
  }
  .cart-item .qty-btn{width:32px!important;height:34px!important}
  .cart-item .qty-input{width:38px!important;height:34px!important}
  .cart-footer{
    flex:0 0 auto!important;
    padding:14px 16px calc(14px + env(safe-area-inset-bottom))!important;
    box-shadow:0 -10px 30px rgba(13,14,16,.06)!important;
  }
  .cart-checkout{
    min-height:52px!important;
    border-radius:999px!important;
  }

  /* Checkout: 16px evita zoom automático de iOS */
  .checkout-modal{
    padding:0!important;
    background:#fff!important;
  }
  .checkout-card{
    width:100%!important;
    min-height:100dvh!important;
    border-radius:0!important;
    overflow:visible!important;
  }
  .checkout-close{
    position:fixed!important;
    top:calc(10px + env(safe-area-inset-top))!important;
    right:12px!important;
    width:42px!important;
    height:42px!important;
    z-index:280!important;
  }
  .checkout-main{
    padding:calc(62px + env(safe-area-inset-top)) 16px 28px!important;
  }
  .checkout-side{
    padding:26px 16px calc(28px + env(safe-area-inset-bottom))!important;
  }
  .checkout-title{
    font-size:clamp(29px,8vw,34px)!important;
    line-height:1.05!important;
  }
  .checkout-intro{font-size:11px!important;line-height:1.65!important}
  .checkout-form-grid{grid-template-columns:1fr!important}
  .checkout-field.full{grid-column:auto!important}
  .checkout-field input,
  .checkout-field select,
  .checkout-field textarea{
    min-height:50px!important;
    font-size:16px!important;
    border-radius:14px!important;
  }
  .checkout-field textarea{
    min-height:104px!important;
    padding-top:14px!important;
  }
  .checkout-consent{
    gap:10px!important;
    font-size:10px!important;
    line-height:1.55!important;
  }
  .checkout-consent input{
    width:18px!important;
    height:18px!important;
    flex:0 0 auto!important;
  }
  .checkout-pay{
    min-height:54px!important;
    border-radius:999px!important;
  }
  .checkout-summary-item{
    grid-template-columns:50px minmax(0,1fr) auto!important;
    gap:9px!important;
  }
  .checkout-summary-item img{
    width:50px!important;height:50px!important
  }
  .checkout-summary-price{white-space:nowrap!important}
  .checkout-whatsapp{
    min-height:48px!important;
    border-radius:999px!important;
  }

  /* Mis pedidos */
  .orders-drawer{
    width:100%!important;
    max-width:none!important;
  }
  .orders-head{
    padding:calc(18px + env(safe-area-inset-top)) 16px 16px!important;
  }
  .orders-head strong{font-size:22px!important}
  .orders-close{width:42px!important;height:42px!important;flex:0 0 auto!important}
  .orders-toolbar{padding:0 16px!important}
  .orders-list{
    padding:12px!important;
    overscroll-behavior:contain!important;
  }
  .customer-order-card{
    padding:15px!important;
    border-radius:18px!important;
    margin-bottom:12px!important;
  }
  .order-track{
    margin:22px -2px 18px!important;
  }
  .order-track-dot{
    width:28px!important;height:28px!important
  }
  .order-track:before{top:14px!important}
  .order-track-step small{
    font-size:6.5px!important;
    line-height:1.2!important;
  }
  .orders-foot{
    padding:12px 16px calc(12px + env(safe-area-inset-bottom))!important;
  }

  /* Resultado de pago */
  .payment-result{padding:12px!important}
  .payment-result-card{
    width:100%!important;
    max-height:calc(100dvh - 24px)!important;
    padding:30px 18px 22px!important;
    border-radius:24px!important;
  }
  .payment-result h2{
    font-size:clamp(28px,8vw,32px)!important;
  }
}

/* Celulares angostos */
@media (max-width: 430px){
  .section-title{font-size:clamp(40px,11.5vw,50px)!important}
  .product-img{aspect-ratio:1.10/1!important}

  .product-assurances{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .product-assurances>div{
    min-width:0!important;
    padding:9px 7px!important;
  }
  .product-assurances strong{
    font-size:8px!important;
    line-height:1.25!important;
  }
  .product-assurances small{display:none!important}

  .cart-footer-actions{
    gap:8px!important;
    justify-content:space-between!important;
  }
  .cart-link-button{
    min-height:38px!important;
    font-size:7.5px!important;
  }

  .customer-order-top{
    align-items:flex-start!important;
  }
  .customer-order-status{
    max-width:42%!important;
    text-align:center!important;
    white-space:normal!important;
    line-height:1.2!important;
  }
}

/* 360px y similares */
@media (max-width: 380px){
  :root{--mobile-pad:11px}

  .mobile-dock{
    left:6px!important;
    right:6px!important;
    border-radius:18px!important;
  }
  .mobile-dock-item{
    font-size:6.5px!important;
  }

  .dynamic-qty-help{display:none!important}
  .quantity-label-row{justify-content:flex-start!important}

  .product-detail-info{padding-left:14px!important;padding-right:14px!important}
  .product-assurances{
    grid-template-columns:1fr!important;
  }
  .product-assurances>div{
    display:flex!important;
    padding:9px 10px!important;
  }
  .product-assurances small{display:block!important}

  .cart-item{
    grid-template-columns:56px minmax(0,1fr)!important;
  }
  .cart-item-image{
    width:56px!important;height:56px!important
  }
  .cart-item-bottom{
    gap:7px!important;
  }
  .cart-item-subtotal{font-size:11px!important}

  .checkout-main,
  .checkout-side{
    padding-left:13px!important;
    padding-right:13px!important;
  }

  .orders-head small{font-size:9px!important}
  .customer-order-card{padding:13px!important}
  .order-track-step small{font-size:6px!important}
}

@media (prefers-reduced-motion: reduce){
  .mobile-dock,
  .product-mobile-buybar{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
}

/* =========================================================
   MOBILE — SIN MENÚ HAMBURGUESA
   En desktop la navegación superior se mantiene igual.
   En celular usamos el dock inferior y dejamos el header limpio.
========================================================= */
@media (max-width: 900px){
  #menu-toggle,
  .menu-toggle{
    display:none!important;
  }

  #primary-navigation,
  .navlinks{
    display:none!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  .nav{
    grid-template-columns:1fr auto!important;
  }

  .brand{
    grid-column:1!important;
    justify-self:start!important;
  }

  .nav-actions{
    grid-column:2!important;
    justify-self:end!important;
  }

  /* El menú móvil ya no existe, por lo que esta clase no debe bloquear la página. */
  body.menu-open{
    overflow:auto!important;
  }

  body.menu-open .mobile-dock{
    display:grid!important;
  }
}

/* DORADO — MOBILE CONSOLIDADO 2026 */
@media (max-width:900px){
  html{scroll-padding-top:72px}
  body{overflow-x:hidden!important}

  /* Dock: compacto, oscuro y sin tapar contenido */
  .mobile-dock{
    left:10px!important;
    right:10px!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    min-height:64px!important;
    padding:5px!important;
    border-radius:22px!important;
    background:rgba(5,13,20,.96)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    box-shadow:0 14px 40px rgba(0,0,0,.30)!important;
  }
  .mobile-dock-item{
    min-height:52px!important;
    color:#aeb7c0!important;
    border-radius:16px!important;
    font-size:8px!important;
  }
  .mobile-dock-item .ui-icon{width:21px!important;height:21px!important}
  .mobile-dock-item.active{
    color:#f0a027!important;
    background:rgba(240,160,39,.14)!important;
    box-shadow:inset 0 0 0 1px rgba(240,160,39,.22)!important;
  }
  .mobile-dock a[href*="wa.me"]{color:#25D366!important}
  body{padding-bottom:calc(88px + env(safe-area-inset-bottom))!important}

  /* Secciones: eliminar alturas heredadas de desktop */
  .about,.catalog-section,.process,.trust-section,.faq-section,.location,.site-footer{
    min-height:0!important;
    height:auto!important;
  }
  .about-grid,.catalog-heading-row,.process-shell,.faq-shell,.location-box{
    min-height:0!important;
  }
}

@media (max-width:640px){
  :root{--mobile-pad:14px}

  /* Hero y cabecera */
  .hero-combined-scene{background-position:42% center!important}
  .hero{
    min-height:560px!important;
    padding:0!important;
  }
  .hero-shell{
    min-height:560px!important;
    padding:82px 0 78px!important;
    align-items:flex-end!important;
  }
  .hero-content{
    width:100%!important;
    max-width:none!important;
    padding:20px 16px!important;
    border-radius:20px!important;
  }
  .hero-content h1{
    font-size:clamp(38px,11.5vw,52px)!important;
    line-height:.94!important;
    overflow-wrap:normal!important;
  }
  .hero-lead{font-size:13px!important;line-height:1.55!important}
  .hero-proof{
    grid-template-columns:1fr!important;
    gap:7px!important;
    font-size:9px!important;
  }
  .dorado-field-strip{
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:12px!important;
  }
  .dorado-field-strip .feature{
    min-height:0!important;
    padding:16px!important;
    border-radius:16px!important;
  }

  /* Historia */
  .about{padding:54px 0!important}
  .about-grid,.dorado-story-grid{display:block!important}
  .dorado-story-visual{
    min-height:220px!important;
    height:220px!important;
    margin-bottom:22px!important;
  }
  .dorado-seal-wrap{transform:scale(.82)}
  .dorado-story-copy{padding:0 15px!important}
  .about-copy h2{font-size:clamp(35px,10.4vw,46px)!important;line-height:.98!important}
  .dorado-story-points{grid-template-columns:1fr!important}

  /* Catálogo */
  .catalog-shell-dark{padding:54px 0 62px!important}
  .catalog-heading-row{gap:22px!important}
  .dorado-catalog .section-title{font-size:clamp(34px,10vw,46px)!important;line-height:.98!important}
  .dorado-catalog .section-desc{font-size:12px!important}
  .catalog-promises{grid-template-columns:1fr!important;gap:8px!important}
  .dorado-catalog .catalog-search{height:54px!important}
  .category-chips{margin-top:18px!important}
  .dorado-catalog .products{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  .dorado-catalog .product{border-radius:20px!important}
  .dorado-catalog .product-img{aspect-ratio:1.16/1!important}
  .dorado-catalog .product-info{padding:16px!important}
  .dorado-catalog .product-info h3{
    min-height:0!important;
    font-size:16px!important;
  }
  .dorado-catalog .product-card-description{
    min-height:0!important;
    display:-webkit-box!important;
    font-size:10.5px!important;
  }
  .products-loading{
    min-height:118px!important;
    padding:22px 18px!important;
    border-radius:18px!important;
    text-align:center!important;
    line-height:1.55!important;
  }
  .catalog-error-state{
    width:100%;
    display:grid;
    justify-items:center;
    gap:10px;
  }
  .catalog-error-state strong{color:#f3f5f7;font-size:13px}
  .catalog-error-state span{max-width:310px;color:#98a4ae;font-size:10px;line-height:1.55}
  .catalog-retry-btn{
    min-height:42px;
    padding:0 16px;
    border:1px solid rgba(240,160,39,.45);
    border-radius:999px;
    background:rgba(240,160,39,.10);
    color:#f0a027;
    font:inherit;
    font-size:9px;
    font-weight:900;
    letter-spacing:.05em;
  }

  /* Cómo comprar */
  .process,.dorado-buy-flow{padding:58px 0!important}
  .dorado-buy-flow .process-shell{gap:26px!important}
  .dorado-buy-flow .process-intro h2{font-size:clamp(34px,10vw,44px)!important}
  .dorado-buy-flow .process-steps{grid-template-columns:1fr!important;gap:10px!important}
  .dorado-buy-flow .process-step{
    min-height:0!important;
    padding:18px!important;
    gap:16px!important;
  }
  .process-step-copy strong{font-size:18px!important}
  .process-step-copy p{font-size:10.5px!important}

  /* Opiniones: no dejar un bloque vacío enorme cuando no hay reseñas */
  .trust-section{
    padding:52px 0!important;
  }
  .trust-shell,.faq-shell{width:calc(100% - 28px)!important}
  .trust-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    align-items:start!important;
  }
  .trust-copy h2,.faq-intro h2{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    margin-top:10px!important;
    font-size:clamp(30px,9vw,40px)!important;
    line-height:1!important;
  }
  .trust-copy p,.faq-intro p{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    margin-top:12px!important;
    font-size:10.5px!important;
    line-height:1.6!important;
  }
  .reviews-actions{
    width:100%!important;
    justify-content:flex-start!important;
    gap:8px!important;
  }
  .reviews-filter-button,.reviews-google-link{
    min-height:40px!important;
    padding:0 13px!important;
    font-size:8px!important;
  }
  .reviews-empty{
    margin-top:16px!important;
    padding:15px!important;
    gap:11px!important;
    border-radius:16px!important;
  }
  .reviews-empty-mark{width:38px!important;height:38px!important;border-radius:12px!important}
  .reviews-empty strong{font-size:10px!important}
  .reviews-empty p{font-size:9px!important;line-height:1.5!important}
  .trust-section.is-empty{padding-bottom:44px!important}
  .trust-section.is-empty .reviews-actions{margin-top:0!important}
  .reviews-marquee-shell{margin-top:18px!important}
  .review-card{width:min(292px,82vw)!important;min-height:0!important;padding:15px!important}
  .reviews-filter-panel{margin-top:16px!important;padding:14px!important}

  /* FAQ: contenido visible inmediatamente, sin huecos */
  .faq-section{
    padding:46px 0 58px!important;
  }
  .faq-shell{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  .faq-intro,.faq-list{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
  }
  .faq-list{display:grid!important;gap:8px!important}
  .faq-list details{border-radius:14px!important}
  .faq-list summary{
    padding:15px 44px 15px 15px!important;
    font-size:10.5px!important;
    line-height:1.4!important;
  }
  .faq-list details p{
    padding:0 15px 15px!important;
    font-size:10px!important;
  }

  /* Contacto / mapa */
  .location{padding:50px 0 58px!important}
  .location-box{
    width:calc(100% - 22px)!important;
    padding:10px!important;
    border-radius:20px!important;
  }
  .location-copy{padding:18px 8px!important}
  .location-copy h2{font-size:clamp(34px,10vw,46px)!important}
  .dorado-map-live,.dorado-map{min-height:300px!important}
  .contact-actions{display:grid!important;grid-template-columns:1fr!important}
  .contact-actions>a{width:100%!important}

  /* Footer */
  .site-footer{padding:48px 16px calc(100px + env(safe-area-inset-bottom))!important}
  .footer-main{grid-template-columns:1fr!important;gap:24px!important}
  .footer-brand-box{grid-column:auto!important}
  .footer-wordmark{display:block!important;padding:22px 0!important}
  .footer-wordmark .footer-wordmark-name{font-size:clamp(34px,10vw,44px)!important}
  .footer-wordmark .footer-wordmark-desc{display:block!important;margin-top:4px!important;font-size:clamp(18px,5.6vw,25px)!important}
  .footer-bottom{align-items:flex-start!important;text-align:left!important}

  /* Checkout / pagos */
  .payment-picker-menu{grid-template-columns:1fr!important}
  .payment-picker-option{grid-template-columns:44px minmax(0,1fr) auto!important}
  .checkout-payment-detail.full .bank-details-grid{grid-template-columns:1fr!important}
  .checkout-payment-detail.full .card-brands-row{grid-template-columns:1fr 1fr!important}
  .checkout-wholesale-card{padding:14px!important}
}

@media (max-width:430px){
  .hero{min-height:530px!important}
  .hero-shell{min-height:530px!important;padding-bottom:72px!important}
  .dorado-story-visual{height:190px!important;min-height:190px!important}
  .site-footer{padding-left:14px!important;padding-right:14px!important}
  .mobile-dock{left:7px!important;right:7px!important}
  .mobile-dock-item{font-size:7px!important}
}
/* FIN DORADO — MOBILE CONSOLIDADO 2026 */

/* DORADO — FIX MOVIL 2026-09-26 C */
@media (max-width:900px){
  /* Volver al dock oscuro que tenía la tienda antes del último ajuste. */
  .mobile-dock{
    background:rgba(4,10,15,.98)!important;
    border-color:rgba(255,255,255,.10)!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    box-shadow:0 14px 42px rgba(0,0,0,.28)!important;
  }
  .mobile-dock-item{
    color:#9ba4aa!important;
    background:transparent!important;
  }
  .mobile-dock-item.active{
    color:#f0a027!important;
    background:rgba(240,160,39,.12)!important;
    box-shadow:inset 0 0 0 1px rgba(240,160,39,.28)!important;
  }
  .mobile-dock-item[href*="wa.me"]{color:#55dc83!important}

  /* En móvil estas secciones no deben depender de animaciones de entrada:
     evita huecos gigantes en Safari cuando un observer no dispara. */
  .trust-section,
  .faq-section{
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
  }

  html.motion-enhanced .trust-section .motion-item,
  html.motion-enhanced .faq-section .motion-item,
  .trust-section .motion-item,
  .faq-section .motion-item{
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    transition:none!important;
    will-change:auto!important;
  }

  .trust-head,
  .trust-copy,
  .trust-copy h2,
  .trust-copy p,
  .reviews-actions,
  .reviews-empty,
  .faq-shell,
  .faq-intro,
  .faq-intro h2,
  .faq-intro p,
  .faq-list,
  .faq-list details{
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }

  .faq-shell{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:start!important;
  }
  .faq-intro{display:block!important}
  .faq-list{display:grid!important}

  /* Evita que una regla vieja vuelva a dar altura de pantalla completa. */
  .trust-section::before,
  .trust-section::after,
  .faq-section::before,
  .faq-section::after{
    min-height:0!important;
  }
}

@media (max-width:640px){
  .trust-section{padding:44px 0!important}
  .trust-section.is-empty{padding:38px 0 42px!important}
  .faq-section{padding:42px 0 52px!important}
  .trust-head{gap:14px!important}
  .faq-shell{gap:18px!important}
  .reviews-empty{margin-top:14px!important}
}
/* FIN DORADO — FIX MOVIL 2026-09-26 C */

/* DORADO — CONTRASTE FAQ/RESEÑAS MOBILE 2026-09-27 */
@media (max-width:900px){
  .trust-section,
  .faq-section{
    background:#071019!important;
    color:#f6f2e8!important;
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
  }

  .trust-shell,
  .trust-head,
  .trust-copy,
  .reviews-actions,
  .reviews-empty,
  .reviews-filter-panel,
  .faq-shell,
  .faq-intro,
  .faq-list,
  .faq-list details{
    position:relative!important;
    z-index:2!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }

  .trust-copy h2,
  .faq-intro h2,
  .reviews-empty strong,
  .review-author strong,
  .faq-list summary{
    display:block!important;
    color:#f7f3e8!important;
    -webkit-text-fill-color:#f7f3e8!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }

  .trust-copy h2 span,
  .faq-intro h2 span,
  .trust-section .section-index span,
  .trust-section .section-index b,
  .faq-section .section-index span,
  .faq-section .section-index b,
  .trust-section .kicker,
  .faq-section .kicker,
  .faq-list summary::after{
    color:#d6a82f!important;
    -webkit-text-fill-color:#d6a82f!important;
  }

  .trust-copy p,
  .faq-intro p,
  .reviews-empty p,
  .review-card p,
  .faq-list details p{
    display:block!important;
    color:#aab2ba!important;
    -webkit-text-fill-color:#aab2ba!important;
    opacity:1!important;
    visibility:visible!important;
  }

  .reviews-filter-button,
  .reviews-google-link{
    color:#f5f2e9!important;
    -webkit-text-fill-color:#f5f2e9!important;
    background:rgba(255,255,255,.045)!important;
    border-color:rgba(255,255,255,.18)!important;
  }

  .reviews-empty{
    display:grid!important;
    border-color:rgba(214,168,47,.24)!important;
    background:rgba(255,255,255,.035)!important;
  }

  .faq-list{
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  .faq-list details{
    display:block!important;
    background:rgba(255,255,255,.035)!important;
    border-color:rgba(255,255,255,.12)!important;
    box-shadow:none!important;
  }

  .faq-list details[open]{
    background:rgba(214,168,47,.065)!important;
    border-color:rgba(214,168,47,.32)!important;
  }

  html.motion-enhanced .trust-section .motion-item,
  html.motion-enhanced .faq-section .motion-item,
  .trust-section.reveal,
  .faq-section.reveal,
  .trust-section .motion-item,
  .faq-section .motion-item{
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    transition:none!important;
  }
}

@media (max-width:640px){
  .trust-section{padding:36px 0 38px!important}
  .trust-section.is-empty{padding:30px 0 34px!important}
  .faq-section{padding:38px 0 46px!important}
  .trust-shell,
  .faq-shell{width:calc(100% - 28px)!important}
  .trust-copy h2,
  .faq-intro h2{
    margin-top:10px!important;
    font-size:clamp(29px,8.8vw,39px)!important;
    line-height:1!important;
  }
  .trust-copy p,
  .faq-intro p{font-size:10.5px!important;line-height:1.6!important}
  .reviews-empty{margin-top:14px!important;padding:14px!important}
  .faq-shell{gap:18px!important}
  .faq-list{gap:8px!important}
}
/* FIN DORADO — CONTRASTE FAQ/RESEÑAS MOBILE 2026-09-27 */

/* DORADO — CHECKOUT MOBILE FINAL 2026-09-27 */
@media (max-width:700px){
  body.checkout-open .mobile-dock{display:none!important}

  .checkout-modal{
    padding:0!important;
    background:#071019!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  .checkout-card{
    width:100%!important;
    max-width:none!important;
    min-height:100dvh!important;
    margin:0!important;
    border-radius:0!important;
    background:#f7f4ed!important;
    overflow:visible!important;
    box-shadow:none!important;
  }
  .checkout-main{
    padding:calc(62px + env(safe-area-inset-top)) 16px 24px!important;
    background:#f8f6f1!important;
  }
  .checkout-side{
    padding:24px 16px calc(28px + env(safe-area-inset-bottom))!important;
    background:#eee9df!important;
    border-top:1px solid #ddd4c5!important;
  }
  .checkout-close{
    position:fixed!important;
    top:calc(10px + env(safe-area-inset-top))!important;
    right:12px!important;
    width:42px!important;
    height:42px!important;
    border:1px solid #ddd4c6!important;
    background:#fff!important;
    color:#17191d!important;
    box-shadow:0 8px 24px rgba(20,22,26,.10)!important;
  }
  .checkout-kicker{font-size:8px!important;color:#9a7626!important}
  .checkout-title{
    color:#17191d!important;
    font-size:clamp(28px,8vw,34px)!important;
    line-height:1.05!important;
  }
  .checkout-intro{
    max-width:34rem!important;
    color:#686d73!important;
    font-size:11px!important;
    line-height:1.6!important;
  }
  .checkout-form{margin-top:20px!important}
  .checkout-form-grid{
    grid-template-columns:1fr!important;
    gap:13px!important;
  }
  .checkout-field{
    position:relative!important;
    gap:6px!important;
    min-width:0!important;
  }
  .checkout-field.full{grid-column:auto!important}
  .checkout-field>label{
    color:#686b70!important;
    font-size:8px!important;
    letter-spacing:.10em!important;
  }
  .checkout-field input:not([type="checkbox"]),
  .checkout-field textarea{
    width:100%!important;
    min-height:50px!important;
    padding:0 14px!important;
    border:1px solid #d8d1c5!important;
    border-radius:14px!important;
    background:#fff!important;
    color:#15171b!important;
    font-size:16px!important;
    box-shadow:none!important;
  }
  .checkout-field textarea{
    min-height:98px!important;
    padding-top:13px!important;
  }
  .checkout-field input::placeholder,
  .checkout-field textarea::placeholder{color:#999da2!important}
  .checkout-field input:focus,
  .checkout-field textarea:focus{
    border-color:#b78b2e!important;
    box-shadow:0 0 0 3px rgba(183,139,46,.10)!important;
  }

  /* El select nativo sigue en el DOM para mantener valores/formulario,
     pero no se dibuja: solo se usa el selector visual de Dorado. */
  select.dorado-native-select,
  select.payment-native-select{
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:1px!important;
    min-width:0!important;
    max-width:1px!important;
    height:1px!important;
    min-height:0!important;
    max-height:1px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    opacity:0!important;
    clip-path:inset(50%)!important;
    -webkit-clip-path:inset(50%)!important;
    appearance:none!important;
    -webkit-appearance:none!important;
    pointer-events:none!important;
    overflow:hidden!important;
    transform:scale(0)!important;
    transform-origin:0 0!important;
  }

  .dorado-select,
  .payment-picker{
    width:100%!important;
    position:relative!important;
    z-index:30!important;
  }
  .dorado-select.is-open,
  .payment-picker.is-open{z-index:220!important}

  .dorado-select-trigger,
  .payment-picker-trigger{
    width:100%!important;
    min-height:52px!important;
    padding:8px 13px!important;
    border:1px solid #d8d1c5!important;
    border-radius:14px!important;
    background:#fff!important;
    color:#17191d!important;
    box-shadow:none!important;
  }
  .dorado-select-trigger:focus-visible,
  .payment-picker-trigger:focus-visible{
    border-color:#b78b2e!important;
    box-shadow:0 0 0 3px rgba(183,139,46,.10)!important;
  }
  .dorado-select-kicker,
  .payment-picker-trigger-copy>span{
    color:#9a792c!important;
    font-size:7px!important;
    letter-spacing:.10em!important;
  }
  .dorado-select-value,
  .payment-picker-trigger-copy>strong{
    color:#17191d!important;
    font-size:12px!important;
    line-height:1.25!important;
  }
  .dorado-select-chevron,
  .payment-picker-chevron{
    width:17px!important;
    height:17px!important;
    color:#5e6369!important;
  }

  .dorado-select-menu,
  .payment-picker-menu{
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:calc(100% + 6px)!important;
    margin:0!important;
    max-height:min(48dvh,340px)!important;
    overflow:auto!important;
    padding:7px!important;
    border:1px solid #ddd4c4!important;
    border-radius:16px!important;
    background:#fffdf8!important;
    box-shadow:0 18px 45px rgba(17,20,24,.18)!important;
    z-index:10050!important;
    grid-template-columns:1fr!important;
  }
  .dorado-select-option,
  .payment-picker-option{
    min-height:54px!important;
    padding:9px 10px!important;
    border-radius:12px!important;
    background:#fff!important;
    border:1px solid #e7dfd3!important;
  }
  .dorado-select-option.is-selected,
  .payment-picker-option.is-selected{
    background:#fff8e9!important;
    border-color:#c8a75c!important;
  }
  .dorado-select-option-copy strong,
  .payment-picker-copy strong{
    color:#1b1d20!important;
    font-size:11px!important;
  }
  .dorado-select-option-copy small,
  .payment-picker-copy small{
    color:#6f747a!important;
    font-size:8.5px!important;
  }
  .dorado-select-badge,
  .payment-picker-status{
    padding:4px 6px!important;
    font-size:6.5px!important;
  }

  /* Pago: iconos chicos y proporcionales */
  .payment-picker-option{
    grid-template-columns:38px minmax(0,1fr) auto!important;
    gap:9px!important;
  }
  .payment-picker-icon{
    width:38px!important;
    height:38px!important;
    border-radius:10px!important;
  }
  .payment-picker-icon img{
    max-width:32px!important;
    max-height:32px!important;
  }
  .payment-picker-icon-cash img{
    max-width:35px!important;
    max-height:35px!important;
  }
  .payment-picker-logo-mp,
  .payment-picker-logo-modo{width:44px!important}
  .payment-picker-logo-mp img{max-width:41px!important;max-height:21px!important}
  .payment-picker-logo-modo img{max-width:39px!important;max-height:20px!important}
  .payment-picker-icon-bank svg,
  .payment-picker-icon-card svg{width:22px!important;height:22px!important}

  .checkout-payment-detail{
    width:100%!important;
    margin-top:10px!important;
  }
  .payment-detail-panel{
    width:100%!important;
    padding:14px!important;
    border-radius:16px!important;
    border:1px solid #ddd4c5!important;
    background:#fffdf9!important;
    box-shadow:none!important;
  }
  .payment-detail-head{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }
  .payment-detail-head strong{
    color:#17191d!important;
    font-size:12px!important;
    line-height:1.25!important;
  }
  .payment-detail-head small{
    color:#70757b!important;
    font-size:9px!important;
    line-height:1.45!important;
  }
  .payment-detail-note{
    margin-top:10px!important;
    color:#70757b!important;
    font-size:9px!important;
    line-height:1.55!important;
  }

  .payment-brand-whatsapp{
    width:38px!important;height:38px!important;flex:0 0 38px!important;
  }
  .payment-brand-whatsapp img{
    width:36px!important;height:36px!important;max-width:36px!important;max-height:36px!important;
  }
  .payment-brand-transfer,
  .payment-brand-card{
    width:38px!important;height:38px!important;flex:0 0 38px!important;padding:6px!important;border-radius:10px!important;
  }
  .payment-brand-transfer svg,
  .payment-brand-card svg{
    width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important;
  }
  .payment-brand-cash{
    width:44px!important;height:38px!important;flex:0 0 44px!important;padding:0!important;
  }
  .payment-brand-cash img{
    width:42px!important;height:36px!important;max-width:42px!important;max-height:36px!important;
  }
  .payment-brand-mp{
    width:76px!important;height:28px!important;flex:0 0 76px!important;
  }
  .payment-brand-modo{
    width:72px!important;height:28px!important;flex:0 0 72px!important;
  }
  .payment-brand-mp img{max-width:72px!important;max-height:24px!important}
  .payment-brand-modo img{max-width:68px!important;max-height:22px!important}

  .bank-details-grid{
    grid-template-columns:1fr!important;
    gap:7px!important;
    margin-top:11px!important;
  }
  .bank-details-grid>div{
    min-height:0!important;
    padding:10px 46px 10px 11px!important;
    border-radius:11px!important;
  }
  .bank-details-grid span{font-size:6.5px!important}
  .bank-details-grid strong{
    margin-top:4px!important;
    color:#24262a!important;
    font-size:11px!important;
    line-height:1.35!important;
    overflow-wrap:anywhere!important;
  }
  .copy-bank-data{
    right:7px!important;
    padding:5px 6px!important;
    font-size:6px!important;
  }

  .card-brands-row{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    margin-top:11px!important;
  }
  .card-brand{
    min-width:0!important;
    min-height:36px!important;
    height:36px!important;
    padding:0 6px!important;
    border-radius:9px!important;
  }
  .card-brand img{
    max-width:52px!important;
    max-height:20px!important;
  }
  .card-brand-visa img{max-height:15px!important}
  .card-brand-mastercard img,
  .card-brand-maestro img{max-height:20px!important}
  .card-brand-cabal img{max-height:21px!important}

  .secure-card-fields{
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin-top:11px!important;
  }
  .secure-card-fields label:first-child,
  .secure-card-fields label:nth-child(2){grid-column:auto!important}
  .secure-card-fields label>span{font-size:6.5px!important}
  .secure-card-fields input{
    min-height:44px!important;
    font-size:11px!important;
    border-radius:10px!important;
  }

  .checkout-delivery-note,
  .checkout-shipping{
    border-radius:12px!important;
    font-size:9px!important;
    line-height:1.55!important;
  }
  .checkout-consent{font-size:9.5px!important}
  .checkout-pay{
    min-height:52px!important;
    border-radius:999px!important;
    font-size:9px!important;
  }
  .checkout-secure{
    color:#777c82!important;
    font-size:8px!important;
    line-height:1.5!important;
    text-align:center!important;
  }

  .checkout-side h3{
    color:#17191d!important;
    font-size:15px!important;
  }
  .checkout-summary-item{
    grid-template-columns:46px minmax(0,1fr) auto!important;
    gap:9px!important;
  }
  .checkout-summary-item img{
    width:46px!important;
    height:46px!important;
    border-radius:10px!important;
  }
  .checkout-summary-item strong{font-size:9px!important}
  .checkout-summary-price{font-size:9px!important}
  .checkout-wholesale-card{
    margin-top:14px!important;
    padding:14px!important;
    border-radius:16px!important;
  }
  .checkout-wholesale-copy strong{font-size:12px!important}
  .checkout-wholesale-copy p{font-size:9px!important}
  .checkout-wholesale{min-height:44px!important;font-size:7.5px!important}
}
/* FIN DORADO — CHECKOUT MOBILE FINAL 2026-09-27 */
