/* Each business keeps its identity; the layout puts its useful action first. */
html{scroll-padding-top:110px}
.demo-aviso{display:flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 18px;font-size:11px;line-height:1.5}
.demo-aviso a{margin-left:auto;color:inherit;white-space:nowrap;text-decoration:underline;text-underline-offset:3px;font-weight:700}
.barra{border-radius:16px!important;box-shadow:0 8px 28px #00000012!important}
.barra nav a,.barra nav button{min-height:44px}
.hero{padding-block:52px 40px}
.hero-premium,.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:32px 48px}
.hero h1{font-size:clamp(40px,5.2vw,66px);line-height:1.07;letter-spacing:-.055em;max-width:14ch}
.hero .lead{font-size:16px;line-height:1.65;max-width:40ch;margin-top:20px}
.hero .acts{gap:10px;margin-top:26px}
.hero-premium .hero-visual,.hero-foto{min-height:0;height:440px;border-radius:18px;box-shadow:none}
.hero-premium .hero-visual img,.hero-foto img{height:100%;min-height:0;object-fit:cover}
.hero-proof,.hero-sla,.hero-disponible{border-radius:12px!important;font-size:12px}
.hero-proof b,.hero-sla b,.hero-disponible b{font-size:14px}
.hero-proof span,.hero-sla span,.hero-disponible span{font-size:11px;line-height:1.5}
.hero-premium .datos{border-radius:0;background:none;border:0;border-block:1px solid var(--linea);box-shadow:none}
.datos>div{padding:18px 12px}.datos b{font-size:26px}.datos>div>span{font-size:12px}
.cab{max-width:60ch}.cab p{font-size:15px;line-height:1.65;max-width:48ch}
section{scroll-margin-top:110px}
.btn{transition:transform .2s,box-shadow .2s;min-height:48px}
.btn:active{transform:scale(.96)}
.pasos{gap:18px;align-items:start}
.paso,.panel{border-radius:18px!important}
.op,.trab{min-height:54px;transition:border-color .2s,background .2s,transform .2s}
.op:focus-visible,.trab:focus-visible{outline:2px solid var(--acento);outline-offset:3px}
body[data-demo=barberia] .servicios{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}
body[data-demo=barberia] .srv{padding:22px 0;border:0;border-bottom:1px solid var(--linea);border-radius:0;background:none;box-shadow:none}
body[data-demo=barberia] .srv::before,body[data-demo=barberia] .srv::after,body[data-demo=barberia] .srv>.reflejo{display:none}
body[data-demo=barberia] .srv h3{font-size:18px}.srv .precio{font-size:22px}
body[data-demo=bar] .hero h1{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(48px,6.7vw,78px);font-weight:400;letter-spacing:-.035em;max-width:none}
body[data-demo=bar] .hero-foto{border-radius:120px 120px 14px 14px}
body[data-demo=bar] .pizarra{border-radius:12px;box-shadow:none;max-width:100%;display:flex;align-items:stretch}
body[data-demo=bar] .pizarra .que{padding:16px 22px}.pizarra .que p{font-size:13px;line-height:1.5}
body[data-demo=bar] .destacados-platos{gap:18px}.destacado-plato{border-radius:14px!important;box-shadow:none!important}
body[data-demo=bar] .filtros{padding:18px;border:1px solid var(--linea);border-radius:14px;gap:12px}
body[data-demo=bar] .grupo .op{min-height:40px}
body[data-demo=gremio] .hero h1{font-size:clamp(40px,5vw,62px)}
body[data-demo=gremio] .hero-visual{border-radius:12px}
body[data-demo=gremio] .sellos{gap:12px;padding-top:18px;border-top:1px solid var(--linea)}
body[data-demo=gremio] .sellos .sello{padding:0;border:0;background:none;box-shadow:none;font-size:12px}
body[data-demo=gremio] .casos-grid{gap:18px}.caso{border-radius:14px!important;box-shadow:none!important}
body[data-demo=gremio] .calc-caja{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:24px;align-items:start}
body[data-demo=gremio] .resultado{position:sticky;top:110px;border-radius:18px}
@media(min-width:900px){body[data-demo=bar] #listaCarta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 42px}.carta .familia{margin-top:0}}
@media(hover:hover){.btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px #00000015}.srv:hover{transform:none!important}.op:hover,.trab:hover{transform:translateY(-2px)}}
@media(max-width:900px){.hero-premium,.hero-grid{grid-template-columns:1fr;gap:24px}.hero-premium .hero-visual,.hero-foto{height:340px;min-height:0}.hero-premium .hero-visual img,.hero-foto img{min-height:0}.hero-premium .datos,.hero-grid .pizarra{grid-column:1}.hero h1{font-size:52px;max-width:17ch}}
@media(max-width:600px){
 .demo-aviso{font-size:10px;gap:5px;padding-inline:14px}.demo-aviso b{display:none}
 .barra .marca{font-size:16px}.barra nav{gap:2px}.barra nav a:not(.btn){display:none}
 .barra nav a.btn{padding:10px 13px!important;font-size:12px!important}.barra{border-radius:12px!important}
 .hero{padding-block:32px 24px}.hero h1{font-size:42px;max-width:15ch}.hero .lead{font-size:15px;line-height:1.65}
 .hero-premium .hero-visual,.hero-foto{height:260px;border-radius:14px}.hero-premium .hero-visual img,.hero-foto img{min-height:0}
 .hero-proof,.hero-sla,.hero-disponible{padding:12px!important;left:12px!important;right:12px!important;bottom:12px!important}
 .hero-proof .hero-stars{display:none}.hero-proof span,.hero-sla span{font-size:10px}
 .datos>div{flex:1 1 0;min-width:0;padding:15px 7px}.datos b{font-size:23px}.datos>div>span{font-size:11px}
 .cab h2{font-size:32px;line-height:1.12}.cab p{font-size:14px}.cab{margin-bottom:22px}
 body[data-demo=barberia] .servicios{grid-template-columns:1fr}.srv p{font-size:14px;line-height:1.55}
 body[data-demo=bar] .hero h1{font-size:52px}.pizarra .dia{padding:14px}.pizarra .que{padding:14px!important}.pizarra .que h3{font-size:22px}
 body[data-demo=bar] .destacados-platos{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.destacado-plato{flex:0 0 78%;scroll-snap-align:start}
 body[data-demo=gremio] .hero h1{font-size:40px}body[data-demo=gremio] .sellos{display:grid;grid-template-columns:1fr 1fr}
 body[data-demo=gremio] .calc-caja{grid-template-columns:1fr}body[data-demo=gremio] .resultado{position:static}.casos-grid{grid-template-columns:1fr!important}
 .pasos{grid-template-columns:1fr}.hero .acts .btn{flex:1;text-align:center;padding-inline:12px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){.btn,.op,.trab{transition:none!important}}
