/* A compact invitation, without a full-width overlay. */
.inquiry-dock[hidden] { display:none!important; }
body .inquiry-dock {
 position:fixed; z-index:35; right:max(24px,env(safe-area-inset-right)); bottom:calc(20px + env(safe-area-inset-bottom));
 display:flex; align-items:center; gap:14px; max-width:calc(100% - 32px); padding:7px 7px 7px 18px;
 background:#f4f2ea; color:#22231f; border:1px solid #d2cec3; border-radius:12px;
 box-shadow:0 5px 22px #161b1626; visibility:hidden; opacity:0; pointer-events:none;
 font:500 .9375rem/1.3 var(--body);
}
body .inquiry-dock.is-visible { visibility:visible; opacity:1; pointer-events:auto; }
.inquiry-dock-context { display:flex; align-items:center; gap:10px; max-width:23ch; }
.inquiry-dock-context .nav-season-bow { width:28px; height:28px; flex:none; color:#b53213; fill:none; stroke:currentColor; stroke-width:1.5; }
body .inquiry-dock-action {
 display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:46px; min-width:0;
 padding:12px 16px; background:#d33f18; color:#fff; border:0; border-radius:7px;
 font:600 .9375rem/1.3 var(--body); text-decoration:none;
}
body .inquiry-dock-action:hover { background:#b53213; color:#fff; }
.inquiry-dock-action > svg { width:20px; height:20px; flex:none; }
.inquiry-dock-label { display:grid; gap:3px; }
.inquiry-dock-label small { display:none; font-size:.8125rem; line-height:1.25; font-weight:400; }
body .inquiry-dock-dismiss { display:grid; place-items:center; flex:none; width:36px; height:44px; padding:0; color:#56594f; background:none; border:0; border-radius:6px; cursor:pointer; }
.inquiry-dock-dismiss svg { width:18px; height:18px; }
body .inquiry-dock-dismiss:hover { background:#e4e1d7; color:#22231f; }
body .inquiry-dock :is(a,button):focus-visible { outline:3px solid #a93618; outline-offset:3px; }
@media(max-width:767px) {
 body .inquiry-dock { right:max(12px,env(safe-area-inset-right)); bottom:calc(12px + env(safe-area-inset-bottom)); gap:3px; padding:5px; max-width:min(340px,calc(100% - 24px)); border-radius:11px; }
 .inquiry-dock-context { display:none; }
 body .inquiry-dock-action { flex:1 1 auto; min-height:58px; padding:9px 14px; gap:24px; }
 .inquiry-dock-label small { display:block; }
 body .inquiry-dock-dismiss { width:36px; height:48px; }
}
html[data-studio-large-type] body .inquiry-dock { max-width:calc(100% - 24px); padding:5px; gap:4px; right:12px; }
html[data-studio-large-type] .inquiry-dock-context { display:none; }
html[data-studio-large-type] body .inquiry-dock-action { font-size:.75rem; padding:10px 12px; gap:12px; }
html[data-studio-large-type] .inquiry-dock-label small { display:none; }
@media(prefers-reduced-motion:no-preference) {
 .inquiry-dock-action { transition:background-color .16s ease; }
}
@media print { body .inquiry-dock { display:none; } }

/* The Christmas visit is a full-width section before the enquiry. */
.page-christmas .christmas-visit { padding-block:clamp(40px,5vw,76px); }
.page-christmas .christmas-visit .immersive-heading { align-items:end; margin-bottom:24px; }
.page-christmas .christmas-visit .immersive-heading h2 { max-width:22ch; }
.page-christmas .christmas-visit .vt-launch { height:clamp(440px,44vw,660px); }
.page-christmas .christmas-visit .vt-frame { border-radius:8px; }
.page-christmas .christmas-visit .vt-playing .vt-frame { min-height:clamp(460px,46vw,700px); }
.page-christmas .christmas-visit .vt-inline[open] { height:clamp(460px,46vw,700px); }
.page-christmas .christmas-visit .xmas-tour-faq { grid-template-columns:minmax(230px,.65fr) minmax(0,1.35fr); padding-block:32px 0; }
.page-christmas .christmas-visit .xmas-faq-intro h3 { font:600 clamp(22px,2.1vw,30px)/1.25 var(--body); margin:16px 0 0; max-width:20ch; }
.page-christmas .christmas-visit .xmas-faq summary { padding-block:16px; }

/* Existing field contracts and validation remain intact; only order and presentation change. */
.page-christmas .xmas-inquiry #inquiry-title { max-width:13ch; text-wrap:balance; }
.page-christmas .xmas-request-options { margin:0 0 20px; border:1px solid #d5d2c9; border-radius:6px; background:#f4f2ea; color:#22231f; }
.page-christmas .xmas-request-options > summary { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; padding:10px 12px; font:500 .9375rem/1.4 var(--body); cursor:pointer; list-style:none; }
.page-christmas .xmas-request-options > summary::-webkit-details-marker { display:none; }
.page-christmas .xmas-request-options > summary::after { content:'+'; flex:none; font-size:20px; }
.page-christmas .xmas-request-options[open] > summary::after { content:'−'; }
.page-christmas #inquiry-form[data-active-step] .xmas-request-options .form-intent { display:grid; margin:0; padding:0 12px 12px; border:0; }
.page-christmas .xmas-request-options .form-intent > label { font-size:.875rem; }
.page-christmas .xmas-request-options select { background:#fff; }
.page-christmas #inquiry-form .xmas-event-choice { margin-top:4px; }
.page-christmas #inquiry-form .xmas-event-choice label { font-size:.9375rem; }
.page-christmas #inquiry-form .xmas-event-choice select { min-height:44px; }
.page-christmas #inquiry-form .form-progress { margin-bottom:16px; }
.page-christmas #inquiry-form .xmas-form-context { margin-bottom:14px; }
@media(min-width:768px) {
 .page-christmas #inquiry-form [data-step="2"] { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
}
@media(max-width:767px) {
 .page-christmas .christmas-visit { padding-block:38px; }
 .page-christmas .christmas-visit .vt-launch { height:clamp(350px,58svh,500px); }
 .page-christmas .christmas-visit .vt-playing .vt-frame { min-height:520px; }
 .page-christmas .christmas-visit .vt-inline[open] { height:520px; }
 .page-christmas .christmas-visit .xmas-tour-faq { grid-template-columns:1fr; gap:18px; padding-top:20px; }
 .page-christmas .christmas-visit .xmas-faq-intro h3 { max-width:none; margin:0; }
 .page-christmas .xmas-inquiry #inquiry-title { max-width:18ch; }
 .page-christmas .xmas-request-options { margin-bottom:16px; }
}
html[data-studio-large-type] .page-christmas .christmas-visit .xmas-tour-faq { grid-template-columns:1fr; }

/* Persistent access, with space to reach the final content underneath it. */
.has-persistent-inquiry { scroll-padding-bottom:calc(100px + env(safe-area-inset-bottom)); }
.has-persistent-inquiry body { padding-bottom:calc(88px + env(safe-area-inset-bottom)); }
body .inquiry-dock { padding-right:7px; }
body .inquiry-dock-action { min-height:50px; }
.page-christmas .xmas-after-inquiry { padding-block:clamp(36px,4vw,60px); grid-template-columns:minmax(230px,.65fr) minmax(0,1.35fr); }
.page-christmas .xmas-after-inquiry .xmas-faq-intro h2 { font:600 clamp(22px,2.1vw,30px)/1.25 var(--body); margin:14px 0 10px; max-width:20ch; text-transform:none; }
.page-christmas .xmas-after-inquiry summary { padding-block:16px; }
.page-christmas .christmas-visit { padding-bottom:clamp(26px,3vw,44px); }

/* Comfortable fields and a calm hierarchy, across every commercial form. */
.multipage #inquiry-form { border-radius:12px; border:1px solid #d7d3c9; background:#fff; color:#22231f; }
.multipage #inquiry-form .field { gap:8px; }
.multipage #inquiry-form .field > label { font-size:1rem; line-height:1.4; font-weight:600; color:#292a25; }
.multipage #inquiry-form :is(input:not([type=checkbox]):not([type=hidden]),select,textarea) {
 min-height:52px; padding:13px 14px; font-size:max(17px,1.0625rem); line-height:1.4;
 border:1px solid #b7b6ae; border-radius:8px; background-color:#fff; color:#22231f;
}
.multipage #inquiry-form textarea { min-height:116px; }
.multipage #inquiry-form :is(input,select,textarea):focus-visible { outline:2px solid #ab3515; outline-offset:2px; }
.multipage #inquiry-form :is(input,select,textarea)[aria-invalid="true"] { border-color:#ad241a; }
.multipage #inquiry-form .form-progress { gap:18px; margin-bottom:20px; }
.multipage #inquiry-form .form-progress span { font-size:.875rem; line-height:1.4; padding-bottom:10px; }
.multipage #inquiry-form .checkbox-label { font-size:.9375rem; gap:10px; }
.multipage #inquiry-form :is([data-next],[type=submit]) { min-height:54px; font-size:1.0625rem; border-radius:8px; }
.multipage #inquiry-form .field-help { font-size:.875rem; }
#inquiry-dialog { border-radius:14px; }
#inquiry-dialog .inquiry-dialog-heading { background:#f4f2ea; color:#22231f; border-bottom:1px solid #d7d3c9; padding:12px 22px; }
#inquiry-dialog .inquiry-dialog-heading h2 { font:600 1.25rem/1.3 var(--body); color:#22231f; text-transform:none; }
#inquiry-dialog [data-inquiry-close] { color:#22231f; background:#e7e4da; border-radius:50%; }
#inquiry-dialog [data-inquiry-close]:hover { color:#22231f; background:#dcd8ce; }
#inquiry-dialog [data-inquiry-close]:focus-visible { outline:2px solid #ab3515; outline-offset:2px; }
#inquiry-dialog #inquiry-form { border:0; border-radius:0; }
#inquiry-dialog #inquiry-form > .launch-inquiry-body { padding:20px 22px; }
#inquiry-dialog #inquiry-form > :is(.launch-inquiry-actions,.launch-inquiry-next) { padding:12px 22px max(12px,env(safe-area-inset-bottom)); background:#fff; }
@media(max-width:767px) {
 body .inquiry-dock { padding:5px; }
 body .inquiry-dock-action { min-height:58px; padding:9px 16px; }
 .multipage #disponibilitate > .inquiry-layout { width:calc(100% - 32px); margin-inline:auto; padding-inline:0; gap:24px; }
 .multipage #disponibilitate #inquiry-form { padding:20px 18px; }
 .multipage #inquiry-form fieldset { gap:16px; }
 .multipage #inquiry-form .form-intent { margin-bottom:18px; }
 .multipage #inquiry-form .form-intent > label { font-size:.9375rem; }
 .multipage #inquiry-form .compact-brief [data-summary-type] { font-size:.9375rem; }
 #inquiry-dialog { border-radius:0; }
 #inquiry-dialog .inquiry-dialog-heading { padding:12px 20px; }
 #inquiry-dialog #inquiry-form > .launch-inquiry-body { padding:18px 20px; }
 #inquiry-dialog #inquiry-form > :is(.launch-inquiry-actions,.launch-inquiry-next) { padding:12px 20px max(12px,env(safe-area-inset-bottom)); }
 #inquiry-dialog .xmas-form-context { display:none; }
 .page-christmas .xmas-contact-detail { display:none!important; }
 .page-christmas .xmas-inquiry .inquiry-copy { padding-bottom:0; }
 .page-christmas .xmas-after-inquiry { grid-template-columns:minmax(0,1fr); gap:20px; padding-block:34px; }
 .page-christmas .xmas-after-inquiry .xmas-faq-intro h2 { max-width:none; margin:0 0 10px; }
}
html[data-studio-large-type] .page-christmas .xmas-after-inquiry { grid-template-columns:minmax(0,1fr); }
@media(max-height:500px) {
 body .inquiry-dock-context,body .inquiry-dock-label small { display:none; }
 body .inquiry-dock-action { min-height:44px; padding-block:9px; }
 #inquiry-dialog .inquiry-dialog-heading { padding-block:6px; }
 #inquiry-dialog #inquiry-form > :is(.launch-inquiry-actions,.launch-inquiry-next) { padding-block:6px; }
}
