:root{--ink:#1b3933;--green:#174d42;--muted:#74827c;--line:#e4e8e1;--paper:#fff;--bg:#f7f8f3;--lime:#d5e9aa;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,label{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}svg{display:block}h1,h2,h3,p{margin:0}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #79a58c;outline-offset:4px}input[type=radio]:focus-visible+span{outline:3px solid #79a58c;outline-offset:3px}[hidden]{display:none!important}.site-header{background:#ffffffd9;border-bottom:1px solid var(--line)}.header-inner{max-width:1160px;margin:auto;height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--green);color:var(--lime)}.brand-mark svg{width:26px}.brand-name{font-size:29px;font-weight:650;letter-spacing:-1.3px;line-height:1}.brand-name>span{display:block;font-size:8px;font-weight:600;letter-spacing:2.1px;margin-top:8px;color:#728277}nav{display:flex;align-items:center;gap:8px}.nav-link{padding:12px 17px;border-radius:8px;color:#61746a;font-size:13px;font-weight:550}.nav-link span{margin-left:8px}.nav-link:hover{background:#eef3e9}.nav-link.active{background:#edf2e8;color:var(--green)}.page-shell{max-width:1160px;margin:auto;padding:43px 24px 56px}.page-intro{position:relative;margin-bottom:34px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;display:flex;gap:8px;align-items:center;color:#4f7060}.live-dot{width:6px;height:6px;background:#7f9f63;display:inline-block;border-radius:50%;flex-shrink:0}.page-intro h1{font-family:var(--serif);font-weight:400;font-size:53px;line-height:1.08;letter-spacing:-1.8px;margin-top:17px}.page-intro h1 span{color:#5a806c}.intro-text{color:#728075;font-size:14px;line-height:1.7;margin-top:16px}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 302px;gap:28px;align-items:start}.booking-card{background:var(--paper);border:1px solid var(--line);border-radius:17px;box-shadow:0 6px 24px #24473103;min-width:0}.card-heading{padding:28px 30px 25px;display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid var(--line)}h2{font-size:19px;font-weight:600;letter-spacing:-.4px}.card-heading p{font-size:12px;color:var(--muted);line-height:1.6;margin-top:7px}.duration-pill{font-size:10px;white-space:nowrap;font-weight:600;color:#677661;border:1px solid #e2e8db;background:#f5f7ef;border-radius:20px;padding:7px 10px;display:inline-flex;align-items:center;gap:5px}.form-section{margin:0 30px;border:0;border-bottom:1px solid var(--line);padding:26px 0 27px;min-width:0;display:flow-root}.form-section legend{float:left;width:100%;display:flex;align-items:center;gap:10px;padding:0;margin-bottom:18px;font-size:14px;font-weight:600}.step-number{width:25px;height:25px;border-radius:50%;display:inline-flex;justify-content:center;align-items:center;background:#eff3e9;color:#547155;font-size:10px;font-weight:700}.doctor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;clear:both}.doctor-card{position:relative;cursor:pointer;min-width:0}.doctor-card input,.slot-option input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.doctor-content{padding:17px 13px;display:flex;flex-direction:column;align-items:flex-start;border:1px solid #e2e7df;border-radius:10px;background:#fff;position:relative;transition:.15s}.doctor-card input:checked+.doctor-content{border-color:#577b63;background:#f3f7ee;box-shadow:0 0 0 1px #577b631a}.doctor-card:hover .doctor-content{border-color:#8aa389}.avatar{width:41px;height:41px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:15px;font-weight:500;letter-spacing:-.6px;flex-shrink:0}.sage{background:#dce9d9;color:#486952}.sand{background:#efe2cf;color:#836b46}.lilac{background:#e5e1ee;color:#706082}.doctor-name{font-weight:600;font-size:12px;margin-top:12px;white-space:nowrap}.doctor-specialty{font-size:10px;color:#7c897e;margin-top:5px;line-height:1.4}.selection-dot{position:absolute;top:17px;right:13px;border:1px solid #d7dfd2;width:14px;height:14px;border-radius:50%}.doctor-card input:checked+.doctor-content .selection-dot{border:4px solid var(--green);background:white}.date-row{clear:both;display:flex;align-items:center;gap:24px;margin-bottom:24px}.date-field{width:235px;max-width:100%}label,.slot-heading>label{font-size:12px;font-weight:550}input[type=date],input[type=text],input[type=tel]{display:block;margin-top:8px;width:100%;height:46px;border:1px solid #dfe5dc;border-radius:7px;color:var(--ink);padding:0 13px;background:#fff;min-width:0;color-scheme:light}input::placeholder{color:#a0a99e;font-size:12px}input:hover{border-color:#9baa93}input:focus{border-color:#608066}.date-hint{font-size:11px;line-height:1.8;color:#8a958a;margin-top:19px}.slot-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px;gap:12px}.slot-heading span{font-size:10px;color:#7d8e72}.slot-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.slot-option{position:relative;cursor:pointer}.slot-option>span{display:flex;align-items:center;justify-content:center;min-height:38px;padding:8px 3px;border:1px solid #e1e6dc;border-radius:6px;font-size:11px;font-weight:500;color:#5e7564;white-space:nowrap;transition:.15s}.slot-option:hover>span{border-color:#779571;background:#f2f6eb}.slot-option input:checked+span{background:var(--green);border-color:var(--green);color:#fff}.field-note{font-size:10px;color:#8b9788;line-height:1.6;margin-top:13px}.field-note>span{margin-right:4px;font-size:13px}.slot-message{background:#f3f6ed;border-radius:8px;padding:18px;font-size:12px;color:#697c63;line-height:1.7}.details-section{border-bottom:0}.details-grid{clear:both;display:grid;grid-template-columns:1fr 1fr;gap:17px}.input-hint{font-size:9px;color:#8f9a8b;display:block;margin-top:7px;line-height:1.5}.form-bottom{padding:0 30px 22px}.primary-button{display:flex;align-items:center;justify-content:center;gap:24px;width:100%;min-height:48px;border:1px solid var(--green);border-radius:8px;background:var(--green);color:#fff;font-size:12px;font-weight:550;transition:.15s}.primary-button:hover{background:#103e34}.primary-button:disabled{background:#dfe7da;border-color:#dfe7da;color:#6e826a}.primary-button>span{font-size:19px;line-height:1}.privacy-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:9px;color:#93a18b;margin-top:13px}.privacy-note svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.3}.visit-sidebar{position:sticky;top:24px}.care-card{overflow:hidden;border-radius:16px;padding:28px;background:#eaf0df;position:relative}.care-art{height:103px;display:flex;align-items:center;position:relative;margin-top:-5px}.care-art svg{width:54px;height:54px;stroke:#386251;stroke-width:5;fill:none;stroke-linecap:round;position:relative;z-index:1}.orbit{width:104px;height:104px;border-radius:50%;border:1px solid #d6e1c8;position:absolute;left:-25px;top:0}.orbit-two{width:80px;height:80px;left:-13px;top:12px;border:1px dashed #d0ddbf}.care-card .eyebrow{font-size:8px;letter-spacing:1.2px;margin:23px 0 14px;color:#768963}.care-card h2{font-family:var(--serif);font-size:32px;font-weight:400;line-height:1.12;letter-spacing:-.6px}.care-card>p:not(.eyebrow){font-size:11px;color:#829171;line-height:1.8;margin-top:13px}.care-divider{height:1px;background:#d7e0ca;margin:29px 0 23px}.care-card h3{font-size:12px;font-weight:600}.visit-summary{margin:18px 0 0}.visit-summary>div{padding:0 0 17px}.visit-summary dt{font-size:9px;color:#849274;margin-bottom:5px}.visit-summary dd{font-size:11px;margin:0;line-height:1.6}.reservation-note{display:flex;align-items:center;gap:7px;font-size:9px;color:#71875e;padding-top:2px}.help-card{display:flex;gap:12px;padding:23px 12px;align-items:flex-start}.help-icon{font-size:24px;color:#739364;line-height:1}.help-card h3{font-size:11px;font-weight:600;margin-bottom:6px}.help-card p{font-size:10px;color:#8b9784;line-height:1.8}.site-footer{max-width:1112px;margin:auto;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#899784;padding:22px 0 27px}.footer-dot{margin:0 7px}.form-error{margin:22px 30px 0;padding:14px 16px;background:#fff4ec;border:1px solid #ead4bd;border-radius:8px;color:#8f5737;line-height:1.7;font-size:12px}.form-error strong,.form-error span{display:block}.confirmation-wrap{max-width:570px;margin:15px auto 8px}.confirmation-intro{text-align:center}.success-icon{margin:0 auto 23px;border:1px solid #dae5cf;background:#ecf3e3;width:72px;height:72px;border-radius:50%;display:grid;place-items:center}.success-icon svg{width:36px;fill:none;stroke:#487552;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.confirmation-intro .eyebrow{justify-content:center;font-size:9px}.confirmation-intro h1{font-family:var(--serif);font-size:45px;font-weight:400;letter-spacing:-1.5px;margin:15px 0}.confirmation-intro>p:last-child{font-size:13px;color:#7e8c77;line-height:1.8;overflow-wrap:anywhere}.confirmation-card{margin-top:31px;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.confirmation-top{padding:19px 25px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:12px}.status-badge{display:inline-flex;align-items:center;gap:6px;color:#668050;background:#f0f5e9;padding:7px 9px;border-radius:20px;font-size:10px;font-weight:500}.reference{font-family:monospace;font-size:10px;letter-spacing:1px;color:#8a9683}.confirmed-doctor{display:flex;align-items:center;gap:13px;padding:25px 25px 0}.confirmed-doctor h2{font-size:16px}.confirmed-doctor p{font-size:11px;color:#88927f;margin-top:5px}.confirmed-doctor .avatar{width:46px;height:46px;font-size:17px}.confirmed-doctor .duration-pill{margin-left:auto}.confirmation-details{padding:24px 25px 0;margin:0}.confirmation-details>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:15px;padding:13px 0;border-bottom:1px solid #eef0e9;font-size:12px}.confirmation-details>div:last-child{border:0}.confirmation-details dt{color:#8a9780;font-size:11px}.confirmation-details dd{margin:0;font-weight:500;overflow-wrap:anywhere}.timezone{font-size:9px;color:#8b9b82;font-weight:400;margin-left:4px}.confirmation-note{margin-top:16px;background:#f4f7ee;padding:18px 25px;display:flex;gap:10px;font-size:10px;color:#7d906c;line-height:1.7}.confirmation-note>span{color:#4c744b;font-size:14px}.confirmation-button{margin:23px auto 0;width:310px;max-width:100%}.confirmation-footnote{font-size:10px;color:#8a9880;text-align:center;margin:13px 0 0;line-height:1.6}.admin-intro{display:flex;justify-content:space-between;align-items:center;margin:12px 0 33px;gap:20px}.admin-intro h1{font-family:var(--serif);font-weight:400;font-size:44px;letter-spacing:-1.5px;margin-top:17px}.workspace-badge{border:1px solid #dce3d5;border-radius:20px;padding:9px 13px;font-size:11px;color:#7a8d6c}.admin-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;border-top:1px solid var(--line)}.schedule-day h2{font-size:18px}.schedule-day>span{font-size:10px;color:#8b9980;display:block;margin-top:7px}.date-navigation{display:flex;align-items:center;gap:7px}.admin-date-form{display:flex;gap:7px;align-items:center}.admin-date-form input{margin:0;width:160px;height:40px;font-size:11px}.icon-button{border:1px solid #dce3d5;background:#fff;display:flex;align-items:center;justify-content:center;min-width:38px;min-height:40px;border-radius:7px;color:#7e8c70;font-size:16px}.secondary-button{min-height:40px;border-radius:7px;padding:11px 14px;border:1px solid #dce3d5;background:white;font-size:11px;color:#5f7851;display:inline-flex;align-items:center;justify-content:center;gap:12px;white-space:nowrap}.secondary-button:hover,.icon-button:hover{background:#edf3e6}.today-link{font-size:11px;text-decoration:underline;text-underline-offset:3px;margin-left:8px;color:#6b825c}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:7px 0 26px}.stat-card{border:1px solid var(--line);border-radius:11px;padding:21px 24px;background:#fff}.stat-card>span{font-size:11px;color:#7f8f73}.stat-card strong{display:flex;gap:11px;align-items:baseline;font-size:33px;font-weight:500;margin-top:9px;color:#416347}.stat-card small{font-size:10px;color:#9ba78f;font-weight:400}.schedule-card{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.schedule-heading{padding:24px;display:flex;align-items:center;justify-content:space-between;gap:12px}.schedule-heading h2{font-size:16px}.booking-table{border-collapse:collapse;width:100%;text-align:left}.booking-table th{background:#f8faf5;border-top:1px solid #eef1e7;border-bottom:1px solid #eef1e7;padding:14px 22px;font-weight:500;font-size:10px;color:#8c9b81}.booking-table td{padding:22px;font-size:12px;border-bottom:1px solid #eef1e7;overflow-wrap:anywhere;max-width:260px;vertical-align:middle}.booking-table td>span:not(.status-badge){display:block;font-size:9px;color:#95a088;margin-top:6px;font-weight:400}.booking-table .table-time{font-weight:600;white-space:nowrap}.table-patient{font-weight:550}.phone-link:hover{text-decoration:underline}.schedule-footnote{padding:17px 24px;display:flex;gap:7px;align-items:center;font-size:10px;color:#8c9b81;background:#fcfdf9}.empty-schedule{text-align:center;padding:40px 20px 49px;border-top:1px solid #eef1e7}.empty-icon{display:grid;place-items:center;border-radius:50%;background:#f0f5e9;width:55px;height:55px;font-size:29px;color:#8a9e72;margin:auto auto 17px}.empty-schedule h3{font-size:16px;font-weight:500}.empty-schedule p{font-size:12px;line-height:1.8;color:#8b9980;margin:10px 0 21px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1000px){.page-intro .intro-text{position:absolute;right:116px;bottom:6px;max-width:380px}.page-intro{margin-bottom:38px}}
@media(max-width:1000px){.booking-layout{grid-template-columns:minmax(0,1fr) 270px;gap:20px}.slot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.doctor-grid{gap:8px}.doctor-content{padding:14px 9px}.doctor-name{font-size:11px}.selection-dot{right:9px}.admin-controls{align-items:flex-start;flex-direction:column}.site-footer{margin-left:24px;margin-right:24px}}
@media(max-width:800px){.booking-layout{grid-template-columns:1fr}.visit-sidebar{position:static}.care-card{display:none}.help-card{padding:1px 7px 0}.page-shell{max-width:720px}.booking-table td,.booking-table th{padding-left:15px;padding-right:15px}.site-footer{max-width:672px;margin:auto 24px}.admin-intro h1{font-size:38px}.stat-card{padding:19px}.workspace-badge{display:none}.booking-table td{font-size:11px}.page-intro h1{font-size:48px}}
@media(max-width:560px){.header-inner{height:79px;padding:0 20px}.brand-mark{width:33px;height:33px;border-radius:10px}.brand-mark svg{width:22px}.brand-name{font-size:25px}.brand-name>span{font-size:6px;letter-spacing:1.5px;margin-top:6px}.brand{gap:8px}nav{gap:2px}.nav-link{font-size:10px;padding:11px 8px}.nav-link span{margin-left:3px}.page-shell{padding:31px 18px 35px}.page-intro{margin-bottom:25px}.eyebrow{font-size:8px;letter-spacing:1.5px}.page-intro h1{font-size:41px;letter-spacing:-1.4px;margin-top:16px}.intro-text{font-size:12px;margin-top:13px;line-height:1.8}.desktop-break{display:none}.booking-card{border-radius:13px}.card-heading{padding:23px 19px;align-items:flex-start}.card-heading h2{font-size:16px}.card-heading p{font-size:10px;max-width:175px}.duration-pill{font-size:8px;padding:7px 8px}.form-section{margin:0 19px;padding:23px 0}.form-section legend{font-size:13px}.doctor-grid{grid-template-columns:1fr;gap:8px}.doctor-content{min-height:74px;padding:15px 39px 15px 65px;justify-content:center}.doctor-content .avatar{position:absolute;left:13px;top:16px;width:38px;height:38px}.doctor-name{font-size:12px;margin:0}.doctor-specialty{font-size:10px;margin-top:5px}.selection-dot{top:28px;right:16px;width:16px;height:16px}.date-row{gap:12px;align-items:flex-end}.date-field{width:190px;flex:1}.date-hint{font-size:9px;line-height:1.7;margin-bottom:5px;flex-shrink:0}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.slot-option>span{min-height:43px;font-size:11px}.slot-heading span{font-size:9px}.field-note{font-size:9px;margin-top:14px}.details-grid{grid-template-columns:1fr;gap:19px}.input-group label,.date-field label{font-size:11px}input[type=date],input[type=text],input[type=tel]{font-size:16px;height:47px}.input-hint{font-size:9px}.form-bottom{padding:0 19px 20px}.primary-button{font-size:12px;min-height:49px}.privacy-note{font-size:8px;line-height:1.5}.help-card{padding-top:0}.site-footer{margin:0 18px;padding:19px 0 22px;font-size:8px;gap:12px}.form-error{margin:18px 19px 0;padding:12px;font-size:11px}.confirmation-wrap{margin:1px auto 7px}.success-icon{width:65px;height:65px;margin-bottom:23px}.confirmation-intro h1{font-size:36px;letter-spacing:-1px}.confirmation-intro>p:last-child{font-size:12px}.confirmation-card{margin-top:24px}.confirmation-top{padding:18px}.reference{font-size:9px;letter-spacing:.5px}.confirmed-doctor{padding:23px 18px 0;gap:10px}.confirmed-doctor h2{font-size:14px}.confirmed-doctor p{font-size:10px}.confirmed-doctor .avatar{width:38px;height:38px;font-size:14px}.confirmation-details{padding:19px 18px 0}.confirmation-details>div{grid-template-columns:1fr;gap:7px;padding:14px 0;font-size:12px}.confirmation-details dt{font-size:10px}.confirmation-note{padding:17px 18px;font-size:10px}.confirmation-button{width:100%;margin-top:20px}.confirmation-footnote{font-size:9px}.admin-intro{margin:4px 0 23px}.admin-intro h1{font-size:35px;letter-spacing:-1px;margin-top:14px}.admin-intro .intro-text{font-size:12px}.admin-controls{padding:20px 0;gap:19px}.schedule-day h2{font-size:16px}.date-navigation{flex-wrap:wrap;width:100%;gap:6px}.admin-date-form{flex:1;gap:6px}.admin-date-form input{width:100%;min-width:0;font-size:12px;flex:1;height:44px}.admin-date-form .secondary-button{min-height:44px;padding:9px 10px;font-size:10px}.icon-button{min-width:33px;min-height:44px}.today-link{width:100%;margin:6px 0 0;text-align:right;font-size:11px}.stats-grid{gap:8px;margin:2px 0 19px}.stat-card{padding:15px 11px;border-radius:8px}.stat-card>span{font-size:9px;line-height:1.5;display:block;min-height:27px}.stat-card strong{font-size:27px;display:block;margin-top:7px}.stat-card small{display:block;font-size:8px;margin-top:4px}.schedule-heading{padding:20px 17px}.schedule-heading h2{font-size:15px}.booking-table,.booking-table tbody{display:block}.booking-table thead{display:none}.booking-table tr{display:block;border-top:1px solid var(--line);padding:9px 17px 17px}.booking-table td{display:flex;align-items:center;gap:14px;width:100%;max-width:none;border:0;padding:10px 0;font-size:12px;flex-wrap:wrap}.booking-table td::before{content:attr(data-label);width:82px;flex-shrink:0;font-size:10px;color:#8b9b7e;font-weight:400}.booking-table td>span:not(.status-badge){font-size:9px;margin:0 0 0 auto}.booking-table td[data-label=Doctor]>span{width:100%;padding-left:96px;margin:-5px 0 0}.booking-table .table-patient{font-size:13px}.schedule-footnote{padding:16px 17px;font-size:9px;line-height:1.6}.empty-schedule{padding:33px 20px}.empty-schedule p{font-size:11px}.table-wrap{overflow:visible}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
