:root{--ink:#641e35;--muted:#725c63;--gold:#987332;--paper:#fff;--light:#faf5f6;--line:#eadce1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}.wrap{max-width:1280px;width:calc(100% - 96px);margin:auto}.topline{background:var(--ink);color:white;font-size:.875rem}.topline .wrap{display:flex;justify-content:space-between;padding:8px 0}.header{position:sticky;top:0;background:#fffffffa;z-index:10;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:42px;min-height:98px}.brand{display:flex;flex-direction:column;line-height:1}.brand-word{font-family:Georgia,serif;font-size:2.65rem;letter-spacing:-2px}.brand-word>span{font:12px Arial;vertical-align:top;letter-spacing:0;padding-left:4px}.brand-sub{font-size:.625rem;letter-spacing:2.3px;margin-top:9px}nav{display:flex;gap:28px;margin-left:auto;font-size:.9rem}nav a:hover,.text-link:hover{color:var(--gold)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 24px;background:var(--ink);color:white;font-size:.9rem;line-height:1.4;border:1px solid var(--ink);transition:background .15s}.button:hover{background:#802f49}.header-cta{min-height:44px;padding:11px 22px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;padding-top:68px;padding-bottom:80px}.eyebrow{font-size:.75rem;letter-spacing:2px;font-weight:bold;color:var(--gold);margin:0 0 24px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.13;margin:0;letter-spacing:-1.5px}h1{font-size:clamp(2.7rem,4.4vw,4.65rem)}h1 em{font-style:normal;color:#987332}h2{font-size:clamp(2rem,3.1vw,3.3rem)}.lead{max-width:470px;color:var(--muted);margin:28px 0;line-height:1.8}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.text-link{font-size:.9rem;border-bottom:1px solid var(--gold);padding-bottom:5px}.hero-note{display:flex;gap:15px;align-items:center;margin-top:43px;color:var(--muted);font-size:.8rem}.hero-note strong{font-weight:400;color:var(--ink)}.small-line{height:1px;width:35px;background:var(--gold)}.hero-visual{position:relative;padding-bottom:48px}.image-frame{height:450px;overflow:hidden;background:var(--light);border-radius:110px 0 0 0}.image-frame img{width:100%;height:100%;object-fit:cover;object-position:center}.photo-caption{display:flex;justify-content:space-between;font-size:.7rem;letter-spacing:1px;padding:18px 0;color:var(--muted);gap:12px}.hours{background:var(--ink);color:white;position:absolute;bottom:68px;left:-35px;padding:23px 32px;min-width:240px;box-shadow:0 8px 22px #641e351a}.hours p{font-size:.625rem;letter-spacing:2px;color:#d4bd88;margin:0 0 8px}.hours strong{display:block;font:1.7rem Georgia}.hours span{display:block;font-size:.75rem;margin-top:8px;color:#f0e0e6}.info-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.info-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);padding:25px 0;text-align:center;font-size:.875rem}.info-strip span+span{border-left:1px solid var(--line)}.section{padding-top:96px;padding-bottom:96px}.section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.section-title>p{color:var(--muted);font-size:.9rem}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 38px}details{border-top:1px solid var(--line);padding:24px 0}details:nth-last-child(-n+2){border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;gap:22px;cursor:pointer;list-style:none;min-height:45px}summary::-webkit-details-marker{display:none}.number{font-size:.75rem;color:var(--gold)}h3{font-weight:400;font-size:1.25rem;line-height:1.4;margin:0}.plus{font-size:1.6rem;margin-left:auto;line-height:1;color:var(--gold)}details[open] .plus{transform:rotate(45deg)}details p{color:var(--muted);padding-left:38px;font-size:.9rem}details a{margin-left:38px;font-size:.875rem;text-decoration:underline;text-underline-offset:4px}.about{background:var(--ink);color:white;padding:75px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about h2{font-size:3.15rem}.large-copy{font:1.7rem/1.45 Georgia;margin:0 0 25px}.about p:not(.eyebrow):not(.large-copy){color:#eedce2}.about-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ffffff30;margin-top:35px;padding-top:24px;gap:20px}.about-facts strong{display:block;font:1.7rem Georgia;color:#d4bd88}.about-facts span{font-size:.8rem;color:#eedce2}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.doctor-photo{height:300px;background:var(--light);overflow:hidden;display:flex;justify-content:center;align-items:flex-end}.doctor-photo img{width:auto;height:90%;object-fit:contain}.doctor h3{font-size:1.2rem;margin:22px 0 4px}.doctor p{font-size:.875rem;color:var(--muted);margin:0}.prices-section{background:var(--light);padding:80px 0}.prices-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:80px}.prices-grid p:not(.eyebrow){color:var(--muted);margin:25px 0}.price-table table{width:100%;border-collapse:collapse;font-size:.9rem}.price-table th{text-align:left;font-weight:400}.price-table thead{font-size:.75rem;color:var(--muted)}.price-table tr{border-bottom:1px solid #eadce1}.price-table th,.price-table td{padding:13px 0;vertical-align:top}.price-table td{text-align:right;white-space:nowrap;padding-left:15px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact-grid>div>p:not(.eyebrow){color:var(--muted)}.phone{display:block;font:2.5rem Georgia;margin-top:30px}.email{display:inline-block;margin:10px 0 30px;border-bottom:1px solid var(--gold)}.emergency{display:flex;gap:20px;font-size:.875rem}.emergency span{color:var(--muted)}.contact-card{border:1px solid var(--line);padding:40px}.contact-card h3{font:1.8rem Georgia}.contact-card p:not(.eyebrow){font-size:.9rem;color:var(--muted)}.schedule{border-top:1px solid var(--line);padding:18px 0 25px;margin-top:25px;font-size:.875rem}.schedule div{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:10px 0}.schedule strong{font-weight:400}.schedule span{color:var(--muted)}footer{border-top:1px solid var(--line);padding:32px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-inner p,.footer-inner>a:last-child{font-size:.8rem;color:var(--muted)}.footer-inner .brand-word{font-size:2.1rem}.skip{position:fixed;top:-100px;left:10px;background:white;padding:12px;z-index:30}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}:focus-visible{outline:3px solid #b49253;outline-offset:5px}
@media(min-width:1500px){.hero{padding-top:85px}.image-frame{height:500px}}@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.header-inner{gap:24px}nav{gap:16px;font-size:.8rem}.hero{gap:30px}h1{font-size:3.1rem}.image-frame{height:420px}.hours{left:-18px}.prices-grid,.contact-grid,.about-grid{gap:40px}.doctor-photo{height:260px}.about h2{font-size:2.7rem}}@media(max-width:780px){.wrap{width:calc(100% - 40px)}.topline{font-size:.75rem}.header-inner{min-height:82px;gap:15px;flex-wrap:wrap;position:relative}.brand-word{font-size:2.1rem}.brand-sub{font-size:.6rem;letter-spacing:1.6px}.menu-toggle{display:block;margin-left:auto;background:none;border:1px solid var(--line);padding:8px 12px;color:var(--ink);font-size:.875rem;cursor:pointer}.header-cta{display:none}nav{display:none;width:100%;margin:0;padding:0 0 20px;flex-direction:column;gap:16px;font-size:1rem}nav.open{display:flex}.hero{grid-template-columns:1fr;padding:43px 0 28px;gap:35px}h1{font-size:clamp(2.5rem,8.3vw,3.75rem)}.eyebrow{margin-bottom:18px}.lead{margin:22px 0}.hero-note{margin-top:26px}.hero-visual{padding-bottom:18px}.image-frame{height:350px;border-radius:70px 0 0 0}.hours{left:15px;bottom:70px;padding:18px 24px;min-width:210px}.info-strip .wrap{grid-template-columns:1fr;padding:8px 0;text-align:left}.info-strip span{padding:10px 0}.info-strip span+span{border-left:0;border-top:1px solid var(--line)}.section{padding-top:60px;padding-bottom:60px}.section-title{display:block;margin-bottom:28px}.section-title>p{margin:22px 0 0}.services-grid{grid-template-columns:1fr}.services-grid details{padding:18px 0}.services-grid details:nth-last-child(2){border-bottom:0}h3{font-size:1.1rem}summary{gap:16px}.about-grid,.prices-grid,.contact-grid{grid-template-columns:1fr;gap:32px}.about{padding:55px 0}.about h2{font-size:2.5rem}.team-grid{grid-template-columns:1fr;gap:35px}.doctor-photo{height:340px}.doctor h3{margin-top:16px}.prices-section{padding:55px 0}.prices-grid p:not(.eyebrow){margin:20px 0}.contact-card{padding:25px}.phone{font-size:2.25rem}.emergency{flex-wrap:wrap;gap:8px 20px}.footer-inner{align-items:flex-start;flex-direction:column;gap:15px}.footer-inner p{margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.booking-section{padding:90px 0;background:var(--ink);color:white}.booking-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:70px}.booking-grid>div>p:not(.eyebrow){color:#eedce2;margin-top:25px;max-width:380px}.booking-steps{margin:30px 0}.booking-steps p{font-size:.95rem}.booking-steps span{color:#e3c387;margin-right:18px;font-size:.8rem}.booking-help{border-top:1px solid #ffffff30;padding-top:25px;font-size:.9rem;color:#eedce2}.booking-help a{display:inline-block;font:1.6rem Georgia;margin-top:7px;color:white}.booking-form{background:white;color:var(--ink);padding:36px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.full{grid-column:1/-1}.booking-form label{font-size:.875rem;display:block}.booking-form input:not([type=checkbox]),.booking-form select{display:block;width:100%;font:1rem Arial;color:var(--ink);border:1px solid #d7c4ca;background:#fff;min-height:49px;padding:12px;margin-top:8px;border-radius:0}.booking-form input:focus,.booking-form select:focus{outline:2px solid var(--gold);outline-offset:2px}.booking-form .consent{display:flex;gap:12px;margin:20px 0;align-items:flex-start}.consent input{width:20px;height:20px;flex-shrink:0;accent-color:var(--ink);margin-top:3px}.form-hint{font-size:.875rem;color:var(--muted);margin:0;line-height:1.6}.booking-submit{margin-top:24px;width:100%;cursor:pointer}.booking-submit:disabled{background:#725c63;cursor:not-allowed;opacity:.7}#booking-status{font-size:.875rem;margin:18px 0 0;line-height:1.65}.trap{position:absolute;left:-10000px;max-height:0;overflow:hidden}#booking-status.error{color:#972e46}#booking-status.success{color:#315942}.booking-form[aria-busy=true]{opacity:.85}@media(max-width:1050px){.booking-grid{gap:35px}.booking-form{padding:27px}}@media(max-width:780px){.booking-section{padding:55px 0}.booking-grid{grid-template-columns:1fr}.booking-form{padding:24px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.booking-grid h2{font-size:2.4rem}}
.calendar-box{border-top:1px solid var(--line);padding-top:12px}.calendar-box>p{font-size:.875rem}.slot-grid{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.slot-button{font:14px/1.5 Arial;color:var(--ink);background:white;border:1px solid #bba4ad;padding:12px 16px;cursor:pointer;text-align:left}.slot-button:hover,.slot-button.selected{background:var(--ink);color:white}.slot-button:disabled{cursor:default;opacity:.5}.slot-button.booked{background:#f3e8ee}.slot-button.blocked{background:#eee}.workspace{background:#faf5f6}.staff-main,.patient-main{padding-top:45px;padding-bottom:65px}.staff-main h1,.patient-main h1{font-size:3rem}.notice{padding:18px 22px;background:white;border-left:4px solid var(--gold);margin:24px 0}.calendar-toolbar{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap}.calendar-toolbar label{min-width:180px}.staff-main label,.patient-main label,dialog label{display:block;font-size:.875rem}.staff-main input:not([type=checkbox]),.staff-main select,.patient-main input,.patient-main select,dialog input,dialog select{width:100%;display:block;padding:12px;border:1px solid #d7c4ca;background:white;color:var(--ink);font:16px Arial;margin:7px 0 16px;min-height:48px}.calendar-toolbar .button{margin-bottom:16px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:22px 0}.stat-grid>div{background:white;padding:25px}.stat-grid strong{display:block;font:2.5rem Georgia}.stat-grid span{font-size:.875rem;color:var(--muted)}.panel{background:white;border:1px solid var(--line);padding:30px;margin:25px 0}.panel h2{font-size:1.75rem;letter-spacing:-.5px;margin-bottom:24px}.staff-columns{display:grid;grid-template-columns:1fr 1fr;gap:25px}.staff-columns .panel{margin:0}.panel .button{margin:10px 0 20px}.appointment-card{border-top:1px solid var(--line);padding:22px 0}.appointment-card strong{display:block;font-size:1.2rem}.appointment-card p{margin:6px 0;font-size:.9rem;color:var(--muted)}.appointment-time{font-size:.9rem;display:block;margin-bottom:8px;color:var(--gold)}.badge{display:inline-block;background:#f5edf0;padding:4px 10px;font-size:.8rem;margin-top:8px}.badge.needs_move{color:#81370c;background:#fff0d1}.badge.cancelled{color:#777;background:#eee}.card-actions{display:flex;gap:12px;flex-wrap:wrap;margin:15px 0}.small-button{font:14px Arial;padding:10px 14px;border:1px solid #bba4ad;background:white;color:var(--ink);cursor:pointer}.small-button:disabled{opacity:.5;cursor:default}.leave-row{border-top:1px solid var(--line);padding:15px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.875rem}.panel .consent{display:flex;align-items:center;gap:12px;margin:15px 0}.panel input[type=checkbox]{width:20px;height:20px}.empty-state{color:var(--muted);padding:20px 0}.patient-main{max-width:850px}dialog{border:1px solid var(--line);padding:30px;max-width:650px;width:calc(100% - 32px);max-height:90vh;color:var(--ink)}dialog::backdrop{background:#1f0b1599}.dialog-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.dialog-actions button:last-child{background:white;border:1px solid var(--line);padding:12px 20px;font:16px Arial;color:var(--ink)}dialog h2{font-size:2rem}.staff-main .form-grid{gap:10px 20px}#manage-link{display:inline-block;margin-top:20px}#manage-link[hidden]{display:none}@media(max-width:780px){.staff-columns{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr;gap:12px}.stat-grid>div{padding:20px}.panel{padding:22px}.calendar-toolbar{gap:10px}.calendar-toolbar label{width:100%}.staff-main h1,.patient-main h1{font-size:2.5rem}.workspace .header-inner{gap:15px;padding:15px 0}.workspace .header-inner a:not(.brand){font-size:.8rem}.appointment-card{overflow-wrap:anywhere}}
.shared-calendar{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;margin-top:25px;align-items:start}.doctor-day{background:#faf5f6;border:1px solid var(--line);padding:16px}.doctor-day-title{border-bottom:2px solid var(--gold);padding-bottom:14px;margin-bottom:14px}.doctor-day-title h3{font-size:1.05rem}.doctor-day-title p{font-size:.8rem;color:var(--muted);margin:8px 0 0}.calendar-event{display:flex;flex-direction:column;gap:6px;padding:15px 12px;margin:12px 0;background:white;border-left:3px solid #bba4ad;overflow-wrap:anywhere}.calendar-event.confirmed{border-left-color:var(--ink)}.calendar-event.needs_move{border-left-color:#ae7421;background:#fff5e4}.calendar-event.blocked{background:#eee}.event-time{font-size:.875rem}.event-patient{font-size:1rem}.event-service,.event-state{font-size:.8rem;color:var(--muted)}.calendar-event .small-button{margin-top:8px;line-height:1.4}.management-toolbar{background:white;border:1px solid var(--line);padding:20px;margin:25px 0 15px}.management-toolbar label{max-width:400px}.management-toolbar select{margin-bottom:0}@media(max-width:780px){.shared-calendar{grid-template-columns:1fr}.shared-panel{padding:18px}}
.shared-calendar.week-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.week-day{background:#faf5f6;border:1px solid var(--line);min-width:0;padding:10px}.week-day.is-today{border-color:var(--gold)}.week-day-title{display:flex;flex-direction:column;gap:5px;padding-bottom:12px;border-bottom:2px solid var(--gold);font-size:.875rem;overflow-wrap:anywhere}.week-doctor{margin-top:20px}.week-doctor h3{font-size:.875rem;font-weight:bold;line-height:1.5;overflow-wrap:anywhere}.week-empty{font-size:.875rem;color:var(--muted);margin:12px 0 18px}.week-doctor .calendar-event{padding:10px 7px}.week-doctor .event-time,.week-doctor .event-patient,.event-service,.event-state{font-size:.875rem}.week-doctor .small-button{padding:8px 6px;word-break:normal}.waiting-row{padding:15px 0;border-top:1px solid var(--line)}.waiting-row p{font-size:.875rem;color:var(--muted)}.waiting-days{border:1px solid var(--line);padding:16px;margin:15px 0;display:flex;gap:12px 20px;flex-wrap:wrap}.waiting-days legend{font-size:.875rem}.waiting-days label{display:flex;align-items:center;gap:8px;font-size:.875rem}.patient-main .waiting-days input{width:18px;height:18px;min-height:0;padding:0;margin:0;accent-color:var(--ink)}.offer-card{border:1px solid var(--gold);padding:20px;margin-top:20px}.offer-card h3{font:1.5rem Georgia}.calendar-toolbar .small-button{min-height:48px;margin-bottom:16px}@media(max-width:1100px){.shared-calendar.week-calendar{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:780px){.shared-calendar.week-calendar{grid-template-columns:1fr}.week-doctor .calendar-event{padding:14px}.week-day-title strong{font-size:1.1rem}.calendar-toolbar .small-button{margin-bottom:8px}.waiting-days{flex-direction:column}}

textarea{width:100%;padding:12px;border:1px solid var(--line,#ddd);border-radius:8px;font:inherit;resize:vertical}#affected-visits{display:grid;gap:12px;margin:16px 0}#visit-dialog{max-width:700px;width:calc(100% - 32px)}

.social-links{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin:20px 0}.footer-inner{flex-wrap:wrap}.footer-inner .social-links{margin:0}

.quick-day-button{width:100%;background:transparent;border:0;border-bottom:2px solid var(--gold);text-align:left;color:var(--ink);font:inherit;cursor:pointer}.quick-day-hint{font-size:14px;color:var(--muted)}.quick-day-button:hover,.quick-day-button:focus-visible{background:#eadbe0;outline:2px solid var(--gold)}.quick-event{width:100%;font:inherit;color:var(--ink);border-top:0;border-right:0;border-bottom:0;text-align:left;cursor:pointer}.quick-event:hover,.quick-event:focus-visible{outline:2px solid var(--gold)}#quick-dialog{max-width:1160px;width:calc(100% - 32px);height:min(850px,94dvh);max-height:94dvh;padding:0;overflow:hidden}#quick-dialog[open]{display:flex;flex-direction:column}.quick-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--line);flex-shrink:0}.quick-header h2{font-size:1.5rem;margin:0}.quick-header .eyebrow{font-size:12px;margin:0 0 6px}.quick-toolbar{display:grid;grid-template-columns:1fr 1fr 1.1fr 1fr auto;gap:12px;align-items:end;padding:12px 24px;flex-shrink:0}.quick-toolbar input,.quick-toolbar select{min-height:40px;margin:5px 0 0;padding:8px}.quick-toolbar button{min-height:40px}.quick-notice{font-size:14px;line-height:1.5;margin:0;padding:8px 24px;background:#faf5f6;flex-shrink:0}.quick-layout{display:grid;grid-template-columns:minmax(270px,.9fr) minmax(350px,1.1fr);flex:1;min-height:0}.quick-schedule,.quick-editor{overflow:auto;overscroll-behavior:contain;padding:18px 24px}.quick-schedule{border-right:1px solid var(--line);background:#faf5f6}.quick-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.quick-section-title h3,.quick-editor h3{font-size:18px;margin:0 0 12px}.quick-doctor-group{margin-bottom:18px}.quick-doctor-group h4{font-size:14px;margin:12px 0}.quick-item{display:grid;grid-template-columns:65px 1fr;gap:5px 10px;text-align:left;width:100%;border:1px solid var(--line);border-left:4px solid var(--ink);background:white;color:var(--ink);padding:12px;margin:7px 0;font:16px Arial;cursor:pointer}.quick-item small{grid-column:2;font-size:14px;line-height:1.4;color:var(--muted)}.quick-free{border-left-color:var(--gold)}.quick-item[aria-pressed=true]{outline:2px solid var(--gold);background:#fff9ed}.quick-item:disabled{opacity:.55;cursor:default}.quick-cancelled{opacity:.65;border-left-color:#aaa}.quick-selection{padding:12px;background:#faf5f6;border-left:3px solid var(--gold);font-size:16px;line-height:1.5}.quick-editor .form-grid{gap:10px 16px}.quick-editor input,.quick-editor select{margin:5px 0 10px;min-height:42px;padding:9px}.quick-editor .consent{display:flex;gap:10px;align-items:flex-start;margin:14px 0;line-height:1.5}.quick-editor input[type=checkbox]{width:20px;height:20px;min-height:20px;margin:0;flex-shrink:0}.quick-editor .button{margin:8px 0}.quick-editor details{margin:16px 0}.quick-editor summary{cursor:pointer;font-size:14px;margin-bottom:14px}.quick-confirmation{padding:10px;background:#fff0d1;font-size:14px;line-height:1.5}.quick-confirmation.is-confirmed{background:#f5edf0;border-left:3px solid var(--ink)}#quick-reschedule{border-top:1px solid var(--line);padding-top:16px}#quick-target-slots{max-height:200px;overflow:auto}#quick-manage-link[hidden]{display:none}@media(max-width:850px){.quick-toolbar{grid-template-columns:1fr 1fr}.quick-toolbar button{grid-column:1/-1}.quick-layout{grid-template-columns:minmax(220px,.85fr) minmax(280px,1.15fr)}.quick-schedule,.quick-editor{padding:14px}.quick-editor .form-grid{grid-template-columns:1fr}}@media(max-width:600px){#quick-dialog{width:calc(100% - 12px);height:96dvh;max-height:96dvh}.quick-header{padding:12px}.quick-header h2{font-size:18px}.quick-toolbar{padding:10px 12px;gap:8px}.quick-notice{padding:8px 12px}.quick-layout{grid-template-columns:1fr;overflow:auto;display:block}.quick-schedule{max-height:34dvh;border-right:0;border-bottom:1px solid var(--line)}.quick-editor{overflow:visible}.quick-item{padding:10px}.quick-editor .form-grid{grid-template-columns:1fr 1fr}.quick-header .eyebrow{display:none}}

.quick-conflict-row{border:1px solid var(--gold);padding:12px;margin:10px 0;display:flex;gap:8px;flex-wrap:wrap}.quick-conflict-row strong{width:100%;font-size:14px}

#prices-dialog{max-width:1050px;padding:0;overflow:hidden}#prices-dialog[open]{display:flex;flex-direction:column}.price-admin-content{overflow:auto;padding:20px 24px}.price-edit-row{display:grid;grid-template-columns:minmax(210px,2fr) minmax(130px,1fr) 90px minmax(120px,auto);gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:14px 0}.price-row-actions{display:flex;gap:8px;flex-wrap:wrap}.price-edit-row input{margin:5px 0 0}.price-admin-toolbar{display:flex;gap:16px;align-items:center;margin-top:20px;flex-wrap:wrap}.price-admin-toolbar label{flex:1;min-width:160px}.price-removed{background:#faf5f6}.price-admin-content .form-hint{font-size:14px}#prices-status{font-size:14px;padding:12px 0}@media(max-width:700px){.price-edit-row{grid-template-columns:1fr 1fr}.price-edit-row label:first-child{grid-column:1/-1}.price-edit-row .price-row-actions{grid-column:1/-1}.price-admin-content{padding:16px}.price-admin-toolbar{gap:8px}}

.info-strip .info-item{display:flex;align-items:center;justify-content:center;gap:12px;padding-left:16px;padding-right:16px;line-height:1.5}.info-icon{color:var(--gold);flex-shrink:0;width:26px;height:26px}@media(max-width:780px){.info-strip .info-item{justify-content:flex-start;padding-left:0;padding-right:0}}

.brand-logo{width:132px;height:auto;object-fit:contain}.brand{flex-shrink:0;align-items:flex-start}.brand .brand-sub{font-size:9px;letter-spacing:1.8px;margin-top:6px}.footer-inner .brand-logo{width:158px}.workspace .brand-logo{width:112px}.workspace .brand .brand-sub{font-size:9px;letter-spacing:1px}@media(max-width:780px){.brand-logo{width:105px}.brand .brand-sub{font-size:8px;letter-spacing:1px}.footer-inner .brand-logo{width:145px}.workspace .brand-logo{width:100px}}

.cookies-main{max-width:880px;padding-top:48px;padding-bottom:70px}.cookies-main h1{font-size:3rem;margin-bottom:24px}.cookies-main section{margin-top:34px}.cookies-main h2{font-size:1.65rem;line-height:1.3}.cookies-main a{text-decoration:underline;text-underline-offset:3px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.services-grid .plus{transition:none}}@media(max-width:780px){.cookies-main h1{font-size:2.5rem}}

.full-prices-main{max-width:1050px;padding-top:45px;padding-bottom:65px}.full-prices-main h1{font-size:3rem;margin-bottom:20px}.full-price-table{margin:32px 0}.price-category-heading th{text-align:left!important;font-size:18px!important;font-weight:bold!important;background:#f5edf0;padding-top:24px!important;padding-bottom:16px!important;border-bottom:2px solid var(--gold)!important}.full-price-table td{white-space:nowrap}.price-page-nav{display:flex;gap:24px;flex-wrap:wrap}.price-edit-row{grid-template-columns:minmax(180px,2fr) minmax(150px,1.5fr) minmax(100px,1fr) 80px minmax(120px,auto)}.price-edit-row select{margin:5px 0 0}@media(max-width:850px){.price-edit-row{grid-template-columns:1fr 1fr}.price-edit-row label:first-child{grid-column:1/-1}.price-edit-row .price-row-actions{grid-column:1/-1}}@media(max-width:780px){.full-prices-main h1{font-size:2.5rem}.price-page-nav{gap:12px}.full-price-table th,.full-price-table td{font-size:14px}.full-prices-main .price-table{padding:0;overflow-wrap:anywhere}}

.service-main{max-width:1080px;padding-top:56px;padding-bottom:70px}.service-main h1{font-size:clamp(2.1rem,5vw,3.5rem);margin-bottom:24px}.service-main>p{max-width:800px;line-height:1.7}.service-nav{display:flex;gap:18px;flex-wrap:wrap}.service-links,.service-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0}.service-link{display:grid;gap:12px;border:1px solid var(--line,#dbcdd0);padding:24px;border-radius:12px}.service-link strong{color:var(--wine,#641e35);font-size:1.2rem}.service-link:hover{border-color:#a77a36}.service-main details{padding:20px 0;border-bottom:1px solid #dbcdd0}.service-main summary{cursor:pointer;font-size:1.05rem}.service-cta{background:#f6f0f1;padding:32px;border-radius:14px;margin:36px 0}.service-cta a{display:inline-block;margin:10px 16px 0 0}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:36px 0}.gallery-card{margin:0}.gallery-card button{border:0;padding:0;background:none;width:100%;cursor:zoom-in}.gallery-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.gallery-card figcaption{margin-top:10px;line-height:1.5}.gallery-empty{grid-column:1/-1;padding:40px;background:#f6f0f1;border-radius:12px}.gallery-editor{margin:24px 0}.gallery-editor img{width:170px;height:120px;object-fit:cover;border-radius:8px}.gallery-editor article{display:flex;gap:18px;align-items:center;flex-wrap:wrap;border-bottom:1px solid #dbcdd0;padding:18px 0}#gallery-lightbox{max-width:min(1000px,95vw)}#gallery-large{display:block;max-width:100%;max-height:75vh;margin-top:14px}.gallery-admin-dialog{max-width:1000px;width:95vw}@media(max-width:780px){.service-links,.service-steps{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-nav{gap:12px;font-size:.9rem}.service-cta{padding:22px}}@media(max-width:460px){.gallery-grid{grid-template-columns:1fr}}

.articles-dialog{width:min(1100px,95vw);max-width:1100px;max-height:90vh;border:1px solid #bda26a;border-radius:16px;padding:24px}.article-workspace{display:grid;grid-template-columns:260px 1fr;gap:24px}.article-workspace form label{display:flex;flex-direction:column;gap:6px;margin:12px 0}.article-workspace textarea{font:inherit;width:100%;padding:12px;border:1px solid #d5c6c5;border-radius:8px}.article-list-button{display:block;text-align:left;width:100%;padding:14px;margin:10px 0;background:#f7f0ed;color:#6c2336;border:1px solid #dfceca;border-radius:8px;font:inherit;cursor:pointer}.article-main{max-width:900px}.article-cover{width:100%;max-height:400px;object-fit:cover;border-radius:18px;margin:20px 0}.article-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.article-card{padding:24px;border:1px solid #dec8c8;border-radius:16px}.article-copy p{font-size:18px;line-height:1.8;margin:24px 0}.article-meta{color:#715d60;font-size:14px}@media(max-width:720px){.article-workspace,.article-grid{grid-template-columns:1fr}.articles-dialog{padding:16px}.article-workspace aside{max-height:220px;overflow:auto}}

.booking-success-dialog{width:min(480px,calc(100vw - 32px));max-height:85vh;overflow:auto;padding:32px;border:1px solid #b99a5c;border-radius:20px;text-align:center;background:#fffaf6;color:#5b2032}.booking-success-dialog::backdrop{background:rgba(45,18,27,.6)}.booking-success-dialog h2{font-size:28px;margin:16px 0}.booking-success-dialog p{line-height:1.6}.booking-success-dialog .button{display:block;margin:24px auto 0}.booking-success-mark{display:grid;place-items:center;width:56px;height:56px;margin:auto;border-radius:50%;background:#6e263e;color:#e8ce91;font-size:32px}

/* Public home: burgundy, gold and photographic section accents. */
.clinic-home{background-color:#fffdf9;background-image:radial-gradient(ellipse at 95% 5%,#e4c68a24 0,transparent 35%),radial-gradient(ellipse at 0 19%,#782f4910 0,transparent 32%);background-repeat:no-repeat}
.clinic-home .header{background:#fffdfaf5;backdrop-filter:blur(12px)}
.clinic-home .hero{gap:64px;padding-top:60px;padding-bottom:68px}
.clinic-home .hero-visual{isolation:isolate}
.clinic-home .hero-visual:before{content:"";position:absolute;inset:-18px 20px 75px -18px;border:1px solid #ba955f80;border-radius:140px 24px 24px 24px;z-index:-1;pointer-events:none}
.clinic-home .image-frame{border-radius:120px 24px 24px 24px;box-shadow:0 22px 55px #5f183525}
.clinic-home .hours{border-radius:16px;border:1px solid #c9a26755;background:linear-gradient(135deg,#782e47,#481427);box-shadow:0 15px 35px #42142735}
.clinic-home .button{border-radius:10px;box-shadow:0 5px 16px #641e3515;transition:background .18s,box-shadow .18s,transform .18s}
.clinic-home .button:hover{transform:translateY(-2px);box-shadow:0 9px 22px #641e3530}
.clinic-home .info-strip{background:#fffaf1;border-top-color:#d4b67c55;border-bottom-color:#d4b67c55}
.clinic-home .services-intro{display:grid;grid-template-columns:1.1fr .85fr 1fr;gap:32px;align-items:center}
.section-photo{margin:0;overflow:hidden;border-radius:22px;border:1px solid #c8a36566;box-shadow:0 12px 34px #47223312}
.section-photo img{display:block;width:100%;height:100%;object-fit:cover}
.services-photo{height:220px}
.clinic-home .services-grid{gap:16px 24px}
.clinic-home .services-grid details{border:1px solid #e8dadd;border-radius:16px;padding:20px 24px;background:#fffffff2;box-shadow:0 4px 18px #611d3505;transition:border-color .2s,box-shadow .2s}
.clinic-home .services-grid details:hover,.clinic-home .services-grid details[open]{border-color:#b38b49;box-shadow:0 10px 26px #611d3510}
.clinic-home .services-grid .number{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#f9f0df;flex-shrink:0;font-size:14px}
.clinic-home .services-grid summary{gap:16px}
.clinic-home .services-grid details p{padding-left:48px;font-size:16px}
.clinic-home .services-grid details a{margin-left:48px;font-size:14px}
.clinic-home .about{background-color:#54162d;background-image:radial-gradient(ellipse at 0 100%,#d3b07420,transparent 60%),linear-gradient(120deg,#701f3b,#461124);padding:80px 0}
.clinic-home .about-grid{gap:70px;align-items:center}
.clinic-home .about .eyebrow,.clinic-home .booking-section .eyebrow{color:#e2c27d}
.about-photo{margin-top:32px;height:290px;max-width:400px;border-color:#e1c08380;background:#f4f0ed;border-radius:80px 18px 18px 18px}
.about-photo img{object-fit:contain;object-position:center top}
.clinic-home .service-link{background:#fff;border-radius:18px;padding:28px;box-shadow:0 5px 22px #4c17320a;transition:box-shadow .2s,transform .2s}
.clinic-home .service-link:hover{transform:translateY(-3px);box-shadow:0 12px 30px #4c173214}
.clinic-home .doctor{padding:14px 14px 22px;background:#fff;border:1px solid #eadce1;border-radius:24px;box-shadow:0 10px 30px #4c17320a}
.clinic-home .doctor-photo{border-radius:16px;background:linear-gradient(135deg,#f4ebee,#fffaf0)}
.clinic-home .doctor h3,.clinic-home .doctor>p{margin-left:10px;margin-right:10px}
.clinic-home .prices-section{background:linear-gradient(120deg,#faf3e9,#fbf3f5)}
.clinic-home .price-table{padding:20px 26px;background:#fff;border:1px solid #e8dadd;border-radius:20px;box-shadow:0 14px 38px #5222390a}
.clinic-home .booking-section{background-color:#54162d;background-image:radial-gradient(ellipse at 0 0,#d3b0741c,transparent 60%),linear-gradient(140deg,#741f3e,#461124)}
.booking-photo{height:220px;margin:24px 0;border-color:#d4b67c66}
.clinic-home .booking-form{border-radius:24px;border:1px solid #d4b67c80;box-shadow:0 20px 55px #25111c33;align-self:start}
.clinic-home .booking-form input:not([type=checkbox]),.clinic-home .booking-form select{border-radius:8px}
.clinic-home .contact-card{border-radius:22px;background:linear-gradient(145deg,#fff,#fff8eb);box-shadow:0 12px 35px #5222390a}
@media(max-width:1100px){.clinic-home .services-intro{grid-template-columns:1fr 1fr}.clinic-home .services-intro>p{grid-column:1;grid-row:2;margin:0}.services-photo{grid-column:2;grid-row:1/3;height:260px}.clinic-home .hero{gap:36px}}
@media(max-width:780px){.clinic-home .hero{padding-top:38px;padding-bottom:30px;gap:40px}.clinic-home .hero-visual:before{inset:-12px 12px 68px -10px;border-radius:90px 20px 20px 20px}.clinic-home .image-frame{border-radius:80px 18px 18px 18px}.clinic-home .services-intro{grid-template-columns:1fr;gap:22px}.clinic-home .services-intro>p{grid-row:auto;grid-column:auto}.services-photo{grid-row:auto;grid-column:auto;height:210px}.clinic-home .services-grid{gap:12px}.clinic-home .services-grid details{padding:18px}.clinic-home .services-grid details p{padding-left:0}.clinic-home .services-grid details a{margin-left:0}.clinic-home .about{padding:55px 0}.clinic-home .about-grid{gap:30px}.about-photo{height:260px;margin-top:24px;max-width:100%}.booking-photo{height:190px}.clinic-home .price-table{padding:16px}.clinic-home .booking-form{padding:24px 20px}.clinic-home .service-link{padding:22px}}
@media(prefers-reduced-motion:reduce){.clinic-home .button:hover,.clinic-home .service-link:hover{transform:none}}

#nearest-slot{margin:0 0 12px;border-radius:8px}.phone-lookup{padding:14px;background:#fff8ea;border:1px solid #d1b580;border-radius:10px;margin-bottom:18px}.phone-lookup label{display:block;font-size:14px}.phone-lookup input{width:100%;margin:6px 0 10px}.phone-lookup p{font-size:14px}.patient-match{display:block;width:100%;padding:12px;margin:8px 0;text-align:left;background:#fff;border:1px solid #dbc5cd;border-radius:8px;color:#641e35;font:inherit;cursor:pointer}.tasks-dialog{width:min(980px,95vw);max-width:980px;padding:0;max-height:90dvh}.tasks-content{padding:22px;overflow:auto}.tasks-toolbar{display:flex;gap:16px;flex-wrap:wrap;align-items:end}.tasks-toolbar label{flex:1;min-width:150px}.tasks-toolbar select{width:100%;margin:6px 0 0}.task-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #eadce1}.task-row p{margin:6px 0;font-size:14px}.task-reasons{color:#782c44}.task-row button{flex-shrink:0}@media(max-width:650px){.task-row{display:block}.task-row button{margin-top:10px}.tasks-content{padding:16px}}
.doctor-slot-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.doctor-slot-card{padding:16px;border:1px solid #e7d2da;border-radius:16px;background:white;min-width:0}.doctor-slot-card h3{font-family:inherit;font-size:1rem;line-height:1.4;margin:0 0 14px}.doctor-slot-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.doctor-slot-times .slot-button{width:100%;padding:10px 6px;margin:0}.staff-main>.eyebrow{display:none}.staff-main h1{font-size:2rem;margin:12px 0}.staff-main .stat-grid{display:none}.staff-main .calendar-toolbar{gap:10px;align-items:end;margin:16px 0}.staff-main .calendar-toolbar label{font-size:.875rem}.secondary-tools{margin:20px 0}.secondary-tools>summary,#schedule-dialog details>summary{cursor:pointer;padding:16px;border:1px solid #e7d2da;border-radius:12px;font-weight:600;background:#fff}.secondary-tools[open]>summary{margin-bottom:16px}.secondary-tools .staff-columns{grid-template-columns:1fr}.simple-calendar{display:block!important;overflow:auto;max-height:72vh;border:1px solid #e7d2da;border-radius:14px;background:white}.simple-calendar-table{display:grid;grid-template-columns:80px repeat(calc(var(--columns) - 1),minmax(160px,1fr));min-width:580px;gap:1px;background:#e7d2da}.simple-calendar-table>div,.simple-calendar-table>h3,.simple-calendar-table>strong{background:#fff;padding:8px;margin:0;min-width:0}.simple-calendar-table>.simple-table-heading{position:sticky;top:0;z-index:2;background:#681d36;color:#fff;font-family:inherit;font-size:.95rem;font-weight:600;line-height:1.4;padding:14px;border:0;border-radius:0;margin:0}.simple-calendar-table .simple-time{padding-top:20px;text-align:center;font-size:.95rem}.simple-event{display:flex;width:100%;min-height:62px;flex-direction:column;text-align:left;gap:4px;border:1px solid transparent;border-radius:10px;padding:10px;font:inherit;font-size:.875rem;cursor:pointer;line-height:1.35}.simple-free{background:#f3f8f4;border-color:#c3d9c9;color:#245238}.simple-free:hover{background:#e0eee4}.simple-booked{background:#f7eaf0;border-color:#dcb7c6;color:#681d36}.simple-unavailable{background:#f5f5f5;color:#666}.simple-event:disabled{cursor:default;opacity:1}.simple-event small{font-size:.8rem}.simple-week{grid-template-columns:140px repeat(7,minmax(115px,1fr));min-width:980px}.simple-week-cell .simple-event{min-height:0;margin-bottom:6px;padding:7px}.simple-week-cell .simple-free span{display:none}.simple-week-cell .simple-free{align-items:center}.simple-doctor-name{font-family:inherit;font-size:.95rem;position:sticky;left:0;z-index:1}.work-days{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.work-days label{display:flex;flex-direction:row;align-items:center;gap:6px}.work-days input{width:auto}#schedule-dialog{max-width:680px;width:calc(100% - 24px);padding:24px}#schedule-dialog .panel{box-shadow:none;padding:16px 0;border:0}#schedule-dialog .management-toolbar{margin:12px 0}.simple-event:focus-visible{outline:3px solid #c29a46;outline-offset:2px}
@media(max-width:700px){.doctor-slot-groups{grid-template-columns:1fr}.doctor-slot-times{grid-template-columns:repeat(4,minmax(0,1fr))}.staff-main .calendar-toolbar{display:flex;flex-wrap:wrap}.staff-main .calendar-toolbar label{flex:1 1 130px}.simple-calendar{max-height:65vh}.simple-calendar-table{grid-template-columns:60px repeat(calc(var(--columns) - 1),minmax(140px,1fr))}.simple-week{grid-template-columns:110px repeat(7,minmax(115px,1fr))}}
