:root{--ink:#203c3a;--green:#174b45;--soft:#eef3ee;--muted:#74817c;--line:#e4e8e1;--paper:#f7f8f3;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.5}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #b27a3e;outline-offset:4px}[hidden]{display:none!important}.skip{position:absolute;top:-80px;left:20px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.demo{background:#e8eddf;color:#405441;text-align:center;font-size:11px;letter-spacing:.3px;padding:8px 16px}.header{max-width:1320px;padding:30px 44px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center}.brand-mark{width:47px;height:47px;border:1px solid #bdc9bf;border-radius:50%;font:38px/40px var(--serif);text-align:center;background:#fff9}.brand strong{font-size:18px;font-weight:600;display:block;letter-spacing:-.5px}.brand small{display:block;font-size:9px;letter-spacing:2.5px;margin-top:2px;color:var(--muted)}.header-note{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:9px}.header-note i,.eyebrow>span{width:6px;height:6px;display:inline-block;background:#7b9270;border-radius:50%}.header-link{font-size:13px;border-bottom:1px solid #9aac9f;padding:7px 0}.header-link span{margin-left:16px}.layout{max-width:1240px;margin:66px auto 62px;display:grid;grid-template-columns:350px minmax(0,1fr);gap:64px;padding:0 24px;align-items:start}.intro{padding-top:24px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;display:flex;gap:10px;align-items:center;color:#718477}h1{font:60px/1.09 var(--serif);letter-spacing:-2px;font-weight:400;margin:26px 0}h1 em{font-weight:400;color:#5f7867}p{margin:0}.lede{color:var(--muted);font-size:14px;line-height:1.9}.intro-rule{width:44px;height:1px;background:#bdc8bb;margin:31px 0}.doctor{display:flex;align-items:center;gap:13px}.monogram{width:45px;height:45px;display:grid;place-items:center;background:#e8ecdf;border-radius:50%;font:19px var(--serif)}.doctor strong{display:block;font-size:14px;font-weight:500}.doctor span{display:block;font-size:11px;color:var(--muted);margin-top:3px}.office-info{margin-top:32px;display:grid;gap:17px}.office-info>div{display:flex;gap:13px;align-items:flex-start}.office-info .icon{font-size:23px;line-height:1.25;color:#779083}.office-info strong{font-size:12px;font-weight:500;display:block}.office-info small{font-size:11px;color:var(--muted);display:block;margin-top:3px}.side-note{display:flex;align-items:center;gap:14px;margin-top:38px;padding:18px 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.side-note>span{font-size:28px;color:#82937d}.side-note strong{font-weight:400;color:#546a5e}.booking-card{background:white;border:1px solid #e3e8de;border-radius:20px;padding:30px 32px 22px;box-shadow:0 14px 50px #283c2c06;scroll-margin-top:20px}.card-top{display:flex;justify-content:space-between;align-items:center}.small-pill{display:flex;align-items:center;gap:6px;font-size:10px;color:#67806e;background:#f1f4ed;padding:5px 10px;border-radius:20px}h2{font-size:25px;font-weight:500;letter-spacing:-.7px;margin:19px 0 7px}.card-description{font-size:12px;color:var(--muted)}.steps{display:flex;justify-content:space-between;gap:10px;margin:27px 0 30px;padding:0 0 24px;border-bottom:1px solid var(--line);list-style:none}.steps li{display:flex;align-items:center;gap:8px;font-size:11px;color:#89928c;white-space:nowrap}.steps li>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#f2f4ef;color:#89928c;font-size:10px}.steps li.active{color:var(--ink);font-weight:600}.steps li.active>span{background:var(--green);color:white}.steps li.done>span{background:#dfeadd;color:var(--green)}.selection-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:26px;min-height:287px}.calendar{padding-right:23px;border-right:1px solid var(--line)}.month-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.month-nav h3,.times h3{font-size:13px;font-weight:500;margin:0}.month-nav>div{display:flex;gap:6px}.month-nav button{width:26px;height:26px;border:1px solid var(--line);background:white;border-radius:6px;font-size:19px;color:var(--ink);line-height:18px}.month-nav button:disabled{opacity:.3}.weekdays,.days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:5px}.weekdays{color:#97a096;font-size:10px;margin-bottom:9px}.days button,.days .empty{aspect-ratio:1/1;min-width:0;padding:0;display:grid;place-items:center}.days button{border:0;border-radius:7px;background:#f0f4ec;color:#415b44;font-size:11px;font-weight:500}.days button:disabled{color:#b9bfb7;background:transparent;font-weight:400}.days button.selected{background:var(--green);color:white}.days button:not(:disabled):hover{box-shadow:inset 0 0 0 1px #748c72}.calendar-key{display:flex;align-items:center;gap:5px;font-size:8px;color:#91998f;margin-top:17px;white-space:nowrap}.calendar-key i{width:7px;height:7px;background:#dfe8d8;border-radius:2px}.calendar-key span{color:var(--green);font-size:9px;margin-left:6px}.times h3{margin:4px 0 6px}.muted{font-size:10px;color:var(--muted)}.time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:16px 0 12px;max-height:219px;overflow:auto;padding:3px}.time-grid button{padding:8px 2px;background:white;border:1px solid #e0e6dc;border-radius:6px;font-size:11px;color:#52684e}.time-grid button.selected{background:var(--green);border-color:var(--green);color:white}.time-grid button:hover{border-color:var(--green)}.time-grid .empty-state{grid-column:1/-1;color:var(--muted);font-size:12px;padding:20px 0}.timezone-note{font-size:9px;color:#9aa397}.selection-summary{display:flex;gap:12px;align-items:center;background:#f5f7f1;border:1px solid #e9ede2;border-radius:9px;padding:14px 16px;margin:24px 0 17px;color:#64745e;font-size:12px;min-height:67px}.selection-summary>span{font-size:23px;color:#708263}.selection-summary small{font-size:10px;display:block;color:#8b9585;margin-top:2px}.primary{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--green);color:white;width:100%;border:1px solid var(--green);padding:15px 19px;font-weight:500;font-size:13px;border-radius:8px}.primary:hover{background:#103d38}.primary:disabled{background:#dae2d7;border-color:#dae2d7;color:#7a8a74}.primary span{font-size:19px;line-height:1}.under-button{text-align:center;font-size:10px;color:#929c8c;margin-top:12px}.bottom-notes{max-width:1192px;margin:0 auto 48px;border-top:1px solid var(--line);padding-top:30px;display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.bottom-notes>div{display:flex;gap:14px;font-size:11px;color:var(--muted)}.bottom-notes>div>span{font:18px var(--serif);color:#95a08d}.bottom-notes strong{font-size:12px;display:block;margin-bottom:5px;font-weight:500;color:#475d48}footer{max-width:1240px;margin:auto;padding:22px 24px 30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;font-size:10px;color:#8d9886}footer a{border-bottom:1px solid #ccd3c6}.field{margin:20px 0}.field label{display:block;font-size:12px;font-weight:500;margin-bottom:8px}.field input{width:100%;padding:14px;border:1px solid #ced8c8;border-radius:7px;color:var(--ink);background:white}.field small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.back{border:none;background:transparent;font-size:12px;color:#526d59;padding:0;display:inline-block}.chosen{margin-top:18px}.consent{display:flex;align-items:flex-start;gap:10px;font-size:11px;color:#76816e;margin:23px 0}.consent input{width:17px;height:17px;flex:none;accent-color:var(--green)}.consent a{text-decoration:underline}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.status:empty{display:none}.status{margin-top:16px;padding:12px;background:#fff3e7;color:#8d4728;border-radius:7px;font-size:12px}.receipt{max-width:510px;margin:60px auto;text-align:center;padding:0 24px}.receipt .eyebrow{justify-content:center}.success-symbol{width:57px;height:57px;background:#e5eedf;border-radius:50%;display:grid;place-items:center;margin:0 auto 25px;font-size:27px;color:var(--green)}.receipt h1{font-size:49px}.receipt>p{font-size:13px;color:var(--muted)}.receipt-card{text-align:left;background:white;border:1px solid var(--line);border-radius:14px;padding:26px;margin:27px 0}.receipt-card>div+div{border-top:1px solid var(--line);margin-top:19px;padding-top:19px}.receipt-card span{font-size:9px;letter-spacing:1.5px;color:var(--muted);display:block;margin-bottom:7px}.receipt-card strong{font-size:15px;font-weight:500}.receipt-card p{font-size:13px;color:var(--muted);margin-top:4px}.receipt .receipt-note{font-size:11px;margin:17px 0 25px}.privacy{max-width:720px;padding:45px 24px 70px;margin:auto}.privacy h1{font-size:50px}.privacy p{color:#65745f;line-height:1.85;margin:20px 0;font-size:14px}.privacy h2{margin-top:30px;font-size:21px}.notice{background:#ecefde;padding:15px;border-radius:8px}@media(min-width:1400px){.layout{margin-top:80px;margin-bottom:80px}}@media(max-width:1050px){.layout{grid-template-columns:290px 1fr;gap:28px}.booking-card{padding:25px 23px}.selection-grid{gap:17px}.calendar{padding-right:16px}h1{font-size:53px}.bottom-notes{margin:0 24px 35px;gap:25px}.calendar-key{font-size:7px}}@media(max-width:800px){.header{padding:23px 24px}.header-note{display:none}.layout{grid-template-columns:1fr;max-width:650px;margin:35px auto;gap:30px}.intro{padding-top:0}.intro h1{font-size:48px;margin:18px 0}.intro h1 br:first-child{display:none}.intro h1 br:nth-child(2){display:none}.intro .lede{font-size:13px}.intro-rule,.doctor,.side-note{display:none}.office-info{display:flex;gap:25px;margin-top:20px}.office-info strong{font-size:11px}.office-info small{font-size:10px}.booking-card{padding:25px}.bottom-notes{max-width:602px;margin:35px auto;padding:25px 24px;grid-template-columns:1fr;gap:22px}.bottom-notes>div{font-size:12px}footer>span:nth-child(2){display:none}.selection-grid{gap:25px}.calendar-key{font-size:8px}.days button{font-size:12px}.time-grid button{font-size:12px}.steps{margin-bottom:25px}}@media(max-width:420px){.header{padding:18px}.brand strong{font-size:16px}.brand-mark{width:40px;height:40px;line-height:35px;font-size:33px}.layout{padding:0 16px}.intro h1{font-size:42px}.office-info{gap:14px}.office-info .icon{display:none}.booking-card{padding:22px 17px}h2{font-size:23px}.selection-grid{grid-template-columns:1fr;gap:20px}.calendar{padding:0 0 20px;border-right:0;border-bottom:1px solid var(--line)}.days button,.days .empty{aspect-ratio:auto;min-height:35px}.time-grid{grid-template-columns:repeat(5,1fr);max-height:none;margin-bottom:10px}.calendar-key{font-size:9px}.steps li{font-size:10px;gap:5px}.selection-summary{margin-top:20px}.time-grid button{font-size:11px}.receipt h1{font-size:42px}}

/* Portrait panel: original image proportions, compact profile on phones. */
.portrait-intro{padding-top:0}.doctor-portrait{margin:0 0 26px;position:relative;overflow:hidden;border-radius:16px;background:#e5ddd0}.doctor-portrait img{display:block;width:100%;height:auto}.doctor-portrait figcaption{position:absolute;bottom:0;left:0;right:0;padding:42px 22px 20px;background:linear-gradient(transparent,rgba(24,29,24,.87));color:#fff}.doctor-portrait figcaption strong{display:block;font-family:var(--serif);font-size:24px;font-weight:400}.doctor-portrait figcaption span{display:block;font-size:12px;letter-spacing:.7px;margin-top:3px;color:#f2e8d7}.portrait-intro h1{font-size:39px;letter-spacing:-1.3px;line-height:1.13;margin:17px 0 15px}.portrait-intro .office-info{margin-top:23px;gap:12px}.portrait-intro .lede{font-size:13px}
@media(max-width:800px){.portrait-intro{display:grid;grid-template-columns:170px 1fr;gap:23px;align-items:center}.doctor-portrait{margin:0;border-radius:12px}.doctor-portrait figcaption{padding:26px 12px 12px}.doctor-portrait figcaption strong{font-size:19px}.doctor-portrait figcaption span{font-size:10px}.portrait-intro h1{font-size:31px;margin:13px 0}.portrait-intro .eyebrow{font-size:8px;letter-spacing:1.2px}.portrait-intro .office-info{display:grid;gap:9px;margin-top:14px}.portrait-intro .lede{font-size:12px}.portrait-intro h1 br{display:block!important}}
@media(max-width:480px){.portrait-intro{grid-template-columns:112px 1fr;gap:16px;align-items:start}.doctor-portrait figcaption{position:static;padding:9px;background:#233d35}.doctor-portrait figcaption strong{font-family:inherit;font-size:11px;line-height:1.4}.doctor-portrait figcaption span{font-size:8px;letter-spacing:0}.portrait-intro h1{font-size:27px;letter-spacing:-.8px;margin:8px 0 10px}.portrait-intro .eyebrow{font-size:7px;letter-spacing:.6px;gap:5px}.portrait-intro .lede{font-size:11px;line-height:1.6}.portrait-intro .office-info strong{font-size:10px}.portrait-intro .office-info small{font-size:9px}.portrait-intro .office-info{margin-top:12px}.portrait-intro .icon{display:none}}
