@font-face{font-family:UnboundedCompacta;src:url(unbounded-extrabold.woff) format("woff");font-weight:400;font-style:normal;font-display:swap;size-adjust:72%}
/* Página "Pase Peyote" (pase.html): hueso, negro y naranja; UnboundedCompacta, Raleway e IBM Plex Mono; líneas finas y esquinas rectas. */
:root{--ps-bone:#f7f6f2;--ps-cool:#eeede8;--ps-ink:#151412;--ps-line:#d9d7d0;--ps-mute:#77746c;--ps-or:#ff8346;--ps-red:#c2412d}
*{box-sizing:border-box}
body.ps-body{margin:0;background:var(--ps-bone);color:var(--ps-ink);font:500 15px/1.5 Raleway,Arial,sans-serif;-webkit-font-smoothing:antialiased}
.ps-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px clamp(16px,4vw,40px);border-bottom:1px solid var(--ps-line);background:var(--ps-bone)}
.ps-logo img{display:block;width:auto;height:34px}
.ps-back{color:var(--ps-ink);font:700 14px/1 Raleway,Arial,sans-serif;text-decoration:none;padding:10px 0}
.ps-back:hover{color:var(--ps-or)}
.ps-page{max-width:1120px;margin:0 auto;padding:26px 20px 70px}
.ps-kicker{margin:0;color:var(--ps-or);font:600 11px "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase}
.ps-h1{margin:12px 0 0;font:400 clamp(44px,8vw,76px)/.92 UnboundedCompacta,Impact,"Arial Narrow",sans-serif;text-transform:uppercase}
.ps-lead{max-width:62ch;margin:12px 0 0;color:#3e3c37;font-size:16px}
.ps-buy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:36px;align-items:start;margin-top:28px;padding-top:26px;border-top:2px solid var(--ps-ink)}
.ps-form{display:flex;flex-direction:column;gap:18px}
.ps-block{margin:0;padding:0;border:0;min-width:0}
.ps-lbl{display:block;margin:0 0 8px;padding:0;font:600 11px "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase}
.ps-lbl small{color:var(--ps-mute);font-weight:500;letter-spacing:.06em;text-transform:none}
.ps-mute{color:var(--ps-mute)}
.ps-amts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.ps-amts button,.ps-seg button{appearance:none;border:1px solid var(--ps-line);border-radius:0;background:#fff;color:var(--ps-ink);cursor:pointer;transition:background .12s,border-color .12s}
.ps-amts button{display:flex;flex-direction:column;gap:3px;padding:12px 10px;text-align:left}
.ps-amts b{font:400 24px/1 UnboundedCompacta,Impact,"Arial Narrow",sans-serif}
.ps-amts span{color:var(--ps-mute);font:600 10px "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase}
.ps-amts button:hover,.ps-seg button:hover{border-color:var(--ps-ink)}
.ps-amts button[aria-pressed="true"],.ps-seg button[aria-pressed="true"]{border-color:var(--ps-ink);background:var(--ps-ink);color:var(--ps-bone)}
.ps-amts button[aria-pressed="true"] span{color:#cfccc4}
.ps-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.ps-field{position:relative;display:flex;flex-direction:column;min-width:0}
.ps-field .ps-lbl{margin-bottom:6px}
.ps-form input,.ps-form textarea,.ps-form select{width:100%;padding:12px;border:1px solid var(--ps-line);border-radius:0;background:#fff;color:var(--ps-ink);font:600 16px/1.35 Raleway,Arial,sans-serif;outline:0}
.ps-form input:focus,.ps-form textarea:focus,.ps-form select:focus{border-color:var(--ps-ink);box-shadow:inset 0 0 0 1px var(--ps-ink)}
.ps-form textarea{min-height:84px;padding-bottom:26px;resize:vertical}
.ps-count{position:absolute;right:10px;bottom:8px;color:var(--ps-mute);font:500 10px "IBM Plex Mono",ui-monospace,monospace}
.ps-more,.ps-date{margin-top:10px}
.ps-more[hidden],.ps-date[hidden]{display:none}
.ps-seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.ps-seg3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ps-seg button{padding:11px 8px;font:700 14px/1.2 Raleway,Arial,sans-serif}
.ps-small{margin:8px 0 0;color:var(--ps-mute);font-size:12.5px;line-height:1.5}
.ps-you{padding-top:4px}
.ps-you .ps-field+.ps-two{margin-top:10px}
.ps-hand{margin:0;padding:12px 14px;border-left:3px solid var(--ps-or);background:var(--ps-cool);color:var(--ps-ink);font-size:13.5px}
.ps-side{position:sticky;top:16px;display:flex;flex-direction:column;gap:14px;min-width:0}
.ps-preview,.ps-pay{display:flex;flex-direction:column;gap:14px;min-width:0}
.ps-side .ps-lbl{margin:0}
.ps-ticket{max-width:640px}
.ps-sum{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border:1px solid var(--ps-line);background:#fff}
.ps-sum b{font:400 32px/1 UnboundedCompacta,Impact,"Arial Narrow",sans-serif}
.ps-btn{appearance:none;padding:17px 18px;border:0;border-radius:0;background:var(--ps-or);color:var(--ps-ink);font:600 12px "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.14em;text-align:left;text-transform:uppercase;cursor:pointer}
.ps-btn:hover:not(:disabled){background:var(--ps-ink);color:var(--ps-bone)}
.ps-btn:disabled{opacity:.6;cursor:default}
.ps-btn:focus-visible,.ps-amts button:focus-visible,.ps-seg button:focus-visible{outline:2px solid var(--ps-or);outline-offset:2px}
.ps-error{margin:0;color:var(--ps-red);font:700 13.5px/1.4 Raleway,Arial,sans-serif}
.ps-error:empty{display:none}
.ps-side .ps-small{margin:0}
@media(max-width:900px){
  .ps-buy{grid-template-columns:1fr;gap:26px}
  /* En celular: el pase arriba (se ve mientras escriben) y el total con el botón hasta abajo. */
  .ps-side{display:contents}
  .ps-preview{order:-1}
  .ps-pay{order:2}
}
@media(max-width:520px){
  .ps-amts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ps-two{grid-template-columns:1fr}
  .ps-seg3{grid-template-columns:1fr}
}
