/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--graphite:#20221f;--olive-deep:#343a31;--olive:#596052;--taupe:#a58e7b;--cream:#f4efe6;--paper:#fbf8f2;--champagne:#c8ae7d;--line:#c8ae7d5c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--graphite);color:var(--cream);font-family:var(--font-manrope), Arial, sans-serif;margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.link-page{background:radial-gradient(circle at 50% -10%, #c8ae7d2e, transparent 32rem), linear-gradient(160deg, #1b1d1a, var(--graphite) 56%, #2a2f28);min-height:100vh;padding:76px 20px 36px}.link-profile{text-align:center;width:min(620px,100%);margin:0 auto 38px}.link-portrait{border:1px solid var(--champagne);background:#5960524d;border-radius:140px 140px 28px 28px;width:280px;height:340px;margin:0 auto 30px;padding:5px;position:relative;box-shadow:0 18px 48px #00000047}.link-portrait img{object-fit:cover;object-position:50% 12%;border-radius:136px 136px 24px 24px;width:100%;height:100%;display:block}.link-portrait span{border:1px solid var(--champagne);width:44px;height:44px;color:var(--champagne);background:var(--graphite);font:600 19px/1 var(--font-cormorant), Georgia, serif;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:18px;right:-8px;box-shadow:0 8px 18px #00000047}.link-profile h1{font:600 clamp(42px, 7vw, 62px)/1 var(--font-cormorant), Georgia, serif;margin:8px 0}.link-profile>p:last-child{color:#f4efe69e;margin:14px 0 0;font-size:14px}.link-options{gap:14px;width:min(620px,100%);margin:0 auto;display:grid}.link-card{border:1px solid var(--line);background:linear-gradient(120deg,#59605257,#343a3185);border-radius:16px;grid-template-columns:54px 1fr auto;align-items:center;gap:18px;min-height:106px;padding:18px 22px;transition:transform .22s,border-color .22s,background .22s;display:grid;box-shadow:0 15px 38px #0000001f}.link-card:hover{background:linear-gradient(120deg,#59605280,#343a31ab);border-color:#c8ae7db3;transform:translateY(-3px)}.link-card.featured{color:var(--graphite);border-color:var(--champagne);background:linear-gradient(120deg,#c8ae7dfa,#a98d5c)}.link-card.featured small{color:#20221f9e}.link-card-icon{width:52px;height:52px;color:var(--champagne);font:600 15px/1 var(--font-cormorant), Georgia, serif;border:1px solid;border-radius:50%;place-items:center;display:grid}.featured .link-card-icon{color:var(--graphite)}.link-card small,.link-card strong{display:block}.link-card small{color:#f4efe680;letter-spacing:.04em;margin-bottom:5px;font-size:10px}.link-card strong{font:600 31px/1 var(--font-cormorant), Georgia, serif}.link-card b{color:var(--champagne);font-size:22px;font-weight:400}.featured b{color:var(--graphite)}.procedure-details{padding:0;display:block;overflow:hidden}.procedure-details summary{cursor:pointer;grid-template-columns:54px 1fr auto;align-items:center;gap:18px;min-height:104px;padding:18px 22px;list-style:none;display:grid}.procedure-details summary::-webkit-details-marker{display:none}.procedure-details[open] summary b{transform:rotate(45deg)}.procedure-list{flex-wrap:wrap;gap:8px;padding:0 22px 22px 94px;display:flex}.procedure-list span{color:#f4efe6b8;border:1px solid #c8ae7d42;border-radius:999px;padding:8px 11px;font-size:11px}.link-location{text-align:center;color:#f4efe680;width:min(620px,100%);margin:30px auto;font-size:11px;line-height:1.8}.link-location p{margin:0}.link-location span{color:var(--champagne);text-transform:uppercase;letter-spacing:.16em;margin-top:8px;display:block}.link-footer{color:#f4efe666;border-top:1px solid #f4efe614;justify-content:center;align-items:center;gap:12px;width:min(620px,100%);margin:0 auto;padding:26px 0 0;font-size:10px;display:flex}.link-footer>span{color:var(--champagne);font:600 22px/1 var(--font-cormorant), Georgia, serif}.link-footer p{margin:0}.site-shell{background:radial-gradient(circle at 87% 7%, #c8ae7d1f, transparent 28rem), linear-gradient(145deg, #1b1d1a 0%, var(--graphite) 46%, #272b25 100%);min-height:100vh;overflow:hidden}.site-header{border-bottom:1px solid #f4efe61a;justify-content:space-between;align-items:center;width:min(1320px,100% - 64px);height:106px;margin:0 auto;display:flex}.brand{align-items:center;gap:20px;display:flex}.brand-mark,.footer-vf{font-family:var(--font-cormorant), Georgia, serif;color:var(--champagne);border-right:1px solid var(--line);padding-right:20px;font-size:48px;line-height:1}.brand strong{font-family:var(--font-cormorant), Georgia, serif;font-size:25px;font-weight:600;display:block}.brand small{text-transform:uppercase;letter-spacing:.26em;color:#f4efe6ad;margin-top:5px;font-size:9px;display:block}nav{gap:38px;font-size:13px;display:flex}nav a{color:#f4efe6c7;transition:color .2s}nav a:hover{color:var(--champagne)}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:70px;width:min(1320px,100% - 64px);min-height:650px;margin:0 auto;padding:72px 0;display:grid}.hero-copy{max-width:720px}.eyebrow{color:var(--champagne);text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:600}.hero h1,.section-heading h2,.location-card h2,.success-panel h1{font-family:var(--font-cormorant), Georgia, serif;letter-spacing:-.03em;font-weight:600}.hero h1{margin:28px 0;font-size:clamp(54px,6vw,88px);line-height:.95}.hero-text{color:#f4efe6ad;max-width:580px;font-size:16px;line-height:1.8}.schedule-note{border-left:2px solid var(--champagne);grid-template-columns:auto auto;justify-content:start;gap:8px 24px;margin-top:36px;padding-left:18px;font-size:13px;display:grid}.schedule-note span{color:#f4efe68c}.schedule-note strong{font-weight:500}.contour-art{border:1px solid var(--line);background:#20221f33;border-radius:260px 260px 28px 28px;min-height:490px;position:relative;overflow:hidden;box-shadow:0 24px 70px #00000038}.contour-art img{object-fit:cover;object-position:50% 18%;width:100%;height:100%;display:block;position:absolute;inset:0}.booking-section{background:var(--paper);color:var(--graphite);padding:110px max(32px,50vw - 610px)}.section-heading{max-width:680px;margin-bottom:60px}.section-heading h2{margin:10px 0 14px;font-size:58px}.section-heading>p:last-child{color:#20221f9e;line-height:1.7}.reschedule-inline-link{color:#6f5832;text-underline-offset:4px;margin-top:18px;font-size:13px;font-weight:700;text-decoration:underline;display:inline-flex}.booking-form{gap:30px;display:grid}.form-step{background:#fff;border:1px solid #343a3124;border-radius:18px;grid-template-columns:58px 1fr;gap:30px;padding:32px;display:grid;box-shadow:0 18px 50px #20221f0f}.step-number{color:var(--taupe);font:600 24px/1 var(--font-cormorant), Georgia, serif}.form-step h3{font:600 28px/1.1 var(--font-cormorant), Georgia, serif;margin:0 0 22px}.procedure-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.procedure-card{text-align:left;background:var(--paper);min-height:92px;color:var(--graphite);cursor:pointer;border:1px solid #343a3129;border-radius:12px;align-items:flex-start;gap:10px;padding:16px;transition:all .2s;display:flex}.procedure-card:hover,.procedure-card.selected{border-color:var(--champagne);background:#eee7da;transform:translateY(-2px)}.procedure-card input{accent-color:var(--graphite);margin-top:3px}.procedure-card .procedure-copy{display:block}.procedure-card .procedure-copy>span{font-weight:600;display:block}.procedure-card small{color:#20221f8f;margin-top:8px;line-height:1.4;display:block}.selection-summary{color:#20221fb8;margin:14px 0 0;font-size:.92rem}.date-time-grid,.details-grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}label,.label-text{color:var(--olive-deep);gap:9px;font-size:12px;font-weight:600;display:grid}input,textarea,select{background:var(--paper);width:100%;color:var(--graphite);border:1px solid #343a312e;border-radius:10px;outline:none;padding:14px 15px}input:focus,textarea:focus{border-color:var(--champagne);box-shadow:0 0 0 3px #c8ae7d29}input:disabled{opacity:.56;cursor:not-allowed;background:#ebe7df}.field-help{color:#20221f80;font-size:10px;font-weight:400;line-height:1.45}.slot-grid{flex-wrap:wrap;gap:8px;margin-top:9px;display:flex}.slot{background:var(--paper);cursor:pointer;border:1px solid #343a312e;border-radius:9px;padding:11px 14px}.slot.selected{background:var(--olive-deep);color:#fff;border-color:var(--olive-deep)}.muted{color:#20221f85;font-size:13px;font-weight:400}.payment-notice{border-left:3px solid var(--champagne);color:var(--olive-deep);background:#f3ede2;gap:6px;margin-top:24px;padding:18px 20px;display:grid}.payment-notice span{color:#20221fab;font-size:13px;line-height:1.6}.payment-methods{gap:10px;margin-top:24px;display:grid}.payment-method-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.payment-method-grid button{text-align:left;background:var(--paper);min-height:78px;color:var(--graphite);cursor:pointer;border:1px solid #343a312e;border-radius:11px;gap:5px;padding:15px 18px;display:grid}.payment-method-grid button.selected{border-color:var(--champagne);background:#eee7da;box-shadow:0 0 0 2px #c8ae7d2e}.payment-method-grid small{color:#20221f8f;font-size:11px;line-height:1.4}.consent{grid-template-columns:18px 1fr;align-items:start;margin:22px 0;font-weight:400;line-height:1.5}.consent input{width:16px;height:16px;margin:1px 0 0}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:52px;padding:0 24px;font-weight:700;transition:transform .2s,filter .2s;display:inline-flex}.primary-button{background:var(--champagne);color:var(--graphite)}.primary-button:hover,.secondary-button:hover{filter:brightness(1.05);transform:translateY(-2px)}.primary-button:disabled{opacity:.42;cursor:not-allowed;transform:none}.submit-button{min-width:280px}.form-error{color:#9d3d32;font-size:13px;font-weight:600}.location-card{border:1px solid var(--line);background:#59605229;border-radius:18px;justify-content:space-between;align-items:end;gap:40px;width:min(1220px,100% - 64px);margin:90px auto;padding:48px;display:flex}.location-card h2{margin:10px 0 18px;font-size:46px}.location-card p{color:#f4efe6a8;margin:5px 0}.secondary-button{border:1px solid var(--champagne);color:var(--champagne);white-space:nowrap}footer{color:#f4efe699;border-top:1px solid #f4efe61a;justify-content:space-between;align-items:center;gap:20px;width:min(1220px,100% - 64px);margin:0 auto;padding:34px 0 48px;font-size:12px;display:flex}footer div{align-items:center;gap:16px;display:flex}.footer-vf{padding-right:14px;font-size:26px}.success-panel{text-align:center;border:1px solid var(--line);background:#343a3175;border-radius:22px;width:min(680px,100% - 40px);margin:70px auto 120px;padding:48px}.success-mark{color:var(--champagne);font:600 72px/1 var(--font-cormorant), Georgia, serif;margin:auto}.success-panel h1{margin:18px 0;font-size:50px}.success-panel>p{color:#f4efe6b3;line-height:1.7}.qr-code{background:#fff;border-radius:12px;width:230px;height:230px;margin:22px auto;padding:10px}.pix-copy{text-align:left;color:var(--cream);margin:18px 0}.pix-copy textarea{resize:none;min-height:95px;font-size:11px}.payment-status{font-weight:700;color:var(--champagne)!important}.quiet-link{color:var(--champagne);margin-top:24px;display:block}.after-booking-help{text-align:left;border:1px solid var(--line);background:#20221f61;border-radius:14px;margin-top:28px;padding:22px}.after-booking-help strong{color:var(--cream)}.after-booking-help ol{color:#f4efe6b3;margin:14px 0 20px;padding-left:20px;font-size:13px;line-height:1.7}.after-booking-help .reschedule-deadline{color:var(--champagne);margin:-6px 0 20px;font-size:12px;font-weight:700;line-height:1.55}.after-booking-help .primary-button{width:100%}.reschedule-section{background:var(--paper);min-height:calc(100vh - 106px);color:var(--graphite);padding:76px max(24px,50vw - 450px) 110px}.reschedule-section .section-heading h1{font:600 clamp(48px, 7vw, 70px)/.96 var(--font-cormorant), Georgia, serif;letter-spacing:-.03em;margin:10px 0 16px}.reschedule-policy{border-left:2px solid var(--champagne);margin-top:14px;padding-left:14px;font-size:13px;color:#765f3b!important}.lookup-form,.new-slot-form,.patient-appointments,.reschedule-success{background:#fff;border:1px solid #343a3124;border-radius:18px;padding:28px;box-shadow:0 18px 50px #20221f0f}.lookup-form{grid-template-columns:1fr 1fr auto;align-items:end;gap:16px;display:grid}.lookup-form .primary-button{white-space:nowrap}.verification-form{background:#fff;border:1px solid #343a3124;border-radius:18px;grid-template-columns:auto 1fr;gap:18px 22px;margin-top:24px;padding:28px;display:grid;box-shadow:0 18px 50px #20221f0f}.verification-form h2{font:600 32px/1.05 var(--font-cormorant), Georgia, serif;margin:5px 0 8px}.verification-form p{color:#20221f9e;margin:0;font-size:13px;line-height:1.6}.verification-icon{color:#6f5832;background:#eee7da;border-radius:50%;place-items:center;width:48px;height:48px;font-size:21px;display:grid}.verification-form>label,.verification-actions{grid-column:2}.security-code{letter-spacing:.28em;text-align:center;max-width:250px;font-size:26px;font-weight:700}.verification-actions{align-items:center;gap:18px;display:flex}.text-button{color:#6f5832;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;font-size:12px;font-weight:700;text-decoration:underline}.verification-confirmed{color:#38543b;background:#e7eee5;border-radius:12px;align-items:center;gap:12px;margin-top:22px;padding:15px 18px;display:flex}.verification-confirmed span{color:#fff;background:#38543b;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.verification-confirmed p{margin:0;font-size:13px}.patient-appointments{gap:12px;margin-top:24px;display:grid}.patient-appointments h2,.new-slot-form h2,.reschedule-success h2{font:600 32px/1.05 var(--font-cormorant), Georgia, serif;margin:0 0 12px}.patient-appointments article{background:var(--paper);border:1px solid #343a311f;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;padding:18px;display:flex}.patient-appointments article div{gap:6px;display:grid}.patient-appointments article span,.patient-appointments article small{color:#20221f94;font-size:12px;line-height:1.5}.patient-appointments article small{max-width:330px}.unavailable-reschedule{justify-items:end;gap:8px!important;display:grid!important}.unavailable-reschedule a{color:#6f5832;text-underline-offset:3px;font-size:12px;font-weight:700;text-decoration:underline}.secondary-dark-button{border:1px solid var(--olive-deep);min-height:42px;color:var(--olive-deep);cursor:pointer;background:0 0;border-radius:9px;padding:0 15px;font-weight:700}.new-slot-form{margin-top:24px}.new-slot-form .date-time-grid{margin:22px 0}.reschedule-empty,.reschedule-error{color:#765f3b;background:#f3ede2;border-radius:12px;margin-top:20px;padding:18px}.reschedule-error{color:#8e3931}.reschedule-success{text-align:center}.reschedule-success>span{color:#38543b;background:#e7eee5;border-radius:50%;place-items:center;width:54px;height:54px;margin:0 auto 18px;font-size:25px;display:grid}.reschedule-success p{color:#20221f9e;line-height:1.65}.reschedule-success .primary-button{margin-top:14px}.admin-shell{background:var(--paper);min-height:100vh;color:var(--graphite)}.admin-header{background:var(--olive-deep);min-height:84px;color:var(--cream);justify-content:space-between;align-items:center;gap:20px;padding:16px max(24px,50vw - 590px);display:flex}.admin-header>div{align-items:center;gap:14px;display:flex}.admin-header>div:first-child>span{font:600 36px/1 var(--font-cormorant), Georgia, serif;color:var(--champagne)}.admin-header strong,.admin-header small{display:block}.admin-header small{color:#f4efe694;margin-top:3px}.admin-header>div:last-child{color:var(--champagne);gap:24px;font-size:12px}.admin-content{width:min(1180px,100% - 40px);margin:0 auto;padding:70px 0}.pwa-card{color:#f2e8d8;background:linear-gradient(110deg,#0d3b3b,#174a48);border:1px solid #b4774552;border-radius:16px;grid-template-columns:52px 1fr auto;align-items:center;gap:18px;margin:-34px 0 38px;padding:18px 20px;display:grid;box-shadow:0 18px 44px #0d3b3b29}.pwa-card-mark{color:#f2e8d8;width:52px;height:52px;font:600 25px/1 var(--font-cormorant), Georgia, serif;border:1px solid #b47745;border-radius:15px;place-items:center;display:grid}.pwa-card strong,.pwa-status strong{display:block}.pwa-card p{color:#f2e8d8ad;margin:5px 0 0;font-size:12px;line-height:1.5}.pwa-card button{color:#fff;cursor:pointer;background:#b47745;border:1px solid #b47745;border-radius:9px;min-height:42px;padding:0 16px;font-weight:700}.pwa-card .pwa-ios-help{color:#f2e8d8;border-top:1px solid #f2e8d821;margin-top:10px;padding-top:10px}.pwa-status{color:#0d3b3b;background:#e7eee5;border:1px solid #b4774540;border-radius:12px;align-items:center;gap:10px;width:fit-content;margin:-34px 0 38px;padding:11px 15px;display:flex}.pwa-status>span{color:#fff;background:#0d3b3b;border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;display:grid}.pwa-status small{color:#0d3b3b9e;margin-top:2px;display:block}.pwa-notification-status{grid-template-columns:30px 1fr auto;width:100%;display:grid}.pwa-notification-status button{color:#fff;cursor:pointer;background:#0d3b3b;border:0;border-radius:8px;min-height:38px;padding:0 14px;font-size:12px;font-weight:700}.pwa-notification-status button:disabled{opacity:.6;cursor:wait}.admin-content>h1{font:600 54px/1 var(--font-cormorant), Georgia, serif;margin:10px 0 34px}.admin-title-row{justify-content:space-between;align-items:end;gap:24px;margin:10px 0 34px;display:flex}.admin-title-row h1{font:600 54px/1 var(--font-cormorant), Georgia, serif;margin:0 0 8px}.admin-title-row p{color:#20221f8f;margin:0;font-size:13px}.manual-booking-form{background:#fff;border:1px solid #343a3124;border-radius:16px;margin-bottom:30px;padding:28px;box-shadow:0 18px 50px #20221f0f}.manual-booking-form h2{font:600 30px/1 var(--font-cormorant), Georgia, serif;margin:0 0 24px}.manual-form-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.manual-form-grid label small{color:#20221f73;font-weight:400}.manual-help{color:#20221f8a;margin:18px 0;font-size:12px}.admin-message{border-left:3px solid var(--champagne);color:var(--olive-deep);background:#f3ede2;padding:13px 16px;font-size:13px}.calendar-panel{background:#fff;border:1px solid #343a3124;border-radius:16px;margin:28px 0 46px;overflow:hidden;box-shadow:0 18px 50px #20221f0d}.calendar-toolbar{border-bottom:1px solid #343a311f;justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:16px 20px;display:flex}.view-tabs{background:#f0ece4;border-radius:10px;padding:4px;display:flex}.view-tabs button,.calendar-navigation button{color:var(--olive-deep);cursor:pointer;background:0 0;border:0}.view-tabs button{border-radius:8px;padding:9px 15px;font-size:12px;font-weight:700}.view-tabs button.active{background:var(--olive-deep);color:#fff}.calendar-navigation{align-items:center;gap:14px;display:flex}.calendar-navigation strong{text-align:center;min-width:210px;font:600 20px/1 var(--font-cormorant), Georgia, serif;text-transform:capitalize}.calendar-navigation button{border:1px solid #343a3129;border-radius:8px;min-width:34px;min-height:34px;padding:0 10px}.day-calendar{padding:18px 24px 28px}.day-slot{border-bottom:1px solid #343a3117;grid-template-columns:70px 1fr;align-items:stretch;min-height:54px;display:grid}.day-slot>time{color:#20221f7a;padding-top:18px;font-size:11px}.free-slot{color:#20221f4d;align-self:center;font-size:11px}.calendar-event{border-left:4px solid var(--champagne);color:var(--olive-deep);background:#e9eee5;border-radius:7px;gap:3px;margin:5px 0;padding:10px 14px;display:grid}.calendar-event strong{font-size:13px}.calendar-event span{text-transform:capitalize;color:#20221f94;font-size:10px}.week-scroll{overflow-x:auto}.week-calendar{grid-template-columns:72px repeat(6,1fr);min-width:980px;display:grid}.week-corner,.week-day-heading{background:#f6f3ed;border:1px solid #343a311a;border-top:0;border-left:0;min-height:68px}.week-corner{color:#20221f66;place-items:center;font-size:10px;display:grid}.week-day-heading{color:var(--olive-deep);cursor:pointer;justify-content:center;align-items:center;gap:8px;display:flex}.week-day-heading span{text-transform:uppercase;font-size:10px}.week-day-heading strong{font:600 24px/1 var(--font-cormorant), Georgia, serif}.week-row{display:contents}.week-row>time{text-align:center;color:#20221f66;border-bottom:1px solid #343a3114;border-right:1px solid #343a311a;min-height:48px;padding:14px 8px 0;font-size:10px}.week-cell{cursor:pointer;background:#fff;border-top:0;border-bottom:1px solid #343a3114;border-left:0;border-right:1px solid #343a311a;min-height:48px;padding:4px;position:relative}.week-cell:hover{background:#f6f2ea}.week-cell.occupied{background:#e9eee5}.week-cell.closed{cursor:default;background:repeating-linear-gradient(135deg,#f0ede7,#f0ede7 5px,#e8e4dd 5px 10px)}.week-cell>span{z-index:1;border-left:3px solid var(--champagne);background:var(--olive-deep);color:#fff;text-align:left;border-radius:5px;align-content:center;padding:5px 7px;display:grid;position:absolute;inset:4px;overflow:hidden}.week-cell>span strong{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.week-cell>span small{color:#ffffff94;text-transform:capitalize;margin-top:2px;font-size:8px}.year-calendar{background:#f6f3ed;grid-template-columns:repeat(3,1fr);gap:16px;padding:22px;display:grid}.month-card{background:#fff;border:1px solid #343a311a;border-radius:12px;padding:16px}.month-card h3{font:600 23px/1 var(--font-cormorant), Georgia, serif;margin:0 0 14px}.mini-weekdays,.mini-days{grid-template-columns:repeat(6,1fr);gap:4px;display:grid}.mini-weekdays{margin-bottom:5px}.mini-weekdays span{text-align:center;color:#20221f66;font-size:9px;font-weight:700}.mini-days>span,.mini-days button{min-height:28px;color:var(--graphite);background:0 0;border:0;border-radius:6px;font-size:10px}.mini-days button{cursor:pointer;position:relative}.mini-days button:hover{background:#eee9df}.mini-days button:disabled{color:#20221f33;cursor:default}.mini-days button.has-events{background:var(--olive-deep);color:#fff;font-weight:700}.mini-days button small{background:var(--champagne);min-width:14px;height:14px;color:var(--graphite);border-radius:50%;place-items:center;font-size:8px;display:grid;position:absolute;top:-3px;right:-3px}.admin-list-heading{margin:44px 0 20px}.admin-list-heading h2{font:600 34px/1 var(--font-cormorant), Georgia, serif;margin:6px 0 0}.appointments-list{gap:12px;display:grid}.appointments-list article{background:#fff;border:1px solid #343a3124;border-radius:14px;grid-template-columns:160px 1fr 150px auto;align-items:center;gap:24px;padding:22px;display:grid}.appointment-date{gap:4px;display:grid}.appointment-date strong{font-size:18px}.appointment-date span,.appointments-list p{color:#20221f94;font-size:12px}.appointments-list h2{font:600 24px/1 var(--font-cormorant), Georgia, serif;margin:0 0 8px}.appointments-list p{margin:3px 0}.appointment-status{gap:5px;display:grid}.status{color:#38543b;background:#e7eee5;border-radius:999px;width:fit-content;padding:6px 9px;font-size:11px;font-weight:700;display:inline-flex}.status.pending_payment{color:#7d6129;background:#f4ead3}.appointment-status small{color:#38543b}.appointments-list button{color:#8e3931;cursor:pointer;background:0 0;border:0}.admin-empty{text-align:center;background:#fff;border:1px solid #343a3124;border-radius:14px;padding:48px}@media (width<=900px){.site-header{width:calc(100% - 32px);height:88px}nav{gap:16px}.hero{grid-template-columns:1fr;gap:30px;width:calc(100% - 36px);padding:60px 0}.contour-art{min-height:340px}.procedure-grid,.year-calendar{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.link-page{padding-top:46px}.link-profile{margin-bottom:30px}.link-portrait{border-radius:118px 118px 24px 24px;width:236px;height:286px}.link-portrait img{border-radius:114px 114px 20px 20px}.link-card{grid-template-columns:46px 1fr auto;gap:13px;min-height:94px;padding:15px}.link-card-icon{width:44px;height:44px}.link-card strong{font-size:27px}.procedure-details summary{grid-template-columns:46px 1fr auto;gap:13px;min-height:92px;padding:15px}.procedure-list{padding:0 15px 18px}.brand-mark{padding-right:12px;font-size:36px}.brand{gap:12px}.brand strong{font-size:18px}.brand small{font-size:7px}nav a:first-child{display:none}.hero h1{font-size:54px}.hero{min-height:auto}.contour-art{min-height:300px}.art-monogram{font-size:100px}.booking-section{padding:78px 18px}.section-heading h2{font-size:46px}.form-step{grid-template-columns:1fr;gap:14px;padding:22px 16px}.procedure-grid,.date-time-grid,.details-grid,.payment-method-grid{grid-template-columns:1fr}.reschedule-section{padding:54px 18px 80px}.lookup-form{grid-template-columns:1fr;padding:20px}.patient-appointments,.new-slot-form,.reschedule-success{padding:20px}.verification-form{grid-template-columns:1fr;padding:22px}.verification-form>label,.verification-actions{grid-column:1}.verification-actions{flex-direction:column;align-items:stretch}.security-code{max-width:100%}.patient-appointments article{flex-direction:column;align-items:stretch}.unavailable-reschedule{justify-items:start}.secondary-dark-button{width:100%}.procedure-card{min-height:76px}.submit-button{width:100%;min-width:0}.location-card{flex-direction:column;align-items:stretch;width:calc(100% - 36px);margin:55px auto;padding:28px 22px}.location-card h2{font-size:38px}footer{flex-direction:column;align-items:flex-start;width:calc(100% - 36px)}.success-panel{padding:32px 20px}.success-panel h1{font-size:42px}.admin-header{align-items:flex-start}.admin-content{width:min(100% - 24px,1180px);padding-top:48px}.pwa-card{grid-template-columns:46px 1fr;margin-top:-26px;padding:16px}.pwa-card-mark{width:46px;height:46px}.pwa-card button{grid-column:1/-1;width:100%}.pwa-status{margin-top:-26px}.pwa-notification-status{grid-template-columns:30px 1fr;width:100%}.pwa-notification-status button{grid-column:1/-1;width:100%}.admin-header>div:last-child{flex-direction:column;align-items:flex-end;gap:8px}.appointments-list article{grid-template-columns:1fr;gap:12px}.admin-title-row{flex-direction:column;align-items:stretch}.admin-title-row h1{font-size:44px}.manual-form-grid{grid-template-columns:1fr}.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-navigation{justify-content:space-between}.calendar-navigation strong{min-width:0;font-size:17px}.year-calendar{grid-template-columns:1fr;padding:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}
