:root{--forest:#173e37;--ivory:#faf9f5;--sage:#edf0e9;--copper:#ad5b43;--ink:#203c34;--muted:#56665f;--border:#d7ded4;--serif:Georgia, "Times New Roman", serif;--sans:"Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0}body{background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65}.banner{background:var(--forest);color:#e8efe9;text-align:center;letter-spacing:.06em;padding:8px 16px;font-size:12px}.wrap{width:calc(100% - 96px);max-width:1220px;margin:0 auto;padding-block:80px}.eyebrow{letter-spacing:.18em;color:var(--forest);margin:0 0 20px;font-size:11px;font-weight:700}h1{font-family:var(--serif);letter-spacing:-.04em;margin:0 0 24px;font-size:clamp(44px,6vw,80px);font-weight:400;line-height:1.05}h1 em{color:var(--copper)}.lede{color:var(--muted);max-width:620px;margin:0 0 36px;font-size:19px}.button{background:var(--forest);color:#fff;border-radius:999px;padding:15px 26px;font-size:15px;text-decoration:none;display:inline-block}.button:hover{background:#10302a}:focus-visible{outline:3px solid var(--copper);outline-offset:4px}@media (width<=760px){.wrap{width:calc(100% - 40px);padding-block:48px}.lede{font-size:17px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}h2{font-family:var(--serif);letter-spacing:-.02em;margin:0 0 8px;font-size:28px;font-weight:400}.narrow{max-width:520px}.muted{color:var(--muted)}.hint{color:var(--muted);margin:0 0 16px;font-size:15px}.notice{background:var(--sage);border:1px solid var(--border);border-radius:12px;padding:12px 16px;font-size:15px}.notice.top{margin-top:24px;margin-bottom:0}.error{color:#9b2c1f;min-height:1px;font-size:15px}.error ul,.ok ul{margin:8px 0 0;padding-left:20px}.ok{color:var(--forest);min-height:1px;font-size:15px}label{margin:0 0 16px;font-size:14px;font-weight:600;display:block}input,select,textarea{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #b9c4b8;border-radius:10px;margin-top:6px;padding:10px 12px;font-size:16px;font-weight:400;display:block}textarea{resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--copper);outline-offset:1px}fieldset{border:0;min-width:0;margin:0;padding:0}fieldset:disabled input,fieldset:disabled select,fieldset:disabled textarea{background:#f3f4f1}label.check{align-items:center;gap:10px;font-size:16px;font-weight:400;display:flex}label.check input{width:auto;margin:0}button.button{cursor:pointer;font:inherit;border:0;font-size:15px}button.button:disabled{opacity:.55;cursor:default}.button.secondary{color:var(--forest);border:1px solid var(--forest);background:0 0;padding:10px 20px}.link{color:var(--forest);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:15px;text-decoration:underline}.link:disabled{color:var(--muted);cursor:default;text-decoration:none}.link.danger{color:#9b2c1f}.staff-signin form{margin-top:8px}.staff-signin h1{font-size:clamp(36px,5vw,52px)}.qr{border:1px solid var(--border);border-radius:8px;width:220px;height:220px;margin:8px 0 16px;display:block}.secret{letter-spacing:.05em;word-break:break-all;margin:8px 0 16px;font-size:15px;display:inline-block}details{margin-bottom:16px;font-size:15px}.staff-header{border-bottom:1px solid var(--border);background:#fff}.staff-bar{flex-wrap:wrap;align-items:center;gap:16px;padding-block:14px;display:flex}.staff-bar .muted{flex:1;font-size:14px}.tabs{gap:4px;padding-block:0;display:flex}.tabs button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:10px 14px;font-size:15px}.tabs button[aria-current=page]{color:var(--forest);border-bottom-color:var(--forest);font-weight:600}.staff-main{padding-block:40px 80px}.staff-title{font-size:clamp(32px,4vw,44px)}.section{border-top:1px solid var(--border);padding:28px 0 12px}.grid2{grid-template-columns:1fr 1fr;gap:0 24px;display:grid}.card{border:1px solid var(--border);background:#fff;border-radius:14px;margin-bottom:16px;padding:20px 20px 4px}.row{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:12px;display:flex}.row>label{flex:180px}.row>.link,.row>.button{margin-bottom:16px}.hours-row{border-bottom:1px solid #eceee8;grid-template-columns:140px 1fr;align-items:center;gap:16px;padding:10px 0;display:grid}.hours-row .day{font-size:15px;font-weight:600}.ranges{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.range{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.range input{width:140px;margin:0}.publish-bar{background:var(--ivory);border-top:1px solid var(--border);z-index:1;flex-wrap:wrap;align-items:center;gap:20px;padding:16px 0;display:flex;position:sticky;bottom:0}.history{border-collapse:collapse;width:100%;font-size:14px}.history th,.history td{text-align:left;vertical-align:top;border-bottom:1px solid #eceee8;padding:8px 10px 8px 0}.days{margin:16px 0;padding:0;list-style:none}.days li{border-bottom:1px solid #eceee8;grid-template-columns:140px 1fr;gap:16px;padding:12px 0;display:grid}.slots{flex-wrap:wrap;gap:8px;display:flex}.slot{border:1px solid var(--border);background:#fff;border-radius:999px;padding:2px 12px;font-size:14px}@media (width<=760px){.grid2{grid-template-columns:1fr}.hours-row,.days li{grid-template-columns:1fr;gap:6px}.tabs{overflow-x:auto}}h1[tabindex="-1"]:focus{outline:none}.publish-status{flex-basis:100%;max-height:30vh;overflow-y:auto}.publish-status:empty{display:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.small{font-size:14px}.site-header{border-bottom:1px solid var(--border);background:var(--ivory)}.header-bar{padding-block:18px}.brand{font-family:var(--serif);color:var(--forest);font-size:20px;text-decoration:none}.booking-wrap{padding-block:40px 80px}.booking{grid-template-columns:260px 1fr;align-items:start;gap:56px;display:grid}.booking-steps{background:var(--sage);border-radius:18px;padding:24px;position:sticky;top:24px}.booking-steps ol{margin:0 0 20px;padding:0;list-style:none}.booking-steps li{color:var(--muted);gap:12px;padding:8px 0;font-size:15px;display:flex}.booking-steps li span{letter-spacing:.08em;padding-top:3px;font-size:12px;font-weight:700}.booking-steps li[aria-current=step]{color:var(--forest);font-weight:700}.booking-steps li.done{color:var(--ink)}.step-count{display:none}.booking-main h2{margin-bottom:12px;font-size:clamp(30px,4vw,42px)}.booking-main h2:focus{outline:none}.booking-main h3{font-family:var(--serif);margin:24px 0 6px;font-size:22px;font-weight:400}.choices{gap:12px;margin:20px 0 24px;display:grid}.choice{text-align:left;border:1px solid var(--border);font:inherit;color:var(--ink);cursor:pointer;background:#fff;border-radius:14px;align-items:flex-start;gap:14px;padding:18px;display:flex}.choice.selected{border-color:var(--forest);box-shadow:inset 0 0 0 1px var(--forest)}.choice .radio{border:2px solid var(--muted);border-radius:50%;flex:none;width:18px;height:18px;margin-top:3px}.choice.selected .radio{border:6px solid var(--forest)}.choice small{color:var(--muted);margin-top:2px;font-size:15px;display:block}.visit-summary{border-left:3px solid var(--copper);background:#fff;margin-bottom:24px;padding:4px 20px 8px}.hold-timer{background:var(--sage);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:10px 16px;font-size:15px;display:flex}.hold-timer.urgent{background:#f6e6df}.week-nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;display:flex}.week-nav .button.secondary{padding:8px 16px}.slot-button{font:inherit;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #b9c4b8;border-radius:999px;min-height:40px;padding:6px 14px;font-size:15px}.slot-button:hover{border-color:var(--forest)}.slot-button.selected{background:var(--forest);color:#fff;border-color:var(--forest)}.slot-button:disabled{opacity:.6;cursor:default}.booking-days li{align-items:start}.radios{margin:0 0 20px}.radios legend,.question legend{margin-bottom:8px;font-size:15px;font-weight:600}.radios .check,.question .check{margin-bottom:8px}.question{border-bottom:1px solid #eceee8;flex-wrap:wrap;gap:6px 24px;margin:0;padding:12px 0;display:flex}.question legend{float:left;width:100%;margin-bottom:6px;font-size:16px;font-weight:400}.question .check{margin:0}.field{margin-bottom:4px}.field-hint{color:var(--muted);font-size:13px;font-weight:400;display:block}.field-error{color:#9b2c1f;margin:-10px 0 14px;font-size:14px}.field.invalid input,.field.invalid select{border-color:#9b2c1f}.emergency{background:#f6e6df;border-radius:12px;padding:12px 16px;font-weight:600}.summary{margin:16px 0 8px}.summary div{border-bottom:1px solid #eceee8;grid-template-columns:160px 1fr;gap:12px;padding:10px 0;display:grid}.summary dt{color:var(--muted);font-size:15px}.summary dd{margin:0}.summary .link{margin-left:8px;font-size:14px}.booking-main .notice{margin:16px 0}@media (width<=900px){.booking{grid-template-columns:1fr;gap:20px}.booking-steps{padding:14px 18px;position:static}.booking-steps ol,.booking-steps .small{display:none}.booking-steps .eyebrow{margin-bottom:4px}.step-count{margin:0;font-weight:600;display:block}.summary div{grid-template-columns:1fr;gap:2px}}.account-wrap{max-width:860px;padding-block:40px 80px}.account-wrap h2{margin-top:40px;font-size:30px}.account-wrap section>h2:first-of-type{margin-top:8px}.form-list{margin:16px 0;padding:0;list-style:none}.form-list li{border-bottom:1px solid #eceee8;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;display:flex}.form-list li>div:first-child{flex:300px}.form-list p{margin:4px 0 0}.form-status{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.status{color:var(--muted);font-size:14px}.status-todo{color:var(--copper);font-weight:600}.pill{letter-spacing:.06em;text-transform:uppercase;background:var(--sage);border:1px solid var(--border);vertical-align:2px;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:700;display:inline-block}.account-actions{gap:24px;margin-top:32px}.form-section{border-top:1px solid var(--border);margin:0 0 16px;padding-top:16px}.form-section>legend{font-family:var(--serif);margin-bottom:12px;padding:0;font-size:22px}.radios.invalid legend{color:#9b2c1f}.scale-row{flex-wrap:wrap;gap:6px;display:flex}.scale-option{flex-direction:column;align-items:center;gap:2px;min-width:34px;margin:0;font-weight:400;display:flex}.scale-option input{width:auto;margin:0}.scale-labels{color:var(--muted);justify-content:space-between;max-width:460px;margin-top:6px;font-size:13px;display:flex}.document{border:1px solid var(--border);background:#fff;border-radius:14px;margin:16px 0 24px;padding:8px 24px}.document .statement{font-weight:600}.sign-form{max-width:560px}.answers dd{white-space:pre-wrap}.confirm-box{border:1px solid var(--border);background:#fff;border-radius:12px;margin-top:10px;padding:12px 16px}.confirm-box p{margin:0 0 8px}.inline-date input{width:auto;margin:0}.schedule{margin:12px 0;padding:0;list-style:none}.visit{border-bottom:1px solid #eceee8;grid-template-columns:150px 1fr;gap:16px;padding:16px 0;display:grid}.visit p{margin:0 0 4px}.visit-time{flex-direction:column;display:flex}.visit-cancelled .visit-body{opacity:.6}.visit-actions{gap:10px;margin-top:8px}.visit-actions .button.secondary{padding:6px 14px}@media (width<=760px){.visit{grid-template-columns:1fr;gap:4px}}.plan-card{padding-bottom:16px}.plan-card p{margin:0 0 8px}
