.reserve-card{background:#111;color:#fff;border-radius:var(--radius-lg);padding:26px;display:grid;gap:18px;overflow:hidden;position:relative}.reserve-card:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(199,166,100,.14);right:-110px;top:-130px}.reserve-card>*{position:relative}.reserve-card h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.2rem,8vw,4.2rem);margin:0;line-height:.95}.reserve-card p{margin:0;color:#c6c6c6;line-height:1.6;max-width:700px}.reserve-trigger{margin-top:4px}.reserve-form-wrap{margin-top:18px;background:#fff;color:#111;border-radius:22px;padding:18px;min-width:0;overflow:hidden}.reserve-form{display:grid;gap:12px;min-width:0}.reserve-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.reserve-form label{display:grid;gap:6px;font-size:.78rem;font-weight:800;color:#555;min-width:0}.reserve-form input,.reserve-form textarea,.reserve-form select{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;border:1px solid #d9d6d0;border-radius:14px;padding:12px 13px;font:inherit;font-size:16px;background:#fff;color:#111;outline:none}.reserve-form input[type="date"],.reserve-form input[type="time"]{width:100%;max-width:100%;min-width:0;-webkit-appearance:none;appearance:none;overflow:hidden}.reserve-form input[type="date"]::-webkit-date-and-time-value,.reserve-form input[type="time"]::-webkit-date-and-time-value{text-align:left;min-width:0}.reserve-form textarea{min-height:92px;resize:vertical}.reserve-form input:focus,.reserve-form textarea:focus,.reserve-form select:focus{border-color:#111;box-shadow:0 0 0 2px rgba(0,0,0,.05)}.reserve-note{font-size:.78rem!important;color:#777!important;line-height:1.5!important}.reserve-status{min-height:22px;font-size:.86rem;font-weight:750;color:#555}.reserve-status.success{color:#245c36}.reserve-status.error{color:#8a2f24}.reserve-form .btn{cursor:pointer}.reserve-form .btn:disabled{opacity:.55;cursor:not-allowed}@media(max-width:620px){.reserve-grid{grid-template-columns:minmax(0,1fr)}.reserve-card{padding:22px 18px}.reserve-form-wrap{padding:15px}.reserve-form input[type="date"],.reserve-form input[type="time"]{inline-size:100%;max-inline-size:100%}}
