*{box-sizing:border-box}body{margin:0;background:#f5f5f5;color:#191919;font:15px/1.6 Arial,Helvetica,sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.38}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #737e95;outline-offset:3px}svg{flex-shrink:0}h1,h2,h3,p{overflow-wrap:break-word}
.top{max-width:1160px;margin:auto;padding:27px 24px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px}.top a{text-decoration:none;color:#686868}.back-home{font-weight:600}.top a:hover{color:#111}.contact span{margin-left:8px}main{max-width:1160px;margin:30px auto 40px;padding:0 24px;min-height:70vh}.booking{display:grid;grid-template-columns:320px minmax(0,1fr);background:white;border:1px solid #e2e2e2;border-radius:20px;overflow:hidden;box-shadow:0 16px 65px #22222207}.summary{border-right:1px solid #e8e8e8;min-width:0}.brand-banner{min-height:143px;padding:25px 30px;background:#050505;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #111}.brand-banner img{display:block;width:100%;height:auto;max-width:260px;object-fit:contain}.summary-body{padding:30px 29px}.eyebrow{font-size:9px;letter-spacing:1.6px;font-weight:600;color:#7c7c7c}.host{margin:22px 0 8px;font-size:13px;color:#646464}.summary h1{font-size:28px;line-height:1.2;letter-spacing:-.9px;font-weight:600;margin:0 0 18px}.intro{font-size:13px;color:#6a6a6a;line-height:1.75;margin-bottom:24px}.appointment-meta{display:grid;gap:16px}.summary-line{display:flex;gap:10px;font-size:13px;font-weight:600;align-items:flex-start}.summary-line small{display:block;margin-top:4px;font-size:11px;font-weight:400;color:#777;line-height:1.6}.trust{display:flex;gap:8px;align-items:flex-start;margin-top:30px;padding-top:20px;border-top:1px solid #eee;color:#858585;font-size:10px;line-height:1.8}.trust-dot{width:5px;height:5px;border-radius:50%;background:#666;flex-shrink:0;margin-top:7px}
.content{padding:34px 36px 32px;min-width:0}.steps{display:flex;justify-content:space-between;gap:12px;list-style:none;padding:0;margin:0 0 35px;font-size:10px;color:#898989}.steps li{display:flex;align-items:center;gap:7px}.step-number{display:grid;place-items:center;width:22px;height:22px;border:1px solid #ddd;border-radius:50%;flex-shrink:0;font-size:10px}.steps .active{color:#111;font-weight:600}.active .step-number{background:#111;color:white;border-color:#111}.done .step-number{background:#f1f1f1;color:#111}.content h2{font-size:25px;font-weight:600;letter-spacing:-.65px;line-height:1.3;margin:0 0 10px}.lead{font-size:13px;color:#777;margin:0 0 28px}
.calendar-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(155px,1fr);gap:26px;margin-top:30px;min-height:365px}.month-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:24px}.month-heading strong{font-size:14px;text-transform:capitalize;font-weight:600}.month-heading button{width:32px;height:32px;line-height:20px;border:0;border-radius:50%;background:#f4f4f4;font-size:25px;color:#333}.month-heading button:hover:enabled{background:#e7e7e7}.weekdays,.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.weekdays{margin-bottom:10px}.weekdays span{text-align:center;color:#828282;font-size:10px}.days button,.days .spacer{padding:0;aspect-ratio:1;min-height:32px;font-size:12px;border:0;border-radius:50%;background:#f3f3f3;color:#222;position:relative}.days button:hover:enabled{background:#e4e4e4}.days button.selected{background:#171717;color:white;font-weight:600}.days button.today:after{content:'';position:absolute;bottom:4px;left:calc(50% - 1.5px);width:3px;height:3px;border-radius:50%;background:currentColor}.days button:disabled{background:transparent;color:#8c8c8c;opacity:.48}.zone{margin-top:24px;font-size:11px;color:#6e6e6e}.zone strong,.zone span{display:block}.zone strong{color:#444;font-size:10px;font-weight:600;margin-bottom:4px}.slots{border-left:1px solid #ececec;padding-left:25px}.slots h3{font-size:12px;font-weight:600;margin:4px 0 12px;text-transform:capitalize}.slot-hint{font-size:10px;color:#888;margin:0 0 12px}.slot-list{display:grid;gap:9px;max-height:292px;overflow-y:auto;padding:3px}.slot{border:1px solid #d2d2d2;background:white;padding:10px 8px;border-radius:7px;font-size:13px;font-weight:600;min-height:42px}.slot:hover{border-color:#111}.slot.selected{background:#111;color:white;border-color:#111}.empty,.loading{padding:28px 5px;text-align:center;color:#858585;font-size:12px;line-height:1.8}.date-prompt{padding-top:56px}.date-prompt svg{width:30px;height:30px;color:#a2a2a2}.empty p{margin:10px 0}.empty .secondary{font-size:11px;padding:8px 15px}.loading:before{content:'';display:block;width:22px;height:22px;border:2px solid #ddd;border-top-color:#111;border-radius:50%;margin:0 auto 18px;animation:spin 1s linear infinite}.selection-note{font-size:11px;color:#767676}.calendar-actions{border-top:1px solid #eee;padding-top:22px}
label{display:grid;gap:8px;font-size:12px;font-weight:600}label small{font-size:10px;font-weight:400;color:#777;line-height:1.6}input,select{width:100%;padding:12px 13px;border:1px solid #d9d9d9;background:white;border-radius:8px;color:#222;font-size:14px;min-width:0;min-height:45px}input::placeholder{color:#aaa}input:focus,select:focus{border-color:#666}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px 18px}.full{grid-column:1/-1}.consent{display:flex;align-items:flex-start;gap:10px;margin-top:24px;color:#777;font-size:10px;font-weight:400;line-height:1.8}.consent input{width:17px;height:17px;min-height:0;accent-color:#111;flex-shrink:0;margin:3px 0}.primary,.secondary{padding:12px 18px;border:1px solid #111;background:#111;color:white;border-radius:9px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:20px;line-height:1.6;min-height:45px}.primary:hover:enabled{background:#303030}.secondary{background:white;color:#333;border-color:#ddd}.secondary:hover:enabled{border-color:#777}.actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:25px}.actions .primary{margin-left:auto}.selected-appointment{display:flex;align-items:center;gap:12px;border:1px solid #e7e7e7;border-radius:10px;background:#fafafa;padding:15px;margin:0 0 26px;font-size:12px}.selected-appointment div{flex:1}.selected-appointment strong,.selected-appointment span{display:block}.selected-appointment strong{font-weight:600;text-transform:capitalize}.selected-appointment span{color:#777;font-size:11px;margin-top:4px}.text-button{border:0;background:none;text-decoration:underline;font-size:10px;color:#666;padding:7px}.error{padding:14px 16px;background:#fff3f0;border:1px solid #ecd1ca;border-radius:9px;color:#844c3e;font-size:12px;line-height:1.7;margin:20px 0}.error:empty{display:none}.notice{padding:24px;background:#f6f6f6;border:1px solid #e5e5e5;border-radius:12px;font-size:13px}.notice h3{margin:0 0 10px;font-size:17px}.review{border:1px solid #e3e3e3;border-radius:12px;margin:24px 0;overflow:hidden}.review>div{padding:12px 17px;border-bottom:1px solid #eee;display:grid;grid-template-columns:95px 1fr;gap:12px;font-size:12px;overflow-wrap:anywhere}.review>div:last-child{border:0}.review span{font-size:11px;color:#858585}.review strong{font-weight:500}.call-note{display:flex;align-items:center;gap:12px;background:#f5f5f5;border-radius:10px;padding:13px 16px;font-size:12px}.call-note p{margin:0}.success-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:#edf4ef;font-size:26px;color:#3c6650;margin-bottom:25px}.success-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.manage-link{display:block;overflow-wrap:anywhere;font-size:11px;margin-top:25px}.privacy-note{font-size:10px;line-height:1.8;color:#777;margin-top:18px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;max-width:1160px;margin:0 auto 30px;padding:0 24px;color:#8b8b8b;font-size:10px}footer a{text-decoration:none}dialog{max-width:580px;width:calc(100% - 32px);border:1px solid #ddd;border-radius:18px;padding:28px;color:#333;font-size:13px;line-height:1.8}dialog::backdrop{background:#0008}dialog h2{font-size:23px;font-weight:500}.skip{position:absolute;top:-100px}.skip:focus{top:10px;left:20px;background:white;z-index:10;padding:10px}.embedded .top,.embedded footer{display:none}.embedded main{margin:0;padding:0;max-width:none;min-height:0}.embedded .booking{border-radius:18px}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}
@media(max-width:1000px){.booking{grid-template-columns:280px minmax(0,1fr)}.summary-body{padding:27px 24px}.content{padding:30px 26px}.calendar-layout{gap:18px;grid-template-columns:minmax(0,1.6fr) minmax(130px,1fr)}.slots{padding-left:18px}.summary h1{font-size:26px}.days,.weekdays{gap:4px}.days button{font-size:11px;min-height:27px}.steps{font-size:9px;gap:8px}.steps li{gap:5px}}
@media(max-width:820px) and (min-width:681px){.calendar-layout{grid-template-columns:1fr}.slots{border-left:0;border-top:1px solid #eee;padding:20px 0 0}.slot-list{grid-template-columns:repeat(3,1fr);max-height:205px}.date-prompt{padding:12px}.date-prompt svg{display:none}.date-prompt br{display:none}.days button{min-height:35px}.form-grid{grid-template-columns:1fr}.steps li{flex-direction:column;gap:6px}.actions{flex-wrap:wrap}}
@media(max-width:680px){.top{padding:18px 17px 0;font-size:11px}.contact{font-size:10px}.contact span{display:none}main{padding:0 14px;margin:22px auto 28px;min-height:0}.booking{grid-template-columns:1fr;border-radius:16px}.summary{border-right:0;border-bottom:1px solid #e6e6e6}.brand-banner{min-height:115px;padding:20px 30px}.brand-banner img{max-width:218px}.summary-body{padding:22px 24px}.host{margin:12px 0 6px;font-size:12px}.eyebrow{font-size:8px;letter-spacing:1.35px}.summary h1{font-size:26px;margin-bottom:12px;max-width:340px}.intro{font-size:12px;margin:0 0 18px}.appointment-meta{grid-template-columns:85px 1fr;gap:15px}.summary-line{font-size:11px;gap:7px}.summary-line small{font-size:10px}.summary-line svg{width:16px;height:18px}.trust{display:none}.content{padding:25px 23px}.steps{margin-bottom:28px;font-size:9px;gap:5px}.step-number{width:20px;height:20px;font-size:9px}.content h2{font-size:23px;letter-spacing:-.6px}.lead{font-size:12px;margin-bottom:22px}.calendar-layout{grid-template-columns:1fr;gap:20px;min-height:0;margin-top:27px}.month-heading{margin-bottom:22px}.days button{min-height:34px;font-size:13px}.days,.weekdays{gap:7px}.weekdays span{font-size:10px}.slots{border-left:0;border-top:1px solid #eee;padding:19px 0 0}.slots h3{font-size:13px}.slot-list{grid-template-columns:repeat(3,1fr);max-height:250px}.date-prompt{display:flex;gap:10px;align-items:center;text-align:left;padding:7px 0}.date-prompt svg{width:24px;height:24px}.date-prompt br{display:none}.zone{margin-bottom:0}.calendar-actions{flex-wrap:wrap;margin-top:20px;padding-top:20px;gap:13px}.calendar-actions .primary{min-width:135px}.selection-note{font-size:10px}.form-grid{grid-template-columns:1fr;gap:18px}input,select{font-size:16px}.consent{font-size:11px}.actions{gap:10px}.primary,.secondary{font-size:11px;padding:12px 14px;gap:12px}.selected-appointment{padding:13px 10px;gap:9px}.selected-appointment strong{font-size:11px}.selected-appointment span{font-size:10px}.review>div{grid-template-columns:75px 1fr;gap:8px;padding:12px 13px;font-size:11px}.review span{font-size:10px}.call-note{font-size:11px}.privacy-note{font-size:10px}footer{padding:0 19px;font-size:9px}.success-buttons{flex-direction:column}dialog .actions{flex-direction:column;align-items:stretch}dialog .actions .primary{margin-left:0}}
.days .spacer{background:transparent}.days button.selected:hover:enabled{background:#171717;color:white}.slots h3{text-transform:none}.slots h3::first-letter{text-transform:uppercase}
@media(max-width:680px){.brand-banner{min-height:94px;padding:13px 30px}.brand-banner img{width:200px;height:68px}.summary-body{padding:19px 23px}.summary .eyebrow,.summary .intro{display:none}.host{margin:0 0 5px}.summary h1{font-size:24px;margin-bottom:16px}.content{padding-top:23px}.steps{margin-bottom:23px}}
@media(max-width:365px){.content{padding:23px 17px}.steps{font-size:8px}.steps li{gap:4px}.days,.weekdays{gap:4px}.days button{min-height:30px}.calendar-actions .primary{width:100%}.calendar-actions{justify-content:center}.summary-body{padding:21px}.summary h1{font-size:24px}}

.calendar-add{width:100%;margin:6px 0 15px}.calendar-add>.primary{display:flex;justify-content:center;text-decoration:none}.calendar-add p{font-size:10px;color:#777;line-height:1.75;margin:9px 0 16px}.calendar-providers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.calendar-providers a{text-decoration:none;display:flex;justify-content:center}.success-buttons{flex-wrap:wrap}html.booking-embedded{overflow:hidden}html.booking-embedded body{overflow:hidden}.embedded{background:transparent}.embedded main{margin:0!important;padding:0!important}.embedded .brand-banner{pointer-events:none}

.days button.unavailable:disabled{background:transparent;color:#b6b6b6;opacity:1;font-weight:400;box-shadow:none}.days button.available{background:#eeeeef;color:#202020;font-weight:700}.days button.available.selected{background:#151515;color:white}.calendar-legend{display:flex;gap:12px;flex-wrap:wrap;margin:17px 0 2px;font-size:10px;color:#707070;min-height:23px}.calendar-legend>span{display:flex;align-items:center;gap:6px}.calendar-legend i{width:10px;height:10px;border-radius:50%;background:#e8e8e8;border:1px solid #bdbdbd}.closed-legend{color:#919191}.refresh-month{padding:7px 0;text-align:left;font-size:10px}.calendar-legend .loading{font-size:11px;padding:0}.calendar-legend .loading:before{width:10px;height:10px}
