.res-container{color:#1a1a1a;background:#fdfcfa;justify-content:center;align-items:flex-start;min-height:100vh;padding:8rem 5% 4rem;font-family:Plus Jakarta Sans,sans-serif;display:flex}.res-form-wrapper{background:#fff;border-radius:12px;width:100%;max-width:800px;padding:4rem;box-shadow:0 40px 100px #0000000a}.res-header{text-align:center;margin-bottom:2.5rem}.res-header h1{color:#1a1a1a;letter-spacing:-.5px;margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:2.8rem}.res-header p{color:#888;font-size:1rem}.res-progress{justify-content:center;align-items:center;gap:1rem;margin-bottom:4rem;display:flex}.progress-dot{color:#aaa;text-transform:uppercase;letter-spacing:1px;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;display:flex}.progress-dot span{background:#f2f2f2;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.progress-dot.active{color:#c38b57}.progress-dot.active span{color:#fff;background:#c38b57}.progress-line{background:#ebebeb;width:40px;height:1px}.res-section{margin-bottom:3.5rem}.date-selector{scrollbar-width:thin;scrollbar-color:#ebebeb transparent;gap:1rem;padding-bottom:1.5rem;display:flex;overflow-x:auto}.date-selector::-webkit-scrollbar{height:6px}.date-selector::-webkit-scrollbar-track{background:0 0}.date-selector::-webkit-scrollbar-thumb{background:#ebebeb;border-radius:10px}.date-selector::-webkit-scrollbar-thumb:hover{background:#d4a853}.date-pill{text-align:center;cursor:pointer;background:0 0;border:1px solid #ebebeb;border-radius:4px;flex:none;min-width:105px;padding:1.2rem;transition:all .3s}.date-pill:hover{background:#fafafa;border-color:#c38b57}.date-pill.selected{color:#1a1a1a;background:#fdfbf8;border-color:#c38b57;box-shadow:0 5px 15px #c38b5714}.date-pill .day-name{text-transform:uppercase;letter-spacing:2px;color:#999;margin-bottom:.4rem;font-size:.75rem;font-weight:600}.date-pill.selected .day-name{color:#c38b57}.date-pill .day-date{color:#bbb;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600}.date-pill.selected .day-date{color:#1a1a1a}.date-pill .day-month{color:#bbb;text-transform:uppercase;margin-top:.2rem;font-size:.75rem}.date-pill.selected .day-month{color:#1a1a1a}.time-selector{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.8rem;display:grid}.time-pill{text-align:center;cursor:pointer;color:#888;background:0 0;border:1px solid #ebebeb;border-radius:4px;padding:.8rem 0;font-size:1rem;font-weight:500;transition:all .2s}.time-pill:hover{color:#1a1a1a;border-color:#c38b57}.time-pill.selected{color:#c38b57;background:#fdfbf8;border-color:#c38b57;box-shadow:0 4px 10px #c38b5714}.res-summary{color:#666;background:#fafafa;border-left:2px solid #c38b57;border-radius:4px;margin-bottom:2.5rem;padding:1.5rem}.res-summary strong{color:#1a1a1a}.res-input-group{flex-direction:column;margin-bottom:2rem;display:flex}.res-input-group label{color:#c38b57;letter-spacing:2px;text-transform:uppercase;margin-bottom:.5rem;font-size:.7rem;font-weight:700}.res-input-group input,.res-input-group select,.res-input-group textarea{color:#1a1a1a;background:0 0;border:none;border-bottom:1px solid #ded8d1;border-radius:0;padding:.5rem 0;font-family:Plus Jakarta Sans,sans-serif;font-size:1.1rem;transition:all .3s}.res-input-group input::placeholder,.res-input-group textarea::placeholder{color:#ccc}.res-input-group input:focus,.res-input-group select:focus,.res-input-group textarea:focus{border-bottom-color:#c38b57;outline:none}.step-actions{justify-content:flex-end;align-items:center;gap:1rem;margin-top:2rem;display:flex}.res-submit{border-radius:50px;padding:1rem 2rem;font-size:1rem}.res-submit.disabled{color:#aaa;cursor:not-allowed;box-shadow:none;background:#ebebeb;border-color:#ebebeb}.res-back{border-radius:50px;padding:1rem 2rem}.btn-outline{color:#666;background:0 0;border:1px solid #ebebeb}.btn-outline:hover{background:#fafafa;border-color:#ccc}.back-link{color:#aaa;align-items:center;gap:.6rem;margin-bottom:2.5rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .3s;display:inline-flex}.back-link:hover{color:#1a1a1a}@media (max-width:768px){.res-container{padding:6rem 4% 2rem}.res-form-wrapper{padding:2.5rem 1.5rem}.res-header h1{font-size:2.2rem}.step-actions{flex-direction:column-reverse}.step-actions button{width:100%}}
