/* Casa Matina — web pública. v2 (2026-10-11): fondo blanco, contemporánea, proporciones contenidas. */
:root{
  --tinta:#111111; --tinta-suave:#6B6B6B; --tenue:#9A9A9A;
  --blanco:#FFFFFF; --gris:#F6F6F5; --linea:#E8E8E6;
  --acento:#B0704F; --verde-wa:#25D366;
  --sans:'Inter','Helvetica Neue',Arial,sans-serif;
  --titulo:'Antonio','Arial Narrow','Helvetica Neue',sans-serif;   /* títulos (Cristina 2026-10-16) */
  --ancho:1240px;
  --radio:14px;     /* fotos y paneles */
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--tinta);background:var(--blanco);line-height:1.65;-webkit-font-smoothing:antialiased;font-size:16px;font-weight:400}
img{max-width:100%;display:block}
a{color:var(--tinta)}
h1,h2,h3{font-family:var(--sans);color:var(--tinta);line-height:1.12;font-weight:500;letter-spacing:-.02em}
/* Títulos en Antonio, mayúsculas (los rótulos chicos h3 de horario/pie siguen en Inter) */
h1,h2,.tarjeta h3,.persona h3,.paso h3,.res-gracias h3,.mesa-ferias .grupo h3{font-family:var(--titulo);font-weight:600;text-transform:uppercase;letter-spacing:.01em;line-height:1.05}
.in{max-width:var(--ancho);margin:0 auto;padding:0 32px}
@media (max-width:640px){.in{padding:0 20px}}

/* ── Encabezado ── */
.top{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--linea)}
.top-in{max-width:var(--ancho);margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.marca img{height:40px;width:auto}
#nav{display:flex;align-items:center;gap:20px;flex-wrap:nowrap}
#nav a{text-decoration:none;color:var(--tinta-suave);font-size:11.5px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;padding:6px 0;border-bottom:1px solid transparent}
#nav a:hover{color:var(--tinta)}
#nav a.on{color:var(--tinta);border-bottom-color:var(--tinta)}
#nav a.nav-wa{color:#fff;background:var(--tinta);padding:10px 20px;border:0;border-radius:999px}
#nav a.nav-wa:hover{background:#333}
.menu-btn{display:none;background:none;border:0;cursor:pointer;padding:10px;flex-direction:column;gap:6px}
.menu-btn span{display:block;width:22px;height:1.5px;background:var(--tinta)}
@media (max-width:1199px){
  .menu-btn{display:flex}
  #nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 20px;border-bottom:1px solid var(--linea)}
  #nav.abierto{display:flex}
  #nav a{padding:14px 0;font-size:13px;border-bottom:1px solid var(--linea)}
  #nav a.on{border-bottom-color:var(--linea);color:var(--tinta);font-weight:600}
  #nav a.nav-wa{margin-top:14px;text-align:center}
}

/* ── Bloques comunes ── */
.kicker{text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:var(--tenue);font-weight:500}
.sec{padding:56px 0}
.sec + .sec{border-top:1px solid var(--linea)}
.sec.alt{background:var(--blanco)}
.sec h2{font-size:clamp(28px,3vw,42px);margin:10px 0 16px}
.lead{font-size:17px;color:var(--tinta);max-width:600px;font-weight:300;line-height:1.6}
.texto p{color:var(--tinta-suave);max-width:600px}
.texto .lead{color:var(--tinta)}
.texto p+p{margin-top:14px}
.btn{display:inline-block;padding:14px 26px;border-radius:999px;background:var(--tinta);color:#fff;text-decoration:none;font-weight:500;font-size:12px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--tinta);cursor:pointer;font-family:var(--sans);transition:background .2s,color .2s}
.btn:hover{background:#fff;color:var(--tinta)}
.btn.claro{background:#fff;color:var(--tinta)}
.btn.claro:hover{background:var(--tinta);color:#fff}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.dos{display:grid;grid-template-columns:7fr 5fr;gap:56px;align-items:center}
.dos > .foto-r:first-child{order:2}
@media (min-width:901px){.dos.par{grid-template-columns:1fr 1fr}}
@media (max-width:900px){.dos > .foto-r:first-child{order:0}}
@media (max-width:900px){.dos{grid-template-columns:1fr;gap:28px}.sec{padding:44px 0}}
.foto-r{overflow:hidden;border-radius:var(--radio);aspect-ratio:4/3;max-height:340px;width:100%;background:var(--gris)}
.foto-r img{width:100%;height:100%;object-fit:cover}
.pendiente{display:inline-block;border-radius:999px;font-size:11px;background:var(--gris);color:var(--tinta-suave);padding:4px 10px;letter-spacing:.06em;text-transform:uppercase}

/* ── Portada: texto arriba + foto apaisada a todo el ancho (Cristina 2026-10-11) ── */
.hero{padding:36px 0 48px}
.hero .in{display:block}
.hero .txt{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:end;margin-bottom:24px}
.hero h1{font-size:clamp(38px,4.4vw,62px);margin:12px 0 0}
.hero p{font-size:17px;color:var(--tinta-suave);font-weight:300;max-width:460px}
.hero .btns{margin-top:18px}
.hero .foto{border-radius:var(--radio);aspect-ratio:3/1;max-height:420px;width:100%;overflow:hidden;background:var(--gris)}
.hero .foto img{width:100%;height:100%;object-fit:cover}
@media (max-width:900px){.hero{padding:24px 0 40px}.hero .txt{grid-template-columns:1fr;gap:12px;margin-bottom:22px}.hero .foto{aspect-ratio:4/3}}

/* ── Tarjetas ── */
.tarjetas{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 28px;margin-top:32px}
@media (max-width:900px){.tarjetas{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.tarjetas{grid-template-columns:1fr}}
.tarjeta{text-decoration:none;color:inherit;display:flex;flex-direction:column}
.tarjeta .img{border-radius:var(--radio);aspect-ratio:16/9;overflow:hidden;background:var(--gris)}
.tarjeta .img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.tarjeta:hover .img img{transform:scale(1.03)}
.tarjeta .img.logo{display:flex;align-items:center;justify-content:center;padding:28px}
.tarjeta .img.logo img{object-fit:contain;max-height:84px}
.tarjeta:hover .img.logo img{transform:none}
.tarjeta .cuerpo{padding:14px 0 0}
.tarjeta h3{font-size:24px;margin-bottom:6px}
.tarjeta p{font-size:14.5px;color:var(--tinta-suave)}
.tarjeta .ir{margin-top:12px;font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--tinta)}

/* ── Galería ── */
.galeria{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:28px}
.galeria img{border-radius:10px;width:100%;aspect-ratio:1;object-fit:cover}
.galeria img.g2{grid-column:span 2;grid-row:span 2;aspect-ratio:auto;height:100%}
@media (max-width:900px){.galeria{grid-template-columns:repeat(4,1fr)}}
@media (max-width:560px){.galeria{grid-template-columns:repeat(2,1fr)}}

/* ── Horario ── */
.horario{border-top:1px solid var(--tinta);padding-top:8px}
.horario h3{font-size:12px;text-transform:uppercase;letter-spacing:.2em;font-weight:500;margin:12px 0 8px}
.horario .fila{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--linea)}
.horario b{font-weight:500}
.horario .nota{font-size:13px;color:var(--tinta-suave);margin-top:14px}

/* ── Carta ── */
.carta-tabs{display:flex;gap:0;flex-wrap:wrap;margin:28px 0 8px;border-bottom:1px solid var(--linea)}
.carta-tabs a{padding:12px 20px 12px 0;margin-right:20px;text-decoration:none;color:var(--tenue);font-weight:500;font-size:12px;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid transparent;margin-bottom:-1px}
.carta-tabs a.on{color:var(--tinta);border-bottom-color:var(--tinta)}
.carta-secs{position:sticky;top:69px;z-index:20;background:#fff;padding:14px 0;border-bottom:1px solid var(--linea);display:flex;gap:22px;overflow-x:auto;scrollbar-width:none}
.carta-secs::-webkit-scrollbar{display:none}
.carta-secs a{flex-shrink:0;font-size:12.5px;color:var(--tinta-suave);text-decoration:none}
.carta-secs a:hover{color:var(--tinta)}
.carta-sec{padding-top:40px;scroll-margin-top:140px}
.carta-sec h2{font-size:28px;margin:0 0 6px}
.carta-sec .sub{font-size:13.5px;color:var(--tinta-suave);margin-bottom:8px}
.platos{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));column-gap:56px}
@media (max-width:460px){.platos{grid-template-columns:1fr}}
.plato{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--linea)}
.plato .n{font-weight:500;font-size:14px;letter-spacing:.02em}
.plato .d{font-size:13px;color:var(--tinta-suave);margin-top:3px;line-height:1.5;font-weight:300}
.plato .p{display:flex;gap:16px;flex-shrink:0;text-align:right}
.plato .p .v{font-weight:500;font-size:14.5px}
.plato .p .t{font-size:10px;color:var(--tenue);letter-spacing:.08em}
.nuevo{font-size:9.5px;border:1px solid var(--acento);color:var(--acento);padding:1px 6px;font-weight:500;margin-left:8px;vertical-align:2px;letter-spacing:.08em}
.aviso{border-top:1px solid var(--linea);padding:24px 0;color:var(--tinta-suave);margin-top:32px;font-size:14px}

/* ── Formularios: panel gris claro, campos en recuadro blanco ── */
.form{background:var(--gris);padding:32px;border-radius:var(--radio)}
@media (max-width:640px){.form{padding:22px 18px}}
.form .grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form .full{grid-column:1/-1}
@media (max-width:640px){.form .grid{grid-template-columns:1fr}}
.form .f{display:block;font-size:13px;font-weight:500;color:var(--tinta);margin-bottom:6px}
.form input[type=text],.form input[type=tel],.form input[type=email],.form select,.form textarea{width:100%;padding:11px 12px;border:1px solid #D9D9D6;border-radius:4px;background:#fff;font-family:var(--sans);font-size:15px;color:var(--tinta);-webkit-appearance:none;appearance:none}
.form select{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23111'/%3E%3C/svg%3E") no-repeat right 12px center;padding-right:32px}
.form textarea{min-height:84px;resize:vertical}
.form input[type=text],.form input[type=tel],.form input[type=email],.form select{height:46px}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--tinta);box-shadow:0 0 0 1px var(--tinta)}
.form input[type=file]{font-size:13px;width:100%;padding:10px;background:#fff;border:1px dashed #C9C9C5;border-radius:4px}
.form .ayuda{font-size:12px;color:var(--tinta-suave);margin-top:6px}
.form .trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form .enviar{margin-top:22px;width:100%;padding:16px}
.form .msg{margin-top:14px;padding:12px 14px;font-size:14px;display:none;background:#fff;border-radius:4px}
.form .msg.ok{display:block;color:#2F5A0D;border-left:3px solid #3B6D11}
.form .msg.err{display:block;color:#A32D2D;border-left:3px solid #A32D2D}

/* ── Teléfono: país + número ── */
.tel{display:grid;grid-template-columns:118px 1fr;gap:8px}

/* ── Reserva (2026-10-11): pasos cálidos, opciones para tocar, contadores, resumen en vivo ── */
.res-grid{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:start}
.res-lado{position:sticky;top:96px}
.res-foto{aspect-ratio:16/10}
.res-nota{color:var(--tinta-suave);font-size:14.5px;margin-top:12px}
@media (max-width:900px){.res-grid{grid-template-columns:1fr;gap:32px}.res-lado{position:static}.res-lado .horario{display:none}}
.res-form{padding:8px 32px 28px}
@media (max-width:640px){.res-form{padding:4px 18px 22px}}
.paso{display:grid;grid-template-columns:34px 1fr;gap:16px;padding:26px 0;border-bottom:1px solid #E6E6E3}
@media (max-width:640px){.paso{grid-template-columns:1fr;gap:8px}}
.paso-n{width:34px;height:34px;border-radius:50%;background:var(--tinta);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500}
.paso h3{font-size:24px;margin:4px 0 14px}
.paso-sub{font-size:14px;color:var(--tinta-suave);margin:-6px 0 12px}
.form .opc{font-weight:400;color:var(--tenue)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{padding:9px 16px;border-radius:999px;border:1px solid #D9D9D6;background:#fff;font-family:var(--sans);font-size:14px;color:var(--tinta);cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.chip:hover{border-color:var(--tinta)}
.chip.on{background:var(--tinta);border-color:var(--tinta);color:#fff}
.contador{display:flex;align-items:center;justify-content:space-between;height:46px;background:#fff;border:1px solid #D9D9D6;border-radius:4px;padding:0 6px}
.contador button{width:34px;height:34px;border-radius:50%;border:1px solid #D9D9D6;background:#fff;font-size:18px;line-height:1;cursor:pointer;color:var(--tinta)}
.contador button:hover{border-color:var(--tinta)}
.contador output{font-size:16px;font-weight:500;min-width:2ch;text-align:center}
.res-resumen{margin-top:24px;padding:16px 18px;border-radius:10px;background:#fff;border:1px dashed #D0D0CC;font-size:15px;color:var(--tinta-suave);text-align:center}
.res-resumen.lleno{border-style:solid;border-color:var(--tinta);color:var(--tinta);font-weight:500}
.res-priv{font-size:12.5px;color:var(--tenue);text-align:center;margin-top:12px}
.res-gracias{padding:40px 8px;text-align:center}
.res-gracias h3{font-size:32px;margin:12px auto 14px;max-width:520px}
.res-gracias p{color:var(--tinta-suave);margin-bottom:8px}
.res-gracias .res-gracias-dato{color:var(--tinta);font-weight:500;font-size:17px}
.res-gracias .btn{margin-top:18px}

/* ── Personas ── */
.personas{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;margin-top:32px}
.persona .foto{border-radius:var(--radio);overflow:hidden;aspect-ratio:16/10;background:var(--gris);display:flex;align-items:center;justify-content:center}
.persona .foto img{width:100%;height:100%;object-fit:cover}
.persona .foto img.logo{width:40%;height:auto;object-fit:contain;opacity:.25}
.persona .cuerpo{padding:22px 0 0}
.persona h3{font-size:28px}
.persona .rol{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--tenue);font-weight:500;margin:8px 0 14px}

/* ── Ferias ── */
.mesa-ferias .grupo{margin-top:32px}
.mesa-ferias .grupo h3{font-size:24px}
.mesa-ferias .grupo .sub{color:var(--tinta-suave);font-size:14px;margin:6px 0 4px;font-weight:300}

/* ── Pie ── */
.pie{background:#fff;border-top:1px solid var(--linea)}
.pie-in{max-width:var(--ancho);margin:0 auto;padding:48px 32px 32px;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px}
@media (max-width:900px){.pie-in{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.pie-in{grid-template-columns:1fr;padding:56px 20px 40px}}
.pie h3{font-size:11px;text-transform:uppercase;letter-spacing:.2em;font-weight:500;color:var(--tenue);margin-bottom:14px}
.pie p{font-size:14px;margin-bottom:8px;color:var(--tinta-suave)}
.pie a{color:var(--tinta)}
.pie b{color:var(--tinta);font-weight:500}
.pie-logo{height:46px;width:auto}
.pie-lema{margin-top:16px;color:var(--tinta-suave);font-weight:300}
.pie-nota{font-size:12.5px !important;color:var(--tenue) !important}
.pie-legal{max-width:var(--ancho);margin:0 auto;font-size:11px;color:var(--tenue);padding:20px 32px 32px;border-top:1px solid var(--linea);letter-spacing:.06em}

/* ── Mapa de Google ── */
.mapa{border-radius:var(--radio);overflow:hidden;aspect-ratio:3/1;max-height:340px;background:var(--gris)}
.mapa iframe{width:100%;height:100%;border:0;display:block}
@media (max-width:700px){.mapa{aspect-ratio:4/3}}

/* ── WhatsApp flotante ── */
.wa-flot{position:fixed;right:20px;bottom:20px;z-index:60;width:52px;height:52px;border-radius:50%;background:var(--verde-wa);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.14)}
.wa-flot:hover{transform:scale(1.05)}
