/* VisuProd (visuprod.com) — merchandising en estilo blanco.
   Se apoya en main.css (tokens, nav, botones, footer y estilos del catálogo): misma identidad que visuproduct.com. */
[data-theme="light"]{--c-bg:#FFFFFF;--c-bg-2:#F4F1EC;--c-bg-3:#EAE6DF;--c-surface:#FFFFFF}
.brand-tag{display:inline-block;margin-left:.55rem;padding:.2rem .6rem;border-radius:100px;background:var(--gradient);color:#fff;font-size:.62rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle;line-height:1.3}
.nav.is-light.is-stuck{background:rgba(255,255,255,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--c-line-soft)}
.nav__link[aria-current="page"]{color:var(--c-accent)}

/* hero */
.mhero{padding-top:calc(var(--nav-h) + clamp(2rem,5vw,4rem));padding-bottom:clamp(2.5rem,6vw,5rem)}
.mhero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.mhero__title{font-size:var(--fs-huge);line-height:1.02;letter-spacing:-.03em;margin:1rem 0 1.25rem}
.mhero__actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-3)}
.mhero__pts{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:var(--sp-3);color:var(--c-text-soft);font-size:var(--fs-sm)}
.mhero__pts li::before{content:"";display:inline-block;width:.45rem;height:.45rem;border-radius:50%;background:var(--gradient);margin-right:.5rem;vertical-align:middle}
.mhero__tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.5rem,1.5vw,1rem)}
.mhero__tile{aspect-ratio:1;background:var(--c-bg-2);border-radius:var(--r-lg);display:grid;place-items:center;overflow:hidden;padding:8%}
.mhero__tile img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.mhero__tile:nth-child(2),.mhero__tile:nth-child(5){transform:translateY(clamp(.75rem,2vw,1.5rem))}

/* cifras */
.mstats{border-block:1px solid var(--c-line);background:var(--c-bg)}
.mstats__row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-2);padding-block:clamp(1.25rem,3vw,2rem)}
.mstats__row div{display:flex;flex-direction:column;gap:.1rem}
.mstats__row b{font-size:var(--fs-xl);font-weight:700;letter-spacing:-.02em;line-height:1.1;background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent;width:fit-content}
.mstats__row span{font-size:var(--fs-sm);color:var(--c-text-soft)}

/* encabezados de seccion */
.msec__head{max-width:62ch;margin-bottom:clamp(1.75rem,4vw,3rem)}
.msec__head .lead{margin-top:var(--sp-2)}
.msec__more{margin-top:clamp(1.5rem,3vw,2.5rem)}

/* categorias */
.mcats{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:clamp(.75rem,1.6vw,1.25rem)}
.mcat{display:flex;flex-direction:column;gap:.15rem;background:var(--c-bg-2);border-radius:var(--r-lg);padding:1rem 1rem 1.15rem;transition:transform var(--d-mid) var(--ease-out),box-shadow var(--d-mid) var(--ease-out)}
.mcat:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(11,10,12,.10)}
.mcat__img{aspect-ratio:1;background:#fff;border-radius:var(--r-md);display:grid;place-items:center;padding:10%;margin-bottom:.75rem;overflow:hidden}
.mcat__img img{width:100%;height:100%;object-fit:contain}
.mcat__name{font-weight:600;line-height:1.25}
.mcat__n{font-size:var(--fs-xs);color:var(--c-text-muted)}

/* pasos */
.msteps{background:var(--c-bg-2)}
.msteps__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:clamp(1rem,2.4vw,2rem)}
.msteps__list li{border-top:2px solid var(--c-text);padding-top:1rem}
.msteps__list b{font-size:var(--fs-sm);font-weight:600;background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
.msteps__list h3{font-size:var(--fs-lg);margin:.4rem 0 .4rem;letter-spacing:-.01em}
.msteps__list p{color:var(--c-text-soft);max-width:34ch}

/* servicios (links a visuproduct.com) */
.msvcs{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:clamp(.75rem,1.6vw,1.25rem)}
.msvc{position:relative;display:flex;flex-direction:column;gap:.35rem;padding:1.25rem 3rem 1.35rem 1.25rem;border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-bg);transition:border-color var(--d-mid) var(--ease-out),transform var(--d-mid) var(--ease-out)}
.msvc:hover{border-color:var(--c-accent);transform:translateY(-3px)}
.msvc b{font-size:var(--fs-md);letter-spacing:-.01em}
.msvc span{font-size:var(--fs-sm);color:var(--c-text-soft)}
.msvc i{position:absolute;top:1.1rem;right:1.2rem;font-style:normal;font-size:1.1rem;color:var(--c-accent)}
.msvc--lg{padding-block:1.6rem}

/* contacto */
.mcontact{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(.75rem,1.6vw,1.25rem)}
.mcontact__card{display:flex;flex-direction:column;gap:.35rem;padding:1.5rem;border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-bg);transition:border-color var(--d-mid) var(--ease-out),transform var(--d-mid) var(--ease-out)}
a.mcontact__card:hover{border-color:var(--c-accent);transform:translateY(-3px)}
.mcontact__card span{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-muted)}
.mcontact__card b{font-size:var(--fs-lg);letter-spacing:-.01em;word-break:break-word}
.mcontact__card i{font-style:normal;font-size:var(--fs-sm);color:var(--c-accent)}
.mcontact__card--wa{background:var(--gradient);border-color:transparent;color:#fff}
.mcontact__card--wa span,.mcontact__card--wa i{color:rgba(255,255,255,.88)}
.mcontact__note{margin-top:var(--sp-3);color:var(--c-text-soft)}

/* catalogo: boton ver mas */
.cat-more{display:flex;justify-content:center;margin-top:clamp(1.5rem,3vw,2.5rem)}

@media (max-width:860px){
  .mhero__grid{grid-template-columns:1fr}
  .mstats__row{grid-template-columns:repeat(2,1fr)}
  .nav__brand .brand-tag{display:none}
}
@media (prefers-reduced-motion:reduce){
  .mcat,.msvc,.mcontact__card{transition:none}
}
