:root{--brand:#18594f;--brand-text:#18594f;--brand-ink:#fff;--ink:#182f2a;--muted:#54645e;--ground:#f5f7f4;--surface:#fff;--line:#d7dfd9;--soft:#e9efea;--lime:#def4a0;--danger:#a02c39;--radius:14px;--space:24px;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink);font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;line-height:1.55}::selection{background:var(--lime);color:#183b30}html{scrollbar-color:var(--muted) var(--ground)}a{color:var(--brand-text);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}img{max-width:100%}svg{flex-shrink:0}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.1rem,4vw,3.2rem);line-height:1.12;letter-spacing:-.03em;font-weight:650;margin-bottom:18px;text-wrap:balance}h2{font-size:1.25rem;line-height:1.3;font-weight:650;margin-bottom:14px;letter-spacing:-.015em}p{max-width:70ch;margin-bottom:20px}small,.small{font-size:.83rem;color:var(--muted)}:focus-visible{outline:3px solid #98751d;outline-offset:4px}input,textarea{caret-color:var(--brand)}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:100px;padding:20px max(32px,calc((100vw - 1184px)/2));background:var(--surface);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:var(--brand-text);text-decoration:none;font-weight:700;min-width:0;white-space:normal}.brand>span{min-width:0;overflow-wrap:anywhere}.brand small{display:block;font-size:.75rem;font-weight:400;color:var(--muted)}.brand img{object-fit:contain;flex-shrink:0}.header nav{display:flex;gap:24px;align-items:center;font-size:.9rem}.header nav a{text-decoration:none}.header nav a[aria-current]{font-weight:700;text-decoration:underline;text-decoration-thickness:2px}.header nav form{margin:0}.header-note{color:var(--muted)}.quiet-link{color:var(--muted)}.demo{background:#e8eedf;text-align:center;padding:7px 20px;color:#44513d;font-size:.74rem}.container{width:min(1184px,calc(100% - 64px));margin:0 auto;padding:48px 0 64px;min-height:calc(100vh - 235px)}.footer{display:flex;justify-content:space-between;gap:24px;width:min(1184px,calc(100% - 64px));margin:auto;padding:24px 0;border-top:1px solid var(--line);font-size:.73rem;color:var(--muted)}.lead{font-size:1.08rem;line-height:1.6;color:var(--muted);margin-bottom:32px}.booking-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:80px;align-items:start}.booking-layout>section{min-width:0}.steps{display:flex;gap:34px;list-style:none;padding:0;margin:0 0 44px;color:var(--muted);font-size:.85rem}.steps li{display:flex;align-items:center;gap:9px}.steps li span{display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid var(--line);border-radius:50%;font-size:.75rem}.steps li[aria-current]{color:var(--brand-text);font-weight:650}.steps li[aria-current] span{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.service-list{border-top:1px solid var(--line);margin-top:38px}.service-row{display:flex;justify-content:space-between;gap:24px;padding:27px 12px 27px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);transition:background-color 160ms}.service-row:hover{background:var(--soft)}.service-copy{display:grid;gap:5px}.service-copy>strong{font-size:1.25rem;font-weight:650}.service-copy>span{color:var(--muted);font-size:.92rem}.service-copy>small{margin-top:7px}.service-price{display:flex;align-items:center;gap:18px;white-space:nowrap;font-weight:600}.service-price svg{color:var(--brand-text)}.brand-panel{background:var(--brand);color:var(--brand-ink);border-radius:var(--radius);padding:32px;min-height:510px;display:flex;flex-direction:column}.brand-panel h2{font-size:2.25rem;line-height:1.12;letter-spacing:-.025em;margin:26px 0 20px}.brand-panel p{font-size:.94rem}.brand-panel .small{color:inherit}.brand-symbol{color:var(--brand-ink);opacity:.85}.panel-bottom{margin-top:auto;padding-top:36px}.panel-bottom strong{font-size:.9rem}.panel-bottom p{margin:8px 0 24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 19px;border:1px solid transparent;border-radius:8px;text-decoration:none;font-weight:600;font-size:.9rem;line-height:1.4;transition:background-color 150ms,transform 150ms}.button:hover{text-decoration:none;filter:brightness(.96)}.button:active{transform:translateY(1px)}.primary{background:var(--brand);color:var(--brand-ink)}.secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}.danger{background:#fbeaec;border-color:#e3bdc3;color:var(--danger)}.wide{width:100%}.back{display:inline-block;margin-bottom:24px;font-size:.88rem}.summary{background:var(--soft);padding:30px;border-radius:var(--radius);position:sticky;top:24px}.summary>h2{font-size:.9rem;color:var(--muted);font-weight:500;margin-bottom:24px}.summary-service{display:block;font-size:1.4rem;line-height:1.3;font-weight:650;margin-bottom:25px}.summary dl{margin:0}.summary dl>div{display:flex;justify-content:space-between;gap:18px;margin-bottom:13px;font-size:.9rem}.summary dt{color:var(--muted)}.summary dd{margin:0;text-align:right;font-weight:550;overflow-wrap:anywhere}.summary>p{font-size:.85rem;color:var(--muted);margin-top:24px;margin-bottom:0}.summary-note{border-top:1px solid #c9d5cc;padding-top:20px;margin-top:26px;font-size:.85rem;color:var(--muted)}.field{margin-bottom:22px}.field label{display:block;margin-bottom:7px;font-size:.87rem;font-weight:600}.field small{display:block;margin-top:6px}input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #b6c4bb;border-radius:7px;background:var(--surface);color:var(--ink);max-width:100%;font-size:1rem}input[type=checkbox],input[type=radio]{width:19px;height:19px;accent-color:var(--brand);vertical-align:middle;margin-right:7px}input[type=color]{height:50px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--muted)}.field.invalid input{border-color:var(--danger)}.required{color:var(--muted)}.slot-filter{display:flex;gap:14px;align-items:end;margin-bottom:24px}.slot-filter .field{margin:0;flex:1}.date-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:28px 0 32px}.date-strip a{display:flex;flex-direction:column;align-items:center;padding:10px 4px;text-decoration:none;background:var(--surface);border:1px solid var(--line);border-radius:9px;color:var(--muted)}.date-strip a strong{font-size:1.45rem;line-height:1.5;color:var(--ink)}.date-strip span,.date-strip small{font-size:.73rem}.date-strip a[aria-current]{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.date-strip a[aria-current] strong,.date-strip a[aria-current] small{color:inherit}.day-heading{font-size:1.05rem;margin-bottom:18px}.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.time-slot{display:flex;flex-direction:column;align-items:center;padding:12px 8px;background:var(--surface);border:1px solid var(--line);border-radius:8px;text-decoration:none;color:var(--ink)}.time-slot:hover{border-color:var(--brand);background:var(--soft)}.time-slot strong{font-size:1.05rem;font-variant-numeric:tabular-nums}.time-slot span{font-size:.73rem;color:var(--muted)}.customer-form{max-width:520px}.privacy{font-size:.82rem;color:var(--muted);margin:26px 0}.customer-form>.small{margin-top:14px}.errorlist{padding:12px 16px;background:#fbeaec;color:#932937;border-radius:7px;list-style:none;font-size:.9rem;margin:12px 0 24px}.errorlist li+li{margin-top:8px}.errorlist.nonfield{margin-bottom:24px}.message{padding:16px 20px;border-radius:8px;background:#e2eddc;color:#294e2b;margin-bottom:24px}.message.error{background:#fbeaec;color:#932937}.empty{padding:38px 24px;background:var(--soft);border-radius:var(--radius);text-align:center}.empty p{margin-left:auto;margin-right:auto;color:var(--muted);font-size:.9rem}.empty h2{font-size:1.2rem}.manage-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:100px;align-items:start;max-width:1050px;margin:10px auto}.manage-layout h1{margin-top:20px}.confirmation{position:static;background:var(--surface);border:1px solid var(--line)}.management{padding-top:16px}.private-link{font-size:.8rem!important;margin-bottom:12px;color:var(--muted)!important}.copy-result{font-size:.8rem;display:block;margin-top:8px}.manage-actions{margin-top:42px}.cancel-box{margin:24px 0;color:var(--danger);font-size:.9rem}.cancel-box summary{cursor:pointer;min-height:44px;display:list-item;align-content:center}.cancel-box p{color:var(--muted);margin:12px 0}.status{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:6px;font-size:.75rem;font-weight:600;line-height:1.5;width:max-content;max-width:100%}.status.booked{background:#e4efdf;color:#30582e}.status.completed{background:#dfecef;color:#315963}.status.no_show{background:#fff0d7;color:#76531a}.status.cancelled{background:#f1e5e7;color:#87454c}.narrow{max-width:640px;margin:12px auto}.narrow>form{margin-top:30px}.change-comparison{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:28px 0}.change-comparison>div{padding:24px;border-radius:var(--radius);background:var(--soft)}.change-comparison>div:last-child{background:var(--brand);color:var(--brand-ink)}.change-comparison span,.change-comparison strong{display:block}.change-comparison span{font-size:.8rem;margin-bottom:10px}.change-comparison p{margin:8px 0 0;font-size:.9rem}.internal .container{padding-top:38px}.internal h1{font-size:2.6rem}.internal .header{min-height:86px}.page-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:30px}.page-heading h1{margin-bottom:10px}.page-heading .lead{margin-bottom:0}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.agenda-tools{display:flex;align-items:end;gap:24px;justify-content:space-between;padding:20px 0 26px;border-top:1px solid var(--line)}.date-navigation{display:flex;gap:8px;align-items:center}.icon-button{display:grid;place-items:center;width:44px;height:46px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.icon-button svg{width:22px;height:22px;fill:none;stroke:var(--ink);stroke-width:1.7}.agenda-filter{display:flex;gap:12px;align-items:end;flex:1;max-width:520px}.agenda-filter .field{margin-bottom:0;flex:1}.agenda-filter label{font-size:.75rem}.tabs{display:flex;padding:4px;background:#e5ece6;border-radius:8px;height:46px;align-items:center}.tabs a{padding:7px 14px;text-decoration:none;color:var(--muted);font-size:.85rem;border-radius:5px}.tabs a[aria-current]{background:var(--surface);color:var(--ink);font-weight:600}.agenda-day{background:var(--surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}.agenda-labels,.appointment-row{display:grid;grid-template-columns:110px minmax(0,1fr) 190px 130px;align-items:center;gap:24px;padding:23px 28px}.agenda-labels{background:#edf1eb;padding-top:12px;padding-bottom:12px;font-size:.75rem;color:var(--muted)}.appointment-row{text-decoration:none;color:var(--ink);border-top:1px solid var(--line);min-height:99px}.appointment-row:hover{background:#f5f8f1}.appointment-time,.appointment-client{display:flex;flex-direction:column;min-width:0}.appointment-time strong{font-size:1.35rem;font-weight:600;font-variant-numeric:tabular-nums}.appointment-client strong{font-size:1rem;overflow-wrap:anywhere}.appointment-client>span{font-size:.83rem;color:var(--muted)}.appointment-time small{font-size:.74rem}.appointment-pro{display:flex;align-items:center;gap:10px;font-size:.85rem}.avatar{display:grid;place-items:center;width:32px;height:32px;background:var(--soft);color:var(--brand);border-radius:50%;font-weight:600}.is-cancelled .appointment-client>strong{text-decoration:line-through}.is-cancelled{color:var(--muted)}.block-row{display:flex;justify-content:space-between;gap:20px;padding:18px 28px;background:#fbf1da;color:#695426;text-decoration:none;border-bottom:1px solid #e8d7b2;font-size:.85rem}.weekly{display:grid;grid-template-columns:1fr 1fr;gap:24px}.weekly .agenda-day>h2{padding:18px 24px;margin:0;background:var(--soft);font-size:1rem}.weekly .agenda-labels{display:none}.weekly .appointment-row{grid-template-columns:70px 1fr auto;gap:12px;padding:18px}.weekly .appointment-pro{grid-column:2;font-size:.75rem}.weekly .status{grid-column:3;grid-row:1/3}.weekly .appointment-time{grid-row:1/3}.weekly .avatar{display:none}.weekly .block-row{flex-direction:column;gap:5px}.install-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0 0;color:var(--muted);font-size:.84rem}.install-panel p{margin:4px 0 0;max-width:90ch}.install-panel strong{color:var(--ink)}.detail-summary{position:static}.status-actions{margin:18px 0 35px}.status-actions .cancel-box{margin:0 0 0 auto}.settings-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:64px;row-gap:48px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.section-heading h2{margin:0}.section-heading a{font-size:.85rem}.settings-grid section>p{font-size:.87rem;color:var(--muted);margin:18px 0}.setting-row{display:flex;flex-direction:column;gap:5px;padding:18px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:.9rem}.setting-row:hover{background:var(--soft)}.setting-row span{color:var(--muted);font-size:.8rem}.setting-row.compact{flex-direction:row;justify-content:space-between;padding:13px 0;font-size:.82rem;gap:12px}.small-empty{padding:24px;margin-top:20px}.small-empty p{margin:0}.login-layout{max-width:1000px;display:grid;grid-template-columns:1fr 1fr;gap:90px;margin:45px auto;align-items:center}.login-form{background:var(--surface);padding:32px;border:1px solid var(--line);border-radius:var(--radius)}.login-form h2{margin-bottom:28px}.text-button{border:0;background:transparent;color:var(--muted);font-size:.85rem;padding:8px;min-height:44px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--surface);padding:12px}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}[hidden]{display:none!important}
@media(max-width:1000px){.booking-layout{gap:36px;grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr)}.header{padding:20px 32px}.header nav{gap:16px}.header-note{display:none}.agenda-tools{flex-wrap:wrap;gap:16px}.agenda-filter{max-width:none}.agenda-labels,.appointment-row{grid-template-columns:80px minmax(0,1fr) 130px 110px;gap:14px;padding-left:20px;padding-right:20px}.slot-filter{flex-wrap:wrap}.slot-filter .button{width:100%}.manage-layout{gap:42px}.settings-grid{gap:38px}.login-layout{gap:40px}}
@media(max-width:700px){.header{padding:17px 20px;min-height:84px;gap:16px;flex-wrap:wrap}.brand{font-size:.96rem}.brand svg,.brand img{width:34px;height:34px}.header nav{font-size:.78rem;gap:15px}.public .header nav{margin-left:auto}.public .header .quiet-link{font-size:.72rem}.internal .header nav{width:100%;justify-content:space-between}.internal .header .quiet-link{display:none}.demo{font-size:.65rem;padding:6px 14px}.container{width:calc(100% - 40px);padding:30px 0 40px}.footer{width:calc(100% - 40px);flex-direction:column;gap:6px;padding:20px 0}.steps{gap:18px;justify-content:space-between;margin-bottom:30px;font-size:.72rem}.steps li{gap:6px}.steps li span{width:23px;height:23px}.booking-layout{display:flex;flex-direction:column;gap:30px}.booking-layout>section,.booking-layout>aside{width:100%}h1{font-size:2.25rem}.lead{font-size:1rem;margin-bottom:26px}.brand-panel{min-height:0;padding:28px}.brand-panel h2{font-size:1.9rem;margin-top:0}.brand-symbol{display:none}.panel-bottom{padding-top:18px}.service-list{margin-top:28px}.service-row{padding:23px 0;gap:16px}.service-copy>strong{font-size:1.13rem}.service-copy>span{font-size:.83rem}.service-price{font-size:.93rem;gap:9px}.service-price svg{width:20px}.summary{position:static;padding:24px}.slot-filter{gap:12px}.slot-filter .field{min-width:130px}.date-strip{gap:5px}.date-strip a{padding:9px 2px}.time-grid{grid-template-columns:repeat(3,1fr);gap:10px}.manage-layout{display:block;margin:0}.management{padding-top:35px}.manage-layout h1{font-size:2.1rem}.confirmation{padding:24px}.change-comparison{gap:12px}.change-comparison>div{padding:20px 16px}.change-comparison strong{font-size:.95rem}.page-heading{align-items:start;flex-direction:column;gap:20px}.internal h1{font-size:2.2rem}.page-heading .actions{width:100%}.page-heading .actions a{flex:1;padding-left:10px;padding-right:10px;font-size:.83rem}.agenda-tools{gap:16px;padding:10px 0 22px}.date-navigation{order:1}.tabs{order:2;margin-left:auto}.agenda-filter{order:3;width:100%;flex:auto;gap:8px}.agenda-filter .field{min-width:0}.agenda-filter input,.agenda-filter select{padding:10px 7px;font-size:.85rem}.agenda-filter .button{padding:10px}.agenda-labels{display:none}.appointment-row{grid-template-columns:62px minmax(0,1fr) auto;gap:4px 10px;padding:20px 14px;min-height:112px}.appointment-time{grid-row:1/3}.appointment-time strong{font-size:1.2rem}.appointment-client strong{font-size:.9rem}.appointment-client>span{font-size:.76rem}.appointment-pro{grid-column:2;font-size:.74rem}.appointment-pro .avatar{display:none}.appointment-row .status{grid-column:3;grid-row:1/3;font-size:.63rem;padding:4px 6px}.block-row{padding:16px;flex-direction:column;gap:5px}.weekly{grid-template-columns:1fr;gap:20px}.weekly .appointment-row{grid-template-columns:62px minmax(0,1fr) auto}.install-panel{flex-direction:column;align-items:start}.settings-grid{grid-template-columns:1fr;gap:36px}.section-heading a{font-size:.79rem}.section-heading h2{font-size:1.14rem}.setting-row.compact{font-size:.77rem}.login-layout{display:block;margin:10px 0}.login-form{margin-top:35px;padding:24px}.empty{padding:30px 20px}.back{font-size:.81rem}.status-actions{gap:10px}.status-actions .cancel-box{margin:0}.narrow{margin-top:0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

@media(max-width:700px){.confirm-layout>.summary{order:-1}.confirm-layout .summary{padding:22px}.confirm-layout .summary>h2{margin-bottom:16px}.confirm-layout .summary-service{margin-bottom:18px}.confirm-layout .summary>p{margin-top:18px}.confirm-layout .summary-note{margin-top:18px;padding-top:16px}}
