/* One question at a time, shared by online booking and workshop check-in. */
.question-card[hidden],.ci-question[hidden]{display:none!important}
.booking-studio{background:#080808!important;color:#fff!important;width:100%!important;max-width:none!important;padding:75px max(24px,calc((100% - 1240px)/2))!important}
.booking-studio h2,.booking-studio h3,.booking-studio strong{color:#fff!important}.booking-studio p{color:#bbb}.booking-studio .booking-promise{background:transparent;border-color:#333}.booking-studio .service-dock{border:0;box-shadow:none}.booking-studio .booking-intro{max-width:900px;margin:auto auto 40px}.booking-studio .booking-intro em{color:#ed1235}
.question-flow .question-deck{display:block;min-height:240px}.question-card,.ci-question{animation:question-enter .25s ease both}.question-card{padding:18px 0;outline:0}.question-card>label,.ci-question>label{display:flex!important;flex-direction:column!important;gap:18px!important;font-size:clamp(21px,3vw,29px)!important;line-height:1.3;font-weight:650}.question-card input,.question-card select,.question-card textarea,.ci-question input:not([type=checkbox]):not([type=radio]),.ci-question select,.ci-question textarea{width:100%;box-sizing:border-box;min-height:56px;font-size:18px!important;padding:16px!important;border-radius:12px;border:1px solid #555!important;background:#181818!important;color:#fff!important;line-height:1.5}.question-card small,.ci-question small{font-size:14px;font-weight:400;line-height:1.65;color:#bbb}.question-card>label.consent{display:flex!important;flex-direction:row!important;align-items:flex-start; font-size:14px!important;font-weight:400;gap:12px}.question-card .consent input{width:22px;min-height:22px;padding:0!important;flex-shrink:0}.question-card label select{appearance:auto}
.question-meter{scroll-margin-top:20px;color:#bbb;font-size:12px;margin:18px 0}.question-meter progress{display:block;width:100%;height:4px;margin-top:12px;accent-color:#e41432}.question-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #333;padding-top:22px}.question-controls small{font-size:11px;color:#aaa}.question-review h3{font-size:28px;color:#fff}.question-review-row{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #333;padding:14px 0}.question-review-row small,.question-review-row strong{display:block;white-space:pre-wrap;overflow-wrap:anywhere}.question-review-row strong{font-size:16px;margin-top:6px}.question-review-row button{border:0;background:none;color:#ff7186;text-decoration:underline;min-height:44px;font-size:12px;cursor:pointer}
.booking-calendar h3{color:#fff;font-size:25px}.calendar-nav{display:flex;align-items:center;justify-content:space-between;margin:22px 0;gap:12px}.calendar-nav button{width:44px;height:44px;border-radius:50%;background:#222;border:1px solid #555;color:#fff;font-size:27px;cursor:pointer}.calendar-nav strong{color:#fff;font-size:19px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.calendar-weekday{text-align:center;font-size:12px;color:#aaa;padding:9px 0}.calendar-day{position:relative;min-height:58px;padding:8px 2px;border:1px solid #444;background:#202020;border-radius:10px;color:#fff;font:600 17px Arial;cursor:pointer}.calendar-day:hover:not(:disabled){border-color:#e41432;background:#35111b}.calendar-day[aria-pressed=true]{background:#e41432;border-color:#e41432}.calendar-day:disabled{opacity:.4;cursor:default}.calendar-day.is-holiday:disabled{opacity:1;color:#ff6078;background:#291017;border-color:#662333}.calendar-day small{display:block;font:9px Arial;color:inherit;margin-top:5px}.calendar-holidays p{font-size:12px;color:#ff7186;margin:12px 0 0}.calendar-nav button:disabled{opacity:.3;cursor:default}.booking-time-grid{grid-template-columns:repeat(auto-fit,minmax(75px,1fr))!important;gap:10px!important}.booking-time-slot{min-height:48px!important}.question-card:focus-visible{outline:0}.booking-calendar button:focus-visible{outline:2px solid white;outline-offset:2px}
#intake .step>.eyebrow,#intake .step>h1,#intake .step>p:not(.muted){display:none}#intake .step[data-step="4"]>h1,#intake .step[data-step="4"]>p{display:block}#intake .ci-question{padding:24px 0;min-height:240px}#intake .ci-question .check{font-size:18px!important;display:flex!important;flex-direction:row!important}#intake .ci-question .check input{width:24px;height:24px;flex-shrink:0}#intake .ci-question .terms{margin:0}#intake .ci-question .speed-grid{grid-template-columns:1fr}#intake .ci-question .speed input{width:22px!important;min-height:22px!important;padding:0!important}#intake .ci-question .speed{min-height:70px}#intake .step[data-step="4"]{animation:question-enter .25s ease}
@keyframes question-enter{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:600px){.booking-studio{padding:48px 16px!important}.question-controls small{display:none}.calendar-grid{gap:4px}.calendar-day{min-height:49px;font-size:15px}.calendar-day small{font-size:8px}.calendar-nav strong{font-size:17px}.question-card>label,.ci-question>label{font-size:23px!important}.question-flow .question-deck{min-height:220px}}
@media(prefers-reduced-motion:reduce){.question-card,.ci-question,#intake .step[data-step="4"]{animation:none!important}}

/* Floating smoked-glass booking cards: no enclosing frame. */
.booking-studio .service-dock{position:relative;isolation:isolate;gap:26px;border:0!important;background:transparent!important;overflow:visible}
.booking-studio .service-dock:before{content:"";position:absolute;inset:8% 6%;z-index:-1;border-radius:50%;background:radial-gradient(ellipse at 16% 40%,#701c3338,transparent 60%),radial-gradient(ellipse at 86% 60%,#78899d24,transparent 60%);filter:blur(35px);pointer-events:none}
.booking-studio .service-dock .booking-panel{position:relative;border:1px solid #ffffff24!important;border-radius:24px!important;background:linear-gradient(135deg,#ffffff12,#ffffff03 65%),#131519d9!important;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:inset 0 1px 0 #ffffff16,0 18px 48px #0005!important;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.booking-studio .service-dock .booking-panel:before{content:"";position:absolute;inset:-100% -70%;background:linear-gradient(110deg,transparent 43%,#ffffff08 49%,transparent 55%);transform:translateX(-38%);animation:booking-glint 10s ease-in-out infinite;pointer-events:none}
.booking-studio .service-dock .booking-panel:last-child:before{animation-delay:2s}
.booking-studio .service-dock .booking-panel summary{padding:34px!important;min-height:320px}
.booking-studio .service-dock .booking-panel summary:hover{background:transparent!important}
.booking-studio .service-dock .booking-panel-icon{color:#e1e4e9!important}
.booking-studio .service-dock .booking-panel-toggle{border-color:#ffffff18}
.booking-studio .service-dock .booking-panel-toggle b{background:#ed123515;border:1px solid #ed123542;border-radius:50%;padding:10px}
@media(hover:hover){.booking-studio .service-dock .booking-panel:hover{transform:translateY(-5px);border-color:#ffffff48!important;box-shadow:inset 0 1px 0 #ffffff24,0 24px 60px #0007!important}}
@keyframes booking-glint{0%,25%{transform:translateX(-38%)}65%,100%{transform:translateX(38%)}}
#intake .consent-summary ul{padding-left:24px;margin:20px 0 28px;color:#d9dce2;line-height:1.65}#intake .consent-summary li{padding:8px 0}#intake .consent-summary .check{border-top:1px solid #ffffff26;padding-top:24px}
@media(max-width:700px){.booking-studio .service-dock{gap:18px}.booking-studio .service-dock .booking-panel summary{min-height:280px;padding:26px!important}}
@media(prefers-reduced-motion:reduce){.booking-studio .service-dock .booking-panel,.booking-studio .service-dock .booking-panel:before{animation:none!important;transition:none!important;transform:none!important}}

/* Breathing room below workshop photographs; grouped contact questions. */
.booking-studio{margin-top:clamp(48px,6vw,88px)!important}
.question-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.question-group label{display:flex!important;flex-direction:column;gap:10px;font-size:16px!important;font-weight:500!important;min-width:0}.question-group label[hidden]{display:none!important}.question-group label:has([name=company]),.question-group label:has([name=street]){grid-column:1/-1}.question-group input{width:100%;box-sizing:border-box}.question-card>h3{font-size:27px;margin:0 0 24px;color:#fff}
@media(max-width:420px){.question-group{gap:12px}.question-group label{font-size:14px!important}}

.question-group label:has([name=firma]),.question-group label:has([name=strasse]){grid-column:1/-1}#intake .question-group label{font-size:16px!important}#intake .question-group input{min-width:0}
