/* ═══════════ MOBILE LAYER — Lamina Zero (≤760px) ═══════════ */

/* ── A. Barra inferior de acciones (todas las páginas) ── */
.mbar{display:none}
@media(max-width:760px){
  .mbar{position:fixed;left:0;right:0;bottom:0;z-index:190;display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:6px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:rgba(10,11,12,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid rgba(255,255,255,.1);transform:translateY(0);transition:transform .3s var(--ease)}
  .mbar.hide{transform:translateY(110%)}
  .mbar a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:12px;font-weight:700;font-size:14px;letter-spacing:-.01em;text-decoration:none;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
  .mbar a svg{width:18px;height:18px;flex:0 0 auto}
  .mbar a.wa{background:#1fb457;border-color:#1fb457}
  .mbar a.q{background:var(--acc);border-color:var(--acc)}
  body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}
  #wa-float{display:none!important}
  .ck{bottom:calc(74px + env(safe-area-inset-bottom))!important}
}

/* ── B. Nav compacto ── */
@media(max-width:760px){
  .nav{padding:8px 10px 0}
  .nav-in{height:58px;padding:0 4px 0 12px;border-radius:14px}
  .logo img{height:34px}
  .burger{width:46px;height:46px}
  .mob{padding-top:84px}
  .mob a{font-size:clamp(20px,5.4vw,26px);padding:12px 0}
  .mob a.mini{font-size:16px;padding:9px 0}
  .mob .mob-sub{margin-top:14px}
}

/* ── C. Hero inicio ── */
@media(max-width:760px){
  .hero{min-height:calc(100svh - 0px)}
  .hero-in{display:flex;flex-direction:column;justify-content:flex-end;min-height:100svh;padding-bottom:clamp(28px,7vw,40px)!important}
  .hero-eye{margin-bottom:14px}
  .hero-eye .eyebrow{font-size:11px}
  .open-badge{font-size:11px}
  .hero-h,.hero-h.hero-3{font-size:clamp(34px,9.6vw,46px)!important;line-height:1.02;letter-spacing:-.04em;max-width:none}
  .hero-h.hero-3>*{display:block}
  .hero-foot{flex-direction:column;align-items:stretch;gap:18px;margin-top:20px}
  .hero-lead{font-size:15px;line-height:1.55;max-width:none}
  .hero-cta{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
  .hero-cta .btn{flex:none;justify-content:center;min-height:50px;font-size:14px;padding:0 14px}
  .hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px;padding-top:16px}
  .hero-stats .st b{font-size:clamp(20px,6vw,26px)}
  .hero-stats .st span{font-size:10px;letter-spacing:.12em}
  .hero-media video,.hero-media img{object-position:center 40%}
}

/* ── D. Inicio: secciones ── */
@media(max-width:760px){
  .ticker-track{padding:14px 0}.ticker-i{font-size:15px;padding:0 14px;gap:12px}
  .intro-in{gap:26px}
  .intro-in .lead{font-size:clamp(20px,5.6vw,26px);line-height:1.25}
  .intro-stats{grid-template-columns:repeat(3,1fr);gap:14px 8px}
  .intro-stats .st b{font-size:clamp(24px,7vw,32px)}
  .intro-stats .st span{font-size:10px;letter-spacing:.1em;margin-top:5px}

  /* servicios: carrusel horizontal con snap */
  .svc-grid{display:flex!important;grid-template-columns:none!important;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 var(--pad) 8px;margin:0 calc(-1*var(--pad))}
  .svc-grid::-webkit-scrollbar{display:none}
  .svc{flex:0 0 78vw;max-width:320px;aspect-ratio:3/3.6!important;scroll-snap-align:center}
  .svc-body{padding:20px 18px}
  .svc-body h3{font-size:24px}
  .svc-body p{max-height:none;opacity:1;font-size:13.5px;margin-top:8px}
  .svc-go{transform:scale(1);opacity:1;bottom:18px;right:16px;width:38px;height:38px}
  .svc-tag{font-size:10px;top:14px;right:14px;padding:5px 9px}
  .svc-num{top:16px;left:18px}
  .sec-head{gap:10px;margin-bottom:22px}
  .sec-head h2{font-size:clamp(30px,8.4vw,40px)}
  .sec-head .sh-aside p{font-size:15px;margin-top:8px}
  .svc-hint{display:block!important;font-family:var(--f-mono),monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--g);margin:10px 0 0}

  /* feature PPF */
  .feat-media{min-height:52vh}
  .feat-txt{padding:clamp(34px,8vw,48px) var(--pad)}
  .feat-txt h3{font-size:clamp(30px,8.6vw,42px)}
  .feat-specs{grid-template-columns:1fr 1fr;gap:16px 12px}
  .feat-specs b{font-size:clamp(24px,7vw,32px)}

  /* franja colores */
  .cstrip-grid,.home-colors{grid-template-columns:repeat(4,1fr)!important;gap:8px}

  /* packs → carrusel */
  .packs-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 var(--pad) 8px;margin:0 calc(-1*var(--pad))}
  .packs-grid::-webkit-scrollbar{display:none}
  .pack{flex:0 0 80vw;max-width:330px;scroll-snap-align:center}
  .packs-head h3{font-size:clamp(28px,8vw,38px)}

  /* zonas strip */
  .zstrip-in{gap:18px;padding:clamp(40px,10vw,56px) var(--pad)}
  .zstrip h3{font-size:clamp(24px,7vw,32px)}
  .zstrip-list span{font-size:13px;padding:8px 12px}
  .zstrip-in>.btn{width:100%;justify-content:center;white-space:normal;text-align:center;line-height:1.3;padding:14px 16px}

  /* CTA */
  .cta-in{padding:clamp(70px,18vw,100px) var(--pad)}
  .cta h2{font-size:clamp(36px,11vw,52px)!important;line-height:.95}
  .cta-btns{display:grid;grid-template-columns:1fr;gap:10px}
  .cta-btns .btn{justify-content:center}

  /* footer */
  .foot-in{grid-template-columns:1fr 1fr;gap:28px 20px;padding-top:44px}
  .foot-in>div:first-child{grid-column:1/-1}
  .foot-blurb{font-size:14px}
  .foot-col a{padding:6px 0;display:block;font-size:15px}
  .foot-bottom{flex-direction:column;align-items:flex-start;gap:10px}
}

/* ── E. Páginas de servicio: heros ── */
@media(max-width:760px){
  .phero-in,.ln-hero-in,.pf-hero-in,.p3-hero-in,.cw-hero-in,.tn-hero-in,.sol-hero-in,.stk-hero-in,.bk2-hero-in,.pc-hero-in,.sx-hero-in,.ab-hero-in{display:flex;flex-direction:column;justify-content:flex-end;gap:0;min-height:100svh;padding-bottom:clamp(28px,7vw,40px)!important}
  .phero h1,.ln-hero h1,.pf-hero h1,.p3-hero h1,.cw-hero h1,.tn-hero h1,.sol-hero h1,.stk-hero h1,.bk2-hero h1,.pc-hero h1,.sx-hero h1,.ab-hero h1{font-size:clamp(34px,9.6vw,46px)!important;line-height:1.02!important;letter-spacing:-.04em}
  .ln-lead,.pf-lead,.p3-lead,.cw-lead,.tn-lead,.sol-lead,.stk-lead,.bk2-lead,.pc-sub,.pc-lead,.ab-lead,.phero p{font-size:15px!important;line-height:1.55;max-width:none}
  /* tarjeta lateral del hero (triage/precios) baja bajo el texto */
  .ln-tri,.pc-hero-side,.ab-hero-side,.stk-hero-side{margin-top:22px;width:100%}
  .ln-tri-opts a{min-height:56px}
  /* CTAs hero */
  .ln-hero-cta,.pf-hero-cta,.p3-hero-cta,.cw-hero-cta,.tn-hero-cta,.sol-hero-cta,.stk-hero-cta,.bk2-hero-cta,.pc-hero-cta,.ab-hero-cta{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
  .ln-hero-cta .btn,.pf-hero-cta .btn,.p3-hero-cta .btn,.cw-hero-cta .btn,.tn-hero-cta .btn,.sol-hero-cta .btn,.stk-hero-cta .btn,.bk2-hero-cta .btn,.pc-hero-cta .btn,.ab-hero-cta .btn{flex:none;justify-content:center;min-height:50px;font-size:14px;padding:0 12px;white-space:normal;text-align:center;line-height:1.2}
  /* stats bajo el hero */
  .pf-strip,.p3-strip,.tn-strip,.cw-strip,.stk-strip,.bk2-strip,.pc-strip,.sol-strip,.ln-strip{grid-template-columns:repeat(2,1fr)!important;gap:14px 10px}
  /* botón mute */
  .p3-mute,.ab-mute,.cw-mute,.pf-mute{min-height:40px;font-size:12px}
}

/* ── F. Páginas de servicio: cuerpo ── */
@media(max-width:760px){
  .ln-sec,.dsec,.p3-sec,.cw-sec,.tn-sec,.stk-sec,.pc-sec,.bk3-sec,.sol-sec{padding-top:clamp(48px,12vw,64px);padding-bottom:clamp(48px,12vw,64px)}
  .ln-h2,.dsec-head h2,.p3-h2,.cw-h2,.tn-h2,.stk-h2,.pc-h2,.bk3-h2,.sol-h2,.dsec h2{font-size:clamp(28px,8vw,38px)!important;line-height:1.05}
  .ln-kick,.dkick,.p3-kick,.cw-kick,.tn-kick,.stk-kick,.pc-kick,.bk2-kick,.bk3-kick,.sx-kick,.ln-say-k,.m-kick,.tw-kick,.pf-gswf-kick,.ct-kick,.cx-kick{font-size:11px!important}
  /* cualquier grid de 3+ columnas → 1 o 2 */
  .lc-tips,.zn-grid,.ga-brands,.p3-covg,.p3-why,.p3-adv,.p3-films,.p3-proc,.p3-crit,.p3-brands,.cw-fins,.cw-proc,.cw-adv,.tn-why,.tn-proc,.tn-gamas,.tt-grid,.stk-zones,.stk-adv,.stk-proc,.bk3-why,.bk3-tiers,.bk3-proc,.bk3-ext,.sol-adv,.sol-uses,.sol-proc,.sx-uses,.pc-brands,.pc-tiers,.lc-cars,.zn-svcs,.ab-specs,.ab-trust-stats,.ln-trust-stats,.gd-grid,.ln-two,.ga-two,.lc-color,.pc-cmp{grid-template-columns:1fr!important}
  .lc-route,.cvm-row,.sfb,.cx-dbrands,.tv-tabs{grid-template-columns:repeat(3,1fr)!important}
  .lc-cars,.zn-svcs,.ga-brands{grid-template-columns:1fr 1fr!important}
  .ln-trust-stats,.ab-trust-stats,.ab-specs{grid-template-columns:repeat(3,1fr)!important;gap:10px}
  .ln-trust-stats b,.ab-trust-stats b{font-size:clamp(22px,6.6vw,30px)!important}
  /* imágenes de secciones: alto razonable */
  .ln-trust figure img,.lc-color figure img,.ab-ch-gal img,.stk-hydro-img img{min-height:0;max-height:260px}
  /* tablas comparativas → tarjetas apiladas */
  .pc-vs table,.ga-table table,.bk3-cmp table,.cw-cmp table{display:block!important;min-width:0!important;table-layout:auto}
  .pc-vs thead,.ga-table thead,.bk3-cmp thead,.cw-cmp thead{display:none}
  .pc-vs tbody,.pc-vs tr,.pc-vs td,.ga-table tbody,.ga-table tr,.ga-table td,.bk3-cmp tbody,.bk3-cmp tr,.bk3-cmp td,.cw-cmp tbody,.cw-cmp tr,.cw-cmp td{display:block;width:100%}
  .pc-vs tr,.ga-table tr,.bk3-cmp tr,.cw-cmp tr{padding:14px 0;border-bottom:1px solid rgba(0,0,0,.1)}
  .ga-table tr{border-color:rgba(0,0,0,.1)}.pc-vs tr,.bk3-cmp tr{border-color:rgba(255,255,255,.12)}
  .pc-vs td,.ga-table td,.bk3-cmp td,.cw-cmp td{padding:4px 0!important;border:none!important;font-size:14px}
  .pc-vs td:first-child,.ga-table td:first-child,.bk3-cmp td:first-child,.cw-cmp td:first-child{font-weight:700;font-size:15px;padding-bottom:6px!important}
  .pc-vs td[data-l]::before,.ga-table td[data-l]::before,.bk3-cmp td[data-l]::before,.cw-cmp td[data-l]::before{content:attr(data-l) ' · ';font-family:var(--f-mono),monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.6}
  .ga-table{overflow:visible;border:none;background:transparent}
  /* FAQ */
  .qa-q{font-size:16px;padding:16px 0;line-height:1.3}
  .qa-a p{font-size:15px}
  /* botones en cuerpo */
  .btn.lg{min-height:52px;font-size:15px}
  .ctab-in h3{font-size:clamp(26px,7.6vw,36px)}
  .ctab-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .ctab-actions .btn{justify-content:center}
  /* marquesinas */
  .p3-marq-track{padding:12px 0}
}

/* ── G. Catálogo de colores ── */
@media(max-width:760px){
  .cx-grid,.cat-grid{grid-template-columns:repeat(3,1fr)!important;gap:8px}
  .cx-card small,.cc-code,.cx-card .code{font-size:11px!important}
  .cx-dr{width:100vw!important;max-width:100vw!important;left:0;right:0}
  .cx-dr-h,.cx-dr-b,.cx-dr-s{max-width:100%;overflow-wrap:anywhere}
  .cx-dr-h h4,.cx-dr-h b{font-size:18px;overflow-wrap:anywhere}
  .cx-x{width:44px;height:44px;flex:0 0 44px}
  .cx-chip,.cat-filters>*{min-height:40px;padding:0 14px;font-size:13px}
  .cx-dbrands{grid-template-columns:repeat(3,1fr)!important}
}

/* ── H. Contacto ── */
@media(max-width:760px){
  .ct-form,.q-form{padding:22px 16px}
  .q-steps{grid-template-columns:1fr 1fr 1fr;gap:6px}
  .q-steps>*{font-size:12px;padding:10px 6px;text-align:center}
  .q-row,.f-row{grid-template-columns:1fr!important}
  .q-zones,.q-svcs{grid-template-columns:1fr 1fr!important;gap:8px}
  .q-zones label,.q-svcs label{min-height:48px;font-size:14px;padding:10px 12px}
  select,input,textarea{min-height:50px;font-size:16px!important}
  .ct-info-grid,.ct-dl{grid-template-columns:1fr!important}
  .bigmap{aspect-ratio:4/5}
  .map-refs ul{gap:6px}.map-refs li{font-size:13px}
}

/* ── I. Blog ── */
@media(max-width:760px){
  .blog-grid{grid-template-columns:1fr!important;gap:16px}
  .bpost-img{aspect-ratio:16/10}
  .bpost-body h3{font-size:19px}
  .article h1{font-size:clamp(28px,8vw,36px)}
  .article-body{font-size:16.5px;line-height:1.7}
  .article-body h2{font-size:clamp(22px,6.4vw,28px)}
  .article-body table{display:block;overflow-x:auto;font-size:14px}
  .article-cta{padding:26px 20px}
  .article-cta .btn{width:100%;justify-content:center;margin:6px 0}
}

/* ── J. Tintado / Bike / Náutica específicos ── */
@media(max-width:760px){
  .tv-view{gap:14px}
  .tv-tab{padding:10px 10px}.tv-tab b{font-size:18px}.tv-tab span{font-size:11px}
  .tt{padding:22px 18px}
  .tt-warr{font-size:13px}
  .cvm-row{gap:6px}.cvm-row>*{min-height:48px}
  .bk3-cfg{padding:18px 14px}
  .bk3-search input{min-height:52px;font-size:16px}
  .stk-range figcaption{font-size:11px}
  .stk-prod{grid-template-columns:1fr!important}
  .stk-prod .pm{aspect-ratio:16/10}
}

/* ── K. Táctil: sin efectos hover pegados, objetivos ≥44px ── */
@media(hover:none) and (max-width:760px){
  a,button,.btn,.qa-q,.cx-chip,.tv-tab,.sf-goal,.pc-fbtn,.cf-btn,.tg-go,.svc-go{min-height:44px}
  .svc-go,.tg-go{min-width:44px}
  a.mini{min-height:40px}
  .svc:hover .svc-img img,.pack:hover,.zn-svcs a:hover,.lc-cars a:hover img{transform:none}
}

/* ── L. Pantallas muy estrechas (≤360px) ── */
@media(max-width:360px){
  :root{--pad:16px}
  .hero-h,.hero-h.hero-3{font-size:32px!important}
  .hero-cta,.ln-hero-cta,.pf-hero-cta,.p3-hero-cta,.cw-hero-cta,.tn-hero-cta,.bk2-hero-cta,.pc-hero-cta{grid-template-columns:1fr}
  .hero-stats,.intro-stats{grid-template-columns:repeat(3,1fr);gap:8px}
  .hero-stats .st b,.intro-stats .st b{font-size:20px}
  .svc{flex-basis:84vw}
  .mbar{grid-template-columns:1fr 1fr 1.2fr}
  .mbar a{font-size:13px;gap:6px}
  .cx-grid,.cat-grid{grid-template-columns:repeat(2,1fr)!important}
}

/* ── M. Restos detectados a 390px ── */
@media(max-width:760px){
  /* catálogo: panel lateral a pantalla completa */
  .cx-dr{position:fixed!important;inset:0!important;width:100%!important;max-width:100%!important;height:100%!important;border-radius:0!important;transform:none!important;overflow-y:auto;padding-bottom:calc(80px + env(safe-area-inset-bottom))}
  .cx-dr *{max-width:100%}
  .cx-dr-h{flex-wrap:wrap;gap:10px;padding-right:56px;position:relative}
  .cx-dr-h h4,.cx-dr-h b,.cx-dr-h .code{font-size:17px;line-height:1.25;overflow-wrap:anywhere;word-break:break-word}
  .cx-x{position:absolute!important;top:12px;right:12px}
  .cx-dr-b img{max-height:44vh;object-fit:contain}
  /* tabla comparativa de bike (clase .cmp) → tarjetas */
  .cmp-wrap{overflow:visible}
  table.cmp{display:block!important;min-width:0!important}
  table.cmp thead{display:none}
  table.cmp tbody,table.cmp tr,table.cmp td{display:block;width:100%}
  table.cmp tr{padding:14px 0;border-bottom:1px solid rgba(0,0,0,.1)}
  table.cmp td{padding:3px 0!important;border:none!important;font-size:14px}
  table.cmp td:first-child{font-weight:700;font-size:15px;padding-bottom:6px!important}
  table.cmp td[data-l]::before{content:attr(data-l) ' · ';font-family:var(--f-mono),monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.6}
  /* migas de pan y enlaces-texto pequeños */
  .crumb a,.a-crumb a,nav.crumb a{display:inline-flex;align-items:center;min-height:40px;padding:0 4px}
  .tg-go,.ln-tri-foot a,.ab-ch a,.stk-prod a,a[class*="-more"],a.more{display:inline-flex;align-items:center;min-height:44px;padding:0 4px}
  .pc-fbtn,.cx-chip,.cf-btn,.sf-goal,.su-fbtn{min-height:44px!important;padding:0 14px}
  .vid-sound,.p3-mute,.ab-mute,.cw-mute,.pf-mute{min-height:44px;padding:0 14px}
  /* botones de bike "empezar de nuevo" y similares */
  .bk3-reset,button.link,.link-btn{min-height:44px;padding:8px 6px}
  /* spans y small residuales por debajo de 11px */
  small,.svc-body small,.pc-card small,.pc-brand-tag,.tag,.tt,.mtag,.mbadge,.who,.tt-badge,.tc-badge,.pc-brand-origin,.pc-price-n,.cx-card small,.cx-card p,.t,.bk3-kick,.sfp-fam{font-size:11.5px!important}
  .intro-stats .st span,.hero-stats .st span,.feat-specs span,.lc-route span,.tv-badge span,.stk-kick{font-size:10.5px!important;letter-spacing:.1em}
  /* logos de marcas de la home: nunca desbordan */
  .brand-i{max-width:100%;flex:0 0 auto}
  .brands-track,.brand-row{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .brands-track::-webkit-scrollbar{display:none}
}
