:root{--paper:#faf7f2;--white:#fffdf9;--rose:#e9cac2;--blush:#f0ded7;--ink:#352c2a;--muted:#796c65;--line:#d9ccc3;--accent:#8d534b;--serif:"Cormorant Garamond", Georgia, serif;--sans:"DM Sans", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--paper);color:var(--ink);font:14px/1.7 var(--sans);margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}img{object-fit:cover;width:100%;height:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.02}h1{letter-spacing:-4px;font-size:clamp(68px,7.2vw,112px)}h2{letter-spacing:-1.8px;font-size:clamp(46px,4.8vw,70px)}h3{font-size:33px}em{color:var(--accent);font-weight:400}p{color:var(--muted)}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.skip{z-index:100;background:#fff;padding:12px;position:fixed;top:-100px}.skip:focus{top:0}.announcement{text-align:center;background:var(--blush);letter-spacing:2px;text-transform:uppercase;padding:8px 20px;font-size:10px}.header{background:var(--paper);z-index:20;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;height:104px;padding:0 5%;display:flex;position:relative}.logo{font:52px/.7 var(--serif);letter-spacing:-3px;text-align:center;flex-direction:column;width:max-content;display:flex}.logo span{font:8px/1.5 var(--sans);letter-spacing:3px;margin-top:12px}.nav{gap:32px;font-size:12px;display:flex}.nav a{position:relative}.nav a:after{content:"";background:var(--ink);height:1px;transition:right .3s;position:absolute;bottom:-6px;left:0;right:100%}.nav a:hover:after{right:0}.button{background:var(--ink);border:1px solid var(--ink);color:var(--paper);justify-content:space-between;align-items:center;gap:38px;min-height:48px;padding:18px 25px;font-size:12px;transition:background .25s,transform .25s;display:inline-flex}.button:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.button.small{padding:12px 20px}.button.secondary{color:var(--ink);border-color:var(--line);background:0 0}.menu-toggle{display:none}.hero{grid-template-columns:1.04fr 1fr;min-height:710px;display:grid}.hero-copy{align-items:center;padding:70px 8% 60px 10%;display:flex}.eyebrow{letter-spacing:2px;color:var(--ink);margin-bottom:28px;font-size:10px;font-weight:500}.intro{max-width:345px;margin:28px 0 30px;font-size:14px;line-height:1.9}.hero-actions{flex-wrap:wrap;align-items:center;gap:26px;display:flex}.text-link{border-bottom:1px solid var(--ink);align-items:center;gap:26px;padding:8px 0;font-size:12px;display:inline-flex}.hero-note{align-items:center;gap:16px;margin-top:55px;display:flex}.star{color:var(--accent);font-size:38px}.hero-note p{font-size:11px;line-height:1.5}.hero-image{background:var(--blush);position:relative;overflow:hidden}.hero-image img{object-position:50% 43%;animation:1.5s ease-out hero-settle}.image-caption{color:#fff;letter-spacing:2px;text-shadow:0 1px 8px #000;justify-content:space-between;font-size:9px;display:flex;position:absolute;bottom:32px;left:30px;right:30px}.photo-note{letter-spacing:1px;background:#faf7f2c9;padding:4px 9px;font-size:9px;position:absolute;top:15px;right:16px}.values{border-bottom:1px solid var(--line);letter-spacing:2px;justify-content:space-around;align-items:center;gap:22px;padding:26px 5%;font-size:9px;display:flex}.values i{color:var(--accent);font-size:22px;font-style:normal}.section{padding:105px 7%}.section-heading{justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:50px;display:flex}.section-heading>p{max-width:320px;font-size:13px}.treatment-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.treatment-image{background:var(--blush);height:390px;position:relative;overflow:hidden}.treatment-image img{transition:transform .7s cubic-bezier(.2,.6,.2,1)}.treatment:hover img{transform:scale(1.035)}.round-arrow{background:#faf7f2b3;border:1px solid #ffffffb3;border-radius:100%;place-items:center;width:42px;height:42px;font-size:20px;display:grid;position:absolute;bottom:18px;right:18px}.treatment-meta{letter-spacing:2px;justify-content:space-between;margin:20px 0 13px;font-size:9px;display:flex}.treatment h3{font-size:32px}.treatment p{margin-top:12px;font-size:12px}.editorial-disclaimer{margin-top:32px;font-size:10px}.approach{background:var(--blush);text-align:center}.process{text-align:left;grid-template-columns:repeat(3,1fr);gap:50px;margin:65px 0 36px;display:grid}.process>div{border-top:1px solid #b99d91;padding:23px 8px 0}.process-number{font:italic 22px var(--serif);color:var(--accent)}.process h3{margin:25px 0 16px}.process p{max-width:300px;font-size:13px}.studio{grid-template-columns:1fr 1fr;align-items:center;gap:10%;display:grid}.studio-image{height:590px;position:relative}.studio-copy>p:not(.eyebrow):not(.signature){max-width:370px;margin-top:25px}.signature{font:italic 55px var(--serif);color:var(--accent);margin:25px 0}.faq{grid-template-columns:1fr 1.1fr;gap:8%;padding-top:35px;display:grid}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;justify-content:space-between;gap:20px;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary span{font-size:20px;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{max-width:520px;padding-top:16px;font-size:13px}.closing{text-align:center;background:var(--rose);padding:85px 20px 95px}.closing .button{margin-top:35px}footer{justify-content:space-between;align-items:center;gap:25px;padding:48px 7%;display:flex}footer p,footer>span{font-size:11px}.mobile-book{display:none}@keyframes hero-settle{0%{opacity:.7;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}.booking-shell{max-width:1200px;margin:auto;padding:45px 5% 90px}.booking-contact-page{place-items:center;min-height:calc(100vh - 104px);display:grid}.booking-contact-card{background:var(--blush);border:1px solid var(--line);width:min(920px,100%);padding:clamp(34px,6vw,80px)}.booking-contact-card .booking-title{max-width:760px;margin:18px 0 24px}.booking-contact-intro{max-width:670px;font-size:16px}.booking-contact-actions{flex-wrap:wrap;gap:14px;margin-top:36px;display:flex}.booking-contact-secondary{color:var(--ink);background:0 0}.booking-contact-note{margin-top:22px}.demo-banner{color:var(--ink);background:#f2e6de;border:1px solid #cdb3a8;margin-bottom:30px;padding:12px 18px;font-size:12px}.booking-title{margin-bottom:12px;font-size:56px}.booking-steps{gap:0;margin:0;padding:25px 0 30px;list-style:none;display:flex}.booking-steps li{border-bottom:2px solid var(--line);color:var(--muted);flex:1;padding:12px 0;font-size:11px}.booking-steps li.active{border-color:var(--accent);color:var(--ink)}.booking-steps b{margin-right:8px;font-weight:400}.booking-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:45px;display:grid}.booking-panel h2{letter-spacing:-.6px;margin-bottom:10px;font-size:37px}.booking-panel>p{margin-bottom:24px;font-size:13px}.service-options{gap:12px;display:grid}.service-option{border:1px solid var(--line);text-align:left;color:var(--ink);background:0 0;justify-content:space-between;align-items:center;gap:15px;padding:18px;transition:background .2s;display:flex}.service-option.selected,.choice.selected{border-color:var(--accent);background:#efdfd7}.service-option strong{font:26px var(--serif);display:block}.service-option small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.service-option .price{white-space:nowrap}.summary-card{background:#f1e8df;padding:28px;position:sticky;top:30px}.summary-card h3{margin:18px 0;font-size:28px}.summary-card .eyebrow{margin:0}.summary-row{justify-content:space-between;gap:20px;padding:10px 0;font-size:12px;display:flex}.summary-row.total{border-top:1px solid var(--line);margin-top:15px;font-size:15px;font-weight:600}.summary-card>p{margin-top:16px;font-size:11px;line-height:1.8}.booking-controls{justify-content:space-between;gap:20px;margin-top:30px;display:flex}.field-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field{flex-direction:column;gap:7px;font-size:12px;display:flex}.field input,.field textarea,.field select{border:1px solid var(--line);background:var(--white);width:100%;color:var(--ink);border-radius:0;min-height:48px;padding:14px}.field.wide{grid-column:1/-1}.day-grid{grid-template-columns:repeat(4,1fr);gap:9px;margin:20px 0;display:grid}.choice{border:1px solid var(--line);color:var(--ink);background:0 0;min-height:46px;padding:12px 8px;font-size:12px}.choice span{font-size:11px;display:block}.time-grid{grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0;display:grid}.question{border:0;border-bottom:1px solid var(--line);margin:0;padding:18px 0}.question legend{float:left;width:100%;margin-bottom:12px;font-size:12px}.question label{align-items:center;gap:8px;margin-right:25px;font-size:12px;display:inline-flex}.question input,.check input{accent-color:var(--accent);width:18px;height:18px}.check{align-items:flex-start;gap:12px;margin:23px 0;font-size:12px;display:flex}.check input{flex-shrink:0}.error{color:#7a322a;background:#f4ddd5;margin:18px 0;padding:12px 15px;font-size:12px}.success{background:var(--blush);text-align:center;padding:35px}.success .checkmark{font:60px var(--serif);color:var(--accent)}.success h2{margin:20px 0}.success p{margin:15px 0}.success .button{margin-top:20px}.payment-mark{font:24px var(--sans);margin:35px 0 20px}.booking-panel .fine{margin:20px 0;font-size:11px}.intake{max-height:530px;padding-right:12px;overflow:auto}.month-nav{justify-content:space-between;align-items:center;margin-top:25px;display:flex}.month-nav button{border:1px solid var(--line);background:0 0;width:44px;height:40px}.status-text{padding:15px 0;font-size:12px}.booking-panel{min-width:0}.booking-panel form{margin-top:22px}@media (min-width:1600px){.hero{min-height:800px}.hero-copy{padding-left:15%}.treatment-image{height:480px}}@media (max-width:1050px){.header{gap:20px;padding:0 4%}.nav{gap:18px;font-size:11px}.header-book{gap:20px}.hero{min-height:650px}.hero-copy{padding:50px 8%}h1{font-size:76px}.hero-actions{gap:15px}.hero-note{margin-top:30px}.treatment-grid{gap:20px}.treatment-image{height:310px}.section{padding:80px 6%}.studio-image{height:490px}.booking-layout{grid-template-columns:minmax(0,1fr) 260px;gap:25px}}@media (max-width:760px){.announcement{letter-spacing:1.4px;font-size:8px}.header{gap:16px;height:85px;padding:0 6%}.logo{font-size:44px}.logo span{margin-top:10px;font-size:7px}.header-book{display:none}.menu-toggle{color:var(--ink);background:0 0;border:0;margin-left:auto;padding:12px 0;font-size:12px;display:block}.nav{display:none}.nav.open{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:15px 6% 25px;display:flex;position:absolute;top:85px;left:0;right:0}.nav a{padding:13px 0;font-size:14px}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 7% 38px}.eyebrow{letter-spacing:1.6px;margin-bottom:22px;font-size:9px}h1{letter-spacing:-3px;font-size:76px;line-height:.99}.intro{max-width:340px;margin:23px 0;font-size:13px}.hero-actions{gap:20px}.button{gap:25px;padding:15px 20px;font-size:11px}.hero-note{display:none}.hero-image{height:440px}.image-caption{font-size:8px;bottom:23px;left:24px;right:24px}.values{letter-spacing:1px;flex-wrap:wrap;justify-content:center;gap:14px 20px;padding:22px 6%;font-size:8px;overflow:hidden}.values span:nth-last-child(-n+3),.values i:nth-last-child(-n+3){display:none}.section{padding:62px 7%}.section-heading{margin-bottom:30px;display:block}.section-heading>p{margin-top:24px;font-size:12px}.treatment-grid{grid-template-columns:1fr;gap:37px}.treatment-image{height:430px}.treatment h3{font-size:34px}.treatment-meta{margin:15px 0 10px}.treatment p{margin-top:8px}.process{grid-template-columns:1fr;gap:28px;margin:35px 0}.process>div{padding-top:20px}.process h3{margin:12px 0}.process p{max-width:none}.studio{grid-template-columns:1fr;gap:35px}.studio-image{height:450px}.faq{grid-template-columns:1fr;gap:25px;padding-top:15px}.faq h2{font-size:46px}.closing{padding:62px 20px}.closing h2{font-size:60px}footer{text-align:center;flex-direction:column;gap:24px;padding:40px 20px 110px}.mobile-book{z-index:30;padding:12px 6% calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#faf7f2f5;justify-content:space-between;align-items:center;gap:15px;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-book>span{font-size:11px}.booking-shell{padding:25px 6% 60px}.booking-contact-page{min-height:calc(100vh - 84px);padding:30px 6% 110px}.booking-contact-card{padding:32px 22px}.booking-contact-actions{display:grid}.booking-contact-actions .button{width:100%}.booking-title{font-size:43px}.booking-steps{padding:15px 0 25px}.booking-steps li{font-size:9px}.booking-steps b{display:block}.booking-layout{grid-template-columns:1fr}.summary-card{order:2;padding:22px;position:static}.booking-panel h2{font-size:33px}.field-grid{grid-template-columns:1fr}.day-grid{grid-template-columns:repeat(4,1fr)}.booking-controls .button{gap:10px}.demo-banner{font-size:11px}.booking-panel .intake{max-height:none;overflow:visible}.success{padding:25px 18px}.month-nav{font-size:12px}}@media (max-width:380px){h1{font-size:66px}.hero-image{height:370px}.treatment-image{height:360px}.hero-actions{gap:12px}.text-link{font-size:10px}.day-grid{grid-template-columns:repeat(3,1fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.hero-image img,.treatment:hover img{transform:none}}.admin-shell{max-width:1240px;margin:auto;padding:65px 6% 100px}.admin-title{margin-bottom:45px;font-size:clamp(54px,7vw,90px)}.admin-login{border:1px solid var(--line);max-width:470px;padding:38px}.admin-login h2,.admin-block-form h2,.admin-calendar h2{margin-bottom:12px;font-size:40px}.admin-login form{gap:18px;margin-top:25px;display:grid}.admin-login .button{margin-top:8px}.admin-board{gap:45px;display:grid}.admin-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:20px;padding-bottom:25px;display:flex}.admin-toolbar .field{width:100%;max-width:260px}.admin-block-form{background:var(--blush);padding:30px}.admin-block-form .field-grid{grid-template-columns:1.1fr .7fr .7fr 1.4fr auto;align-items:end}.admin-calendar>p{margin:20px 0}.admin-event{border-bottom:1px solid var(--line);grid-template-columns:70px 1fr auto;align-items:start;gap:24px;padding:24px 0;display:grid}.admin-event.cancelled{opacity:.55}.admin-event.block{background:#f1e8df;padding:20px}.admin-date{text-align:center}.admin-date strong{font:42px/1 var(--serif);display:block}.admin-date span{text-transform:uppercase;letter-spacing:1.5px;font-size:10px}.admin-event h3{margin-bottom:5px;font-size:27px}.admin-event p{font-size:12px}.admin-event details{border:0;padding:8px 0}.admin-event summary{justify-content:flex-start;font-size:11px}.admin-event details p{padding-top:6px}.admin-actions{text-align:right;justify-items:end;gap:12px;display:grid}.admin-actions>span{text-transform:uppercase;letter-spacing:1.5px;color:var(--accent);font-size:9px}.admin-actions button{border:0;border-bottom:1px solid var(--ink);color:var(--ink);background:0 0;padding:4px 0;font-size:11px}@media (max-width:900px){.admin-block-form .field-grid{grid-template-columns:1fr 1fr}.admin-block-form .button{width:100%}}@media (max-width:620px){.admin-shell{padding:42px 6% 100px}.admin-login{padding:25px}.admin-toolbar{flex-direction:column;align-items:stretch}.admin-block-form{padding:22px}.admin-block-form .field-grid{grid-template-columns:1fr 1fr}.admin-block-form .field:first-child,.admin-block-form .field:nth-child(4),.admin-block-form .button{grid-column:1/-1}.admin-event{grid-template-columns:52px 1fr}.admin-actions{text-align:left;grid-column:2;justify-items:start}.admin-event.block{padding:16px}}.menu-grid{grid-template-columns:repeat(2,1fr);gap:25px;display:grid}.menu-card{border:1px solid var(--line);padding:32px}.menu-card h2{letter-spacing:-1px;font-size:38px}.menu-card>p:not(.eyebrow){margin:20px 0}.menu-card .eyebrow{margin-bottom:15px}.price-list>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:25px;padding:22px 0;display:flex}.price-list strong{font-weight:500}.price-list small{color:var(--muted);margin-top:5px;display:block}.portfolio-grid{columns:3;column-gap:25px}.portfolio-grid>div{break-inside:avoid;margin-bottom:25px}.portfolio-grid img{height:auto;transition:opacity .25s}.portfolio-grid a:hover img{opacity:.9}.portfolio-end{flex-wrap:wrap;align-items:center;gap:35px;margin-top:35px;display:flex}.care-intro{max-width:600px;margin:25px 0 50px}.care-columns{grid-template-columns:1fr 1fr;gap:8%;display:grid}.care-columns h2{margin-bottom:22px;font-size:38px}.care-columns li{color:var(--muted);margin:14px 0;font-size:13px}.care-columns ul{padding-left:18px}.care-page{max-width:1400px;margin:auto}@media (max-width:760px){.menu-grid,.care-columns{grid-template-columns:1fr}.menu-card{padding:25px}.portfolio-grid{columns:2;column-gap:12px}.portfolio-grid>div{margin-bottom:12px}.care-columns{gap:40px}.price-list{font-size:12px}}.password-field{display:flex}.password-field input{padding-right:70px}.password-field button{width:64px;color:var(--accent);background:0 0;border:0;margin-left:-64px;font-size:11px;position:relative}.admin-notice{color:#315b38;background:#e1eee3;padding:12px 15px;font-size:12px}.admin-month{border:1px solid var(--line);background:var(--white);padding:20px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekdays span{text-align:center;letter-spacing:1.3px;text-transform:uppercase;padding:8px;font-size:9px}.calendar-day,.calendar-empty{border-top:1px solid var(--line);border-right:1px solid var(--line);min-height:108px;padding:9px}.calendar-day:nth-child(7n),.calendar-empty:nth-child(7n){border-right:0}.calendar-day>strong{font:25px var(--serif);display:block}.calendar-day>small{color:var(--muted);font-size:9px}.calendar-day.closed{color:#9a918b;background:#eee9e4}.calendar-day.closed small{color:#9a918b}.calendar-booking,.calendar-block{background:var(--blush);color:var(--ink);margin-top:5px;padding:4px 5px;font-size:9px;line-height:1.3;display:block}.calendar-block{background:var(--accent);color:#fff}@media (max-width:620px){.admin-month{padding:8px;overflow-x:auto}.calendar-weekdays,.calendar-grid{min-width:660px}.calendar-day,.calendar-empty{min-height:92px}}.day-toggle{color:var(--accent);background:0 0;border:0;border-bottom:1px solid;margin-top:6px;padding:2px 0;font-size:9px;display:block}.calendar-day.closed:has(.day-toggle){background:#eee9e4}:is(.calendar-day.closed:has(.calendar-booking),.calendar-day.closed:has(.calendar-block)){background:var(--white)}.admin-toolbar .admin-search{max-width:360px}.admin-actions select,.reschedule-form input,.reschedule-form select{border:1px solid var(--line);background:var(--white);color:var(--ink);padding:8px;font-size:11px}.reschedule-form{gap:8px;display:flex}.admin-slot-picker{flex-wrap:wrap;max-width:520px}.reschedule-label{letter-spacing:.04em;align-self:center;font-size:11px;font-weight:700}.admin-slot-picker small{color:var(--muted);flex-basis:100%;line-height:1.45}.admin-slot-picker .reschedule-error{color:#7f3028}.admin-slot-picker button:disabled{cursor:not-allowed;opacity:.45}.admin-google{border-bottom:1px solid var(--ink);font-size:11px}@media (max-width:620px){.admin-toolbar .admin-search{max-width:none}.reschedule-form{flex-direction:column}.admin-actions select,.reschedule-form input,.reschedule-form select,.admin-slot-picker small{max-width:240px}}.week-admin{min-width:0}.week-toolbar{grid-template-columns:auto 1fr auto minmax(180px,260px) auto;align-items:center;gap:20px;margin-bottom:22px;display:grid}.week-toolbar>div{display:flex}.week-toolbar button,.text-button{border:1px solid var(--line);background:var(--white);color:var(--ink);min-height:42px;padding:0 15px}.week-toolbar>div button+button{border-left:0}.week-toolbar>strong{font:30px var(--serif)}.week-toolbar input{border:0;border-bottom:1px solid var(--line);background:0 0;padding:11px}.week-calendar{border:1px solid var(--line);background:var(--white);grid-template-rows:94px 1056px;grid-template-columns:62px repeat(7,minmax(115px,1fr));display:grid;overflow:auto}.week-corner{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.week-day-head{text-align:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;padding:10px;display:grid}.week-day-head>span{letter-spacing:1.3px;text-transform:uppercase;font-size:9px}.week-day-head>strong{font:30px var(--serif)}.week-day-head>small{color:var(--muted);font-size:9px}.week-day-head>button{border:0;border-bottom:1px solid var(--accent);color:var(--accent);background:0 0;justify-self:center;font-size:9px}.week-day-head.closed{background:#eee9e4}.week-day-head.today{background:#dcebdd;box-shadow:inset 0 4px #4f7f58}.week-day-head.today>strong{color:#fff;background:#4f7f58;border-radius:50%;place-items:center;width:38px;height:38px;margin:auto;display:grid}.time-rail{border-right:1px solid var(--line);position:relative}.time-rail span{color:var(--muted);font-size:9px;position:absolute;right:8px;translate:0 -8px}.week-day{border-right:1px solid var(--line);background:repeating-linear-gradient(to bottom, transparent 0, transparent 23px, var(--line) 24px);position:relative}.week-day.closed{background:#eee9e4}.week-day.today{background-color:#f3faf4;box-shadow:inset 0 0 0 2px #78a581}.week-day.today.closed{background-color:#e2eee3}.week-day>button:not(.week-event){background:0 0;border:0;width:100%;height:24px;display:block}.week-day>button:not(.week-event):hover{background:#e9cac255}.week-event{z-index:2;border:0;border-left:3px solid var(--accent);color:var(--ink);text-align:left;background:#efd9d2;padding:5px;line-height:1.2;position:absolute;left:4px;right:4px;overflow:hidden}.week-event.appointment{border-left-color:color-mix(in srgb, var(--calendar-color,#756966), #000 28%);background:color-mix(in srgb, var(--calendar-color,#756966), #fff 35%);color:#fff}.week-event strong,.week-event span{font-size:9px;display:block}.week-event span{margin-top:3px}.week-event.blocked{background:var(--calendar-color,#756966);color:#fff;border-left-color:color-mix(in srgb, var(--calendar-color,#756966), #000 35%)}.calendar-modal-backdrop{z-index:80;background:#2b211f80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.calendar-modal{background:var(--paper);border:1px solid var(--line);width:min(560px,100%);max-height:90vh;padding:35px;position:relative;overflow:auto;box-shadow:0 25px 80px #1f151340}.modal-close{font:32px var(--serif);background:0 0;border:0;position:absolute;top:10px;right:15px}.modal-tabs{grid-template-columns:1fr 1fr;margin-bottom:25px;display:grid}.modal-tabs button{border:1px solid var(--line);background:0 0;padding:13px}.modal-tabs button+button{border-left:0}.modal-tabs button.active{background:var(--ink);color:var(--paper)}.modal-form{gap:18px;display:grid}.modal-form .button{margin-top:5px}.appointment-modal h2{margin-bottom:10px;font-size:42px}.client-card{background:var(--blush);gap:3px;margin:22px 0;padding:18px;display:grid}.appointment-modal>.field{margin:20px 0}.appointment-modal .modal-form{border-top:1px solid var(--line);padding-top:22px}.appointment-modal .modal-form h3{font-size:25px}.danger-link{color:#8a3129;background:0 0;border:0;border-bottom:1px solid #8a3129;margin-top:24px;padding:5px 0}@media (max-width:900px){.admin-shell{padding-left:1%;padding-right:1%}.week-toolbar{grid-template-columns:1fr 1fr}.week-calendar{grid-template-columns:34px repeat(7,minmax(0,1fr));width:100%;overflow:hidden}.time-rail span{font-size:7px;right:3px}.week-day-head{grid-template-columns:1fr;padding:5px 2px}.week-day-head>strong{font-size:23px}.week-day-head>small{font-size:7px}.week-day-head>button{padding:1px;font-size:7px}.week-event{border-left-width:2px;padding:3px 2px;left:1px;right:1px}.week-event strong{font-size:7px}.week-event span{overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:1px;font-size:6px;line-height:1.1;display:-webkit-box;overflow:hidden}.week-admin{overflow:visible}}@media (max-width:620px){.admin-title{margin-bottom:22px;font-size:42px}.calendar-modal{padding:28px 20px}.calendar-modal .field-grid{grid-template-columns:1fr}.week-toolbar{grid-template-columns:1fr auto;gap:8px}.week-toolbar>strong{font-size:19px}.week-toolbar input{grid-column:1/-1}.week-toolbar>.text-button{position:absolute;top:128px;right:4%}.week-calendar{grid-template-columns:28px repeat(7,minmax(0,1fr))}.week-day-head>span{font-size:7px}.week-day-head>strong{font-size:20px}}.manage-shell{max-width:1100px;margin:auto;padding:80px 6% 120px}.manage-card>h1{margin-bottom:35px;font-size:clamp(48px,7vw,82px)}.manage-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-bottom:35px;display:grid}.manage-summary p{border-right:1px solid var(--line);gap:6px;padding:20px;display:grid}.manage-summary p:last-child{border-right:0}.manage-summary strong{letter-spacing:1.5px;text-transform:uppercase;color:var(--ink);font-size:10px}.manage-summary span{text-transform:capitalize}.policy-note{background:#e7eee5;margin:28px 0;padding:22px}.policy-note.late{background:#f2dcd5}.policy-note>strong{margin-bottom:5px;display:block}.policy-note label{align-items:center;gap:10px;margin-top:15px;display:flex}.manage-actions{grid-template-columns:1.5fr 1fr;gap:8%;margin-top:45px;display:grid}.manage-actions h2{margin-bottom:18px;font-size:38px}.manage-actions .field{max-width:300px}.manage-slots{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.manage-slots button{border:1px solid var(--line);background:var(--white);padding:10px 13px}.manage-slots button.selected{background:var(--accent);color:#fff}.manage-actions .text-link{background:0 0;margin-top:25px}.manage-actions .button{margin-top:10px}@media (max-width:700px){.manage-shell{padding-top:50px}.manage-summary,.manage-actions{grid-template-columns:1fr}.manage-summary p{border-right:0;border-bottom:1px solid var(--line)}.manage-summary p:last-child{border-bottom:0}.manage-actions{gap:50px}}.week-event.external{background:color-mix(in srgb, var(--calendar-color,#5f8199), #fff 30%);color:#fff;border-left-color:color-mix(in srgb, var(--calendar-color,#5f8199), #000 28%);pointer-events:none;pointer-events:auto;cursor:pointer}.google-event-description{white-space:pre-wrap;margin:22px 0}.google-event-description p{margin-top:8px}.calendar-gesture-surface{touch-action:pan-x pan-y}.calendar-gesture-hint{color:var(--muted);margin:-12px 0 16px;font-size:10px}.calendar-view-toggle{display:flex!important}.calendar-view-toggle button.active{background:var(--ink);color:var(--paper)}.month-calendar{border:1px solid var(--line);background:var(--white)}.month-weekdays,.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.month-weekdays span{border-right:1px solid var(--line);letter-spacing:1.2px;text-align:center;text-transform:uppercase;padding:11px 6px;font-size:9px}.month-weekdays span:last-child{border-right:0}.month-day{border-top:1px solid var(--line);border-right:1px solid var(--line);cursor:zoom-in;min-height:145px;padding:7px;overflow:hidden}.month-day:nth-child(7n){border-right:0}.month-day.closed{background:#eee9e4}.month-day.today{background:#f3faf4;box-shadow:inset 0 0 0 3px #4f7f58}.month-day.today .month-day-number strong{color:#fff;background:#4f7f58;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.month-day.outside{opacity:.42}.month-day-number{width:100%;color:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;display:flex}.month-day-number span{text-transform:uppercase;font-size:7px;display:none}.month-day-number strong{font:24px var(--serif)}.month-event{border:0;border-left:2px solid var(--accent);width:100%;color:var(--ink);text-align:left;text-overflow:ellipsis;white-space:nowrap;background:#efd9d2;margin-top:4px;padding:4px 5px;font-size:8px;line-height:1.25;display:block;overflow:hidden}.month-event.blocked{background:var(--calendar-color,#756966);color:#fff;border-left-color:color-mix(in srgb, var(--calendar-color,#756966), #000 35%)}.month-event.appointment{border-left-color:color-mix(in srgb, var(--calendar-color,#756966), #000 28%);background:color-mix(in srgb, var(--calendar-color,#756966), #fff 35%);color:#fff}.month-event.external{background:color-mix(in srgb, var(--calendar-color,#5f8199), #fff 30%);color:#fff;border-left-color:color-mix(in srgb, var(--calendar-color,#5f8199), #000 28%)}.month-day>small{color:var(--muted);margin-top:5px;font-size:8px;display:block}@media (max-width:900px){.calendar-gesture-hint{text-align:center}.month-day{min-height:105px;padding:4px}.month-event{padding:3px 2px;font-size:6px}.month-day-number strong{font-size:19px}}@media (max-width:620px){.calendar-view-toggle{grid-column:1/-1}.calendar-view-toggle button{flex:1}.month-weekdays{display:none}.month-grid{background:var(--line);gap:2px}.month-day{background:var(--white);border:0;min-height:88px}.month-day.closed{background:#eee9e4}.month-day-number{text-align:center;justify-content:center;display:grid}.month-day-number span{display:block}.month-day-number strong{font-size:18px}.month-event{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:5.5px;display:-webkit-box}.month-event b{display:none}}.admin-tabs{border-bottom:1px solid var(--line);gap:28px;margin-bottom:35px;display:flex}.admin-tabs a{border-bottom:2px solid #0000;padding:12px 2px}.admin-tabs a.active{border-color:var(--accent);color:var(--accent)}.clients-admin{gap:28px;display:grid}.clients-toolbar{justify-content:space-between;align-items:end;gap:24px;display:flex}.clients-toolbar h2{font-size:clamp(42px,6vw,72px)}.clients-toolbar input{border:0;border-bottom:1px solid var(--line);background:0 0;width:min(360px,100%);padding:13px}.clients-table{border-top:1px solid var(--line)}.client-row{border:0;border-bottom:1px solid var(--line);text-align:left;width:100%;color:var(--ink);background:0 0;grid-template-columns:1.5fr 1fr 1.2fr .8fr;align-items:center;gap:20px;padding:18px 12px;display:grid}button.client-row:hover{background:var(--blush)}.client-row span{min-width:0}.client-row strong,.client-row small{display:block}.client-row small{color:var(--muted);margin-top:4px;font-size:11px}.client-head{letter-spacing:1px;text-transform:uppercase;color:var(--muted);font-size:10px}.empty-state{padding:40px 12px}.client-profile h2{font-size:45px}.client-profile h3{margin:28px 0 12px;font-size:28px}.client-history{border-top:1px solid var(--line)}.client-history article{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:20px;padding:15px 0;display:grid}.client-history small,.client-history strong{display:block}.client-history small{color:var(--muted);margin-top:4px;font-size:11px}.client-history article>div:last-child{text-align:right}.history-status{text-transform:uppercase;letter-spacing:1px;font-size:10px}.history-status.cancelled,.history-status.no_show{color:#8a3129}.history-status.completed{color:#315b38}@media (max-width:700px){.clients-toolbar{display:grid}.clients-toolbar input{width:100%}.client-head{display:none}.client-row{grid-template-columns:1fr auto;gap:10px}.client-row>span:nth-child(2){text-align:right}.client-row>span:nth-child(3),.client-row>span:nth-child(4){font-size:11px}.client-profile h2{font-size:36px}}.google-feed{background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.google-rating{justify-items:end;gap:5px;display:grid}.google-rating>strong{font:54px/1 var(--serif)}.google-rating>a{border-bottom:1px solid var(--ink);padding-bottom:5px;font-size:11px}.review-stars{color:#b26f31;letter-spacing:2px;font-size:14px}.review-grid,.google-posts{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.review-card{border:1px solid var(--line);flex-direction:column;min-height:260px;padding:28px;display:flex}.review-card blockquote{font:26px/1.25 var(--serif);-webkit-line-clamp:5;-webkit-box-orient:vertical;margin:22px 0 35px;display:-webkit-box;overflow:hidden}.review-card footer{text-align:left;grid-template-columns:40px 1fr;gap:12px;margin-top:auto;padding:0;display:grid}.review-card footer>img{border-radius:50%;width:40px;height:40px}.review-card footer strong,.review-card footer span{font-size:10px;display:block}.review-card footer span{color:var(--muted);margin-top:2px}.review-source{color:#5e5e5e;white-space:nowrap;grid-column:1/-1;justify-self:start;font:400 12px/1 Arial,sans-serif}.google-posts{margin-bottom:22px}.google-post{border:1px solid var(--line);grid-template-columns:120px 1fr;min-height:150px;display:grid}.google-post>img{min-height:150px}.google-post>div{flex-direction:column;align-items:start;padding:20px;display:flex}.google-post span{font-size:9px}.google-post p{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:9px 0 15px;display:-webkit-box;overflow:hidden}.google-post b{border-bottom:1px solid var(--ink);margin-top:auto;font-size:10px;font-weight:500}.review-order-note{grid-column:1/-1;font-size:9px}.google-feed-fallback{border:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding:30px;display:flex}.google-feed-fallback p{font:26px var(--serif)}@media (max-width:900px){.review-grid,.google-posts{grid-template-columns:1fr}.review-card{min-height:220px}.google-post{grid-template-columns:150px 1fr}}@media (max-width:620px){.google-feed .section-heading{display:grid}.google-rating{justify-items:start}.review-card{padding:22px}.review-card blockquote{font-size:23px}.google-post{grid-template-columns:105px 1fr}.google-feed-fallback{display:grid}.google-feed-fallback p{font-size:22px}}.instagram-feed{border-top:1px solid var(--line);margin-top:70px;padding-top:55px}.instagram-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:25px;display:flex}.instagram-heading h3{font:48px/1 var(--serif);font-weight:400}.instagram-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.instagram-grid>a{aspect-ratio:1;background:var(--blush);position:relative;overflow:hidden}.instagram-grid img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.instagram-grid>a:hover img{transform:scale(1.025)}.instagram-grid span{letter-spacing:.08em;text-transform:uppercase;background:#fbf7f2e6;padding:8px 10px;font-size:9px;position:absolute;bottom:14px;left:14px}@media (max-width:620px){.instagram-feed{margin-top:48px;padding-top:40px}.instagram-heading{align-items:start;display:grid}.instagram-heading h3{font-size:38px}.instagram-grid{gap:7px}.instagram-grid span{display:none}}
