@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";:root{--ui-bg: var(--checkout-bg, #0e0e0f);--ui-surface: var(--checkout-surface, #171718);--ui-raised: #202021;--ui-input: #121213;--ui-border: #303032;--ui-border-strong: #4b4b4e;--ui-text: var(--checkout-text, #f4f4f1);--ui-muted: var(--checkout-muted, #a7a7a4);--ui-subtle: #777875;--ui-action: var(--checkout-action, #ffffff);--ui-action-contrast: var(--checkout-action-contrast, #111111);--ui-danger: #e8897c;color-scheme:dark}html.theme-light{--ui-bg: #f5f5f2;--ui-surface: #ffffff;--ui-raised: #efefeb;--ui-input: #ffffff;--ui-border: #d8d8d2;--ui-border-strong: #b9b9b2;--ui-text: #151515;--ui-muted: #62635f;--ui-subtle: #858680;--ui-action: var(--checkout-action, #111111);--ui-action-contrast: var(--checkout-action-contrast, #ffffff);color-scheme:light}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%}body{margin:0;background:var(--ui-bg);color:var(--ui-text);font-family:var(--font-ui, "DM Sans", "Helvetica Neue", Arial, sans-serif);font-synthesis:none;text-rendering:optimizeLegibility;overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--ui-action) 36%,transparent);outline-offset:2px}.shell{width:min(100%,1160px);margin:0 auto;padding:56px 34px 96px;overflow-x:clip}.brand{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;padding-bottom:42px}.brand-copy{max-width:760px}.kunoi-brand{display:inline-flex;align-items:center;margin-bottom:24px}.kunoi-brand img,.success-brand{display:block;width:112px;height:auto}.brand h1,.section h2,.success h1,.review strong,.estimate strong,.calendar-toolbar h3,.date-cell strong,.review-form h2{font-family:var(--font-display, "Space Grotesk", "Helvetica Neue", Arial, sans-serif)}.brand h1{max-width:960px;margin:12px 0 14px;color:var(--ui-text);font-size:clamp(42px,6vw,78px);font-weight:600;letter-spacing:-.065em;line-height:.98}.brand p,.section-heading p.section-note,.success p{color:var(--ui-muted);line-height:1.55}.brand p{max-width:580px;margin:0;font-size:17px}.brand-actions{display:flex;flex-direction:column;align-items:flex-end;gap:14px;flex:none}.estimate{min-width:174px;padding:18px;border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-surface)}.estimate span,.estimate small{display:block}.estimate span{color:var(--ui-muted);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.estimate strong{display:block;margin-top:6px;color:var(--ui-text);font-size:30px;line-height:1}.estimate small{margin-top:8px;color:var(--ui-muted);font-size:12px}.theme-toggle,.calendar-actions button,.time-grid button,.stepper-control button{border:1px solid var(--ui-border-strong);background:transparent;color:var(--ui-text)}.theme-toggle{display:inline-grid;place-items:center;flex:0 0 auto;width:38px;height:38px;min-height:38px;padding:0;border-radius:12px;font-size:12px;font-weight:700}.theme-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.theme-toggle svg circle{fill:currentColor;stroke:none}.theme-toggle:hover,.calendar-actions button:hover,.time-grid button:hover,.stepper-control button:hover{background:var(--ui-raised)}.theme-toggle-wrap{display:flex;justify-content:flex-end;margin-bottom:18px}.progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:56px;padding:0 0 14px;border-bottom:1px solid var(--ui-border)}.progress span{padding:0 0 12px;border-bottom:2px solid transparent;color:var(--ui-subtle);font-size:13px;font-weight:600}.progress .active{border-color:var(--ui-action);color:var(--ui-text)}.section{margin-bottom:52px;padding-bottom:52px;border-bottom:1px solid var(--ui-border)}.section-heading{margin-bottom:24px}.section h2{margin:10px 0 8px;color:var(--ui-text);font-size:clamp(30px,4vw,48px);font-weight:600;letter-spacing:-.055em;line-height:1}.section-heading p.section-note{margin:0;font-size:15px}.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px}.tab{min-height:50px;padding:12px 18px;border:1px solid var(--ui-border-strong);border-radius:12px;background:transparent;color:var(--ui-muted);font-size:14px;font-weight:700}.tab:hover{background:var(--ui-raised);color:var(--ui-text)}.tab.active{border-color:var(--ui-action);background:var(--ui-action);color:var(--ui-action-contrast)}.service-list{display:grid;gap:10px}.service-row{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:16px;width:100%;min-height:84px;padding:14px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-surface);color:var(--ui-text);text-align:left;transition:border-color .18s ease,background .18s ease,transform .18s ease}.service-row:hover,.service-row.selected{border-color:var(--ui-action);background:var(--ui-raised)}.service-row:hover{transform:translateY(-1px)}.service-image{display:grid;place-items:center;width:76px;height:62px;overflow:hidden;border-radius:11px;background:var(--ui-raised);color:var(--ui-muted);font-size:11px;font-weight:700;letter-spacing:.1em}.service-image img{width:100%;height:100%;object-fit:cover}.service-copy{min-width:0}.service-copy strong,.service-copy small{display:block}.service-copy strong{font-size:16px;font-weight:700}.service-copy small{margin-top:4px;overflow:hidden;color:var(--ui-muted);font-size:13px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.service-price{color:var(--ui-text);font-size:13px;font-weight:700;white-space:nowrap}.form-grid,.guest-stepper-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid{margin-bottom:24px}label,.field-label{display:block;color:var(--ui-text);font-size:14px;font-weight:700}label input,label select,label textarea{display:block;width:100%;min-height:48px;margin-top:9px;padding:12px 14px;border:1px solid var(--ui-border-strong);border-radius:12px;outline:0;background-color:var(--ui-input);color:var(--ui-text);font-size:15px}label select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='m3.5 5 3.5 3.5L10.5 5' stroke='%23a7a7a4' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:14px 14px}select::-ms-expand{display:none}label textarea{min-height:104px;resize:vertical}label input::placeholder,label textarea::placeholder{color:var(--ui-subtle);opacity:1}label input:disabled,label select:disabled{cursor:not-allowed;opacity:.55}.guest-stepper{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:88px;padding:18px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-surface)}.stepper-meta{display:grid;gap:5px}.stepper-meta span{color:var(--ui-text);font-size:15px;font-weight:700}.stepper-meta small{color:var(--ui-muted);font-size:12px}.stepper-control{display:flex;align-items:center;gap:10px}.stepper-control button{display:grid;place-items:center;width:36px;height:36px;padding:0;border-radius:10px;font-size:21px;line-height:1}.stepper-control output{min-width:22px;color:var(--ui-text);font-family:var(--font-display, "Space Grotesk", sans-serif);font-size:22px;font-weight:600;text-align:center}.extras{margin-top:28px}.field-hint{margin:6px 0 0;color:var(--ui-muted);font-size:13px;line-height:1.45}.extra-list{display:grid;gap:10px;margin-top:10px}.extra-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);transition:border-color .18s ease,background .18s ease}.extra-row.selected{border-color:var(--ui-action);background:var(--ui-raised)}.extra-row input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:grid;place-items:center;width:20px;height:20px;min-height:20px;margin:0;padding:0;border:1px solid var(--ui-border-strong);border-radius:6px;background:var(--ui-input);cursor:pointer}.extra-row input[type=checkbox]:after{content:"";width:9px;height:5px;border-bottom:2px solid var(--ui-action-contrast);border-left:2px solid var(--ui-action-contrast);transform:translateY(-1px) rotate(-45deg) scale(0);transition:transform .16s ease}.extra-row input[type=checkbox]:checked{border-color:var(--ui-action);background:var(--ui-action)}.extra-row input[type=checkbox]:checked:after{transform:translateY(-1px) rotate(-45deg) scale(1)}.extra-copy{min-width:0;cursor:pointer}.extra-copy strong,.extra-copy small{display:block}.extra-copy strong{font-size:14px}.extra-copy small{margin-top:3px;color:var(--ui-muted);font-size:12px;font-weight:400;line-height:1.4}.extra-copy .extra-unit{color:var(--ui-text);font-weight:600}.extra-meta{display:flex;align-items:center;justify-content:flex-end;gap:18px}.extra-quantity{display:grid;gap:5px;justify-items:end}.extra-quantity>span{color:var(--ui-muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.extra-stepper{display:flex;align-items:center;gap:8px}.extra-stepper button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid var(--ui-border-strong);border-radius:8px;background:transparent;color:var(--ui-text);font-size:18px;line-height:1}.extra-stepper button:hover:not(:disabled){background:var(--ui-action);border-color:var(--ui-action);color:var(--ui-action-contrast)}.extra-stepper button:disabled{cursor:not-allowed;opacity:.38}.extra-stepper output{min-width:18px;color:var(--ui-text);font-size:15px;font-weight:700;text-align:center}.extra-price{display:grid;min-width:82px;gap:4px;justify-items:end;text-align:right}.extra-price b{color:var(--ui-text);font-size:13px;white-space:nowrap}.extra-price small{color:var(--ui-muted);font-size:11px;white-space:nowrap}.muted{color:var(--ui-muted)}.calendar-panel{margin-top:18px;padding:22px;border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-surface);overflow:hidden}.calendar-panel+.calendar-panel{margin-top:12px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.calendar-toolbar h3{margin:7px 0 0;color:var(--ui-text);font-size:22px;letter-spacing:-.03em}.calendar-toolbar>small{color:var(--ui-muted);font-size:12px;white-space:nowrap}.calendar-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.calendar-actions button{min-width:36px;height:36px;padding:0 11px;border-radius:10px;font-size:12px;font-weight:700}.calendar-view-tabs{display:inline-flex;gap:6px}.calendar-actions button.active{border-color:var(--ui-action);background:var(--ui-action);color:var(--ui-action-contrast)}.calendar-weekdays,.date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-weekdays{margin-bottom:8px}.calendar-weekdays span{color:var(--ui-subtle);font-size:10px;font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:.08em}.date-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:78px;padding:9px 4px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-input);color:var(--ui-text);font:inherit}.date-cell:hover:not(:disabled),.date-cell.selected{border-color:var(--ui-action);background:var(--ui-action);color:var(--ui-action-contrast)}.date-cell:disabled{cursor:not-allowed;opacity:.34}.date-cell small{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.date-cell strong{font-size:22px;line-height:1}.date-cell em{color:var(--ui-muted);font-size:10px;font-style:normal}.date-cell.selected em{color:inherit;opacity:.72}.date-spacer{min-height:78px}.calendar-note{margin:15px 0 0;color:var(--ui-muted);font-size:12px;line-height:1.5}.time-panel{padding-bottom:24px}.time-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.time-grid button{min-height:44px;padding:10px 7px;border-radius:10px;font-size:12px;font-weight:700}.time-grid button.selected{border-color:var(--ui-action);background:var(--ui-action);color:var(--ui-action-contrast)}.time-grid button:disabled{cursor:not-allowed;opacity:.45}.review{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:24px;border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-surface)}.review strong{display:block;margin:8px 0 14px;color:var(--ui-text);font-size:42px;line-height:1}.breakdown{display:grid;gap:7px;color:var(--ui-muted);font-size:13px}.breakdown span{display:flex;justify-content:space-between;gap:18px}.breakdown b{color:var(--ui-text)}.submit{min-height:52px;padding:0 24px;border:0;border-radius:12px;background:var(--ui-action);color:var(--ui-action-contrast);font-size:14px;font-weight:700;white-space:nowrap}.submit:hover:not(:disabled){filter:brightness(.92)}.submit:disabled{cursor:not-allowed;opacity:.48}.loading,.error,.success{border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-surface);padding:28px}.success{max-width:620px;margin:16vh auto}.success-brand{margin-bottom:34px}.success-mark{display:grid;place-items:center;width:48px;height:48px;margin-bottom:20px;border-radius:15px;background:var(--ui-action);color:var(--ui-action-contrast);font-family:var(--font-display, "Space Grotesk", sans-serif);font-size:25px;font-weight:700}.success h1{color:var(--ui-text);font-size:clamp(34px,5vw,56px);font-weight:600;letter-spacing:-.06em;line-height:1}.error{margin-top:18px;color:var(--ui-danger)}.review-form{display:grid;gap:16px;margin-top:30px;padding-top:26px;border-top:1px solid var(--ui-border)}.review-form h2{margin:0 0 5px;color:var(--ui-text)}.review-form p{margin:0;color:var(--ui-muted);line-height:1.55}.rating-picker{display:flex;align-items:center;justify-content:space-between;gap:18px}.rating-picker>span{color:var(--ui-text);font-weight:700}.rating-picker div{display:flex;gap:4px}.rating-picker button{padding:2px 3px;border:0;background:transparent;color:var(--ui-subtle);font-size:26px;line-height:1}.rating-picker button.rated{color:var(--ui-text)}.review-thanks{margin-top:28px;padding:18px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface)}.review-thanks strong{color:var(--ui-text)}@media (prefers-reduced-motion: no-preference){.brand-copy,.estimate,.section,.review{animation:checkout-rise .42s cubic-bezier(.22,.8,.22,1) both}.estimate{animation-delay:.06s}.section:nth-of-type(2){animation-delay:.06s}.section:nth-of-type(3){animation-delay:.12s}.section:nth-of-type(4){animation-delay:.18s}.review{animation-delay:.22s}}@keyframes checkout-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 760px){.shell{padding:34px 18px 64px}.brand{display:block}.brand-actions{align-items:stretch;margin-top:28px}.brand-actions .theme-toggle{align-self:flex-end}.estimate{width:min(100%,220px)}.tabs,.form-grid,.guest-stepper-grid{grid-template-columns:1fr}.service-row{grid-template-columns:62px minmax(0,1fr);gap:12px}.service-image{width:62px;height:58px}.service-price{grid-column:2}.extra-row{grid-template-columns:22px minmax(0,1fr)}.extra-meta{grid-column:2;justify-content:space-between;gap:12px}.extra-price{justify-items:start;text-align:left}.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-actions{width:100%;justify-content:flex-start}.calendar-toolbar>small{white-space:normal}.review{display:block}.submit{width:100%;margin-top:22px}}@media (max-width: 480px){.shell{padding-inline:14px}.brand h1{font-size:clamp(38px,13vw,56px)}.progress{gap:10px}.progress span{font-size:12px}.calendar-panel{padding:16px}.calendar-weekdays,.date-grid{gap:5px}.date-cell{min-height:68px;padding:7px 2px}.date-spacer{min-height:68px}.date-cell strong{font-size:19px}.time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}:root{--font-ui: "DM Sans", "Helvetica Neue", Arial, sans-serif;--font-display: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;font-family:var(--font-ui);font-synthesis:none;text-rendering:optimizeLegibility}html,body,button,input,select,textarea{font-family:var(--font-ui)}.eyebrow{display:none}.success>.review-form{display:none}h1,h2,h3,h4,.brand h1,.section h2,.success h1,.review strong,.estimate strong,.calendar-toolbar h3,.date-cell strong,.kunoi-mark,.kunoi-wordmark{font-family:var(--font-display)}
