.video-comparison{background:#202e23}.video-comparison #backdrop-video{position:fixed;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.video-shade{position:fixed;inset:0;background:linear-gradient(90deg,rgba(12,25,18,.76),rgba(12,25,18,.34));z-index:-1}.video-comparison .booking-shell{max-width:1280px;min-height:100svh;padding:0 36px;display:flex;flex-direction:column}.video-comparison header{padding:16px 0;border-color:#ffffff35;gap:20px}.video-comparison header .brand{color:#fff}.video-toolbar{display:flex;align-items:center;gap:16px;margin-left:auto}.video-toolbar .compare-link{font-size:11px;color:#f1f4ed;text-underline-offset:3px}.video-toolbar button{min-height:30px;padding:5px 12px;background:#ffffff10;border:1px solid #ffffff50;color:#fff;border-radius:20px;font-size:10px}.video-comparison .preview-disclosure{color:#f0f2eb}.video-comparison .booking-steps{margin:18px 0 22px;color:#d3ded2}.video-comparison .booking-steps li[aria-current=step]{color:#fff}.video-comparison .booking-steps li>span{border-color:#ffffff70;color:#fff}.video-comparison .booking-steps li[aria-current=step]>span{background:#edf3e5;color:#1c221d;border-color:#edf3e5}.video-comparison .step-rule{background:#ffffff55}.video-comparison .booking-layout{flex:1;min-height:0;align-items:center;grid-template-columns:230px minmax(0,1fr);gap:32px}.video-comparison .booking-intro{padding:0;color:#fff}.video-comparison h1{font-size:48px}.video-comparison .intro-copy{color:#edf1e7;font-size:23px}.video-comparison .intro-rule{background:#d6e2ca}.video-comparison .meeting-facts{border-color:#ffffff40;color:#f2f5ed;font-size:12px;gap:14px;padding-top:18px}.video-comparison .meeting-facts small{color:#d0dcca}.video-comparison .booking-card{background:#fffefa;box-shadow:0 20px 70px #08160b30;min-height:0;padding:22px 24px}.video-comparison .calendar{margin:14px 0 18px}.video-comparison .calendar button{min-height:36px;padding:6px 0}.video-comparison .calendar>span{min-height:24px;padding:5px 0}.video-comparison .times{max-height:260px}.video-comparison .times button{min-height:36px;padding:6px}.video-comparison #continue-row{margin-top:14px}.video-comparison #continue-summary{color:#f0f4e9}.video-comparison #continue{background:#edf2e5;color:#1c221d;border-color:#edf2e5}.video-comparison #continue:disabled{opacity:.6}.video-comparison footer{margin-top:22px;padding:15px 0;border-color:#ffffff35;color:#edf3e6}.video-comparison footer .brand{color:#fff}.video-comparison .booking-card.details-step{padding:22px 30px}.video-comparison .details-step h2{font-size:30px;margin-bottom:5px}.video-comparison #details-intro{margin-bottom:15px;font-size:12px}.video-comparison .details-step .selection-card{padding:12px 15px;margin-bottom:15px}.video-comparison .details-step .selection-card p{font-size:11px}.video-comparison .required-caption{margin:0 0 10px}.video-comparison .details-step label>input,.video-comparison .details-step label>textarea{margin:5px 0 12px}.video-comparison .details-step input{height:40px;padding:8px 12px}.video-comparison .details-step textarea{min-height:78px;height:78px;padding:9px 12px}.video-comparison .details-step #confirm-booking{min-height:42px;padding:10px 20px}.video-comparison .details-step .preview-fineprint{margin-top:8px}.video-comparison #error:not(:empty){background:#fffefa;padding:10px;border-radius:8px}.video-comparison .preview-disclosure p{color:#4b574b}.video-comparison #result:not(:empty){background:#fffefa}.video-comparison .booking-workspace{margin:0}
@media(min-width:901px) and (min-height:700px){.video-comparison .booking-shell{height:100svh}.video-comparison .booking-layout{flex:1}.video-comparison .booking-card.details-step{max-width:900px}}
@media(max-width:900px){.video-comparison .booking-shell{padding:0 20px}.video-comparison .booking-layout{grid-template-columns:1fr;align-items:start;gap:22px}.video-comparison .booking-intro h1{font-size:34px}.video-comparison .intro-copy{font-size:21px;margin-bottom:14px}.video-comparison .meeting-facts{border:0;padding:0}.video-comparison header{flex-wrap:wrap;gap:8px}.video-comparison .preview-disclosure{margin-left:auto}.video-comparison #continue-row{background:#243427ed}.video-comparison footer{margin-top:20px}.video-comparison .booking-card.details-step{padding:22px}.video-comparison .details-step textarea{height:100px}.video-comparison #continue-row{padding:12px;border-radius:12px}.video-comparison .video-toolbar{gap:10px}.video-comparison header .brand{font-size:25px}.video-comparison .booking-card{padding:20px 17px}}
@media(min-width:901px) and (max-height:800px){.video-comparison header{padding:12px 0}.video-comparison .booking-steps{margin:12px 0 14px}.video-comparison footer{margin-top:12px;padding:10px 0}.video-comparison .booking-card.details-step{padding:16px 24px}.video-comparison .details-step h2{font-size:28px}.video-comparison #details-intro{margin-bottom:10px}.video-comparison .details-step .selection-card{padding:10px 14px;margin-bottom:10px}.video-comparison .required-caption{margin-bottom:8px}.video-comparison .details-step label{font-size:11px}.video-comparison .details-step label>input,.video-comparison .details-step label>textarea{margin:4px 0 9px}.video-comparison .details-step input{height:36px}.video-comparison .details-step textarea{height:64px;min-height:64px}.video-comparison .details-step #confirm-booking{min-height:38px;padding:8px 20px}.video-comparison .details-step .preview-fineprint{margin-top:6px}}
/* A stable frame across date selection and personal details. */
@media(min-width:901px){
 .video-comparison .booking-workspace{align-self:center}
 .video-comparison #picker{position:relative;padding-bottom:58px}
 .video-comparison .booking-card,
 .video-comparison .booking-card.details-step{width:100%;max-width:none;height:560px;min-height:560px;box-sizing:border-box}
 .video-comparison #continue-row{position:absolute;bottom:0;left:0;right:0;margin:0;height:44px}
 .video-comparison .booking-card.details-step .choice-panel{height:100%;display:flex;align-items:center}
 .video-comparison .booking-card.details-step #booking-form{width:100%}
}
@media(min-width:901px) and (max-height:800px){
 .video-comparison .booking-card,
 .video-comparison .booking-card.details-step{height:490px;min-height:490px}
 .video-comparison #picker{padding-bottom:52px}
}
@media(max-width:900px){
 .video-comparison .booking-card,
 .video-comparison .booking-card.details-step{min-height:840px;width:100%;max-width:none}
 .video-comparison #picker{position:relative;padding-bottom:95px}
 .video-comparison #continue-row{position:absolute;bottom:0;left:0;right:0;height:80px;margin:0}
}

/* Confirmation keeps the same frame and the reserved action-row space. */
.video-comparison .booking-steps[hidden]{display:flex!important;visibility:hidden}
.video-comparison .booking-workspace:has(#picker[hidden]){padding-bottom:58px}
.video-comparison #result:not(:empty):has(+ #picker[hidden]){height:560px;min-height:560px;box-sizing:border-box;margin:0;display:flex;flex-direction:column;justify-content:center;padding:40px}
@media(min-width:901px) and (max-height:800px){
.video-comparison .booking-workspace:has(#picker[hidden]){padding-bottom:52px}
.video-comparison #result:not(:empty):has(+ #picker[hidden]){height:490px;min-height:490px}
}
@media(max-width:900px){
.video-comparison .booking-workspace:has(#picker[hidden]){padding-bottom:95px}
.video-comparison #result:not(:empty):has(+ #picker[hidden]){height:auto;min-height:840px;padding:24px 22px;justify-content:flex-start}
}

.video-comparison #error:empty{display:none}
/* Extended management states scroll within the unchanged rounded card. */
.video-comparison #result:not(:empty):has(+ #picker[hidden]){overflow-y:auto;justify-content:flex-start}
.video-comparison #result .confirmation-content{margin-block:auto;flex-shrink:0}
