@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a342834df7752944-s.3hd2l7bm32o7k.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d3fe2f289711ac3f-s.1l2zhvq5eocqf.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/58c4895d0a0ef7cc-s.2vhvl9vrvk-va.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/bfc7db5c00d21bc5-s.173xwsdme27n8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6ab0db14f70d8ed6-s.13hnt-xgp82zk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a343f882a40d2cc9-s.p.1sj6eobyi31rd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.manrope_22a3b2d7-module__AwAH9W__className{font-family:Manrope,Manrope Fallback;font-style:normal}.manrope_22a3b2d7-module__AwAH9W__variable{--font-body:"Manrope", "Manrope Fallback"}
:root{--ink:#20201f;--paper:#f8f3ed;--rose:#b76572;--rose-dark:#7d3544;--sage:#657a68;--line:#ded3c8;--white:#fffdf9;--shadow:0 20px 50px #362a2517}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--font-body), Georgia, serif;margin:0;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(1180px,100% - 40px);margin:auto}.button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:.72rem 1.15rem;font-weight:700}.button.secondary{color:var(--ink);border:1px solid var(--line);background:0 0}.input{border:1px solid var(--line);background:var(--white);border-radius:12px;width:100%;padding:.8rem 1rem}.card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffdf9e0;border-radius:22px;padding:1.4rem}.badge{color:var(--rose-dark);background:#e8ded5;border-radius:999px;padding:.25rem .65rem;font-size:.78rem;font-weight:800;display:inline-flex}.page-title{max-width:760px;margin-bottom:2rem}.page-title h1{margin:.25rem 0;font-size:clamp(2.4rem,6vw,5rem);line-height:1}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--rose-dark);font-size:.75rem;font-weight:800}.muted{color:#6f6861}.stat{font-size:2rem}.breadcrumbs{color:#766e66;gap:.5rem;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";margin-right:.5rem}.field{gap:.35rem;display:grid}.field label{font-weight:700}.error-state{background:#fff0f0;border:1px solid #bd4d4d;padding:1rem}.skeleton{background:#eee5dc;border-radius:16px;padding:2rem;animation:1.5s infinite pulse}@keyframes pulse{50%{opacity:.55}}:focus-visible{outline-offset:3px;outline:3px solid #3b8172}
.auth-shell{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-story{color:#fff;background:#27382f;flex-direction:column;justify-content:space-between;padding:8vw;display:flex}.auth-story h1{font-size:clamp(3rem,7vw,6rem);line-height:.9}.auth-panel{place-items:center;padding:2rem;display:grid}.auth-form{gap:1rem;width:min(440px,100%);display:grid}.portal{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#222421;flex-direction:column;gap:1.5rem;padding:1.5rem;display:flex}.side-links{gap:.4rem;display:grid}.side-links a{border-radius:10px;padding:.7rem}.side-links a:hover{background:#ffffff12}.portal-main{min-width:0}.portal-header{border-bottom:1px solid var(--line);background:#fffaf6;justify-content:space-between;align-items:center;height:72px;padding:0 2rem;display:flex}.portal-content{padding:2rem}.portal-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.onboarding{max-width:800px}.steps{flex-wrap:wrap;gap:.5rem;margin:2rem 0;display:flex}.step{background:#e8ded5;border-radius:99px;padding:.45rem .8rem}.notice{border-left:4px solid var(--sage);background:#edf3ee;padding:1rem}.operational-table{border:1px solid var(--line);background:var(--white);border-radius:18px;margin-top:1rem;overflow:hidden}.table-toolbar{border-bottom:1px solid var(--line);align-items:center;gap:1rem;padding:1rem;display:flex}.table-toolbar .input{max-width:420px}@media (max-width:800px){.auth-shell{grid-template-columns:1fr}.auth-story{min-height:35vh}.portal{grid-template-columns:1fr}.sidebar{display:none}.portal-grid{grid-template-columns:1fr}.portal-content{padding:1.2rem}}.booking-page{color:#1e2922;background:radial-gradient(circle at 8% 12%,#dce8d7 0 13%,#0000 13.2%),linear-gradient(115deg,#f8f0e7 0 48%,#e8eee8 48%);min-height:100vh}.booking-brand{border-bottom:1px solid #1e292226;align-items:center;gap:.9rem;min-height:86px;padding:1rem clamp(1rem,5vw,5rem);display:flex}.booking-mark{aspect-ratio:1;color:#f8f0e7;background:#1e2922;border-radius:50%;place-items:center;width:46px;font-family:Georgia,serif;font-size:1.5rem;display:grid}.booking-brand div{display:grid}.booking-brand small{opacity:.65}.language-switch{cursor:pointer;background:0 0;border:0;margin-inline-start:auto;text-decoration:underline}.booking-stage{grid-template-columns:.75fr 1.25fr;gap:clamp(2rem,7vw,7rem);width:min(1180px,100% - 2rem);margin:0 auto;padding:clamp(3rem,8vw,7rem) 0;display:grid}.booking-intro p{text-transform:uppercase;letter-spacing:.17em;font-size:.72rem}.booking-intro h1{max-width:8ch;margin:1rem 0;font-family:Georgia,serif;font-size:clamp(3.5rem,7vw,7rem);font-weight:400;line-height:.88}.booking-intro span{text-transform:capitalize}.booking-form{background:#fffdf9d9;gap:1.6rem;padding:clamp(1.3rem,4vw,3rem);display:grid;box-shadow:0 24px 80px #35483a17}.booking-form label,.booking-form fieldset{border:0;gap:.6rem;margin:0;padding:0;display:grid}.booking-form label>span,.booking-form legend{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700}.booking-form select,.booking-form input{width:100%;font:inherit;background:0 0;border:0;border-bottom:1px solid #879189;padding:.9rem .2rem}.details-grid{grid-template-columns:1fr 1fr;gap:.8rem 1.2rem;display:grid}.slot-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;max-height:230px;display:grid;overflow:auto}.slot-grid button{cursor:pointer;background:0 0;border:1px solid #aeb9b0;padding:.75rem .4rem}.slot-grid button.selected{color:#fff;background:#1e2922}.booking-submit{color:#fff;min-height:54px;font:inherit;cursor:pointer;background:#b35c3c;border:0;font-weight:700}.booking-submit:disabled{opacity:.45;cursor:not-allowed}.booking-message.error{color:#9c3428}.booking-success{text-align:center;place-content:center;min-height:320px;display:grid}.booking-success span{color:#b35c3c;font-family:Georgia,serif;font-size:4rem}.calendar-toolbar,.record-heading,.actions{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.calendar-toolbar{margin-bottom:1.2rem}.calendar-toolbar label,.appointment-form label{gap:.35rem;font-weight:700;display:grid}.calendar-toolbar select,.appointment-form select,.appointment-form input,.appointment-form textarea,.reschedule-form input{border:1px solid var(--line);background:var(--white);border-radius:10px;min-height:44px;padding:.65rem .8rem}.agenda{gap:1rem;display:grid}.agenda-day{border:1px solid var(--line);background:var(--white);border-radius:18px;overflow:hidden}.agenda-day>header{background:#eee7df;justify-content:space-between;padding:.8rem 1rem;display:flex}.appointment-row{border-top:1px solid var(--line);grid-template-columns:90px 1fr auto;align-items:center;gap:1rem;padding:.85rem 1rem;display:grid}.appointment-row:hover{background:#f8f3ed}.appointment-row div{display:grid}.appointment-row small{color:#746b63}.appointment-form{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.appointment-form .full{grid-column:1/-1}.appointment-detail-grid{grid-template-columns:1.4fr .6fr;gap:1rem;display:grid}.record-heading h2{margin:0;font-size:2rem}.record-facts{grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0;display:grid}.record-facts div{border-top:1px solid var(--line);padding-top:.7rem}.record-facts dt{color:#746b63;font-size:.8rem}.record-facts dd{margin:0;font-weight:700}.reschedule-form{gap:1rem;display:grid}.records-toolbar{gap:1rem;margin-bottom:1rem;display:flex}.records-toolbar .input{max-width:460px}.records-table{border:1px solid var(--line);background:var(--white);border-radius:18px;overflow:hidden}.record-row{border-top:1px solid var(--line);grid-template-columns:1.3fr 1fr auto;align-items:center;gap:1rem;padding:.9rem 1rem;display:grid}.record-row:first-child{border-top:0}.record-row div{display:grid}.record-row small,.record-row>span{color:#746b63}.record-form{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.record-form label{gap:.35rem;font-weight:700;display:grid}.record-form input,.record-form select{border:1px solid var(--line);background:var(--white);border-radius:10px;min-height:44px;padding:.65rem .8rem}.record-form .check{align-items:center;display:flex}.record-form .check input{min-height:auto}@media (max-width:760px){.booking-stage{grid-template-columns:1fr;gap:2rem;padding-top:2.5rem}.booking-intro h1{font-size:3.8rem}.slot-grid{grid-template-columns:1fr 1fr}.details-grid,.appointment-form,.appointment-detail-grid{grid-template-columns:1fr}.appointment-row{grid-template-columns:70px 1fr}.appointment-row .badge{grid-column:2;width:fit-content}.record-facts,.record-form{grid-template-columns:1fr}.record-row{grid-template-columns:1fr auto}.record-row>span{grid-column:1}}
