.request-trigger,.request-dialog button{cursor:pointer}.request-dialog{box-sizing:border-box;width:min(600px,calc(100% - 24px));max-height:90dvh;border:1px solid #cee5f2;border-radius:18px;padding:clamp(18px,4vw,32px);color:#102c43;background:#fff;box-shadow:0 20px 65px #081c3260}.request-dialog::backdrop{background:#081c32ad}.request-dialog h2{font-size:clamp(24px,5vw,34px);padding-right:36px;margin:0 0 20px}.request-close{position:absolute;top:12px;right:12px;border:0;border-radius:50%;width:38px;height:38px;background:#eaf7ff;color:#102c43;font-size:24px}.request-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.request-fields label{display:grid;gap:4px;font-size:.9rem;font-weight:650}.request-fields input,.request-fields textarea,.request-fields select{width:100%;padding:8px 10px;border:1px solid #829db1;border-radius:7px;background:white;color:#102c43;font:inherit}.request-wide{grid-column:1/-1}.request-choice,.request-trade{margin:16px 0 0;padding:12px;border:1px solid #cee5f2;border-radius:10px}.request-choice label{margin-right:16px}.request-trade[hidden]{display:none}.request-note{font-size:.85rem;color:#435b6d}@media(max-width:400px){.request-fields{grid-template-columns:1fr}}
.contact-float{position:fixed;z-index:10;right:clamp(12px,3vw,32px);bottom:calc(14px + env(safe-area-inset-bottom));display:grid;gap:8px}.contact-float>*{justify-content:center;box-shadow:0 4px 16px #081c324d}body:has(.contact-float) footer{padding-bottom:135px}
.request-dialog button:disabled{opacity:.55;cursor:default}
.request-booking[hidden],.request-slot[hidden]{display:none}.request-slot{margin-top:12px;border:0;padding:4px 0;min-width:0}
