/* One invitation, one quiet control block. No booking behaviour changes. */
.card-price-grid .per-person-label{display:block;font:10px/1.2 Exo,Arial,sans-serif;white-space:nowrap;margin-top:2px}
.c .closing-screen #buchungsdemo.planning-stage{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(360px,1fr);grid-template-rows:auto auto auto;column-gap:6vw;row-gap:0;align-content:center;align-items:center;justify-content:normal;padding:76px max(32px,calc((100vw - 1160px)/2)) 28px!important}
.c #buchungsdemo.planning-stage>.stage-chapter{grid-column:1;grid-row:1;margin:0 0 16px!important}
.c #buchungsdemo.planning-stage>h2{grid-column:1;grid-row:2;font-size:clamp(58px,6.3vw,88px)!important}
.c #buchungsdemo.planning-stage>p{grid-column:1;grid-row:3;margin:20px 0 0!important}
.c #buchungsdemo #visit-planner{grid-column:2;grid-row:1/4;width:100%!important;max-width:480px;padding:28px!important;box-sizing:border-box;background:#f6f3ec!important;border:1px solid #d7d7cc!important;border-radius:8px;align-self:center;justify-self:end}
.c #buchungsdemo #visit-planner>.calm-ui{background:transparent}
.c #buchungsdemo .calm-entry .entry-people{margin-bottom:22px!important}
.c #gruppen.team-stage .school-offer[open] summary{font:26px/1.2 League,Arial,sans-serif;min-height:50px;padding:14px 0}
.c #gruppen.team-stage .school-expanded{padding:20px 24px;background:#ffffff06;border-left:2px solid #b0bbae;gap:26px;margin-bottom:12px}
.c #gruppen.team-stage .school-expanded .school-facts{gap:36px}
.c #gruppen.team-stage .school-expanded .school-facts dt{font:36px/1.05 League,Arial,sans-serif}
.c #gruppen.team-stage .school-expanded .school-facts dd{font:13px/1.4 Exo,Arial,sans-serif;color:#d1d6cd;margin-top:6px}
.c #gruppen.team-stage .school-expanded .school-booking{font:14px/1.4 Exo;padding:13px 18px}
@media(max-width:760px){
 .c .closing-screen #buchungsdemo.planning-stage{display:flex!important;flex-direction:column;align-items:stretch;justify-content:center!important;padding:64px 20px 18px!important;gap:0}
 .c #buchungsdemo.planning-stage>.stage-chapter{font-size:9px!important;margin:0 0 10px!important}
 .c #buchungsdemo.planning-stage>h2{font-size:48px!important;line-height:1.02!important}
 .c #buchungsdemo.planning-stage>p{font-size:14px;line-height:1.5;margin:12px 0 18px!important}
 .c #buchungsdemo #visit-planner{width:100%!important;max-width:none;padding:20px 18px!important;flex:none}
 .c #buchungsdemo .calm-entry .entry-people{margin-bottom:16px!important}
 .c #buchungsdemo .calm-entry .entry-people output{font-size:44px}
 .c #gruppen.team-stage .school-expanded{padding:18px 16px;gap:20px}
 .c #gruppen.team-stage .school-expanded .school-facts{grid-template-columns:repeat(3,1fr);gap:14px}
 .c #gruppen.team-stage .school-expanded .school-facts dt{font-size:30px}
 .c #gruppen.team-stage .school-expanded .school-facts dd{font-size:12px}
}
@media(max-width:760px) and (max-height:700px){
 .c #buchungsdemo.planning-stage>h2{font-size:42px!important}
 .c #buchungsdemo.planning-stage>p{margin:10px 0 14px!important}
 .c #buchungsdemo #visit-planner{padding:18px 16px!important}
}

.c #gruppen.team-stage .school-offer>.school-static-title{font:26px/1.2 League,Arial,sans-serif;min-height:50px;box-sizing:border-box;padding:14px 0;margin:0;cursor:default}
.c #gruppen.team-stage .school-offer>summary[hidden],.c #gruppen.team-stage .school-offer>.school-static-title[hidden]{display:none!important}

/* Align paper with its existing right-column caption, desktop only. */
@media(min-width:761px){.c #gutscheine .gift-paper{margin-inline:auto}}

/* Half only the first95svh chapter; the remaining95svh chapters are unchanged. */
.closing-journey:not(.closing-flow){height:calc(432.5svh + var(--planning-arrival-distance, 0px))}
.closing-screen .closing-outro:after{content:'Die Vierte Wand durchbrechen und euren Besuch planen'}
.c #gruppen.team-stage .team-entry-slider{margin:16px 0 18px;gap:8px;position:relative;inset:auto;flex:none}
.c #gruppen.team-stage .group-intro{margin-bottom:0}
.calm-ui .children-dialog{inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0;width:min(420px,calc(100vw - 32px));height:fit-content;max-height:calc(100svh - 32px);padding:24px;border:0;border-radius:8px;overflow:auto;box-sizing:border-box}
.calm-ui .children-dialog .iconbutton{width:44px;height:44px;flex:none;display:grid;place-items:center;border:0;background:transparent;font:28px/1 Arial,sans-serif}
.calm-ui .children-dialog .bar{padding:0 0 16px;background:none;position:static;border:0}
.calm-ui .children-dialog h2{font-size:30px}.calm-ui .children-dialog p{font:14px/1.5 Exo;margin:0 0 24px;color:var(--muted)}
.calm-ui .children-dialog .child-row{display:flex;justify-content:space-between;align-items:center;margin:0 0 24px;gap:20px;border:0}
.calm-ui .children-dialog .child-row>div:first-child{display:none}.calm-ui .children-dialog .stepper{margin:auto;display:flex;align-items:center;gap:28px}.calm-ui .children-dialog output{font-size:40px;min-width:44px;text-align:center}.calm-ui .children-dialog .children-done{width:100%}
#voucher-form .vf-more-toggle{flex:0 0 44px;padding:8px;font-size:22px;line-height:1}
#voucher-form .vf-more-values{margin-top:8px}
#voucher-form .vf-recipient-field{margin:12px 0}
#voucher-form .vf-recipient-field>label{font-weight:700;margin-top:0}
#voucher-form .vf-fulfilment[hidden]{display:none!important}
#voucher-form .vf-fulfilment>h4{display:none}
@media(max-width:760px){.c #gruppen.team-stage .team-entry-slider{margin:18px 0 22px;gap:7px}#voucher-form .vf-presets{gap:6px}#voucher-form .vf-presets button{padding:9px 7px}#voucher-form .vf-contact-grid{grid-template-columns:1fr 1fr;gap:10px}#voucher-form .vf-recipient-field{margin:10px 0}#voucher-form .vf-next{margin-top:12px}}

/* Scoped to a dialog's restored target, never disables general keyboard focus. */
.c [data-dialog-return="pointer"]:focus{outline:none!important}
.c [data-dialog-return="keyboard"]:focus{outline:2px solid currentColor;outline-offset:4px}
.journey-track:focus-visible,.vr-strip:focus-visible{outline:2px solid #eeeae2;outline-offset:-2px}
/* One complete control group under the introduction. */
.c #gruppen.team-stage .group-intro{display:block;margin:0}
.c #gruppen.team-stage .team-entry{width:100%;max-width:740px;flex:none;margin:24px 0 26px;grid-template-columns:minmax(0,1fr) 80px auto;gap:8px 16px}
.c #gruppen.team-stage .team-entry .team-entry-slider{margin:4px 0 0;gap:5px}
.c #gruppen.team-stage .team-entry>input{height:48px;min-height:48px;border:1px solid #ffffff35;border-radius:4px;background:#ffffff08;color:#f2f0e8;text-align:center}
.c #gruppen.team-stage .team-entry>.btn{min-height:48px}
@media(max-width:760px){
 .c #gruppen.team-stage .team-entry{margin:22px 0 24px;grid-template-columns:minmax(0,1fr) 65px auto;gap:8px 12px}
}
@media(max-height:750px){
 .c #gruppen.team-stage .team-entry{margin:16px 0 18px;gap:6px 12px}
 .c #gruppen.team-stage .team-entry .team-entry-slider{margin-top:2px;gap:4px}
}
@media(min-width:761px) and (max-height:750px){
 .c .closing-screen #gruppen.team-stage{padding-bottom:8px}
 .c #gruppen.team-stage .group-intro h2 br{display:none}
 .c #gruppen.team-stage .team-size-line{margin-top:8px}
}
.c #gutscheine #voucher-form .vf-buyer{margin:18px 0 4px;padding:14px 16px 16px;background:#eee9df;border:0;border-radius:6px}
.c #gutscheine #voucher-form .vf-buyer legend{float:left;width:100%;padding:0;margin:0 0 10px;font-size:14px}
.c #gutscheine #voucher-form .vf-contact-grid{clear:both}
.vf-preview-mini{display:none}
.c #gutscheine .vf-preview-dialog{width:min(480px,calc(100vw - 28px));max-height:calc(100dvh - 32px);padding:18px;border:0;border-radius:8px;background:#f5f1e8;color:#25221e;overflow:auto;box-shadow:0 20px 80px #0005}
.vf-preview-dialog::backdrop{background:#17141199}
.c #gutscheine .vf-preview-close{display:block;margin:0 0 16px auto;background:transparent;border:0;padding:10px;min-height:44px;min-width:44px;font:14px Exo, sans-serif;color:#111;-webkit-text-fill-color:#111;box-shadow:none;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.c #gutscheine .vf-preview-close::before,.c #gutscheine .vf-preview-close::after{content:none}
.c #gutscheine .vf-preview-dialog[data-input-mode="pointer"] .vf-preview-close:focus{outline:none;box-shadow:none}
.c #gutscheine .vf-preview-dialog[data-input-mode="keyboard"] .vf-preview-close:focus-visible{outline:2px solid #111;outline-offset:3px}
.vf-preview-close:focus:not(:focus-visible){outline:none}
.vf-preview-close:focus-visible,.vf-preview-mini:focus-visible{outline:2px solid #a03d32;outline-offset:3px}
.c #gutscheine .vf-preview-dialog .gift-paper{width:100%;max-width:none;min-height:0;box-sizing:border-box;margin:0;transform:none}
@media(max-width:760px),(max-width:1000px) and (max-height:500px){
 .c #gutscheine .gift-experience>.gift-preview{display:none!important}
 .c #gutscheine .vf-layout{display:grid;grid-template-columns:minmax(0,1fr) 112px;grid-template-rows:auto auto minmax(0,1fr);column-gap:16px;align-content:start}
 .c #gutscheine .vf-layout>.stage-chapter{grid-column:1;grid-row:1;align-self:end}
 .c #gutscheine .vf-layout>h2{grid-column:1;grid-row:2;align-self:start;margin-bottom:16px}
 .c #gutscheine .vf-layout>p{display:none}
 .c #gutscheine .vf-layout>#voucher-form{grid-column:1/-1;grid-row:3;min-width:0}
 .c #gutscheine .vf-layout>.vf-preview-mini{display:flex;grid-column:2;grid-row:1/3;align-self:center;justify-self:center;align-items:center;justify-content:center;width:112px;min-height:120px;margin:0 0 10px;padding:6px;border:0;background:transparent;color:inherit;cursor:pointer}
 .vf-mini-picture{position:relative;display:block;width:var(--vf-mini-width,84px);height:104px;overflow:hidden;pointer-events:none;transform:rotate(-5deg);box-shadow:0 3px 9px #362b2018}
 .c #gutscheine .vf-mini-picture .gift-paper{position:absolute;left:0;top:0;width:390px;max-width:none;min-height:0;box-sizing:border-box;margin:0;padding:28px;transform:scale(var(--vf-mini-scale,.16));transform-origin:top left}
 .vf-preview-mini.vf-pointer-return{outline:none!important}
 .c #gutscheine #voucher-form .vf-buyer{margin-top:14px;padding:12px}
}
.closing-nav button[data-chapter="0"]{display:none}
/* Match both existing conditions hiding the main navigation links. */
@media(max-width:850px),(max-width:1000px) and (max-height:500px){.closing-nav button[data-chapter="0"]{display:block}}

/* Keep preview edge scrolling inside its own scroll surface. */
.c #gutscheine .vf-preview-dialog{overscroll-behavior:contain}
