.sasperia-reservation{--ink:#102744;--gold:#cfae72;--line:#ddcbae;--paper:#fbf1df;--white:#fffaf3;--muted:#7d6d5d;width:100%;max-width:760px;margin:0 auto;padding:20px;background:var(--paper);color:var(--ink);box-sizing:border-box}.sasperia-reservation *{box-sizing:border-box}.sasperia-reservation svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sasp-hp{position:absolute!important;left:-9999px!important}.sasp-form-grid{display:grid;gap:12px 14px}.reservation-field{position:relative;min-width:0}.sasperia-reservation input,.sasperia-reservation select{display:block;width:100%;height:54px;margin:0;padding:0 44px;border:1px solid var(--line);border-radius:15px;outline:0;background:#fff9;color:var(--ink);font:inherit;font-size:15px;box-shadow:none;appearance:none;transition:.2s}.sasperia-reservation input:focus,.sasperia-reservation select:focus{border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px #cfae7218}.field-icon{position:absolute;left:15px;top:50%;z-index:2;display:grid;place-items:center;transform:translateY(-50%);color:#9b7d4b;pointer-events:none}.field-icon svg{width:18px;height:18px}.field-chevron{position:absolute;right:14px;top:50%;display:grid;place-items:center;transform:translateY(-50%);pointer-events:none;color:#7e6d5b}.field-chevron svg{width:18px;height:18px}.phone-field .field-icon{display:none}.sasperia-reservation .iti{display:block;width:100%;margin:0}.sasperia-reservation .iti input{padding-left:106px!important;padding-right:14px!important}.iti__dropdown-content{z-index:999999!important}.other-wrap{display:none}.other-wrap:has(.visible){display:block}.other-guests{display:none!important;padding-left:14px!important}.other-guests.visible{display:block!important}.time-field{position:relative}.time-trigger{display:flex;align-items:center;width:100%;height:54px;padding:0 14px;border:1px solid var(--line);border-radius:15px;background:#fff9;color:var(--ink);font:inherit;font-size:15px;text-align:left;cursor:pointer}.time-trigger-icon{display:grid;place-items:center;margin-right:12px;color:#9b7d4b}.time-trigger-icon svg{width:19px;height:19px}.time-text{flex:1}.time-trigger-arrow{display:grid;place-items:center}.time-trigger-arrow svg{width:18px;height:18px}.time-picker-panel{position:absolute;top:calc(100% + 8px);inset-inline:0;z-index:9999;display:none;min-width:360px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fffaf4;box-shadow:0 22px 60px #10274426}.time-picker-panel.active{display:block}.time-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.time-picker-head strong{font-size:15px}.time-picker-head small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.time-picker-close{width:32px;height:32px;border:0;border-radius:50%;background:#f2e5d1;color:var(--ink);font-size:20px;line-height:1}.time-options{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;max-height:230px;overflow:auto}.time-option{min-height:38px;border:1px solid #e6d7c1;border-radius:10px;background:#fff;color:var(--ink);font-weight:700;font-size:13px}.time-option:hover:not(:disabled){border-color:var(--gold);background:#fff8ec}.time-option.selected{background:var(--ink);border-color:var(--ink);color:#fff}.time-option:disabled{opacity:.32;text-decoration:line-through;cursor:not-allowed}.place-picker{margin:18px 0 14px;padding:0;border:0}.place-picker legend{margin-bottom:10px;font-size:15px;font-weight:800}.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.place-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;min-height:106px;padding:12px;border:1px solid var(--line);border-radius:16px;background:#ffffff9c;cursor:pointer;transition:.2s;overflow:hidden}.place-card:hover{transform:translateY(-1px);border-color:var(--gold);background:#fff}.place-card input{position:absolute;opacity:0;pointer-events:none}.place-icon{display:grid;place-items:center;width:34px;height:34px;margin-bottom:8px;border-radius:10px;background:#f3e6d1;color:#8f6e38}.place-icon svg{width:19px;height:19px}.place-copy{min-width:0;width:100%}.place-copy strong,.place-copy small,.place-copy em{display:block}.place-copy strong{font-size:10.5px;line-height:1.25;font-weight:800}.place-copy small{margin-top:2px;color:var(--muted);font-size:8.5px;line-height:1.2}.place-copy em{display:none}.place-check{position:absolute;right:9px;top:9px;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#fff;color:var(--ink);opacity:0}.place-check svg{width:14px;height:14px}.place-card:has(input:checked){background:var(--ink);border-color:var(--ink);color:#fff}.place-card:has(input:checked) .place-icon{background:#ffffff17;color:#e4c894}.place-card:has(input:checked) small{color:#ffffffb8}.place-card:has(input:checked) .place-check{opacity:1}.place-card.is-unavailable{filter:saturate(.2);opacity:.45;cursor:not-allowed;background:#e8e3db}.place-card.is-unavailable:hover{transform:none}.place-card.is-unavailable:after{content:'';position:absolute;inset:0;background:#ffffff1f;backdrop-filter:blur(1.1px)}.place-card.is-unavailable .place-reason{position:relative;z-index:2;display:block;margin-top:5px;color:#8d2f20;font-size:9.5px;font-style:normal;line-height:1.15;font-weight:700}.availability-note{margin-top:10px;padding:10px 12px;border:1px solid #ebc8c0;border-radius:12px;background:#fff2ef;color:#9c3324;font-size:12px;font-weight:700}.comment-row{display:grid;gap:12px;align-items:center;margin:2px 0 14px;padding:11px 12px;border:1px solid var(--line);border-radius:16px;background:#ffffff90}.comment-label{display:flex;align-items:center;gap:9px}.comment-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:var(--ink);color:#fff}.comment-icon svg{width:17px;height:17px}.comment-label b,.comment-label small{display:block}.comment-label b{font-size:13px}.comment-label small{margin-top:1px;color:var(--muted);font-size:10px}.comment-row textarea{display:block;width:100%;height:58px;min-height:58px;max-height:100px;padding:10px 12px;border:1px solid #e0cfb6;border-radius:12px;outline:0;resize:vertical;background:#fff;color:var(--ink);font:inherit;font-size:13px;line-height:1.35}.comment-row textarea::placeholder{color:#9a8b7d;font-size:12px}.comment-row textarea:focus{border-color:var(--gold)}.sasp-submit{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:205px;min-height:50px;padding:12px 24px;border:0;border-radius:13px;background:var(--ink);color:#fff;font:inherit;font-size:14px;font-weight:800}.sasp-submit svg{width:17px;height:17px}.sasp-submit:disabled{opacity:.55}.form-message{display:none;margin-top:12px;padding:11px 13px;border-radius:12px;font-size:12px;font-weight:700}.form-message.success{display:block;background:#e8f7ed;color:#19633a}.form-message.error{display:block;background:#fee9e5;color:#a63728}.flatpickr-calendar{z-index:999999!important}.flatpickr-day{position:relative}.sasperia-reservation a,.sasperia-reservation button{cursor:pointer}@media(max-width:760px){.sasperia-reservation{padding:14px 12px}.sasp-form-grid{gap:10px}.sasperia-reservation input,.sasperia-reservation select,.time-trigger{height:50px;font-size:14px}.place-grid{grid-template-columns:repeat(2,1fr)}.place-card:last-child{grid-column:span 2;min-height:82px;flex-direction:row;align-items:center;gap:10px}.place-card:last-child .place-icon{margin:0}.comment-row{grid-template-columns:1fr;padding:10px}.comment-row textarea{height:54px}.time-picker-panel{position:fixed;left:12px;right:12px;top:auto;bottom:12px;min-width:0}.time-options{grid-template-columns:repeat(4,1fr);max-height:255px}.sasp-submit{width:100%}}@media(max-width:430px){.sasp-form-grid{grid-template-columns:1fr}.place-grid{gap:8px}.place-card{min-height:92px}.time-options{grid-template-columns:repeat(3,1fr)}}
