:root{--crema: #f6efe6;--papel: #fffaf4;--arena: #ead9c6;--arena-2: #f1e5d6;--tinta: #2d2621;--tinta-suave: #6f6157;--terracota: #b5562f;--terracota-osc: #8f3f1f;--salvia: #6f8160;--salvia-claro: #e3e8da;--aviso: #fdebd9;--error: #b3261e;--error-claro: #fbe4e2;--ok: #2f6b3f;--ok-claro: #e2efe3;--radio: 14px;--sombra: 0 1px 2px rgba(45, 38, 33, .06), 0 8px 24px rgba(45, 38, 33, .06);--serif: "Fraunces", Georgia, "Times New Roman", serif;--sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{margin:0}body{background:var(--crema);color:var(--tinta);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:var(--terracota)}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em}h1{font-size:clamp(2rem,5vw,3.4rem)}h2{font-size:clamp(1.5rem,3vw,2.1rem)}h3{font-size:1.2rem}p{margin:0 0 1em}.contenedor{max-width:1160px;margin:0 auto;padding:0 20px}.estrecho{max-width:760px}.seccion{padding-top:56px;padding-bottom:56px}.seccion-sm{padding-top:32px;padding-bottom:32px}.mudo{color:var(--tinta-suave)}.pequeno{font-size:.875rem}.centro{text-align:center}.fila{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.entre{justify-content:space-between}.rejilla{display:grid;gap:20px}.r2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.r3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.r4{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.pila>*+*{margin-top:14px}.cabecera{position:sticky;top:0;z-index:20;background:#f6efe6eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--arena)}.cabecera .contenedor{display:flex;align-items:center;justify-content:space-between;height:64px}.marca{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--tinta);font-family:var(--serif);font-size:1.35rem}.marca img{width:30px;height:30px}.nav{display:flex;gap:4px;align-items:center}.nav a{text-decoration:none;color:var(--tinta);padding:8px 12px;border-radius:999px;font-size:.95rem}.nav a:hover,.nav a.activo{background:var(--arena-2)}.nav a.boton,.nav a.boton:hover{color:#fff;background:var(--terracota)}.nav a.boton:hover{background:var(--terracota-osc)}.nav .boton{margin-left:6px}.menu-movil{display:none;background:none;border:1px solid var(--arena);border-radius:10px;padding:8px 10px;font-size:1rem;cursor:pointer;color:var(--tinta)}@media(max-width:860px){.menu-movil{display:block}.nav{display:none;position:absolute;top:64px;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--papel);border-bottom:1px solid var(--arena);padding:12px 20px 18px}.nav.abierto{display:flex}.nav .boton{margin:8px 0 0;text-align:center}}.boton{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:11px 22px;font:500 .95rem var(--sans);cursor:pointer;text-decoration:none;background:var(--terracota);color:#fff;transition:background .15s,transform .05s}.boton:hover{background:var(--terracota-osc)}.boton:active{transform:translateY(1px)}.boton:disabled{opacity:.55;cursor:not-allowed}.boton.sec{background:transparent;color:var(--tinta);border:1px solid var(--tinta-suave)}.boton.sec:hover{background:var(--arena-2)}.boton.suave{background:var(--arena-2);color:var(--tinta)}.boton.suave:hover{background:var(--arena)}.boton.peligro{background:var(--error)}.boton.pq{padding:6px 14px;font-size:.85rem}.boton.grande{padding:14px 28px;font-size:1.05rem}.boton.ancho{width:100%}label{display:block;font-size:.875rem;font-weight:500;margin-bottom:4px}input,select,textarea{width:100%;font:inherit;color:var(--tinta);background:#fff;border:1px solid #d9c7b3;border-radius:10px;padding:10px 12px}input:focus,select:focus,textarea:focus{outline:2px solid rgba(181,86,47,.35);border-color:var(--terracota)}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--terracota)}textarea{min-height:110px;resize:vertical}.campo{margin-bottom:14px}.campos{display:grid;gap:0 14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.check{display:flex;gap:10px;align-items:flex-start;font-weight:400}.check input{margin-top:4px}.tarjeta{background:var(--papel);border:1px solid var(--arena);border-radius:var(--radio);padding:22px;box-shadow:var(--sombra)}.tarjeta.plana{box-shadow:none}.tarjeta h3{margin-bottom:.35em}.etiqueta{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:3px 10px;border-radius:999px;background:var(--arena-2);color:var(--tinta-suave)}.etiqueta.ok{background:var(--ok-claro);color:var(--ok)}.etiqueta.err{background:var(--error-claro);color:var(--error)}.etiqueta.av{background:var(--aviso);color:#8a4b12}.etiqueta.sal{background:var(--salvia-claro);color:var(--salvia)}.provisional{background:var(--aviso);color:#8a4b12;border-radius:8px;padding:2px 8px;font-size:.78rem;font-weight:600}.alerta{padding:12px 16px;border-radius:12px;background:var(--aviso);margin-bottom:16px}.alerta.err{background:var(--error-claro);color:var(--error)}.alerta.ok{background:var(--ok-claro);color:var(--ok)}.hero{position:relative;overflow:hidden}.hero .contenedor{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;padding-top:56px;padding-bottom:56px}.hero p.lead{font-size:1.15rem;color:var(--tinta-suave);max-width:34em}.hero-img{border-radius:28px 28px 120px;overflow:hidden;aspect-ratio:4/3;box-shadow:var(--sombra)}.hero-img img{width:100%;height:100%;object-fit:cover}@media(max-width:860px){.hero .contenedor{grid-template-columns:1fr;padding-top:32px;gap:24px}}.pasos{counter-reset:paso}.paso{position:relative;padding-left:52px}.paso:before{counter-increment:paso;content:counter(paso);position:absolute;left:0;top:0;width:38px;height:38px;border-radius:50%;background:var(--terracota);color:#fff;display:grid;place-items:center;font-family:var(--serif);font-size:1.1rem}.banda{background:var(--tinta);color:var(--crema)}.banda a{color:#f3b48f}.banda .mudo{color:#c9b8a8}.banda .tarjeta .mudo,.banda .tarjeta .pequeno{color:var(--tinta-suave)}.banda .tarjeta a{color:inherit}.galeria{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:12px;height:420px}.galeria img{width:100%;height:100%;object-fit:cover;border-radius:var(--radio)}.galeria img:first-child{grid-row:1 / 3}@media(max-width:640px){.galeria{grid-template-columns:1fr 1fr;grid-template-rows:200px 120px;height:auto}.galeria img:first-child{grid-column:1 / 3;grid-row:auto}}.lista-check{list-style:none;padding:0;margin:0;columns:2;column-gap:24px}.lista-check li{padding:4px 0 4px 26px;position:relative;break-inside:avoid}.lista-check li:before{content:"";position:absolute;left:0;top:12px;width:12px;height:12px;border-radius:50%;background:var(--salvia)}@media(max-width:520px){.lista-check{columns:1}}.cifra{font-family:var(--serif);font-size:2.2rem;color:var(--terracota);line-height:1}.precio{font-family:var(--serif);font-size:2rem}.precio small{font-family:var(--sans);font-size:.85rem;color:var(--tinta-suave)}.tabla{width:100%;border-collapse:collapse;font-size:.95rem}.tabla th,.tabla td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--arena);vertical-align:top}.tabla th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--tinta-suave);font-weight:600}.tabla tr:hover td{background:#ead9c640}.tabla .d{text-align:right;white-space:nowrap}.tabla-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width:600px){.tabla.apilada thead{display:none}.tabla.apilada tr{display:block;padding:12px 0;border-bottom:1px solid var(--arena)}.tabla.apilada td{display:block;border:0;padding:2px 0;text-align:left}.tabla.apilada td.d:before{content:attr(data-etiqueta) ": ";color:var(--tinta-suave)}.tabla.apilada tr:hover td{background:none}}.evento{display:flex;flex-direction:column;overflow:hidden;padding:0;text-decoration:none;color:inherit}.evento img{aspect-ratio:16/9;object-fit:cover;width:100%}.evento .cuerpo{padding:18px 20px 20px;display:flex;flex-direction:column;gap:6px;flex:1}.evento .fecha{font-size:.85rem;color:var(--terracota);font-weight:600}.banda .evento,.banda .evento h3{color:var(--tinta)}.banda .evento .fecha{color:var(--terracota)}.reservar{display:grid;grid-template-columns:1fr 360px;gap:24px;align-items:start}@media(max-width:960px){.reservar{grid-template-columns:1fr}}.resumen{position:sticky;top:84px}.dias{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.dia{border:1px solid var(--arena);background:var(--papel);border-radius:12px;padding:8px 2px;text-align:center;cursor:pointer;font:inherit;color:inherit}.dia .dsem{font-size:.7rem;text-transform:uppercase;color:var(--tinta-suave);letter-spacing:.05em}.dia .dnum{font-family:var(--serif);font-size:1.35rem;line-height:1.2}.dia .docc{height:4px;border-radius:2px;background:var(--salvia-claro);margin:4px 8px 0;overflow:hidden}.dia .docc i{display:block;height:100%;background:var(--terracota)}.dia.sel{background:var(--tinta);color:var(--crema);border-color:var(--tinta)}.dia.sel .dsem{color:#c9b8a8}.dia:disabled{opacity:.4;cursor:not-allowed}.modalidades{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.opcion{border:1px solid var(--arena);background:var(--papel);border-radius:12px;padding:12px;cursor:pointer;text-align:left;font:inherit;color:inherit}.opcion b{display:block;font-weight:600}.opcion.sel{border-color:var(--terracota);box-shadow:inset 0 0 0 1px var(--terracota);background:#fff}.opcion:disabled{opacity:.45;cursor:not-allowed}.franjas{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px}.franja{border:1px solid var(--arena);background:#fff;border-radius:10px;padding:8px 0;text-align:center;cursor:pointer;font:500 .9rem var(--sans);color:var(--tinta)}.franja.ocupada{background:repeating-linear-gradient(45deg,#efe4d7,#efe4d7 4px,#f6efe6 4px,#f6efe6 8px);color:#b3a291;cursor:not-allowed;text-decoration:line-through}.franja.sel{background:var(--terracota);color:#fff;border-color:var(--terracota)}.franja.rango{background:#f3d3bf;border-color:#e7b597}.leyenda{display:flex;gap:14px;flex-wrap:wrap;font-size:.8rem;color:var(--tinta-suave)}.leyenda.cuadros span:before{content:"";display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px;background:#fff;border:1px solid var(--arena)}.leyenda.cuadros .l-occ:before{background:#efe4d7}.leyenda.cuadros .l-sel:before{background:var(--terracota);border-color:var(--terracota)}.lineas{width:100%;font-size:.92rem;border-collapse:collapse}.lineas td{padding:5px 0}.lineas td:last-child{text-align:right}.lineas tr.total td{border-top:1px solid var(--arena);padding-top:10px;font-weight:600;font-size:1.05rem}.pin{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:2.2rem;letter-spacing:.3em;background:var(--tinta);color:var(--crema);border-radius:14px;padding:14px;text-align:center}.qr{background:#fff;border-radius:14px;padding:12px;display:inline-block;border:1px solid var(--arena)}.pie{border-top:1px solid var(--arena);padding:36px 0 48px;margin-top:40px;font-size:.9rem;color:var(--tinta-suave)}.pie a{color:var(--tinta-suave)}.panel{display:grid;grid-template-columns:236px 1fr;min-height:100vh;background:linear-gradient(to right,var(--tinta) 236px,transparent 236px)}.lateral{background:var(--tinta);color:#e9ddd0;padding:18px 12px;position:sticky;top:0;height:100vh;overflow-y:auto}.lateral .marca{color:var(--crema);padding:4px 10px 16px}.lateral a{display:flex;justify-content:space-between;align-items:center;color:#d8c9ba;text-decoration:none;padding:8px 12px;border-radius:10px;font-size:.92rem}.lateral a:hover{background:#ffffff0f;color:#fff}.lateral a.activo{background:var(--terracota);color:#fff}.lateral .grupo{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:#9c8b7c;padding:14px 12px 4px}.lateral .contador{background:#e0533b;color:#fff;border-radius:999px;font-size:.72rem;padding:0 7px;font-weight:600}.principal{padding:24px 28px 60px;min-width:0}.principal h1{font-size:1.9rem}.barra-panel{display:none}@media(max-width:900px){.panel{grid-template-columns:1fr}.lateral{position:fixed;top:0;right:30%;bottom:0;left:0;z-index:40;transform:translate(-100%);transition:transform .2s;height:100%}.lateral.abierto{transform:none;box-shadow:0 0 0 100vmax #00000059}.barra-panel{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--tinta);color:var(--crema);position:sticky;top:0;z-index:30}.barra-panel button{background:none;border:1px solid #6f6157;color:var(--crema);border-radius:8px;padding:6px 10px;font:inherit}.principal{padding:18px 16px 60px}}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:22px}.kpi{background:var(--papel);border:1px solid var(--arena);border-radius:var(--radio);padding:16px}.kpi .v{font-family:var(--serif);font-size:1.9rem;line-height:1.1}.kpi .t{font-size:.8rem;color:var(--tinta-suave);text-transform:uppercase;letter-spacing:.04em}.kpi.alerta-kpi{border-color:#e7a497;background:var(--error-claro)}.semana{display:grid;grid-template-columns:52px repeat(7,minmax(110px,1fr));border:1px solid var(--arena);border-radius:var(--radio);background:var(--papel);overflow:hidden;min-width:860px}.semana .cab{padding:8px;font-size:.8rem;font-weight:600;text-align:center;border-bottom:1px solid var(--arena);text-transform:capitalize;background:var(--arena-2)}.semana .col{position:relative;border-left:1px solid var(--arena)}.semana .hora{height:36px;font-size:.7rem;color:var(--tinta-suave);text-align:right;padding:2px 6px 0 0;border-top:1px dashed #efe2d2}.semana .celda{height:36px;border-top:1px dashed #efe2d2}.bloque{position:absolute;left:3px;right:3px;border-radius:8px;padding:4px 6px;font-size:.74rem;line-height:1.25;overflow:hidden;color:#fff;text-decoration:none}.bloque.reserva{background:var(--terracota)}.bloque.retenida{background:#d99a76}.bloque.bloqueo{background:repeating-linear-gradient(45deg,#8a7a6c,#8a7a6c 6px,#9b8b7d 6px,#9b8b7d 12px)}.bloque.evento{background:var(--salvia)}.modal-fondo{position:fixed;top:0;right:0;bottom:0;left:0;background:#2d262173;display:grid;place-items:center;z-index:60;padding:16px}.modal{background:var(--papel);border-radius:18px;padding:24px;width:min(640px,100%);max-height:90vh;overflow:auto}.pestanas{display:flex;gap:4px;border-bottom:1px solid var(--arena);margin-bottom:18px;overflow-x:auto}.pestanas button{background:none;border:0;padding:10px 14px;font:500 .92rem var(--sans);color:var(--tinta-suave);border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap}.pestanas button.activo{color:var(--terracota);border-bottom-color:var(--terracota)}.checkin{min-height:100vh;background:var(--tinta);color:var(--crema);padding:16px}.checkin .visor{position:relative;border-radius:18px;overflow:hidden;background:#000;aspect-ratio:1;max-width:480px;margin:0 auto}.checkin video{width:100%;height:100%;object-fit:cover}.checkin .marco{position:absolute;top:18%;right:18%;bottom:18%;left:18%;border:3px solid rgba(255,255,255,.85);border-radius:18px}.resultado-checkin{max-width:480px;margin:16px auto;border-radius:18px;padding:20px;text-align:center}.resultado-checkin.ok{background:#2f6b3f}.resultado-checkin.ko{background:#b3261e}.resultado-checkin .grande{font-family:var(--serif);font-size:2rem}.lista-normas{margin:0;padding-left:20px}.lista-normas li{padding:4px 0}@media(max-width:900px){.panel{background:none}}.tabla td a{white-space:nowrap}
