:root{--navy: #211c6e;--navy-deep: #14123f;--white: #ffffff;--cream: #faf7ef;--cream-dim: #f0ead9;--red: #d9453a;--red-dark: #b23128;--gold: #f0b23d;--line: #e3ddc9;--text: #211c6e;--text-body: #3a3650;--text-dim: #7a7596;--font-display: "Baloo 2", "Inter", sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--radius: 10px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--cream);color:var(--text-body);font-family:var(--font-body);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);margin:0;font-weight:700;letter-spacing:-.01em;color:var(--navy)}p{margin:0;line-height:1.55}button{font-family:var(--font-body);cursor:pointer}a{color:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.container{max-width:980px;margin:0 auto;padding:0 24px}.hero{position:relative;padding:64px 0 56px;border-bottom:4px solid var(--navy);overflow:hidden}.hero__inner{display:flex;align-items:center;gap:40px;flex-wrap:wrap}.hero__mark{width:200px;height:200px;flex-shrink:0;filter:drop-shadow(0 6px 14px rgba(33,28,110,.18))}.hero__copy{flex:1;min-width:280px}.hero__eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);font-weight:600;margin-bottom:14px;display:block}.hero__title{font-size:clamp(40px,7vw,64px);font-weight:800;line-height:.98;color:var(--navy)}.hero__subtitle{margin-top:18px;font-size:17px;color:var(--text-body);max-width:46ch;line-height:1.6}.hero__cta{margin-top:30px}.btn{display:inline-flex;align-items:center;gap:10px;border:none;border-radius:var(--radius);padding:14px 26px;font-size:15px;font-weight:700;font-family:var(--font-display);transition:transform .12s ease,background .12s ease}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--red);color:var(--white);box-shadow:0 3px 0 var(--red-dark)}.btn--primary:hover{background:var(--red-dark)}.btn--primary:disabled{background:var(--line);color:var(--text-dim);box-shadow:none;cursor:not-allowed}.btn--ghost{background:var(--white);color:var(--navy);border:2px solid var(--navy)}.btn--ghost:hover{background:var(--cream-dim)}.section{padding:64px 0}.section--paper{background:var(--white);color:var(--navy);border-top:4px solid var(--navy)}.section__eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);font-weight:600;margin-bottom:12px;display:block}.section__title{font-size:clamp(28px,4vw,36px);margin-bottom:8px}.section__intro{max-width:56ch;color:var(--text-dim);margin-bottom:36px}.steps{display:flex;gap:28px;margin-bottom:32px;flex-wrap:wrap}.step{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:13px;color:var(--text-dim)}.step.is-active{color:var(--red);font-weight:600}.step.is-done{color:var(--navy)}.step__num{width:22px;height:22px;border-radius:50%;border:2px solid currentColor;display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0}.calendar{background:var(--white);border:2px solid var(--navy);border-radius:var(--radius);padding:24px}.calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.calendar__month-label{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--navy)}.calendar__nav{display:flex;gap:8px}.calendar__nav-btn{width:32px;height:32px;border-radius:50%;border:2px solid var(--navy);background:var(--white);display:flex;align-items:center;justify-content:center;color:var(--navy)}.calendar__nav-btn:hover{background:var(--cream-dim)}.calendar__nav-btn:disabled{opacity:.3;cursor:not-allowed}.calendar__weekdays{display:grid;grid-template-columns:repeat(7,1fr);font-family:var(--font-mono);font-size:11px;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}.calendar__weekdays div{text-align:center;padding:4px 0}.calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.day-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;font-family:var(--font-mono);background:none;border:2px solid transparent;color:var(--navy);position:relative}.day-cell--empty{visibility:hidden}.day-cell--closed{color:#d4cfba;cursor:default}.day-cell--open{border-color:var(--gold);color:var(--navy)}.day-cell--open:hover{background:var(--gold);color:var(--navy)}.day-cell--partial{border-color:var(--red)}.day-cell--partial:hover{background:var(--red);color:var(--white)}.day-cell--full{color:#d4cfba;text-decoration:line-through;cursor:not-allowed}.day-cell--selected{background:var(--navy)!important;border-color:var(--navy)!important;color:var(--white)!important}.slots{margin-top:28px;display:flex;flex-wrap:wrap;gap:14px}.slot-ticket{border:2px dashed var(--navy);background:var(--cream);color:var(--navy);border-radius:var(--radius);padding:16px 20px;font-family:var(--font-mono);font-size:13px;display:flex;flex-direction:column;gap:4px;min-width:200px;transition:border-color .12s ease,transform .12s ease}.slot-ticket:hover{border-color:var(--red)}.slot-ticket.is-selected{border:2px solid var(--red);background:var(--red);color:var(--white)}.slot-ticket__label{font-size:15px;font-family:var(--font-display);font-weight:700}.empty-state{font-family:var(--font-mono);font-size:13px;color:var(--text-dim);padding:20px 0}.form-card{background:var(--white);border:2px solid var(--navy);border-radius:var(--radius);padding:32px;margin-top:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid--full{grid-template-columns:1fr}.field{display:flex;flex-direction:column;gap:6px}.field--span2{grid-column:1 / -1}.field label{font-size:13px;font-weight:700;color:var(--navy)}.field input,.field select,.field textarea{border:2px solid var(--line);border-radius:var(--radius);padding:11px 12px;font-family:var(--font-body);font-size:14px;background:var(--cream);color:var(--text)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--red);background:var(--white)}.field textarea{resize:vertical;min-height:80px}.form-error{background:#fbeae8;border:2px solid var(--red);color:var(--red-dark);padding:12px 16px;border-radius:var(--radius);font-size:13px;margin-top:18px}.deposit-line{display:flex;justify-content:space-between;align-items:baseline;border-top:2px dashed var(--line);margin-top:24px;padding-top:18px;font-family:var(--font-mono)}.deposit-line__amount{font-size:22px;color:var(--red);font-weight:700}.confirmation{display:flex;flex-direction:column;align-items:center;text-align:center;padding:64px 24px}.stamp{width:160px;height:160px;margin-bottom:28px}.stamp__ring,.stamp__text{transform-origin:center;animation:stamp-down .52s cubic-bezier(.2,.9,.3,1.2) both}@keyframes stamp-down{0%{transform:scale(2.4) rotate(-14deg);opacity:0}60%{opacity:1}to{transform:scale(1) rotate(-8deg);opacity:1}}.confirmation__title{font-size:30px;font-weight:800;margin-bottom:12px}.confirmation__detail{color:var(--text-dim);font-family:var(--font-mono);font-size:14px;margin-top:6px}.footer{background:var(--navy);padding:28px 0;font-family:var(--font-mono);font-size:12px;color:var(--cream)}@media (max-width: 640px){.form-grid{grid-template-columns:1fr}.hero__inner{flex-direction:column;text-align:center}.footer .container{flex-direction:column;gap:8px;text-align:center}}
