.availability-calendar{width:100%;border:1px solid var(--c-line-soft);border-radius:var(--rad-lg);background:var(--c-white);padding:18px}.availability-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;text-align:center}.availability-calendar-header h4{margin:0;color:var(--c-ink);font-family:var(--f-display);font-size:20px;text-transform:capitalize}.availability-calendar-header span{display:block;margin-top:3px;color:var(--c-text-mute);font-size:11px}.availability-calendar-nav{width:36px;height:36px;border:1px solid var(--c-line);border-radius:50%;background:var(--c-cream);color:var(--c-ink);cursor:pointer;font-size:25px;line-height:1}.availability-calendar-nav:disabled{cursor:not-allowed;opacity:.35}.availability-weekdays,.availability-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.availability-weekdays{margin-bottom:7px}.availability-weekdays span{color:var(--c-text-mute);font-size:10px;font-weight:700;text-align:center;text-transform:uppercase}.availability-day{min-height:64px;padding:8px 4px;border:1px solid var(--c-line-soft);border-radius:var(--rad-md);background:var(--c-cream);color:var(--c-ink);cursor:pointer;text-align:center;transition:transform .2s,border-color .2s,background .2s}.availability-day:hover:not(:disabled){border-color:var(--c-gold);transform:translateY(-1px)}.availability-day>span{display:block;font-size:17px;font-weight:700}.availability-day small{display:block;margin-top:5px;color:var(--c-text-soft);font-size:9px;line-height:1.1}.availability-day-outside{border-color:transparent;background:transparent;cursor:default;opacity:.25}.availability-day-disabled{cursor:not-allowed;opacity:.35}.availability-day-open{border-color:#256a3a38}.availability-day-closed{background:#f7eeee;color:var(--c-text-mute)}.availability-day-selected{border-color:var(--c-ink);background:var(--c-ink);color:var(--c-white)}.availability-day-selected small{color:#ffffffb8}.availability-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.availability-slot{min-height:44px;border:1px solid var(--c-line);border-radius:var(--rad-md);background:var(--c-cream);color:var(--c-ink);cursor:pointer;font-size:14px;font-weight:700}.availability-slot-open:hover:not(:disabled){border-color:var(--c-gold)}.availability-slot-selected{border-color:var(--c-ink);background:var(--c-ink);color:var(--c-white)}.availability-slot-taken,.availability-slot-blocked{cursor:not-allowed;opacity:.42;text-decoration:line-through}.availability-slot-taken{background:#f4e3e1}.availability-slot-blocked{background:#f5eee3}.availability-slot:disabled{cursor:not-allowed}.availability-empty{margin:0;padding:22px 0;color:var(--c-text-soft);font-size:14px;text-align:center}@media(max-width:600px){.availability-calendar{padding:12px}.availability-weekdays,.availability-grid{gap:4px}.availability-day{min-height:57px;padding:6px 2px}.availability-day>span{font-size:15px}.availability-day small{font-size:8px}.availability-slots{grid-template-columns:repeat(3,minmax(0,1fr))}}.auth-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;font-family:var(--f-body);color:var(--c-text-soft)}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--c-cream);padding:24px}.auth-card{width:100%;max-width:400px;background:var(--c-white);border-radius:var(--rad-xl);box-shadow:var(--sh-lg);padding:44px 40px;display:flex;flex-direction:column;gap:18px;border:1px solid var(--c-line-soft)}.auth-brand{display:flex;justify-content:center;margin-bottom:4px}.auth-brand img{height:56px;width:auto;mix-blend-mode:multiply}.auth-card h1{font-family:var(--f-display);font-size:26px;font-weight:800;color:var(--c-ink);margin:0;text-align:center}.auth-subtitle{font-family:var(--f-body);font-size:13px;color:var(--c-text-soft);text-align:center;margin:-10px 0 4px}.auth-card label{display:flex;flex-direction:column;gap:6px;font-family:var(--f-body);font-size:13px;font-weight:600;color:var(--c-ink)}.auth-card input{padding:13px 16px;border:1px solid var(--c-line);border-radius:var(--rad-pill);font-size:14px;font-family:var(--f-body);outline:none;background:var(--c-cream)}.auth-card input:focus{border-color:var(--c-gold)}.auth-card button{margin-top:6px;width:100%;justify-content:center;border:none;cursor:pointer}.auth-error{background:#fbe9e7;color:#9a3b2e;border-radius:var(--rad-md);padding:10px 14px;font-size:13px;font-family:var(--f-body)}@media(max-width:600px){.auth-shell{align-items:flex-start;padding:24px 16px}.auth-card{max-width:none;margin-top:8vh;padding:32px 22px;border-radius:var(--rad-lg)}.auth-card h1{font-size:24px}}.app-shell{min-height:100vh;background:var(--c-cream);font-family:var(--f-body)}.app-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 40px;background:var(--c-white);border-bottom:1px solid var(--c-line);position:sticky;top:0;z-index:10}.app-header-brand img{height:36px;width:auto;mix-blend-mode:multiply;display:block}.app-header-nav{display:flex;gap:8px;flex:1}.app-header-nav a{text-decoration:none;color:var(--c-text-soft);font-weight:600;font-size:14px;padding:8px 16px;border-radius:var(--rad-pill);transition:all .2s}.app-header-nav a:hover{color:var(--c-ink);background:var(--c-cream)}.app-header-nav a.active{color:var(--c-white);background:var(--c-ink)}.app-header-user{display:flex;align-items:center;gap:16px}.app-header-who{display:flex;flex-direction:column;align-items:flex-end;line-height:1.3}.app-header-username{font-weight:700;font-size:13px;color:var(--c-ink)}.app-header-role{font-size:11px;color:var(--c-gold-deep);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.logout-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:20px;background:#1c171475;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.logout-modal{width:min(100%,440px);padding:32px;border:1px solid var(--c-line-soft);border-radius:var(--rad-xl);background:var(--c-white);box-shadow:0 24px 70px #1c171433;text-align:center}.logout-modal-icon{display:grid;width:52px;height:52px;margin:0 auto 18px;place-items:center;border-radius:50%;background:var(--c-cream-2);color:var(--c-gold-deep);font-family:var(--f-display);font-size:25px;font-weight:800}.logout-modal h2{margin:0;color:var(--c-ink);font-family:var(--f-display);font-size:24px;font-weight:800}.logout-modal p{margin:10px 0 0;color:var(--c-text-soft);font-size:14px}.logout-modal-actions{display:flex;gap:12px;margin-top:28px}.logout-modal-actions .btn{flex:1;padding:13px 18px}.agenda-toast{position:fixed;top:84px;right:28px;z-index:120;display:flex;align-items:flex-start;gap:12px;width:min(380px,calc(100vw - 40px));padding:16px 16px 16px 14px;border:1px solid #b9dbc3;border-radius:var(--rad-lg);background:var(--c-white);box-shadow:0 18px 40px #1c171429;animation:agenda-toast-in .25s ease-out}@keyframes agenda-toast-in{0%{opacity:0;transform:translate3d(18px,-8px,0)}to{opacity:1;transform:translateZ(0)}}.agenda-toast-icon{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border-radius:50%;background:#e2f2e6;color:#256a3a;font-size:17px;font-weight:800}.agenda-toast>div{display:flex;flex:1;flex-direction:column;gap:3px}.agenda-toast strong{color:var(--c-ink);font-size:14px}.agenda-toast span:not(.agenda-toast-icon){color:var(--c-text-soft);font-size:12px;line-height:1.4}.agenda-toast>button{border:0;background:transparent;color:var(--c-text-mute);font-size:20px;line-height:1;cursor:pointer}.agenda-toast>button:hover{color:var(--c-ink)}.agenda-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;display:grid;place-items:center;padding:20px;overflow-y:auto;background:#1c17147a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.agenda-modal{width:min(100%,680px);padding:28px;border:1px solid var(--c-line-soft);border-radius:var(--rad-xl);background:var(--c-white);box-shadow:0 24px 70px #1c171433}.agenda-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.agenda-modal-kicker{display:block;margin-bottom:5px;color:var(--c-gold-deep);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.agenda-modal h2{margin:0;color:var(--c-ink);font-family:var(--f-display);font-size:26px;font-weight:800}.agenda-modal-close{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--c-line);border-radius:50%;background:var(--c-cream);color:var(--c-text-soft);font-size:24px;line-height:1;cursor:pointer}.agenda-modal-close:hover{border-color:var(--c-ink);color:var(--c-ink)}.appointment-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.appointment-edit-grid label{display:flex;flex-direction:column;gap:6px;color:var(--c-ink);font-size:12px;font-weight:700}.appointment-edit-grid input,.appointment-edit-grid select,.appointment-edit-grid textarea{width:100%;padding:11px 14px;border:1px solid var(--c-line);border-radius:var(--rad-md);background:var(--c-cream);color:var(--c-ink);font:inherit;font-size:14px;outline:none}.appointment-edit-grid input:focus,.appointment-edit-grid select:focus,.appointment-edit-grid textarea:focus{border-color:var(--c-gold)}.appointment-edit-full-width{grid-column:1 / -1}.agenda-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.agenda-modal-actions .btn{min-width:140px;padding:13px 18px}.appointment-delete-modal{width:min(100%,440px);text-align:center}.appointment-delete-modal p{margin:12px 0 0;color:var(--c-text-soft);font-size:14px;line-height:1.6}.agenda-modal-icon{display:grid;width:52px;height:52px;margin:0 auto 18px;place-items:center;border-radius:50%;background:var(--c-cream-2);color:var(--c-gold-deep);font-family:var(--f-display);font-size:25px;font-weight:800}.agenda-modal-icon-danger{background:#fbe9e7;color:#9a3b2e}.btn-danger{border:1px solid #9a3b2e;background:#9a3b2e;color:var(--c-white)}.btn-danger:hover{background:#7f2e25;box-shadow:0 8px 20px #9a3b2e33}.app-main{max-width:1200px;margin:0 auto;padding:40px 32px 80px}.panel-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:28px}.panel-head h1{font-family:var(--f-display);font-size:32px;font-weight:800;color:var(--c-ink);margin:0 0 6px}.panel-subtitle{font-size:14px;color:var(--c-text-soft);margin:0}.panel-card{background:var(--c-white);border-radius:var(--rad-xl);border:1px solid var(--c-line-soft);padding:28px;margin-bottom:24px;box-shadow:var(--sh-sm)}.panel-form{display:flex;flex-direction:column;gap:16px}.panel-form h3{margin:0;font-family:var(--f-display);font-size:18px;font-weight:700;color:var(--c-ink)}.panel-form-actions{display:flex;gap:12px}.panel-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.panel-form label,.panel-filters label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--c-ink)}.panel-form input,.panel-form select,.panel-form textarea,.panel-filters select{padding:11px 14px;border:1px solid var(--c-line);border-radius:var(--rad-md);font-size:14px;font-family:var(--f-body);outline:none;background:var(--c-cream)}.panel-form input:focus,.panel-form select:focus,.panel-form textarea:focus{border-color:var(--c-gold)}.panel-form button{align-self:flex-start;cursor:pointer}.panel-filters{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:20px}.panel-filters input,.panel-filters select{min-width:180px;padding:11px 14px;border:1px solid var(--c-line);border-radius:var(--rad-md);font-size:14px;font-family:var(--f-body);outline:none;background:var(--c-cream)}.panel-filters input:focus,.panel-filters select:focus{border-color:var(--c-gold)}.panel-filters select{min-width:160px}.agenda-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;margin-bottom:20px;border:1px solid var(--c-line-soft);border-radius:var(--rad-lg);background:var(--c-cream)}.agenda-summary>div{display:flex;align-items:baseline;gap:12px}.agenda-summary-label{color:var(--c-text-soft);font-size:13px;font-weight:700}.agenda-summary strong{color:var(--c-ink);font-family:var(--f-display);font-size:28px;line-height:1}.panel-filter-clear{align-self:flex-end;padding:11px 14px;border:1px solid var(--c-line);border-radius:var(--rad-md);background:var(--c-white);color:var(--c-text-soft);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.panel-filter-clear:hover{border-color:var(--c-ink);color:var(--c-ink)}.panel-empty{text-align:center;color:var(--c-text-soft);font-size:14px;padding:32px 0;margin:0}.panel-error{background:#fbe9e7;color:#9a3b2e;border-radius:var(--rad-md);padding:10px 14px;font-size:13px}.panel-success{background:#e2f2e6;color:#256a3a;border-radius:var(--rad-md);padding:10px 14px;margin-bottom:20px;font-size:13px}.panel-section-title{margin:0 0 6px;color:var(--c-ink);font-family:var(--f-display);font-size:20px;font-weight:800}.panel-table-wrap{overflow-x:auto}.panel-table{width:100%;border-collapse:collapse;font-size:13px}.panel-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--c-text-mute);font-weight:700;padding:10px 14px;border-bottom:1px solid var(--c-line);white-space:nowrap}.panel-table td{padding:14px;border-bottom:1px solid var(--c-line-soft);color:var(--c-ink);vertical-align:top}.agenda-appointments-mobile,.users-mobile-list{display:none}.user-mobile-card{padding:16px;border:1px solid var(--c-line-soft);border-radius:var(--rad-lg);background:var(--c-white);box-shadow:var(--sh-sm)}.user-mobile-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.user-mobile-card-heading strong{display:block;color:var(--c-ink);font-size:15px}.user-mobile-card-meta{padding:14px 0;border-top:1px solid var(--c-line-soft);border-bottom:1px solid var(--c-line-soft);margin-top:14px;color:var(--c-text-soft);font-size:13px}.user-mobile-card-actions{padding-top:14px}.agenda-appointment-card{padding:16px;border:1px solid var(--c-line-soft);border-radius:var(--rad-lg);background:var(--c-white);box-shadow:var(--sh-sm)}.agenda-appointment-card-topline,.agenda-appointment-card-main{display:flex;gap:14px}.agenda-appointment-card-topline{align-items:flex-start;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--c-line-soft)}.agenda-appointment-card-topline strong,.agenda-appointment-card-main strong{display:block;color:var(--c-ink);font-size:14px}.agenda-card-label{display:block;margin-bottom:4px;color:var(--c-text-mute);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.agenda-appointment-card-main{flex-direction:column;padding:14px 0}.agenda-appointment-card-main>div{min-width:0}.agenda-appointment-card-main span:not(.agenda-card-label){color:var(--c-text-soft);font-size:13px;overflow-wrap:anywhere}.agenda-appointment-card-actions{padding-top:14px;border-top:1px solid var(--c-line-soft)}.agenda-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:20px;color:var(--c-text-soft);font-size:12px;font-weight:700}.agenda-pagination-button{min-height:36px;padding:8px 14px;border:1px solid var(--c-line);border-radius:var(--rad-pill);background:var(--c-white);color:var(--c-ink);font:inherit;cursor:pointer}.agenda-pagination-button:hover:not(:disabled){border-color:var(--c-gold);background:var(--c-cream)}.agenda-pagination-button:disabled{cursor:not-allowed;opacity:.4}.panel-muted{color:var(--c-text-mute);font-size:12px}.status-badge{display:inline-block;padding:4px 12px;border-radius:var(--rad-pill);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.status-pending{background:#fdf1d9;color:#97650f}.status-confirmed{background:#e2f2e6;color:#256a3a}.status-attended{background:#e3eef3;color:#2f6578}.status-cancelled{background:#f4e3e1;color:#9a3b2e}.panel-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;white-space:nowrap}.panel-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border:1px solid transparent;border-radius:var(--rad-pill);font:inherit;font-size:11px;font-weight:700;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s}.panel-action:hover{transform:translateY(-1px)}.panel-action-edit{border-color:var(--c-gold);background:var(--c-cream-2);color:var(--c-gold-deep)}.panel-action-attended{border-color:#b5d5df;background:#eef8fa;color:#2f6578}.panel-action-attended:hover{border-color:#2f6578;background:#dceef2}.panel-action-edit:hover{border-color:var(--c-gold-deep);background:var(--c-gold);color:var(--c-white)}.panel-action-delete{border-color:#e7b9b3;background:#fff6f5;color:#9a3b2e}.panel-action-delete:hover{border-color:#9a3b2e;background:#fbe9e7}.panel-link{background:none;border:none;padding:0;font-size:12px;font-weight:700;color:var(--c-gold-deep);cursor:pointer;text-decoration:underline}.panel-link-danger{color:#9a3b2e}.role-badge{display:inline-block;padding:3px 10px;border-radius:var(--rad-pill);font-size:11px;font-weight:700;text-transform:uppercase;background:var(--c-ink);color:var(--c-gold)}.role-badge.staff{background:var(--c-cream-2);color:var(--c-ink)}.weekly-schedule{display:flex;flex-direction:column;gap:12px}.weekly-day{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:start;padding:14px 0;border-top:1px solid var(--c-line-soft)}.weekly-day-toggle{display:flex;flex-direction:row;align-items:center;gap:9px;padding-top:8px}.weekly-day-toggle input{accent-color:var(--c-gold-deep)}.weekly-intervals{display:flex;flex-direction:column;gap:8px}.weekly-interval{display:flex;align-items:center;gap:8px}.weekly-interval input{width:130px}.weekly-interval span{color:var(--c-text-mute);font-size:12px}.availability-config-card{overflow:hidden}.availability-config-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:24px;margin-top:24px}.availability-editor{display:flex;flex-direction:column;gap:16px;padding:20px;border:1px solid var(--c-line-soft);border-radius:var(--rad-lg);background:var(--c-cream)}.availability-editor h3{margin:0;color:var(--c-ink);font-family:var(--f-display);font-size:22px}.availability-editor label{display:flex;flex-direction:column;gap:6px;color:var(--c-ink);font-size:12px;font-weight:600}.availability-editor select,.availability-editor input,.availability-editor textarea{width:100%;padding:11px 14px;border:1px solid var(--c-line);border-radius:var(--rad-md);background:var(--c-white);font:inherit;font-size:14px}.appointment-composer .availability-config-layout{margin-top:0}.appointment-mode-readonly{display:flex;flex-direction:column;gap:5px;padding:12px 14px;border:1px solid var(--c-line);border-radius:var(--rad-md);background:var(--c-white)}.appointment-mode-readonly span{color:var(--c-text-mute);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.appointment-mode-readonly strong{color:var(--c-ink);font-size:15px}.appointment-data-section{display:flex;flex-direction:column;gap:12px;padding-top:8px;border-top:1px solid var(--c-line)}.appointment-data-section h3{font-size:18px}.appointment-composer>.panel-error{margin-bottom:0}.appointment-composer .btn{align-self:flex-start;cursor:pointer}.custom-date-interval{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:900px){.app-header{flex-wrap:wrap;padding:14px 20px}.app-main{padding:28px 16px 60px}.panel-form-grid{grid-template-columns:1fr 1fr}.availability-config-layout{grid-template-columns:1fr}.agenda-filters>label{flex:1 1 180px}}@media(max-width:600px){.app-header{display:grid;grid-template-columns:1fr auto;gap:12px;padding:12px 16px}.app-header-brand img{height:34px;max-width:150px}.app-header-nav{grid-column:1 / -1;min-width:0;width:100%;overflow-x:auto;padding-bottom:2px}.app-header-nav a{flex:0 0 auto;white-space:nowrap;padding:8px 12px;font-size:12px}.app-header-user{grid-column:1 / -1;min-width:0;justify-content:space-between;gap:10px}.app-header-who{min-width:0;align-items:flex-start}.app-header-username{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header-user .btn{flex:0 0 auto;padding:10px 12px;font-size:12px;white-space:nowrap}.app-main{padding:22px 12px 48px}.panel-head{align-items:stretch;gap:14px;margin-bottom:20px}.panel-head h1{font-size:28px}.panel-head>.btn{width:100%}.panel-card{padding:18px 14px;border-radius:var(--rad-lg)}.agenda-appointments-table{display:none}.agenda-appointments-mobile{display:grid;gap:12px}.users-table-desktop{display:none}.users-mobile-list{display:grid;gap:12px}.agenda-toast{top:76px;right:16px;left:16px;width:auto}.panel-form-grid{grid-template-columns:1fr}.weekly-day{grid-template-columns:1fr;gap:8px}.weekly-interval{flex-wrap:wrap}.weekly-interval input{width:120px}.agenda-summary{align-items:flex-start;flex-direction:column}.agenda-appointment-card-topline{flex-direction:column;gap:10px}.agenda-appointment-card-topline .status-badge{align-self:flex-start}.agenda-appointment-card-actions{gap:8px}.agenda-appointment-card-actions .panel-action{width:100%;flex:1 1 100%}.user-mobile-card-actions{gap:8px}.user-mobile-card-actions .panel-action{width:100%;flex:1 1 100%}.agenda-pagination{gap:8px;justify-content:space-between}.agenda-pagination-button{padding-inline:12px}.agenda-filters input,.agenda-filters select,.panel-filter-clear{width:100%}.appointment-edit-grid{grid-template-columns:1fr}.appointment-edit-full-width{grid-column:auto}.agenda-modal{padding:22px 18px}.agenda-modal-actions{flex-direction:column-reverse}.agenda-modal-actions .btn{width:100%}.panel-form-actions{flex-direction:column}.panel-form-actions .btn{width:100%}}:root{--c-cream: #F6F1EA;--c-cream-2: #EFE6DA;--c-sand: #E2D4C0;--c-tan: #C9B395;--c-tan-2: #B59877;--c-taupe: #8F7459;--c-gold: #B08968;--c-gold-deep: #9A6E45;--c-ink: #1A1410;--c-ink-soft: #3E342C;--c-text-soft: #6B5D51;--c-text-mute: #9B8A7B;--c-line: #E8DDD0;--c-line-soft: #F0E8DC;--c-white: #FFFFFF;--f-display: "Poppins", "Montserrat", -apple-system, sans-serif;--f-body: "Poppins", -apple-system, BlinkMacSystemFont, sans-serif;--f-script: "Dancing Script", "Great Vibes", cursive;--f-serif-accent: "Playfair Display", Georgia, serif;--rad-pill: 999px;--rad-xl: 32px;--rad-lg: 24px;--rad-md: 16px;--rad-sm: 10px;--sh-sm: 0 2px 8px rgba(26,20,16,.04);--sh-md: 0 8px 28px rgba(143,116,89,.12);--sh-lg: 0 24px 60px rgba(143,116,89,.18);--sh-gold: 0 12px 36px rgba(176,137,104,.28)}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;padding:0;font-family:var(--f-body);color:var(--c-ink);background:var(--c-cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.t-display{font-family:var(--f-display);font-weight:800;line-height:.98;letter-spacing:-.025em}.t-bold{font-weight:700}.t-medium{font-weight:500}.t-script{font-family:var(--f-script);font-weight:500}.eyebrow{font-family:var(--f-body);font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold-deep)}.body{font-family:var(--f-body);font-size:15px;line-height:1.7;color:var(--c-text-soft);font-weight:400}.pill{display:inline-flex;align-items:center;gap:10px;padding:10px 22px;border-radius:var(--rad-pill);background:var(--c-tan);color:var(--c-white);font-weight:500;font-size:14px;letter-spacing:.02em}.pill-dark{background:var(--c-ink);color:var(--c-white)}.pill-outline{background:transparent;border:1.5px solid var(--c-ink);color:var(--c-ink)}.pill-cream{background:var(--c-cream-2);color:var(--c-ink)}.section-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--c-gold-deep);font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1;text-transform:uppercase}.section-kicker:before{content:"";width:34px;height:1px;background:var(--c-gold)}.section-kicker-dark{color:var(--c-gold)}.before-after-overlay,.before-after-handle{will-change:clip-path,left}.before-after-overlay{transition:clip-path .38s cubic-bezier(.22,.61,.36,1)}.before-after-handle{transition:left .38s cubic-bezier(.22,.61,.36,1)}.before-after-slider.is-dragging .before-after-overlay,.before-after-slider.is-dragging .before-after-handle{transition:none}@media(prefers-reduced-motion:reduce){.before-after-overlay,.before-after-handle{transition-duration:.01ms}}.credential-groups{display:flex;flex-direction:column;gap:56px}.credential-group-heading{margin:0 0 20px;color:var(--c-ink);font-family:var(--f-display);font-size:24px;font-weight:700;letter-spacing:-.02em}.credential-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.credential-card{display:grid;grid-template-columns:68px minmax(0,1fr);gap:20px;padding:24px 26px;border:1px solid var(--c-line);border-radius:var(--rad-lg);background:#ffffff94}.credential-year{align-self:center;padding-top:0;color:var(--c-gold-deep);font-family:var(--f-display);font-size:18px;font-weight:800;text-align:left}.credential-card h4{margin:0 0 7px;color:var(--c-ink);font-family:var(--f-display);font-size:17px;line-height:1.3}.credential-card p{margin:0;color:var(--c-text-soft);font-size:13px;line-height:1.5}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--f-body);font-size:14px;font-weight:600;padding:16px 32px;border-radius:var(--rad-pill);border:none;cursor:pointer;transition:all .3s ease;text-decoration:none;letter-spacing:.02em}.btn-primary{background:var(--c-ink);color:var(--c-white)}.btn-primary:hover{background:var(--c-gold-deep);transform:translateY(-2px);box-shadow:var(--sh-gold)}.btn-gold{background:var(--c-gold);color:var(--c-white)}.btn-gold:hover{background:var(--c-gold-deep);box-shadow:var(--sh-gold)}.btn-whatsapp{background:#24cc64;color:var(--c-white)}.btn-whatsapp:hover{background:#1fa653;box-shadow:0 8px 20px #24cc643d}.btn-outline{background:transparent;color:var(--c-ink);border:1.5px solid var(--c-ink)}.btn-outline:hover{background:var(--c-ink);color:var(--c-white)}.location-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.location-map-link{display:inline-flex;width:50px;height:50px;align-items:center;justify-content:center;border:1px solid var(--c-line);border-radius:50%;background:var(--c-white);box-shadow:var(--sh-sm);text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}.location-brand-image{display:block;width:30px;height:30px}.location-brand-image-waze{width:100%;height:100%;object-fit:cover}.location-map-link-waze{overflow:hidden;padding:0;border-color:transparent}.location-brand-image-maps{object-fit:cover;object-position:center}.location-map-link:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}.location-map-link:focus-visible{outline:3px solid var(--c-gold);outline-offset:3px}.footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding-top:28px;border-top:1px solid rgba(255,255,255,.1);color:#ffffff80;font-size:12px}.footer-bottom>span:last-child{text-align:right}.footer-developed-by{color:var(--c-gold);text-align:center;white-space:nowrap}.photo{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--c-sand) 0%,var(--c-tan) 100%)}.photo-placeholder{background:linear-gradient(135deg,var(--c-cream-2) 0%,var(--c-sand) 100%);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.photo-placeholder:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 30% 20%,rgba(255,255,255,.5) 0%,transparent 40%),radial-gradient(circle at 70% 80%,rgba(176,137,104,.2) 0%,transparent 50%)}.photo-placeholder .ph-label{position:relative;z-index:2;font-family:var(--f-script);color:var(--c-gold-deep);font-size:20px;text-align:center;padding:0 20px;opacity:.7}.gold-line{height:1px;background:linear-gradient(90deg,transparent 0%,var(--c-gold) 50%,transparent 100%);border:0}.card{background:var(--c-white);border-radius:var(--rad-xl);padding:32px;box-shadow:var(--sh-sm);border:1px solid var(--c-line-soft)}::selection{background:var(--c-gold);color:var(--c-white)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--c-cream)}::-webkit-scrollbar-thumb{background:var(--c-tan);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--c-gold-deep)}input,textarea,select{font-family:var(--f-body)}.artboard-root{background:var(--c-cream);overflow:hidden}.legacy-menu-toggle,.legacy-mobile-panel{display:none}.legacy-menu-toggle{align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--c-line);border-radius:999px;background:var(--c-white);color:var(--c-ink);font-size:24px;font-weight:700;cursor:pointer}.legacy-nav-links{position:absolute;left:50%;transform:translate(-50%)}.legacy-nav-cta{margin-left:auto}@media(max-width:900px){html,body,#root{overflow-x:hidden}.legacy-nav{left:14px!important;right:14px!important;top:12px!important;padding:12px 16px!important;border-radius:34px!important}.legacy-nav.is-hidden{transform:translateY(calc(-100% - 18px));pointer-events:none}.legacy-nav img{height:46px!important;max-width:150px!important;object-fit:contain!important}.legacy-nav-links,.legacy-nav-cta{display:none!important}.legacy-menu-toggle{display:inline-flex!important}.legacy-mobile-panel{position:absolute;top:calc(100% + 10px);left:0;right:0;display:none;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--c-line);border-radius:24px;background:#fffffff5;box-shadow:var(--sh-lg)}.legacy-mobile-panel.is-open{display:flex}.legacy-mobile-panel a{padding:12px 14px;border-radius:18px;color:var(--c-ink);text-decoration:none;font-size:14px;font-weight:700}.legacy-mobile-panel .btn{color:var(--c-white)}.legacy-hero{min-height:auto!important;padding-top:108px!important}.legacy-hero-grid{grid-template-columns:1fr!important;gap:34px!important;padding:34px 22px 48px!important}.legacy-hero h1{font-size:clamp(52px,16vw,72px)!important;line-height:.95!important;letter-spacing:-.035em!important}.legacy-hero p{max-width:100%!important}.legacy-hero .btn{width:100%;min-height:52px}.legacy-trust-grid{grid-template-columns:1fr!important;margin-top:36px!important;gap:16px!important}.legacy-hero-visual{min-height:0!important;width:100%!important;overflow:visible!important}.legacy-hero-visual>div:first-child{border-radius:48px!important;max-height:520px!important}}@media(max-width:620px){section{padding-left:22px!important;padding-right:22px!important}.legacy-hero-grid{padding-left:0!important;padding-right:0!important}.legacy-hero h1{font-size:clamp(48px,15vw,62px)!important}}@media(max-width:700px){section[style*="padding:120px 48px"]{padding:72px 20px!important}section>div[style*=grid-template-columns]{grid-template-columns:1fr!important;gap:32px!important}section div[style*="grid-template-columns:repeat(4"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}section div[style*="grid-template-columns:repeat(3"]{grid-template-columns:1fr 1fr!important;gap:16px!important}section div[style*="grid-template-columns:repeat(2"]{grid-template-columns:1fr!important;gap:12px!important}.credential-grid{grid-template-columns:1fr}.credential-card{grid-template-columns:54px minmax(0,1fr);gap:14px;padding:20px 0}.credential-group-heading{font-size:21px}section h2{font-size:clamp(38px,11vw,54px)!important;line-height:1!important}section h2 .t-script{font-size:1.16em!important}.booking-section>div{grid-template-columns:1fr!important;gap:32px!important}.booking-section>div>div:first-child{position:static!important}.booking-flow{width:100%;min-width:0}.booking-flow>div:first-child{justify-content:flex-start!important;overflow-x:auto;padding:24px 18px 0!important;scrollbar-width:none}.booking-flow>div:first-child::-webkit-scrollbar{display:none}.booking-flow>div:first-child>div{flex:0 0 auto}.booking-flow>div:first-child>div[style*="flex: 1"]{min-width:18px}.booking-flow>div:nth-child(2){min-height:0!important;padding:28px 18px 20px!important}.booking-flow>div:nth-child(2) h3{font-size:30px!important}.booking-flow>div:nth-child(2) h3 .t-script{font-size:1.12em!important}.booking-flow>div:last-child{flex-wrap:wrap;gap:12px!important;padding:16px 18px!important}.booking-flow>div:last-child>button,.booking-flow>div:last-child>.btn{min-height:46px}.booking-flow>div:last-child>span{order:-1;width:100%;text-align:center}.booking-flow input,.booking-flow textarea{max-width:100%}.booking-flow input:not([aria-hidden=true]),.booking-flow textarea{font-size:16px!important}.footer-bottom{grid-template-columns:1fr;text-align:center}.footer-bottom>span:last-child{text-align:center}}@media(max-width:700px){section[id]{scroll-margin-top:96px}section:not(.legacy-hero){padding:72px 20px!important}.legacy-hero{padding:96px 20px 0!important}.legacy-hero-grid{width:100%;padding:26px 0 48px!important;gap:30px!important}.legacy-hero-grid>.hero-visual{order:1}.legacy-hero-grid>.legacy-hero-copy{order:2}.legacy-hero h1{max-width:100%;font-size:clamp(44px,13vw,56px)!important;line-height:.98!important}.legacy-hero p{font-size:16px!important;line-height:1.55!important;margin-top:24px!important}.hero-actions{margin-top:28px!important;gap:10px!important}.hero-actions .btn{flex:1 1 100%;min-width:0}.legacy-trust-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-top:30px!important;padding-top:24px!important;text-align:center}.legacy-trust-grid>div>div:first-child{justify-content:center!important}.legacy-trust-grid .t-display{font-size:29px!important}.legacy-trust-grid .t-script{font-size:21px!important}.legacy-trust-grid>div>div:last-child{font-size:10px!important;letter-spacing:.06em!important}.legacy-hero-visual{min-height:0!important}.legacy-hero-visual>div:first-child{max-height:none!important;border-radius:52px!important}.hero-visual>.hero-logo-card{display:none!important}.hero-visual>.hero-review-card{display:none!important}.hero-visual>.hero-specialty-card{top:auto!important;right:16px!important;bottom:22px!important;left:16px!important;max-width:none!important;padding:17px 18px!important;text-align:center;transform:none!important}.hero-visual>.hero-specialty-card .t-script{font-size:24px!important}.services-intro,.process-intro{margin-bottom:42px!important}.services-section h2,.process-section h2,.credentials-section h2,.faq-section h2,.location-section h2,.booking-section h2{font-size:clamp(38px,11vw,50px)!important;line-height:1.02!important}.cases-section h2{font-size:clamp(34px,9vw,42px)!important;line-height:1.02!important}.services-section h2 .t-script,.process-section h2 .t-script,.cases-section h2 .t-script,.credentials-section h2 .t-script,.faq-section h2 .t-script,.location-section h2 .t-script,.booking-section h2 .t-script{font-size:1.03em!important}.services-intro p,.process-intro p,.cases-intro p{font-size:15px!important;line-height:1.6!important}.services-grid,.process-grid,.cases-grid{grid-template-columns:1fr!important;gap:16px!important}.service-card{min-height:0!important;padding:28px!important}.service-card h3{font-size:25px!important}.services-detail{margin-top:24px!important;padding:30px 20px!important;grid-template-columns:1fr!important;gap:30px!important}.services-detail h3{font-size:34px!important}.services-items{grid-template-columns:1fr!important;gap:10px!important}.services-items>div{min-width:0;padding:12px 14px!important;line-height:1.35}.services-detail-meta{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}.service-detail-divider{width:100%!important;height:1px!important;grid-column:1 / -1}.services-detail-meta .btn{grid-column:1 / -1;width:100%}.about-layout,.location-layout,.booking-layout{grid-template-columns:1fr!important;gap:44px!important}.about-copy{min-width:0}.about-title{font-size:clamp(42px,11vw,50px)!important;line-height:1.02!important}.about-title .t-script{font-size:1.02em!important;display:inline-block}.about-copy>p{font-size:16px!important;line-height:1.65!important}.about-actions{flex-direction:column;gap:10px!important}.about-actions .btn{width:100%}.credential-groups{gap:40px!important}.credential-group-heading{font-size:20px!important;line-height:1.25}.credential-card{grid-template-columns:58px minmax(0,1fr)!important;gap:12px!important;padding:18px 0!important}.credential-year{font-size:17px!important;min-width:0;padding-left:4px!important;white-space:nowrap}.credential-card h4{font-size:15px!important;line-height:1.35!important}.credential-card p{font-size:12px!important;line-height:1.5!important}.cases-intro{align-items:flex-start!important;margin-bottom:34px!important}.before-after-slider{border-radius:24px!important}.before-after-handle>div{width:44px!important;height:44px!important}.testimonials-section{padding:84px 20px!important}.testimonials-stage{min-height:0!important}.testimonial-mark{font-size:88px!important;margin-bottom:14px!important}.testimonial-quote{font-size:26px!important;line-height:1.25!important;margin-bottom:28px!important}.faq-question{padding:18px 16px!important;gap:14px!important}.faq-question>span:first-child{font-size:16px!important;line-height:1.3}.faq-question>span:last-child{width:32px!important;height:32px!important}.faq-answer p{padding:0 16px 20px!important;font-size:14px!important;line-height:1.6!important}.location-copy>h2{font-size:clamp(38px,10vw,46px)!important}.location-copy>h2 .t-script{font-size:1em!important}.location-copy>div[style*="background:var(--c-cream)"]{padding:22px!important}.location-copy>div[style*="background:var(--c-cream)"] p{font-size:18px!important;line-height:1.2!important}.location-contact-grid{grid-template-columns:1fr!important;gap:10px!important}.location-contact-grid>div{padding:18px!important}.location-actions{gap:10px!important}.location-actions .btn-whatsapp{flex:1 1 auto;min-width:0;padding-left:18px!important;padding-right:18px!important}.location-map{aspect-ratio:1 / 1!important}.location-map>div:last-child{left:14px!important;right:14px;bottom:14px!important;max-width:none!important}.booking-intro h2{font-size:clamp(42px,11vw,50px)!important}.booking-intro h2 .t-script{font-size:1em!important}.booking-intro>p{font-size:16px!important;line-height:1.6!important}.booking-flow{border-radius:24px!important}.booking-progress{display:grid!important;grid-template-columns:auto minmax(8px,1fr) auto minmax(8px,1fr) auto minmax(8px,1fr) auto!important;align-items:center!important;gap:6px!important;padding:20px 14px 0!important;overflow:visible!important}.booking-progress-step{min-width:0;gap:5px!important}.booking-progress-step>span:first-child{width:28px!important;height:28px!important;font-size:11px!important}.booking-progress-step>span:last-child{font-size:10px!important;white-space:nowrap}.booking-progress-line{min-width:8px!important}.booking-content{min-height:0!important;padding:28px 18px 20px!important}.booking-step-title{font-size:28px!important;line-height:1.08!important}.booking-step-title .t-script{font-size:1.05em!important}.booking-services-grid,.booking-patient-grid{grid-template-columns:1fr!important;gap:10px!important}.booking-services-grid button{min-width:0;padding:14px 16px!important}.booking-services-grid button>div{min-width:0}.booking-services-grid button>div>div:last-child{overflow-wrap:anywhere}.booking-summary{flex-direction:column!important;align-items:flex-start!important;gap:10px!important}.booking-actions{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:8px!important;padding:16px 18px!important}.booking-actions>span{text-align:center}.booking-actions>button{min-width:0;padding:11px 14px!important;font-size:12px!important}.site-footer{padding:56px 20px 26px!important}.footer-grid{grid-template-columns:1fr!important;gap:30px!important;margin-bottom:38px!important;text-align:center}.footer-grid>div{text-align:center}.footer-grid>div:first-child img{display:block;margin-left:auto!important;margin-right:auto!important}.footer-grid p{max-width:none!important}.footer-bottom{gap:8px!important;font-size:11px!important;line-height:1.45}.footer-developed-by{order:-1}}@media(max-width:360px){.legacy-nav{left:10px!important;right:10px!important}.legacy-trust-grid .t-display{font-size:25px!important}.booking-progress{gap:3px!important;padding-left:10px!important;padding-right:10px!important}.booking-progress-step>span:last-child{font-size:9px!important}.cases-section h2{font-size:30px!important}}
