.demo-landing{min-height:100svh}.demo-container{width:min(100% - 80px,1240px);margin-inline:auto}.demo-skip-link{position:fixed;top:8px;left:16px;z-index:100;padding:12px 20px;background:var(--jd-plum);color:var(--jd-surface-1);transform:translateY(-150%)}.demo-skip-link:focus{transform:translateY(0)}.demo-hero{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);grid-template-areas:"intro calendar" "benefits calendar";grid-template-rows:auto 1fr;align-items:start;gap:36px;padding-block:140px 80px}.demo-hero__copy{grid-area:intro;min-width:0;padding-top:24px}.demo-landing .demo-hero h1{font-size:clamp(40px,3.3vw,46px);line-height:1.08;font-weight:800;letter-spacing:-.05em}.demo-hero h1 .jd-serif{white-space:nowrap}.demo-hero .demo-hero__description{margin-top:24px;max-width:440px;font-size:16px;line-height:1.7;color:var(--jd-fg-2)}.demo-benefits{grid-area:benefits;display:flex;flex-direction:column;gap:28px;min-width:0}.demo-landing .demo-benefits h2{font-size:18px;font-weight:650;line-height:1.4;letter-spacing:-.02em;text-wrap:pretty}.demo-benefits section p{margin-top:10px;color:var(--jd-fg-2);font-size:14px;line-height:1.7}.demo-booking{grid-area:calendar;position:sticky;top:104px;min-width:0;border:1px solid var(--jd-hairline);border-radius:20px;background:var(--jd-surface-1);overflow:hidden;scroll-margin-top:104px}.demo-booking:focus{outline:none}.demo-booking:focus-visible{outline:2px solid var(--jd-crimson);outline-offset:5px}.demo-booking__calendar{min-width:0;color-scheme:light}.demo-booking__calendar iframe{color-scheme:light}.demo-intake{min-height:540px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px clamp(28px,4vw,56px)}.demo-intake__form{width:100%;max-width:500px;margin:auto;padding-block:44px;animation:demo-question-in .22s ease-out}.demo-landing .demo-intake h2{font-size:clamp(25px,2.4vw,30px);font-weight:650;line-height:1.2;letter-spacing:-.035em;text-wrap:pretty;text-align:center}.demo-intake__label{display:block;margin-block:28px 10px;font-size:13px;font-weight:500}.demo-intake .demo-intake__input{height:56px;padding:14px 16px;border:1px solid var(--jd-hairline);border-radius:10px;background:var(--jd-surface-1);font-family:inherit;color:var(--jd-plum);font-size:17px;box-shadow:none;transition:border-color .18s ease}.demo-intake .demo-intake__input::placeholder{color:var(--jd-fg-2);opacity:.7}.demo-intake .demo-intake__input:focus-visible{border-color:var(--jd-crimson);outline:2px solid var(--jd-crimson);outline-offset:3px}.demo-intake .demo-intake__input[aria-invalid=true]{border-color:var(--jd-crimson)}.demo-intake .demo-intake__error{min-height:30px;padding-top:9px;color:var(--jd-crimson-press);font-size:12px;line-height:1.5}.demo-intake__actions,.demo-intake__continue{display:flex;align-items:center;gap:16px}.demo-intake__actions{justify-content:center;margin-top:10px}.demo-intake__enter{font-size:11px}.demo-intake__back,.demo-intake__enter{color:var(--jd-fg-2);white-space:nowrap}.demo-intake__back{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:8px 2px;background:transparent;border:0;font-size:12px;cursor:pointer}.demo-intake__back:hover{color:var(--jd-crimson)}.demo-intake__back:disabled{opacity:.5;cursor:wait}.demo-intake-calendar .demo-intake__save-error{padding:0 24px 16px;color:var(--jd-fg-2);font-size:12px;line-height:1.6}.demo-intake__save-error button{color:var(--jd-crimson);text-decoration:underline;text-underline-offset:3px;min-height:44px}.demo-intake__save-error button:focus-visible{outline:2px solid var(--jd-crimson);outline-offset:3px}.demo-intake__back:focus-visible{outline:2px solid var(--jd-crimson);outline-offset:4px;border-radius:3px}.demo-intake-calendar__heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:20px 24px 12px}.demo-landing .demo-intake-calendar__heading h2{font-size:19px;font-weight:600;line-height:1.4;letter-spacing:-.02em}.demo-intake-calendar__heading h2:focus{outline:none}@keyframes demo-question-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.demo-intake__form{animation:none}.demo-intake .demo-intake__input{transition:none}}.demo-footer{justify-content:space-between;gap:24px;padding-block:32px 40px;border-top:1px solid var(--jd-hairline);color:var(--jd-fg-2);font-size:11px}.demo-footer,.demo-footer>div{display:flex;align-items:center}.demo-footer>div{gap:22px}.demo-footer a{display:inline-flex;align-items:center;min-height:44px}.demo-footer a:hover{color:var(--jd-crimson)}@media (max-height:700px){.demo-booking{position:static}}@media (max-width:1240px){.demo-container{width:calc(100% - 48px)}.demo-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"intro" "calendar" "benefits";grid-template-rows:auto;gap:32px;padding-block:124px 64px;max-width:1040px}.demo-booking{position:static}.demo-benefits{max-width:640px}.demo-hero__copy{padding:0;max-width:560px}.demo-landing .demo-hero h1{font-size:clamp(38px,6.5vw,52px)}.demo-hero .demo-hero__description{max-width:520px}}@media (max-width:600px){.demo-container{width:calc(100% - 40px)}.demo-hero{padding-block:108px 40px;gap:28px}.demo-landing .demo-hero h1{font-size:38px}.demo-hero .demo-hero__description{margin-top:20px;font-size:15px;line-height:1.65}.demo-landing .demo-benefits h2{font-size:17px}.demo-benefits section p{font-size:15px;line-height:1.65}.demo-booking{border-radius:16px;scroll-margin-top:88px}.demo-intake{min-height:440px;padding:28px 24px}.demo-intake__form{padding-block:36px}.demo-intake .demo-intake__input{font-size:16px}.demo-intake__enter{display:none}.demo-intake-calendar__heading{padding-inline:20px}.demo-footer{flex-wrap:wrap;gap:8px 20px;padding-block:24px 32px;font-size:10px}.demo-footer>p{display:none}.demo-footer>div{gap:18px}}.demo-intake__consent{max-width:440px;margin:0 auto 20px;color:#6b5d66;font-size:13px;line-height:1.5;text-align:left}.demo-intake__consent p{margin-bottom:10px;text-align:center}.demo-intake__consent label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.demo-intake__consent input{margin-top:3px;accent-color:#d9468e;flex-shrink:0}