#visit-trigger{position:absolute;inset:0;z-index:5;width:100%;height:100%;border:0;background:transparent;cursor:pointer;border-radius:inherit;color:var(--ink)}
#visit-trigger:focus-visible{outline:3px solid white;outline-offset:-7px}
#visit-dialog{width:min(680px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;padding:24px 28px;scrollbar-gutter:stable}
#visit-dialog [hidden]{display:none!important}
#visit-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px}
#visit-dialog .eyebrow{font-size:11px;margin:0}
#visit-close{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:30px;cursor:pointer;flex-shrink:0}
#visit-dialog h2{font-size:36px;line-height:1.1;margin:12px 0}
#visit-dialog h3{font-size:21px;margin:22px 0 12px}
#visit-progress{font-size:13px;border-bottom:3px solid #b69a70;padding-bottom:14px}
#visit-dialog label{display:block;min-width:0;font-size:14px;line-height:1.5;font-weight:600;margin:16px 0}
#visit-dialog input:not([type=checkbox]),#visit-dialog select,#visit-dialog textarea{display:block;width:100%;min-width:0;max-width:100%;margin-top:8px;min-height:48px;border:1px solid #c8bbab;border-radius:12px;background:white;color:#121211;padding:10px 12px;font:inherit;font-size:16px}
#visit-dialog textarea{resize:vertical}
#visit-dialog fieldset{min-width:0;border:1px solid #c8bbab;border-radius:16px;padding:8px 16px;margin:24px 0}
#visit-dialog legend{font-size:18px;font-weight:700;padding:0 8px}
#visit-dialog .visit-check{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #c8bbab;border-radius:16px;cursor:pointer}
.visit-check input{width:20px;height:20px;accent-color:#8b704c;flex-shrink:0}
#visit-dialog .visit-note{font-size:13px;line-height:1.65;background:#f1ebe1;padding:14px 16px;border-radius:14px;color:#625b51}
.visit-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
#visit-next,#visit-wa{flex:1 1 200px;border:0;min-height:52px;text-align:center;padding:15px 18px;line-height:1.5;cursor:pointer}
#visit-back{border:1px solid #c8bbab;border-radius:28px;background:transparent;padding:12px 18px;color:inherit;font:inherit;font-size:14px;min-height:48px;cursor:pointer}
.visit-actions.review{flex-direction:column-reverse}.visit-actions.review #visit-wa{flex-basis:auto}
#visit-summary{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:14px;line-height:1.7;padding:18px;border-radius:16px;background:#f1ebe1}
#visitts .service-desc{max-width:90%;line-height:1.5}
@media(max-width:480px){#visit-dialog{padding:16px 18px 22px;border-radius:24px}#visit-dialog h2{font-size:29px}#visit-dialog fieldset{padding:8px 10px}#visitts .service-desc{font-size:13px;max-width:100%}}

.visit-catalog{display:grid;gap:14px}
#visit-dialog .visit-choice{display:flex;align-items:flex-start;gap:12px;border:1px solid #c8bbab;padding:16px;border-radius:18px;cursor:pointer;background:#fffdf9;margin:0}
#visit-dialog input[type=checkbox]{width:22px;height:22px;accent-color:#8b704c;flex-shrink:0}
#visit-dialog .visit-choice:has(input:checked){background:#f1e8d7;border-color:#8b704c}
.visit-choice strong{font-size:18px}.visit-description,.visit-places{display:block;margin-top:12px;font-weight:400;line-height:1.65}
#visit-dialog label:has(>input[type=checkbox]){display:flex;gap:12px;align-items:flex-start}
#visit-dialog ul{padding-left:22px;line-height:1.8}
#visit-error{color:#a02920;font-weight:600}

