
  /* Aviso de temporada: aparece solo según la fecha */
  .pq-temporada { background: var(--pq-acento-claro); color: var(--pq-tinta); border-bottom: 1px solid var(--pq-linea); }
  .pq-temporada[hidden] { display: none; }
  .pq-temporada .pq-in { display: flex; align-items: center; gap: 12px; padding-top: 9px; padding-bottom: 9px; font-size: 14.5px; }
  .pq-temporada svg.pq-cal { width: 20px; height: 20px; flex: none; color: var(--pq-acento-osc); }
  .pq-temporada p { margin: 0; flex: 1; line-height: 1.35; }
  .pq-temporada a.pq-ir { font-weight: 600; color: var(--pq-acento-osc); white-space: nowrap; }
  @media (max-width: 759px) { .pq-temporada .pq-in { font-size: 13.5px; gap: 8px; padding-top: 7px; padding-bottom: 7px; } .pq-temporada svg.pq-cal { display: none; } }
  .pq-temporada button { border: 0; background: transparent; color: var(--pq-gris); font-size: 24px; line-height: 1; cursor: pointer; padding: 4px 8px; }

  /* Estado "abierto ahora" en la portada */
  .aviso.pq-abierto i { background: #4ADE80; animation: pq-latido 1.8s infinite; }
  .aviso.pq-cerrado i { background: #9fb0b8; animation: none; }
  @keyframes pq-latido { 0% { box-shadow: 0 0 0 0 rgba(74,222,128,.7); } 70% { box-shadow: 0 0 0 10px rgba(74,222,128,0); } 100% { box-shadow: 0 0 0 0 rgba(74,222,128,0); } }

  /* Puntaje de Google junto a los botones */
  .pq-valoracion { display: inline-flex; align-items: center; flex-wrap: wrap; gap: 4px 10px; margin-top: 20px; font-size: 14.5px; color: var(--pq-valoracion, #e6eef0); text-decoration: none; }
  .pq-valoracion .pq-estrellas { color: #F5B83D; letter-spacing: 1px; }
  .pq-valoracion b { color: var(--pq-valoracion-b, #fff); }
  .pq-valoracion:hover .pq-txt { text-decoration: underline; }

  /* Botón de agenda dentro del resultado del test */
  .resultado .pq-btn-agenda { background: var(--pq-acento); color: var(--pq-tinta); box-shadow: none; margin-bottom: 10px; }
  /* En los ejemplos cuya tarjeta de resultado no se llama .resultado (pedido, orden de trabajo) */
  .pq-btn-agenda { margin-bottom: 12px; }
  .resumen .pq-btn-agenda, .orden .pq-btn-agenda { width: 100%; background: var(--pq-acento); color: #fff; box-shadow: none; }
  .resumen .pq-btn-agenda[aria-disabled="true"], .orden .pq-btn-agenda[aria-disabled="true"], .resultado .pq-btn-agenda[aria-disabled="true"] { background: #3a413f; color: #8d9894; pointer-events: none; }
  .resultado .pq-btn-agenda:hover { filter: brightness(1.08); }

  /* Sección de agenda */
  .pq-agenda-grilla { display: grid; gap: 22px; margin-top: 34px; }
  @media (min-width: 940px) { .pq-agenda-grilla { grid-template-columns: .82fr 1.18fr; gap: 28px; align-items: start; } .pq-resumen { position: sticky; top: 100px; } }
  .pq-extra-claro { display: inline-flex; align-items: center; gap: 12px; margin-top: 24px; background: #fff; border: 3px solid #5FD04E; box-shadow: 0 0 0 6px rgba(95,208,78,.2); color: #14201A; border-radius: 22px; padding: 13px 22px 13px 16px; font: 600 16px/1.3 system-ui, sans-serif; }
  .pq-extra-claro br { display: none; }
  .pq-extra-claro b { display: block; font-size: 19px; font-weight: 800; color: #0F6B14; }
  .pq-resumen { background: var(--pq-tinta); color: #fff; border-radius: 24px; padding: 24px 22px; }
  .pq-resumen .pq-rotulo { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pq-acento); }
  .pq-resumen .pq-tipo { font: 700 28px/1.05 var(--pq-display); letter-spacing: -.02em; margin: 8px 0 6px; }
  .pq-resumen .pq-dur { color: rgba(255,255,255,.72); font-size: 15px; }
  .pq-sabemos { margin-top: 20px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.16); }
  .pq-sabemos > p { margin: 0 0 10px; color: rgba(255,255,255,.62); font-size: 12.5px; text-transform: uppercase; letter-spacing: .08em; font-weight: 600; }
  .pq-sabemos ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; }
  .pq-sabemos li { display: grid; grid-template-columns: 96px 1fr; gap: 10px; font-size: 15px; color: rgba(255,255,255,.88); }
  .pq-sabemos li span { color: rgba(255,255,255,.55); }
  .pq-sabemos a { color: var(--pq-acento); font-weight: 600; }
  .pq-urgente-caja { margin-top: 18px; background: rgba(240,127,110,.14); border: 1px solid rgba(240,127,110,.55); border-radius: 16px; padding: 14px 16px; font-size: 14.5px; color: #f6d8d2; }
  .pq-urgente-caja b { color: #fff; }
  .pq-urgente-caja button { display: block; margin-top: 10px; min-height: 42px; padding: 0 16px; border: 0; border-radius: 999px; background: var(--pq-alerta); color: var(--pq-tinta); font: 600 14.5px var(--pq-texto); cursor: pointer; }
  .pq-urgente-caja a { color: #fff; font-weight: 600; }
  .pq-estado-vivo { display: flex; align-items: center; gap: 9px; margin: 18px 0 0; font-size: 14px; color: rgba(255,255,255,.8); }
  .pq-estado-vivo i { flex: none; width: 9px; height: 9px; border-radius: 50%; background: #9fb0b8; }
  .pq-estado-vivo.abierto i { background: #4ADE80; animation: pq-latido 1.8s infinite; }

  .pq-reserva { background: var(--pq-blanco); border-radius: 24px; padding: 20px 14px; box-shadow: 0 1px 0 var(--pq-linea), 0 24px 60px rgba(14,42,59,.10); min-width: 0; }
  @media (min-width: 640px) { .pq-reserva { padding: 28px; } }
  .pq-cal-cab { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
  .pq-cal-cab b { font: 700 23px/1 var(--pq-display); letter-spacing: -.02em; text-transform: capitalize; }
  .pq-cal-cab button { width: 44px; height: 44px; border-radius: 50%; border: 1.5px solid var(--pq-linea); background: #fff; cursor: pointer; display: grid; place-items: center; color: var(--pq-tinta); }
  .pq-cal-cab button:hover:not(:disabled) { border-color: var(--pq-acento); }
  .pq-cal-cab button:disabled { opacity: .3; cursor: default; }
  .pq-cal-cab svg { width: 20px; height: 20px; }
  .pq-cal-sem, .pq-cal-dias { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
  .pq-cal-sem span { text-align: center; font: 600 12px var(--pq-texto); color: var(--pq-gris); letter-spacing: .06em; text-transform: uppercase; padding: 6px 0; }
  .pq-dia { aspect-ratio: 1; min-height: 40px; border-radius: 12px; border: 0; background: transparent; font: 600 15.5px var(--pq-texto); color: var(--pq-tinta); cursor: pointer; position: relative; transition: background .15s; padding: 0; }
  .pq-dia:hover:not(:disabled) { background: var(--pq-acento-claro); }
  .pq-dia:disabled { color: #b4c3c9; cursor: default; font-weight: 400; }
  .pq-dia.libre::after { content: ""; position: absolute; left: 50%; bottom: 6px; width: 5px; height: 5px; margin-left: -2.5px; border-radius: 50%; background: var(--pq-acento); }
  .pq-dia.hoy { box-shadow: inset 0 0 0 1.5px var(--pq-acento); }
  .pq-dia[aria-pressed="true"] { background: var(--pq-acento-osc); color: #fff; }
  .pq-dia[aria-pressed="true"]::after { background: #fff; }
  .pq-horarios { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--pq-linea); }
  .pq-horarios[hidden], .pq-datos[hidden], .pq-listo[hidden], #pq-paso-agenda[hidden] { display: none; }
  .pq-hor-titulo { font: 700 21px/1.2 var(--pq-display); letter-spacing: -.02em; margin: 0; }
  .pq-hor-ayuda { color: var(--pq-gris); font-size: 14.5px; margin: 4px 0 0; }
  .pq-grupo-h { margin-top: 14px; }
  .pq-grupo-h small { display: block; font: 600 12px var(--pq-texto); letter-spacing: .08em; text-transform: uppercase; color: var(--pq-gris); margin-bottom: 8px; }
  .pq-grupo-h small em { font-style: normal; color: var(--pq-acento-osc); }
  .pq-chips-h { display: flex; flex-wrap: wrap; gap: 8px; }
  .pq-hora { min-width: 78px; min-height: 46px; padding: 0 14px; border-radius: 12px; border: 1.5px solid var(--pq-linea); background: #fff; font: 600 15.5px var(--pq-texto); cursor: pointer; color: var(--pq-tinta); transition: border-color .15s, background .15s, transform .15s; }
  .pq-hora:hover { border-color: var(--pq-acento); }
  .pq-hora:active { transform: scale(.96); }
  .pq-hora.sug { border-color: var(--pq-acento); background: #f4fbf8; }
  .pq-hora[aria-pressed="true"] { background: var(--pq-acento-osc); border-color: var(--pq-acento-osc); color: #fff; }
  .pq-sin-lugar { color: var(--pq-gris); font-size: 15px; margin: 12px 0 0; }
  .pq-datos { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--pq-linea); display: grid; gap: 14px; }
  .pq-campo label { display: block; font: 600 13px var(--pq-texto); color: var(--pq-gris); margin-bottom: 6px; }
  .pq-campo input { width: 100%; min-height: 52px; border: 1.5px solid var(--pq-linea); border-radius: 14px; padding: 0 14px; font: 16px var(--pq-texto); color: var(--pq-tinta); background: #fff; }
  .pq-campo input:focus { outline: none; border-color: var(--pq-acento-osc); box-shadow: 0 0 0 3px var(--pq-acento-claro); }
  .pq-campo .pq-error { color: #b3392b; font-size: 13.5px; margin: 6px 0 0; }
  .pq-campo .pq-error:empty { display: none; }
  .pq-datos .pq-btn { width: 100%; }
  .pq-datos .pq-aviso-form { font-size: 14px; color: #b3392b; margin: 0; }
  .pq-datos .pq-aviso-form:empty { display: none; }
  .pq-mini-nota { font-size: 12.5px; color: var(--pq-gris); text-align: center; margin: 0; }

  .pq-listo { text-align: center; padding: 14px 4px 6px; }
  .pq-listo .pq-tilde { width: 76px; height: 76px; margin: 0 auto 14px; border-radius: 50%; background: var(--pq-acento-claro); display: grid; place-items: center; }
  .pq-listo .pq-tilde svg { width: 40px; height: 40px; fill: none; stroke: var(--pq-acento-osc); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 40; stroke-dashoffset: 40; animation: pq-trazo .6s .15s ease forwards; }
  @keyframes pq-trazo { to { stroke-dashoffset: 0; } }
  .pq-listo h3 { font-size: 31px; }
  .pq-listo .pq-cuando { margin: 14px auto 20px; display: block; max-width: 360px; background: var(--pq-suave); border: 1px solid var(--pq-linea); border-radius: 16px; padding: 14px 18px; font: 700 20px/1.25 var(--pq-display); letter-spacing: -.01em; }
  .pq-listo .pq-cuando span { display: block; color: var(--pq-gris); font: 400 14.5px var(--pq-texto); letter-spacing: 0; margin-top: 4px; }
  .pq-listo .pq-acc { display: grid; gap: 10px; max-width: 360px; margin: 0 auto; }
  .pq-listo .pq-nota-lib { margin: 22px auto 0; max-width: 420px; font-size: 14px; color: var(--pq-gris); background: #f4fbf8; border: 1px dashed var(--pq-acento); border-radius: 14px; padding: 12px 14px; }
  .pq-listo .pq-nota-lib a { color: var(--pq-acento-osc); font-weight: 600; }
  .pq-btn-borde { background: transparent; color: var(--pq-tinta); box-shadow: inset 0 0 0 1.5px var(--pq-linea); }
  .pq-btn-borde:hover { background: var(--pq-acento-claro); }

  /* Contacto: hoy resaltado + estado */
  .horario li.pq-hoy { color: var(--pq-hoy, #fff); font-weight: 600; }
  .horario li.pq-hoy span:first-child::after { content: " · hoy"; color: var(--pq-acento); font-weight: 600; }


  /* "Otra cosa": texto libre dentro del test */
  .pq-otra { margin-top: 12px; }
  .pq-otra[hidden] { display: none; }
  .pq-otra label { display: block; font: 600 13px var(--pq-texto); color: var(--pq-gris); margin-bottom: 6px; }
  .pq-otra textarea { width: 100%; min-height: 88px; border: 1.5px solid var(--pq-linea); border-radius: 14px; padding: 12px 14px; font: 16px/1.4 var(--pq-texto); color: var(--pq-tinta); resize: vertical; background: #fff; }
  .pq-otra textarea:focus { outline: none; border-color: var(--pq-acento-osc); box-shadow: 0 0 0 3px var(--pq-acento-claro); }
  .pq-otra small { display: block; margin-top: 4px; color: var(--pq-gris); font-size: 12.5px; text-align: right; }

  /* Agenda conectada a Cal.com: estados de carga y respaldo */
  .pq-cal-dias:empty::before { content: "Cargando horarios…"; grid-column: 1 / -1; text-align: center; color: var(--pq-gris); padding: 34px 0; }
  .pq-cal-dias.cargando { opacity: .45; pointer-events: none; transition: opacity .2s; }
  #pq-respaldo[hidden] { display: none; }
  #pq-cal-respaldo { width: 100%; min-height: 560px; }
  .pq-btn[disabled] { opacity: .65; cursor: wait; }

  /* Botones propios de la agenda (no dependen de los del ejemplo) */
  .pq-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; padding: 0 22px; border: 0; border-radius: var(--pq-radio-btn, 999px); background: var(--pq-acento-osc); color: #fff; font: 600 16px var(--pq-texto); text-decoration: none; cursor: pointer; transition: transform .15s, filter .15s; }
  .pq-btn:hover { filter: brightness(1.08); }
  .pq-btn:active { transform: scale(.98); }
  .pq-btn.wa { background: var(--pq-wa, #1FA855); }
  .pq-btn.borde { background: transparent; color: var(--pq-tinta); box-shadow: inset 0 0 0 1.5px var(--pq-linea); }
  .pq-btn.borde:hover { background: var(--pq-acento-claro); filter: none; }
  /* Reserva de muestra (ejemplos y vista previa) */
  .pq-muestra-nota { margin: 0; text-align: center; font-size: 12.5px; color: var(--pq-gris); }
  .pq-seccion-agenda { scroll-margin-top: 70px; }

  /* Formulario de contacto */
  .pq-form-lugar { margin-top: 44px; }
  .pq-form { background: var(--pq-blanco); color: var(--pq-tinta); border-radius: 24px; padding: 26px 20px; max-width: 760px; margin: 0 auto; box-shadow: 0 24px 60px rgba(0,0,0,.18); }
  @media (min-width: 640px) { .pq-form { padding: 34px; } }
  .pq-form h3 { font: 700 26px/1.15 var(--pq-display); letter-spacing: -.02em; margin: 0 0 6px; }
  .pq-form .pq-form-sub { margin: 0 0 20px; color: var(--pq-gris); font-size: 15.5px; }
  .pq-form form { display: grid; gap: 14px; }
  .pq-form .pq-fila { display: grid; gap: 14px; }
  @media (min-width: 640px) { .pq-form .pq-fila { grid-template-columns: 1fr 1fr; } }
  .pq-form .pq-campo textarea, .pq-form .pq-campo select { width: 100%; border: 1.5px solid var(--pq-linea); border-radius: 14px; padding: 12px 14px; font: 16px/1.4 var(--pq-texto); color: var(--pq-tinta); background: #fff; }
  .pq-form .pq-campo select { min-height: 52px; padding: 0 14px; }
  .pq-form .pq-campo textarea { min-height: 112px; resize: vertical; }
  .pq-form .pq-campo textarea:focus, .pq-form .pq-campo select:focus { outline: none; border-color: var(--pq-acento-osc); box-shadow: 0 0 0 3px var(--pq-acento-claro); }
  .pq-form .pq-trampa { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
  .pq-form .pq-btn { width: 100%; }
  .pq-form .pq-mini-nota a { color: var(--pq-acento-osc); font-weight: 600; }
  .pq-form-ok { text-align: center; padding: 10px 4px; }
  .pq-form-ok .pq-tilde { width: 68px; height: 68px; margin: 0 auto 12px; border-radius: 50%; background: var(--pq-acento-claro); display: grid; place-items: center; }
  .pq-form-ok .pq-tilde svg { width: 36px; height: 36px; fill: none; stroke: var(--pq-acento-osc); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 40; stroke-dashoffset: 40; animation: pq-trazo .6s .15s ease forwards; }
  .pq-form-ok p { margin: 6px 0 0; color: var(--pq-gris); }
  .pq-form-ok[hidden], .pq-form form[hidden] { display: none; }
  .pq-form-falla { margin: 0; font-size: 14.5px; color: #b3392b; }
  .pq-form-falla:empty { display: none; }
  .pq-form-falla a { color: var(--pq-acento-osc); font-weight: 600; }

  /* Franja superior del kit de WhatsApp Business */
  .pq-kit { background: #1E951D; color: #fff; font: 600 13.5px/1.4 system-ui, sans-serif; text-align: center; padding: 9px 16px; }
  .pq-kit a { color: #fff; text-decoration: underline; text-underline-offset: 2px; margin-left: 6px; white-space: nowrap; }
  .pq-kit .pq-it { display: inline-block; margin: 1px 0; }
  .pq-kit .pq-sep { margin: 0 14px; opacity: .55; }
  @media (max-width: 759px) { .pq-kit .pq-it { display: block; } .pq-kit .pq-sep { display: none; } }

