.booking .steps{margin-top:calc(var(--spacing) * 6);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.booking .stp{align-items:center;gap:calc(var(--spacing) * 2.5);font-size:var(--text-xs);color:var(--color-ink-soft);font-weight:600;display:flex}.booking .stp .dot{border:2px solid var(--color-line);width:26px;height:26px;font-size:var(--text-xs);background:var(--color-paper);border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.booking .stp.active .dot{border-color:var(--color-signal);background:var(--color-signal);color:var(--color-paper)}.booking .stp.done .dot{border-color:var(--color-sage-deep);background:var(--color-sage-deep);color:var(--color-paper)}.booking .stp.active{color:var(--color-ink)}.booking .stp .lbl{display:none}@media (width>=621px){.booking .stp .lbl{display:inline}}.booking .stpline{background:var(--color-line);width:26px;height:2px;margin:0 calc(var(--spacing) * 2)}@media (width>=621px){.booking .stpline{width:40px}}.booking .layout{gap:calc(var(--spacing) * 5);grid-template-columns:1fr 280px;align-items:start;display:grid}@media (width<=760px){.booking .layout{grid-template-columns:1fr;gap:0}.booking .side{position:static}}.booking .card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-card-sm);box-shadow:var(--shadow-card);padding:calc(var(--spacing) * 8) calc(var(--spacing) * 7);min-width:0}.booking .side{gap:calc(var(--spacing) * 3.5);flex-direction:column;display:flex;position:sticky;top:20px}.booking .sumcard{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-card-sm);padding:calc(var(--spacing) * 6)}.booking .sumcard:empty{display:none}.booking .sumcard .ort{gap:calc(var(--spacing) * .5);font-size:var(--text-sm);color:var(--color-ink-soft);margin-bottom:calc(var(--spacing) * 5);padding-bottom:calc(var(--spacing) * 4);border-bottom:1px dashed var(--color-line);flex-direction:column;line-height:1.5;display:flex}.booking .sumcard .ort b{color:var(--color-ink);font-weight:600}.booking .sumcard .ort-note{font-size:var(--text-xs);color:var(--color-ink-faint);margin-top:calc(var(--spacing) * 1)}.booking .sumcard .ort-route{margin-top:calc(var(--spacing) * 2);font-size:var(--text-sm);color:var(--color-signal-deep);text-underline-offset:3px;align-self:start;font-weight:600;text-decoration:underline}.booking .sumcard .ort-route:hover{color:var(--color-signal)}.booking .sk-wrap{display:none}html.js .booking .sk-wrap{display:block}.booking .sk{background:linear-gradient(90deg, var(--color-slate-tint) 25%, var(--color-line) 37%, var(--color-slate-tint) 63%);border-radius:var(--radius-sm);background-size:400% 100%;animation:1.5s ease-in-out infinite sk-glanz}@keyframes sk-glanz{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.booking .sk{background:var(--color-slate-tint);animation:none}}.booking #screen:has(.sk-wrap) .sub{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.booking .sk-day{border-radius:var(--radius-md);height:82px}.booking .sk-mehr{width:190px;height:34px;margin-bottom:22px}.booking .sk-lbl{width:62%;height:21px;margin-bottom:10px}.booking .sk-grp{border-radius:6px;width:26%;height:12px;margin:4px 0 8px}.booking .sk-grp2{margin-top:16px}.booking .sk-slot{height:46px}.booking .sk-hint{border-radius:6px;width:80%;height:35px;margin-top:6px}@media (width>=761px){.booking .sk-hint{height:21px}}.booking .sk-st{border-radius:6px;width:45%;height:11px;margin-bottom:19px}.booking .sk-h3{width:62%;height:19px;margin-bottom:4px}.booking .sk-desc{height:34px;margin-bottom:20px}.booking .sk-ort{height:116px;margin-bottom:calc(var(--spacing) * 5);border-radius:var(--radius-sm)}@media (width>=761px){.booking .sk-ort{height:137px}.booking .sk-wrap .sk-slots2{display:none}}.booking .sk-li{border-radius:6px;height:14px;margin-bottom:24px}.booking .sk-total{width:70%;height:24px;margin-bottom:26px}.booking .sk-note{border-radius:10px;height:70px;margin-top:12px}.booking .sumcard .st{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-signal);margin-bottom:calc(var(--spacing) * 3);font-weight:700}.booking .sumcard h3{font-size:var(--text-lg);margin-bottom:calc(var(--spacing) * 1)}.booking .sumcard .desc{font-size:var(--text-sm);color:var(--color-ink-soft);margin-bottom:calc(var(--spacing) * 4);line-height:1.45}.booking .sumcard .li{justify-content:space-between;gap:calc(var(--spacing) * 2.5);font-size:var(--text-sm);padding:calc(var(--spacing) * 2) 0;border-bottom:1px dashed var(--color-line);color:var(--color-ink-soft);display:flex}.booking .sumcard .li.ust{font-size:var(--text-xs);color:var(--color-ink-faint)}.booking .sumcard .li.total{padding-top:calc(var(--spacing) * 3);font-size:var(--text-base);color:var(--color-ink);border-bottom:none;font-weight:600}.booking .sumcard .li.total .v{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-signal)}.booking .sumcard .vat{font-size:var(--text-xs);color:var(--color-ink-soft);text-align:right;margin-top:calc(var(--spacing) * .5)}.booking .sumcard .note{font-size:var(--text-xs);color:var(--color-sage-deep);margin-top:calc(var(--spacing) * 3);background:var(--color-sage-tint);border-radius:var(--radius-sm);padding:calc(var(--spacing) * 2.5) calc(var(--spacing) * 3);line-height:1.4}.booking .sumcard .picked{font-size:var(--text-sm);color:var(--color-ink);background:var(--color-paper-warm);border:1px solid var(--color-line);border-radius:var(--radius-sm);padding:calc(var(--spacing) * 2.5) calc(var(--spacing) * 3);margin-bottom:calc(var(--spacing) * 3.5);gap:calc(var(--spacing) * .5);flex-direction:column;display:flex}.booking .resbox{gap:calc(var(--spacing) * .5);background:var(--color-signal-tint);border-radius:var(--radius-md);padding:calc(var(--spacing) * 3) calc(var(--spacing) * 3.5);margin-bottom:calc(var(--spacing) * 4);font-size:var(--text-sm);flex-direction:column;line-height:1.45;display:flex}.booking .resbox b{color:var(--color-ink);font-weight:600}.booking .resbox .cd{color:var(--color-signal-deep)}.booking .step-meta{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-signal);margin-bottom:calc(var(--spacing) * 3);font-weight:700}.booking h2.q{font-size:var(--text-xl);margin-bottom:calc(var(--spacing) * 3);line-height:1.2}@media (width>=640px){.booking h2.q{font-size:var(--text-2xl)}}.booking .card .sub{font-size:var(--text-base);color:var(--color-ink-soft);margin:0 0 calc(var(--spacing) * 6);max-width:none;line-height:1.55}.booking .notice{background:var(--color-gold-tint);border:1px solid var(--color-gold);color:var(--color-ink);font-size:var(--text-sm);border-radius:var(--radius-md);padding:calc(var(--spacing) * 3) calc(var(--spacing) * 3.5);margin-bottom:calc(var(--spacing) * 5);line-height:1.45}.booking .hint{font-size:var(--text-xs);color:var(--color-ink-soft);margin-top:calc(var(--spacing) * 5)}.booking .days{gap:calc(var(--spacing) * 2) calc(var(--spacing) * 1);margin-bottom:calc(var(--spacing) * 3.5);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.booking .day{text-align:center;background:var(--color-paper);border:1.5px solid var(--color-line);border-radius:var(--radius-md);min-width:0;padding:calc(var(--spacing) * 2.5) calc(var(--spacing) * .5);cursor:pointer;color:var(--color-ink);flex-direction:column;font-family:inherit;transition:all .15s;display:flex}.booking .day:hover,.booking .day.sel{border-color:var(--color-signal);background:var(--color-paper)}.booking .day:focus-visible,.booking .slot:focus-visible,.booking .mehr:focus-visible{outline:2px solid var(--color-signal);outline-offset:2px}.booking .day .dow{font-size:var(--text-2xs);color:var(--color-ink-soft);text-transform:uppercase;letter-spacing:.04em}.booking .day.sel .dow{color:var(--color-signal)}.booking .day .dnum{font-family:var(--font-display);font-size:var(--text-xl);margin:calc(var(--spacing) * .25) 0;font-weight:600;line-height:1.15}.booking .day .mon{font-size:var(--text-2xs);color:var(--color-ink-soft)}.booking .day.leer{opacity:.38;cursor:not-allowed}.booking .day.leer:hover{border-color:var(--color-line);background:var(--color-paper)}.booking .mehr{margin:0 auto calc(var(--spacing) * 6);font-family:inherit;font-size:var(--text-sm);color:var(--color-ink-soft);text-underline-offset:3px;cursor:pointer;padding:calc(var(--spacing) * 1.5) calc(var(--spacing) * 2.5);border-radius:var(--radius-sm);background:0 0;border:none;text-decoration:underline;display:block}.booking .mehr:hover{color:var(--color-signal)}.booking .mehr[disabled]{opacity:.5;cursor:progress}.booking .slotlbl{font-size:var(--text-xs);color:var(--color-ink-soft);margin-bottom:calc(var(--spacing) * 2.5);font-weight:600}.booking h3.grp{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-soft);margin:calc(var(--spacing) * 4) 0 calc(var(--spacing) * 2);font-weight:700}.booking h3.grp:first-of-type{margin-top:calc(var(--spacing) * 1)}.booking .slots{gap:calc(var(--spacing) * 2.5);grid-template-columns:repeat(auto-fill,minmax(84px,1fr));display:grid}.booking .slot{background:var(--color-paper);border:1.5px solid var(--color-line);border-radius:var(--radius-sm);padding:calc(var(--spacing) * 2) calc(var(--spacing) * 2);text-align:center;cursor:pointer;font-family:inherit;font-size:var(--text-base);color:var(--color-ink);font-weight:600;transition:all .15s}.booking .slot:hover{border-color:var(--color-signal);background:var(--color-paper)}.booking .slot.busy{opacity:.5;cursor:progress}.booking .feld{margin-bottom:calc(var(--spacing) * 4)}.booking .feld label{font-size:var(--text-sm);color:var(--color-ink-soft);margin-bottom:calc(var(--spacing) * 1.5);font-weight:600;display:block}.booking .feld input{width:100%;font-family:inherit;font-size:var(--text-base);color:var(--color-ink);background:var(--color-paper);border:1.5px solid var(--color-line);border-radius:var(--radius-md);padding:calc(var(--spacing) * 3) calc(var(--spacing) * 3.5);transition:all .15s}.booking .feld input:focus-visible{border-color:var(--color-signal);background:var(--color-paper);outline:none}.booking .feld input.falsch{border-color:var(--color-signal-deep);background:var(--color-signal-tint)}.booking .fhint{font-size:var(--text-xs);color:var(--color-ink-soft);margin-top:calc(var(--spacing) * 1.5);line-height:1.4}.booking .ferr{font-size:var(--text-xs);color:var(--color-signal-deep);line-height:1.4}.booking .ferr:empty{display:none}.booking .feld .ferr{margin-top:calc(var(--spacing) * 1.5)}.booking .checkzeile{margin-top:calc(var(--spacing) * 3.5)}.booking .check{gap:calc(var(--spacing) * 2.5);font-size:var(--text-sm);color:var(--color-ink-soft);cursor:pointer;align-items:flex-start;line-height:1.5;display:flex}.booking .check input{width:20px;height:20px;margin-top:calc(var(--spacing) * .25);accent-color:var(--color-signal);cursor:pointer;flex-shrink:0}.booking .checkzeile .ferr{margin:calc(var(--spacing) * 1.5) 0 0 calc(var(--spacing) * 8)}.booking .pruefen{border:1px solid var(--color-line);border-radius:var(--radius-md);padding:calc(var(--spacing) * 1) calc(var(--spacing) * 4);background:var(--color-paper)}.booking .pruefen .z{justify-content:space-between;gap:calc(var(--spacing) * 3.5);padding:calc(var(--spacing) * 2.5) 0;border-bottom:1px dashed var(--color-line);font-size:var(--text-sm);display:flex}.booking .pruefen .z:last-child{border-bottom:none}.booking .pruefen .k{color:var(--color-ink-soft);flex-shrink:0}.booking .pruefen .v{color:var(--color-ink);text-align:right;overflow-wrap:anywhere}.booking .zahlarten{font-size:var(--text-sm);color:var(--color-ink-soft);margin-top:calc(var(--spacing) * 4)}.booking .card .hint{margin-top:calc(var(--spacing) * 1.5)}.booking .card .zahlweg{margin-top:calc(var(--spacing) * 7)}.booking .zahlweg+.nav{margin-top:calc(var(--spacing) * 2.5)}.booking .nav{margin-top:calc(var(--spacing) * 7);justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 3.5);display:flex}@media (width<=620px){.booking .nav{align-items:stretch;gap:calc(var(--spacing) * 2);flex-direction:column-reverse}.booking .nav .btn{width:100%}}.booking .btn[disabled]{opacity:.55;cursor:progress}.booking .back{color:var(--color-ink-soft);font-family:inherit;font-size:var(--text-sm);cursor:pointer;padding:calc(var(--spacing) * 2) calc(var(--spacing) * 1);background:0 0;border:none}.booking .back:hover{color:var(--color-ink)}.booking .ausweg{gap:calc(var(--spacing) * 3);flex-wrap:wrap;align-items:center;display:flex}.booking .ausweg .link{color:var(--color-signal);text-decoration:underline}.booking .ausweg-box{gap:calc(var(--spacing) * 3);margin-top:calc(var(--spacing) * 1.5);flex-wrap:wrap;align-items:center;display:flex}@media (width<=760px){main.booking{background:var(--color-paper)}.booking .card,.booking .sumcard{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.booking .side{border-top:1px solid var(--color-line);margin-top:calc(var(--spacing) * 8);padding-top:calc(var(--spacing) * 7)}}
