:root{color:#192325;font-synthesis:none;--accent:#d3ee78;--muted:#606b68;--line:#dce1d6;background:#f4f5f0;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}:focus-visible{outline-offset:4px;outline:3px solid #517613}.skip{z-index:10;background:#fff;padding:15px;position:absolute;top:-100px;left:20px}.skip:focus{top:10px}.demo-banner{text-align:center;letter-spacing:.07em;background:#d3ee78;padding:10px 15px;font-size:12px;font-weight:700}.header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;max-width:1180px;margin:auto;padding:28px 30px;display:flex}.brand{letter-spacing:-2px;align-items:center;gap:13px;font-size:30px;font-weight:900;text-decoration:none;display:flex}.brand span{letter-spacing:.09em;max-width:85px;font-size:10px;line-height:1.5}nav{gap:24px;font-size:13px;display:flex}main{max-width:1180px;margin:auto;padding:0 30px}.intro{padding:60px 0 34px}.eyebrow{letter-spacing:.13em;margin:0 0 18px;font-size:11px;font-weight:700}.intro h1{letter-spacing:-.045em;margin:0;font-size:clamp(38px,5vw,64px);line-height:1.05}.intro h1 span{color:#758079}.lead{color:var(--muted);max-width:580px;margin:25px 0 0;font-size:17px;line-height:1.6}.checkout-grid{grid-template-columns:minmax(0,1.7fr) minmax(270px,1fr);align-items:start;gap:24px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:16px;padding:32px}h2{letter-spacing:-.03em;margin:0 0 25px;font-size:25px;line-height:1.2}h3{margin:0 0 8px;font-size:22px}fieldset{border:0;margin:0;padding:0}legend,label{font-size:13px;font-weight:600}legend{margin-bottom:12px}.dates{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.date-choice{position:relative}.date-choice input{accent-color:#405b1c;width:16px;height:16px;position:absolute;inset:13px auto auto 12px}.date-choice span{border:1px solid var(--line);border-radius:8px;padding:14px 10px 14px 35px;font-size:13px;display:block}.date-choice small{color:var(--muted);margin-top:7px;font-size:12px;font-weight:400;display:block}.date-choice:has(input:checked) span{background:#f0f7df;border-color:#8aa557}.date-choice:has(input:focus-visible){border-radius:8px;outline:3px solid #517613}.quantity{justify-content:space-between;align-items:center;margin-top:20px;display:flex}.quantity input{max-width:88px;margin:0}.fields{grid-template-columns:1fr 1fr;gap:18px;display:grid}input:not([type=radio]):not([type=file]),select{color:#192325;background:#fff;border:1px solid #bbc5bb;border-radius:6px;width:100%;min-height:46px;margin-top:8px;padding:13px 12px;font-weight:400;display:block}input::placeholder{color:#7b847e;font-size:13px}.divider{background:var(--line);height:1px;margin:28px 0}.muted,.note{color:var(--muted);font-size:13px;line-height:1.65}.note{font-size:12px}.primary,.secondary,.file-button{border:0;border-radius:7px;justify-content:center;align-items:center;gap:18px;min-height:46px;padding:14px 18px;font-size:13px;font-weight:700;display:inline-flex}.primary{color:#fff;background:#23302c}.primary:hover{background:#344a40}.secondary,.file-button{color:#263928;background:#ecf0e7}.secondary:hover,.file-button:hover{background:#dfe9d4}form>.primary{justify-content:space-between;width:100%;margin-top:24px}.summary{background:#e8edde;position:sticky;top:25px}.summary h2{max-width:230px;font-size:32px}.benefits{margin:28px 0;padding:0;font-size:14px;line-height:2.4;list-style:none}.benefits li:before{content:"✓";color:#527325;margin-right:12px}dl{margin:0}dl>div{justify-content:space-between;gap:12px;margin:14px 0;font-size:13px;display:flex}dd{margin:0;font-weight:600}.total{border-top:1px solid #cbd3c2;padding-top:20px!important;font-size:19px!important}.payment{margin-top:25px}.actions{flex-wrap:wrap;gap:10px;margin:22px 0;display:flex}.text-button{text-underline-offset:4px;color:#354a30;background:0 0;border:0;padding:10px 0;text-decoration:underline}.section-heading{justify-content:space-between;align-items:center;gap:20px;margin:45px 0 0;display:flex}.section-heading a{font-size:13px}.tickets{grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:20px;margin-top:22px;display:grid}.ticket{text-align:center;padding:25px;overflow:hidden}.ticket p{color:var(--muted);font-size:13px}.ticket canvas{max-width:100%;margin:12px auto;display:block;height:auto!important}.ticket-code{overflow-wrap:anywhere;user-select:all;color:var(--muted);margin-top:15px;font-size:11px;display:block}.compact{padding-top:40px}.scanner{max-width:720px;margin-bottom:35px}.scanner h2{margin-bottom:14px}.scanner fieldset>label{margin:20px 0;display:block}.scanner .primary{width:100%}.camera{background:#192325;border-radius:10px;max-height:340px;overflow:hidden}.camera video{object-fit:cover;width:100%;max-height:340px}.file-button{cursor:pointer;position:relative;overflow:hidden}.file-button input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.file-button:focus-within{outline-offset:4px;outline:3px solid #517613}.scan-result{background:#f0f3ed;border-radius:10px;margin:22px 0;padding:22px;font-size:18px;font-weight:600;line-height:1.5}.scan-result.success{color:#22410b;background:#d6efb8;border:2px solid #648a3c}.scan-result.warning{color:#6b4403;background:#fff0d1;border:2px solid #b58935}footer{border-top:1px solid var(--line);max-width:1180px;color:var(--muted);justify-content:space-between;gap:20px;margin:55px auto 0;padding:28px 30px;font-size:11px;display:flex}@media (width<=760px){.header{padding:22px 20px}.brand{font-size:26px}nav{gap:13px;font-size:11px}main{padding:0 18px}.intro{padding:38px 0 28px}.lead{font-size:15px}.checkout-grid{grid-template-columns:1fr}.panel{padding:23px}.summary{position:static}.summary h2{max-width:none;font-size:26px}.fields{gap:15px}.section-heading{flex-direction:column;align-items:start}.section-heading h2{margin-bottom:0}footer{flex-direction:column;margin-top:35px;padding:25px 20px}.date-choice span{padding-left:30px;font-size:12px}.date-choice input{left:9px}.demo-banner{font-size:10px}.actions button{flex:1}.tickets{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (width<=420px){.fields{grid-template-columns:1fr}.brand span{display:none}.dates{gap:5px}.date-choice span{padding-left:26px;padding-right:5px}.date-choice input{left:6px}.panel{padding:19px}}
