/* Free consultation booking page (consulta.html). Builds on order.css. */
main{padding:8px 0 56px}
#bk-form .bk-sec{padding:4px 0 26px;margin-bottom:22px;border-bottom:1px solid var(--line)}
#bk-form h2{display:flex;align-items:center;gap:10px;font-size:24px;text-transform:uppercase;margin-bottom:6px}
#bk-form h2 .n{width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:600 15px Rubik,Arial,sans-serif;flex:none}
#bk-form .bk-sec:nth-of-type(1) h2 .n{background:var(--cyan)}
#bk-form .bk-sec:nth-of-type(2) h2 .n{background:var(--magenta)}
#bk-form .bk-sec:nth-of-type(3) h2 .n{background:var(--yellow);color:var(--ink)}
.hint{color:var(--muted);font-size:15px;margin-bottom:16px}
.muted{color:var(--muted);font-size:15px;padding:10px 0}
.err{color:var(--err);font-size:14px;font-weight:500;margin-top:10px}

.spots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:860px){.spots{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.spots{grid-template-columns:1fr}}
.spot{position:relative;text-align:left;display:flex;flex-direction:column;gap:3px;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:14px 16px 12px;cursor:pointer;font:inherit;color:inherit;transition:border-color .12s,box-shadow .12s,transform .12s}
.spot:hover{border-color:#b9c0c9;transform:translateY(-1px)}
.spot[aria-checked=true]{border-color:var(--cyan);box-shadow:0 0 0 4px rgba(10,165,200,.15);background:#f3fbfd}
.spot[aria-checked=true]::after{content:"✓";position:absolute;top:10px;right:12px;width:22px;height:22px;border-radius:50%;background:var(--cyan);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:700}
.spot .area{font-size:11.5px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--magenta)}
.spot b{font-size:16px;font-weight:600;line-height:1.25;padding-right:24px}
.spot small{font-size:13.5px;color:var(--muted);line-height:1.35}
.spot .map{margin-top:6px;font-size:13px;font-weight:600;color:var(--cyan-dk);text-decoration:none;align-self:flex-start}
.spot .map:hover{text-decoration:underline}
.spot.other-card{background:var(--soft);border-style:dashed}
.spot.other-card .area{color:var(--cyan-dk)}
.other{margin-top:14px;max-width:520px}
.other label{display:block;font-weight:600;font-size:15px;margin-bottom:6px}
.other i,.field i{color:var(--magenta);font-style:normal}

.week{display:flex;align-items:center;justify-content:space-between;max-width:420px;margin-bottom:12px}
.week b{font-weight:600;font-size:16px}
.wk{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line);background:#fff;font-size:22px;line-height:1;cursor:pointer;color:var(--ink)}
.wk:disabled{opacity:.35;cursor:default}
.days{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}
.day{flex:none;width:74px;display:flex;flex-direction:column;align-items:center;gap:1px;padding:10px 4px;border-radius:14px;border:1.5px solid var(--line);background:#fff;cursor:pointer;font:inherit;color:inherit}
.day small{font-size:12px;color:var(--muted);text-transform:capitalize}
.day b{font:600 24px/1.1 Oswald,Arial,sans-serif}
.day[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.day[aria-pressed=true] small{color:#c9ced6}
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;margin-top:14px}
.slot{padding:11px 6px;border-radius:10px;border:1.5px solid var(--line);background:#fff;font:600 15px Rubik,Arial,sans-serif;cursor:pointer;color:var(--ink)}
.slot:hover{border-color:var(--cyan)}
.slot[aria-pressed=true]{background:var(--magenta);border-color:var(--magenta);color:#fff}

.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
@media(max-width:600px){.grid2{grid-template-columns:1fr}}
.field label{display:block;font-weight:600;font-size:15px;margin-bottom:6px}
input.invalid{border-color:var(--err)!important;box-shadow:0 0 0 4px rgba(198,40,40,.12)!important}

.paynote.confirm{margin:4px 0 16px}
.summary-line{background:var(--soft);border-radius:12px;padding:12px 14px;font-size:15px;line-height:1.6;margin-bottom:16px}
#go{width:100%}
@media(min-width:700px){#go{width:auto;min-width:300px}}

.done{text-align:center;padding:44px 28px}
.done .big{font-size:54px}
.done h2{font-size:32px;text-transform:uppercase;margin:6px 0 12px}
.done p{color:var(--muted);max-width:560px;margin:0 auto 12px}
.done #done-sum{color:var(--ink);font-weight:500;background:var(--soft);border-radius:12px;padding:12px;display:inline-block}
.done .row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}
.paynote{display:flex;gap:10px;align-items:flex-start;background:#eef9fc;border:1px solid #bfe6f0;color:#0b4f60;border-radius:12px;padding:12px 14px;font-size:14.5px;line-height:1.45}
.paynote b{color:#073c49}
.spot.online-card{background:linear-gradient(135deg,#f3fbfd,#fff 60%);border-color:#bfe6f0}
.spot.online-card .area{color:var(--cyan-dk)}
.online{margin-top:16px}
.online .lbl{font-weight:600;font-size:15px;margin-bottom:8px}
.online .lbl i{color:var(--magenta);font-style:normal}
.plats{display:flex;flex-wrap:wrap;gap:8px;border-radius:12px}
.plats.invalid{outline:2px solid var(--err);outline-offset:4px}
.plat{padding:10px 16px;border-radius:999px;border:1.5px solid var(--line);background:#fff;font:600 14.5px Rubik,Arial,sans-serif;color:var(--ink);cursor:pointer}
.plat:hover{border-color:var(--cyan)}
.plat[aria-pressed=true]{background:var(--cyan);border-color:var(--cyan);color:#fff}
.online .sub{color:var(--muted);font-size:13.5px;margin-top:8px}

.plat .auto{font-weight:500;font-size:12.5px;opacity:.8}
