@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap");:root{--ink:#272024;--rose:#e6afbd;--rose-dark:#a95971;--cream:#fcf9f5;--muted:#81767b;--line:#e6dfdc;--serif:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans","Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:14px}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--rose-dark);outline-offset:4px}button{color:inherit}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-weight:400}h2{font-family:var(--serif);font-size:62px;line-height:.99;letter-spacing:-1.6px}h2 em{font-weight:400;color:var(--rose-dark)}.announcement{height:32px;background:#ead3d6;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;font-size:9px;letter-spacing:2px}.announcement>span:last-child{display:flex;align-items:center;gap:10px}.dot{height:5px;width:5px;display:inline-block;border-radius:50%;background:#87626d}.header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;background:var(--cream);gap:24px}.brand,.brand>span{display:block}.brand>span{font-family:var(--serif);font-style:italic;font-weight:500;font-size:35px;letter-spacing:-1.5px;line-height:1.15}.brand small{display:block;font-size:8px;letter-spacing:4px;text-align:center;margin-top:5px}.brand-star{font-size:21px;vertical-align:top;margin-left:3px;color:var(--rose-dark)}.nav{display:flex;gap:34px;font-size:12px}.nav a:hover{color:var(--rose-dark)}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid transparent;background:var(--rose);color:#292025;padding:17px 23px;font-size:12px;font-weight:550;min-height:48px;transition:background .2s,transform .2s}.button:hover:not(:disabled){background:#d99bad;transform:translateY(-1px)}.button.small{padding:12px 18px;min-height:41px;gap:17px;font-size:11px}.button.outline{background:transparent;border-color:#cfc5c4}.button.outline:hover{background:#f2e8e7}.header-actions{display:flex;gap:15px;align-items:center}.menu-toggle{display:none;background:none;border:0}.hero{position:relative;min-height:655px;background:#1b191b;overflow:hidden;color:var(--cream)}.hero-image{position:absolute;right:0;top:0;width:59%;height:100%;overflow:hidden}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:center 40%;filter:saturate(.7)}.hero-image:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#1b191b 1%,rgba(27,25,27,.55) 20%,transparent 48%),linear-gradient(0deg,rgba(27,25,27,.2),transparent 35%)}.hero-content{position:relative;z-index:1;margin-left:8.5%;padding:69px 0 40px;width:48%}.eyebrow{font-size:9px;letter-spacing:2px;line-height:1.6;font-weight:600}.eyebrow.light{display:flex;gap:12px;align-items:center;font-weight:400;color:#e4d6d8}.eyebrow.light span{width:25px;height:1px;background:var(--rose)}.hero h1{font-family:var(--serif);font-size:103px;letter-spacing:-4px;line-height:.95;margin-top:29px;margin-bottom:25px}.hero h1 em{font-weight:400;color:var(--rose)}.hero p{font-size:13px;line-height:1.9;color:#cfc7c9;font-weight:400}.hero-cta{margin-top:29px;min-width:207px}.text-link{display:inline-flex;align-items:center;gap:14px;background:none;border:0;color:#e6dcdf;font-size:11px;padding:0}.hero .text-link{margin-left:23px}.text-link.dark{color:var(--ink)}.hero-note{display:flex;align-items:center;gap:12px;margin-top:44px;font-size:8px;letter-spacing:1.5px;line-height:1.6;color:#d0b9c0}.tiny-flower{font-size:32px;font-weight:400}.hero-side{right:25px;top:42%;writing-mode:vertical-rl;font-size:8px;letter-spacing:3px;color:#eadde0}.hero-side,.photo-credit{position:absolute;z-index:1}.photo-credit{right:30px;bottom:20px;font-size:7px;letter-spacing:2px;color:#e1d5d9}.ribbon{display:flex;align-items:center;justify-content:space-around;gap:20px;padding:20px 3%;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:2.5px;white-space:nowrap;overflow:hidden;background:#f3e8e5}.ribbon i{color:#ab7e88;font-size:20px;font-style:normal}.section{padding:94px 8.5%}.section-intro{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:38px;gap:20px}.section-intro h2{margin-top:20px}.section-intro>p{font-size:12px;color:var(--muted);line-height:1.9;margin-bottom:5px}.filters{display:flex;gap:8px;margin-bottom:30px;flex-wrap:wrap}.filters button{border:1px solid #dcd3d2;background:none;padding:11px 19px;border-radius:1px;font-size:11px}.filters button.active{background:var(--ink);border-color:var(--ink);color:var(--cream)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{border:1px solid var(--line);padding:26px 26px 22px;background:#fdfbf8;transition:background .25s,border-color .25s}.service-card:hover{background:#f8eeec;border-color:#d2b2ba}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px;min-height:45px}.card-top .eyebrow{font-size:8px;color:#9d7280;letter-spacing:1.6px}.card-top svg{width:75px;height:38px;color:#9c6e7b}.service-card h3{font-family:var(--serif);font-size:29px;letter-spacing:-.5px;line-height:1.1;min-height:34px}.service-card p{color:var(--muted);font-size:11px;line-height:1.8;margin:12px 0 26px;min-height:40px;max-width:250px}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:17px}.card-bottom strong{font-size:14px;font-weight:500}.card-bottom span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px;margin-top:6px}.circle-button{display:flex;justify-content:center;align-items:center;border-radius:50%;border:1px solid #d3b2bb;background:transparent;color:#91616e;height:39px;width:39px}.circle-button:hover{background:var(--rose);color:var(--ink)}.service-foot{display:flex;justify-content:space-between;gap:20px;margin-top:30px;font-size:10px;color:var(--muted)}.service-foot a{display:flex;align-items:center;gap:10px;color:var(--ink);border-bottom:1px solid #cbb4ba;padding-bottom:7px}.experience{display:grid;grid-template-columns:1fr 1fr;background:#f0e3e1;min-height:610px}.experience-art{position:relative;min-height:600px;display:flex;align-items:center;justify-content:center;padding:50px;background:#d3a4ae;overflow:hidden}.art-caption{position:absolute;top:39px;font-size:8px;letter-spacing:3px}.line-frame{width:75%;height:360px;position:relative;border:1px solid #85536266;border-radius:160px 160px 0 0;display:flex;align-items:center;justify-content:center}.big-monogram{font-family:var(--serif);font-size:205px;line-height:1;font-style:italic;color:#6f4757;letter-spacing:-22px;transform:translate(-12px,-20px)}.line-frame>svg{position:absolute;bottom:36px;width:96px;color:#805062}.art-spark{position:absolute;color:#f9e7e6;font-size:72px}.art-spark.one{right:-35px;top:15px}.art-spark.two{left:-23px;bottom:44px;font-size:45px}.art-bottom{position:absolute;bottom:36px;text-align:center;font-size:8px;line-height:1.8;letter-spacing:3px}.experience-content{padding:77px 13% 60px 12%}.experience-content h2{font-size:56px;margin:20px 0}.experience-content>p{font-size:12px;line-height:1.95;color:#7b6870}.experience-list{margin:27px 0}.experience-list>div{display:flex;gap:18px;padding:15px 0;border-top:1px solid #cfbabd}.experience-list>div>span{font-family:var(--serif);font-size:22px;color:#9c6c7d}.experience-list h3{font-size:12px;font-weight:500;margin-bottom:5px}.experience-list p{font-size:10px;color:#89727a;line-height:1.6}.visit{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:center}.visit h2{margin:20px 0 30px}.visit-details p{display:flex;align-items:flex-start;gap:15px;margin:18px 0;line-height:1.7;font-size:12px}.visit-details svg{color:#9b6978;flex-shrink:0;margin-top:2px}.visit-details small{font-size:10px;color:var(--muted)}.visit .outline{margin-top:10px}.visit-card{padding:40px;text-align:center;background:#eee1df;position:relative;min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center}.visit-card>.tiny-flower{color:#a76a7d;font-size:34px}.visit-card p{font-family:var(--serif);font-size:42px;line-height:1.08;margin:20px 0 26px;letter-spacing:-1px}.visit-card p em{font-weight:400;color:#9b6477}.visit-card small{font-size:7px;letter-spacing:2px;margin-top:23px}footer{border-top:1px solid var(--line);padding:36px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:25px}footer>.brand>span{font-size:30px}footer>span{font-size:9px;color:var(--muted)}footer>div{display:flex;flex-direction:column;gap:12px;font-size:9px}footer a{display:flex;gap:7px;align-items:center}footer .powered{color:#9b8d93}footer strong{font-size:12px;color:#8a647f;font-weight:600}.modal-backdrop{position:fixed;inset:0;z-index:50;background:#17121699;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:25px}.booking-modal{width:730px;max-height:92vh;background:var(--cream);display:flex;flex-direction:column;box-shadow:0 30px 100px #0003;outline:0}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:22px 35px;border-bottom:1px solid var(--line)}.modal-head .brand>span{font-size:28px}.modal-head .brand small{font-size:7px;letter-spacing:2.7px}.icon-button{border:0;background:none;padding:8px;align-items:center}.icon-button,.steps{display:flex;justify-content:center}.steps{gap:25px;padding:19px;border-bottom:1px solid var(--line);font-size:10px;color:#9f9398}.steps>span{gap:8px}.steps b,.steps>span{display:flex;align-items:center}.steps b{height:22px;width:22px;border:1px solid #d9cdd0;justify-content:center;border-radius:50%;font-size:9px;font-weight:400}.steps .current{color:#8e4c62}.steps .current b,.steps .done b{background:var(--rose);border-color:var(--rose);color:#423038}.modal-body{padding:30px 36px;overflow-y:auto;min-height:120px}.modal-body h2{font-size:43px;letter-spacing:-1px;line-height:1.1;margin:9px 0 12px}.muted{color:var(--muted);font-size:12px;line-height:1.8}.booking-service-list{margin-top:22px}.booking-service-list h4{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;margin:23px 0 10px;color:#9c6d7b;font-weight:500}.booking-service{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:15px 13px;margin-bottom:7px;border:1px solid var(--line);background:#fffdfa}.booking-service.selected{border-color:#bd8a9a;background:#f4e4e7}.select-box{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:1px solid #d4c5c8;color:#9c6d7b;flex-shrink:0}.selected .select-box{background:#a4687b;color:white;border-color:#a4687b}.booking-service>span:nth-child(2){flex:1 1}.booking-service strong{font-size:12px;font-weight:500;display:block}.booking-service small{font-size:10px;color:var(--muted);display:block;margin-top:5px}.booking-service>b{font-size:12px;font-weight:500}.modal-footer{border-top:1px solid var(--line);padding:20px 35px;display:flex;justify-content:space-between;align-items:center;gap:15px}.modal-footer>div>small{display:block;font-size:9px;color:var(--muted);margin-bottom:5px}.modal-footer>div>strong{font-size:19px;font-weight:500}.footer-buttons{display:flex;gap:8px}.footer-buttons .button{gap:12px;padding:13px 17px}.admin-content label,.modal-body label{display:block;font-size:11px;font-weight:500;margin:20px 0 0}.admin-content input:not([type=checkbox]),.admin-content select,.admin-content textarea,.modal-body input:not([type=checkbox]),.modal-body select{display:block;width:100%;padding:13px;background:#fffdfb;color:var(--ink);border:1px solid #d9cfd0;border-radius:0;margin-top:8px;min-height:44px}.date-caption{text-transform:capitalize;margin-top:17px;font-size:11px;color:#99697a}.time-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:18px}.time-grid button{border:1px solid #d7c6cc;background:transparent;padding:13px;font-size:12px}.time-grid button.selected{background:var(--ink);border-color:var(--ink);color:white}.empty-state{padding:45px 20px;text-align:center;color:#8e7c85;display:flex;flex-direction:column;align-items:center;gap:15px}.empty-state span{font-size:11px}.empty-state h3{font-family:var(--serif);font-size:32px;color:var(--ink)}.empty-state p,.error{font-size:12px;line-height:1.7}.error{border:1px solid #d7a7ad;background:#fbebed;color:#943a50;padding:14px 16px;margin-bottom:17px}.notice{background:#f0e4e1;border:1px solid #dfc9cd;padding:16px;font-size:12px;line-height:1.8;margin:18px 0}.notice p{margin-top:5px;font-size:11px}.notice small{font-size:10px}.review{padding:18px;background:#f0e4e1;display:flex;flex-direction:column;gap:9px;margin-top:20px}.review span{font-size:11px;text-transform:capitalize}.review strong{font-family:var(--serif);font-size:25px;font-weight:500}.review small{color:#926e7d;font-size:10px}.checkbox-label{display:flex!important;align-items:flex-start;gap:9px;font-weight:400!important;line-height:1.7}.checkbox-label input{accent-color:#9b6579;margin-top:3px;width:15px;height:15px;flex-shrink:0}.policies{font-size:10px;line-height:1.8;margin:17px 0;color:var(--muted)}summary{cursor:pointer}.policies p{margin-top:10px}.center{text-align:center}.success-icon{height:54px;width:54px;background:#ead1d9;color:#8d586c;border-radius:50%;margin:0 auto 20px;display:flex;align-items:center;justify-content:center}.success-icon.neutral{background:#e7e2df;color:#8e7c85}.confirmation-summary{border:1px solid var(--line);padding:20px;margin:25px 0}.confirmation-summary p{display:flex;align-items:flex-start;gap:12px;font-size:11px;line-height:1.7;margin-bottom:15px}.confirmation-summary svg{flex-shrink:0;color:#a37787}.confirmation-summary>div{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px;font-size:11px}.confirmation-actions{display:flex;flex-direction:column;gap:10px}.manage-actions{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:22px}.manage-actions button{background:none;border:0;border-bottom:1px solid #ccb7be;padding:0 0 4px;font-size:10px}.admin-shell{min-height:100vh;display:flex;background:#f7f4f0}.admin-sidebar{width:240px;position:fixed;inset:0 auto 0 0;background:#272126;color:#f2e6e9;padding:34px 25px;display:flex;flex-direction:column}.admin-sidebar .brand>span{font-size:31px}.admin-sidebar .brand small{font-size:7px;letter-spacing:3px;color:#c1a1ad}.sidebar-caption{font-size:8px;letter-spacing:2px;color:#a88e9a;margin:55px 0 18px}.admin-sidebar nav{display:flex;flex-direction:column;gap:6px}.admin-sidebar nav button{background:none;border:0;color:#d5c3ca;display:flex;align-items:center;gap:13px;padding:15px;text-align:left;font-size:12px}.admin-sidebar nav button.active{background:#e5aebb;color:#3b2630}.sidebar-bottom{margin-top:auto;font-size:9px;display:flex;flex-direction:column;gap:22px;color:#baa4ae}.sidebar-bottom a{display:flex;align-items:center;gap:10px}.sidebar-bottom strong{font-size:15px;color:#e0b9ca}.admin-main{margin-left:240px;width:calc(100% - 240px)}.admin-top{height:74px;border-bottom:1px solid var(--line);padding:0 40px;justify-content:space-between;font-size:9px;letter-spacing:1px}.admin-top,.admin-top a{display:flex;align-items:center}.admin-top a{gap:8px;letter-spacing:0}.admin-content{padding:38px 40px;max-width:1450px;margin:auto}.admin-title{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:30px}.admin-title h1{font-family:var(--serif);font-size:58px;letter-spacing:-1.8px;line-height:1.2;margin-top:8px}.admin-title p{font-size:12px;color:var(--muted);margin-top:8px;line-height:1.8}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:28px}.stats article{border:1px solid var(--line);background:#fffcf9;padding:24px}.stats span{font-size:11px;color:#8d7a83;display:block}.stats strong{font-family:var(--serif);font-size:48px;line-height:1.2;display:block;margin:13px 0 5px}.stats small{font-size:9px;color:#9b8a91;text-transform:capitalize}.admin-toolbar{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:20px}.admin-toolbar .filters{margin-bottom:0}.admin-toolbar input:not([type=checkbox]){width:auto;margin:0;font-size:11px;padding:10px}.admin-toolbar .button{padding:10px;min-height:38px;font-size:10px}.filters.compact button{padding:11px 14px;font-size:10px}.admin-toolbar .text-link{font-size:9px}.admin-content .search-input{margin:0 0 20px;max-width:450px;font-size:11px}.panel{border:1px solid var(--line);background:#fffcf9;padding:26px}.appointment-list{display:flex;flex-direction:column;gap:12px}.appointment{padding:21px;background:#fffcf9;border:1px solid var(--line);display:flex;align-items:flex-start;gap:21px}.appointment-time{padding-right:20px;border-right:1px solid var(--line);min-width:90px;display:flex;flex-direction:column;gap:8px}.appointment-time>strong{font-family:var(--serif);font-size:33px}.appointment-time small,.appointment-time span{font-size:9px;color:#8c7a84}.appointment-info{flex:1 1}.appointment-info>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.appointment h3{font-family:var(--serif);font-size:26px}.status{font-size:8px;padding:5px 8px;background:#ebe7e5;color:#7e6e77}.status.confirmed{background:#e4eee5;color:#3e6b4b}.status.pending{background:#f3e7d2;color:#947130}.appointment-info p{font-size:11px;margin:11px 0;line-height:1.8}.appointment-info small{font-size:8px;line-height:1.8;color:#9c8b93;display:block}.appointment-info>a{display:flex;align-items:center;gap:5px;font-size:10px;margin-top:8px;color:#9a647a}.appointment-money{display:flex;flex-direction:column;gap:8px;min-width:95px;margin-top:4px}.appointment-money strong{font-size:17px;font-weight:500}.appointment-money small,.appointment-money span{font-size:9px;color:var(--muted)}.appointment-buttons{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:140px}.appointment-buttons .button.small{padding:8px 10px;min-height:30px;font-size:9px;gap:8px}.appointment-buttons .text-link{font-size:9px;padding:4px;justify-content:center}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 20px}.form-grid .wide{grid-column:1/-1}.admin-content label{margin:16px 0 0;color:#75636c;font-weight:400;font-size:10px}.admin-content input,.admin-content select,.admin-content textarea{font-size:12px!important}.service-edit-list,.settings-panels{display:flex;flex-direction:column;gap:20px;margin-bottom:22px}.service-edit-title{display:flex;justify-content:space-between;gap:20px;align-items:center}.service-edit-title .checkbox-label{margin:0}.settings-panels h2{font-family:var(--serif);font-size:31px;letter-spacing:-.5px;line-height:1.2;margin-bottom:12px}.settings-panels .muted{font-size:11px}.weekday-checks{display:flex;gap:8px;margin:22px 0;flex-wrap:wrap}.weekday-checks label{margin:0;padding:9px 13px;background:#efe7e6;border:1px solid transparent;display:flex;gap:5px;align-items:center}.weekday-checks label.active{border-color:#b18396}.weekday-checks input{accent-color:#9d6d81}.resource-row{display:flex;gap:15px;align-items:center;margin:0 0 20px}.resource-row>label:not(.checkbox-label){flex:1 1}.resource-row .checkbox-label{min-width:65px}.confirm-dialog{background:var(--cream);width:400px;padding:30px}.confirm-dialog h2{font-size:37px}.confirm-dialog p{font-size:13px;line-height:1.8;margin:20px 0}.confirm-dialog>div{display:flex;justify-content:flex-end;gap:10px}.client-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.client-card .avatar{height:45px;width:45px;background:#efdae1;color:#9a6079;display:flex;align-items:center;justify-content:center;border-radius:50%;font-family:var(--serif);font-size:27px;margin-bottom:20px}.client-card h3{font-family:var(--serif);font-size:29px}.client-card p{font-size:11px;margin:10px 0;color:var(--muted)}.client-card>strong{display:block;font-size:11px;font-weight:400;margin:15px 0}.client-card details{font-size:10px;border-top:1px solid var(--line);padding-top:15px}.client-history{display:flex;flex-direction:column;gap:6px;padding:14px 0;border-bottom:1px solid var(--line);font-size:9px}.client-history strong{font-weight:500;font-size:11px;line-height:1.6}@media(min-width:1550px){.hero-content{padding-top:90px}.hero{min-height:760px}.hero h1{font-size:125px}.hero p{font-size:15px}.section{padding-left:max(8.5%,calc((100vw - 1300px)/2));padding-right:max(8.5%,calc((100vw - 1300px)/2))}}@media(max-width:1100px){.hero h1{font-size:85px}.hero-content{margin-left:6%;width:56%}.hero .text-link{display:flex;margin:18px 0 0}.hero-note{margin-top:29px}.section{padding:70px 6%}.hero{min-height:640px}.experience-content{padding:65px 10%}.experience-content h2{font-size:48px}.service-card{padding:20px}.service-card h3{font-size:26px}.visit{gap:7%}.visit h2{font-size:53px}.admin-sidebar{width:200px;padding:28px 20px}.admin-sidebar .brand>span{font-size:27px}.admin-main{margin-left:200px;width:calc(100% - 200px)}.admin-content{padding:30px 24px}.admin-top{padding:0 24px}.appointment{flex-wrap:wrap}.appointment-buttons{flex-direction:row;flex-wrap:wrap;width:100%;padding-left:110px}.client-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){h2{font-size:47px}.announcement{font-size:7px;letter-spacing:1.2px;padding:0 6%;height:28px}.announcement>span:last-child{display:none}.header{height:83px;padding:0 6%;gap:14px}.brand>span{font-size:28px}.brand small{font-size:6px;letter-spacing:3px}.brand-star{font-size:15px}.header-actions .button{font-size:9px;gap:7px;padding:10px 12px;min-height:37px}.menu-toggle{display:flex;padding:3px}.menu-toggle svg{width:20px}.nav{display:none;position:absolute;top:111px;left:0;right:0;z-index:10;background:var(--cream);padding:25px 6%;border-bottom:1px solid var(--line)}.nav.open{display:flex;flex-direction:column;gap:20px}.hero{min-height:710px}.hero-image{width:100%;height:100%}.hero-image img{object-position:65% center;opacity:.72}.hero-image:after{background:linear-gradient(90deg,rgba(27,25,27,.8),rgba(27,25,27,.1) 95%),linear-gradient(0deg,#1b191b,transparent 65%)}.hero-content{margin-left:7%;width:85%;padding-top:58px}.hero h1{font-size:85px;letter-spacing:-3px;margin-top:31px;line-height:.97}.hero p{font-size:12px;color:#e2d9dd;margin-top:26px}.hero-cta{margin-top:30px;min-width:215px}.hero .text-link{margin-top:22px}.hero-note{margin-top:36px}.hero-side{right:12px;font-size:6px;letter-spacing:2px}.photo-credit{bottom:15px;right:25px;font-size:6px}.eyebrow{font-size:8px;letter-spacing:1.6px}.ribbon{justify-content:flex-start;gap:25px;padding:16px 7%;font-size:9px}.ribbon i{font-size:19px}.section{padding:60px 6%}.section-intro{display:block;margin-bottom:28px}.section-intro>p{margin-top:22px;font-size:11px}.section-intro h2{margin-top:17px}.filters{gap:7px;margin-bottom:22px}.filters button{font-size:9px;padding:10px 12px}.service-grid{grid-template-columns:repeat(2,1fr);gap:10px}.service-card{padding:16px 14px}.card-top{margin-bottom:14px;min-height:28px;gap:7px}.card-top .eyebrow{font-size:6px;letter-spacing:1px}.card-top svg{width:48px;height:27px}.service-card h3{font-size:25px;min-height:54px;line-height:1.05}.service-card p{font-size:10px;line-height:1.7;min-height:68px;margin:9px 0 18px}.card-bottom{padding-top:13px}.card-bottom strong{font-size:12px}.card-bottom span{font-size:8px}.circle-button{height:32px;width:32px}.circle-button svg{width:18px}.service-foot{flex-direction:column;align-items:flex-start;gap:13px;font-size:9px;margin-top:24px}.experience{grid-template-columns:1fr}.experience-art{min-height:380px;padding:55px}.line-frame{height:250px;width:68%;max-width:290px}.big-monogram{font-size:155px;letter-spacing:-16px;transform:translate(-10px,-16px)}.line-frame>svg{bottom:20px;width:77px}.art-caption{top:24px;font-size:7px}.art-bottom{bottom:23px;font-size:6px}.experience-content{padding:55px 8%}.experience-content h2{font-size:49px}.experience-content>p{font-size:12px}.experience-list p{font-size:10px}.visit{grid-template-columns:1fr;gap:40px}.visit h2{font-size:49px}.visit-card{min-height:340px}.visit-card p{font-size:40px}footer{flex-direction:column;text-align:center;padding:30px 6%;gap:24px}footer>span{font-size:8px;line-height:1.8}footer>div{align-items:center}.modal-backdrop{padding:10px}.booking-modal{max-height:96dvh;width:100%}.modal-head{padding:18px 20px}.modal-head .brand>span{font-size:26px}.steps{gap:15px;padding:16px 10px;font-size:8px}.steps>span{gap:5px}.steps b{height:19px;width:19px;font-size:8px}.modal-body{padding:23px 20px}.modal-body h2{font-size:38px}.modal-footer{padding:15px 18px;align-items:center;gap:12px}.modal-footer>div>small{font-size:8px}.modal-footer>div>strong{font-size:17px}.footer-buttons{gap:6px}.footer-buttons .button{font-size:10px;padding:12px;min-height:42px;gap:7px}.footer-buttons .outline{padding:10px;font-size:9px}.booking-service{padding:13px 10px;gap:10px}.booking-service strong,.booking-service>b{font-size:11px}.time-grid{grid-template-columns:repeat(4,1fr)}.time-grid button{padding:12px 8px;font-size:11px}.modal-body .notice{font-size:11px}.confirmation-summary{padding:16px}.confirmation-summary>div{font-size:10px;gap:12px}.manage-actions{gap:15px}.manage-actions button{font-size:9px}.admin-shell{display:block}.admin-sidebar{position:relative;width:100%;padding:21px 20px;flex-direction:row;flex-wrap:wrap;gap:24px;align-items:center}.admin-sidebar .brand>span{font-size:28px}.sidebar-bottom,.sidebar-caption{display:none}.admin-sidebar nav{flex-direction:row;width:100%;gap:4px;justify-content:space-between}.admin-sidebar nav button{font-size:10px;padding:11px;gap:7px}.admin-sidebar nav button svg{width:15px}.admin-main{margin-left:0;width:100%}.admin-top{height:50px;padding:0 20px;font-size:8px}.admin-content{padding:27px 18px}.admin-title{align-items:flex-start;gap:15px;flex-direction:column}.admin-title h1{font-size:48px}.admin-title p{font-size:11px}.admin-title .button{font-size:11px;padding:12px 16px;min-height:42px}.stats{gap:8px}.stats article{padding:14px 11px}.stats span{font-size:8px;line-height:1.6}.stats strong{font-size:34px;margin:10px 0 5px}.stats small{font-size:7px;line-height:1.6;display:block}.admin-toolbar{gap:12px}.admin-toolbar .filters{gap:6px}.admin-toolbar .filters button{padding:10px 12px}.panel{padding:20px}.appointment{gap:15px;padding:16px}.appointment-time{min-width:70px;padding-right:12px}.appointment-time>strong{font-size:27px}.appointment-money{padding-left:85px;flex-direction:row;align-items:center;width:100%;gap:15px}.appointment-money strong{font-size:14px}.appointment-info{min-width:150px}.appointment h3{font-size:24px}.appointment-info>div{gap:8px}.appointment-buttons{padding-left:0;gap:6px}.appointment-buttons .button.small{font-size:8px}.appointment-info p{font-size:10px}.form-grid{gap:0 12px}.admin-content input,.admin-content select,.admin-content textarea{font-size:11px!important;padding:11px!important}.service-edit-title{gap:10px;align-items:flex-start}.service-edit-title .eyebrow{font-size:7px;text-align:right}.resource-row{flex-wrap:wrap;gap:12px}.resource-row>label:not(.checkbox-label){min-width:120px}.settings-panels h2{font-size:28px}.weekday-checks{gap:5px}.weekday-checks label{padding:7px;font-size:9px}.client-grid{grid-template-columns:1fr 1fr;gap:10px}.client-card{padding:16px}.client-card h3{font-size:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.panel-access{font-size:10px;display:flex;gap:5px;align-items:center;color:#8b6677;white-space:nowrap}.admin-sidebar{overflow-y:auto}.package-preview{margin:28px 0 8px;padding:14px 12px;background:#ffffff0b;border:1px solid #ffffff19}.package-preview small{display:block;font-size:7px;letter-spacing:1px;color:#c7a7b6;margin-bottom:8px}.package-preview select{width:100%;border:0;background:#3c3038;color:#f5e9ee;font-size:12px;padding:8px}.admin-sidebar .sidebar-caption{margin:21px 0 8px;font-size:7px}.nav-module-group button{width:100%;padding:11px!important;gap:9px!important;flex-wrap:wrap}.nav-module-group button>span:first-of-type{flex:1 1;text-align:left}.module-lock{display:inline-flex;align-items:center;gap:4px;font-size:7px!important;line-height:1.5;color:#bc91a6}.module-disabled{opacity:.65}.admin-sidebar .sidebar-bottom{padding-top:25px}.dashboard-groups{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dashboard-groups h2{font-size:39px;margin:16px 0}.dashboard-groups p{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:24px}.dashboard-groups button{display:flex;align-items:center;gap:12px;justify-content:space-between;text-align:left;width:100%;border:0;border-top:1px solid var(--line);padding:18px 0;background:none;font-size:12px}.dashboard-groups button:hover{color:var(--rose-dark)}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.plan-card{padding:25px 21px;background:#fffdfa;border:1px solid var(--line);display:flex;flex-direction:column}.plan-card.selected{border:2px solid #b17b92;padding:24px 20px}.plan-card h2{font-size:36px;letter-spacing:-1px;margin:19px 0 12px;line-height:1.1}.plan-card>p{font-size:11px;color:var(--muted);line-height:1.8;min-height:43px}.plan-price{font-family:var(--serif);font-size:43px;margin:24px 0 13px;line-height:1}.plan-card>small,.plan-price small{font-family:var(--sans);font-size:9px;display:block;margin-top:9px;color:var(--muted)}.plan-card>strong{font-size:16px;font-weight:500}.plan-card ul{padding:20px 0;list-style:none;border-top:1px solid var(--line);margin:23px 0 5px;flex:1 1}.plan-card li{display:flex;align-items:flex-start;gap:8px;font-size:10px;line-height:1.8;margin-bottom:13px}.plan-card li svg{flex-shrink:0;margin-top:3px;color:#a5748d}.plan-card .button{font-size:10px;padding:12px;gap:8px}.plan-card details{font-size:9px;margin-top:22px;line-height:1.8;color:var(--muted)}.plan-card details p{margin-top:10px}.plan-footnote{margin-top:22px}.plan-footnote h3{font-family:var(--serif);font-size:27px;margin-bottom:13px}.plan-footnote p{font-size:10px;line-height:1.9;color:var(--muted);margin-top:12px}.finance-list{display:flex;flex-direction:column;gap:13px;margin-top:22px}.finance-list article{display:flex;justify-content:space-between;gap:20px;align-items:center}.finance-list h3{font-family:var(--serif);font-size:28px}.finance-list p{font-size:10px;color:var(--muted);margin:12px 0}.finance-list span{font-size:11px}.finance-list article>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.finance-list .button{font-size:10px;padding:12px;gap:8px}.report-title{font-size:35px;margin-bottom:20px}.report-table{overflow-x:auto;margin-top:25px}.report-table table{width:100%;border-collapse:collapse;font-size:11px;text-align:left}.report-table td,.report-table th{padding:16px;border-bottom:1px solid var(--line)}.report-table th{font-weight:500;color:#9c7188;font-size:10px}@media(max-width:1100px){.plan-grid{grid-template-columns:1fr}.plan-card>p{min-height:0}.plan-card ul{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.plan-card h2{font-size:42px}}@media(max-width:760px){.panel-access{font-size:8px;max-width:60px;line-height:1.6}.panel-access svg{display:none}.header{gap:8px}.header-actions{gap:10px}.package-preview{margin:0 0 0 auto;width:140px;padding:8px}.package-preview small{font-size:6px}.package-preview select{font-size:10px}.admin-sidebar{gap:15px}.admin-sidebar nav{display:grid;grid-template-columns:repeat(2,1fr);align-items:start;gap:12px}.admin-sidebar .sidebar-caption{display:block;margin:3px 0 7px}.nav-module-group button{padding:9px!important;font-size:9px!important}.nav-module-group .module-lock{width:100%;padding-left:24px;font-size:7px!important}.dashboard-groups{grid-template-columns:1fr}.dashboard-groups h2{font-size:38px}.plan-card ul{display:block}.finance-list article{flex-direction:column;align-items:stretch}.report-table td,.report-table th{padding:12px 8px;font-size:9px}.header .brand>span{font-size:25px}.header .brand small{letter-spacing:2px}}.studio-calendar{margin-top:8px}.calendar-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:20px}.calendar-month{display:flex;align-items:center;gap:17px}.calendar-month h2{font-size:37px;letter-spacing:-1px;text-transform:capitalize;min-width:240px;text-align:center}.calendar-options{display:flex;gap:18px;align-items:flex-end}.calendar-options label{margin:0;font-size:9px}.calendar-options select{min-width:150px;margin-top:5px!important}.calendar-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px;font-size:11px;color:var(--muted)}.calendar-caption .checkbox-label{margin:0;font-size:10px}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:20px;align-items:start}.calendar-month-panel{border:1px solid var(--line);background:#fffcf9;padding:20px}.calendar-grid,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{padding-bottom:16px;text-align:center;font-size:9px;color:#9b7086}.calendar-grid{gap:5px}.calendar-day{min-height:87px;display:flex;flex-direction:column;align-items:flex-start;padding:9px 7px;gap:5px;border:1px solid var(--line);background:none;text-align:left}.calendar-day strong{font-size:12px;font-weight:500}.calendar-day.today strong{background:#ead5dd;color:#84576e;border-radius:50%;min-width:22px;height:22px;display:flex;align-items:center;justify-content:center}.calendar-day.selected{background:#34272f;color:#fff7fb;border-color:#34272f}.calendar-day:hover:not(.selected){background:#f5e8ec}.calendar-count{background:#ead5df;color:#78445d;border-radius:2px;font-size:8px;line-height:1.5;padding:2px 4px;white-space:nowrap}.calendar-count.has-pending{background:#f0e1be;color:#876128}.calendar-first{font-size:8px;color:#9d8a92}.calendar-day.selected .calendar-first{color:#e5c9d5}.calendar-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px;font-size:8px;color:var(--muted);line-height:1.8}.calendar-legend>span{display:flex;align-items:center;gap:5px}.calendar-legend i{height:6px;width:6px;background:#c492a8;border-radius:50%;display:inline-block}.calendar-legend .pending-dot{background:#d0aa62}.calendar-legend .muted{font-size:8px}.calendar-day-panel>h3{font-family:var(--serif);font-size:29px;line-height:1.2;text-transform:capitalize;margin:12px 0 8px}.calendar-day-panel>.button{width:100%;margin-top:20px;font-size:10px;padding:12px;gap:10px}.calendar-appointments article{border-top:1px solid var(--line);padding:20px 0 0;margin-top:20px}.calendar-time{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.calendar-time strong{font-family:var(--serif);font-size:30px;font-weight:500}.calendar-time>span{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:9px}.calendar-appointments h4{font-size:12px;font-weight:500}.calendar-appointments article>p{font-size:11px;line-height:1.8;margin:9px 0}.calendar-appointments article>small{display:block;font-size:8px;color:var(--muted);line-height:1.9;margin-top:10px}.calendar-appointments article>a{font-size:9px;margin-top:14px}.calendar-data-note{font-size:9px;color:var(--muted);line-height:1.8;margin-top:20px}@media(max-width:1100px){.calendar-layout{grid-template-columns:1fr}.calendar-day{min-height:83px}.calendar-day-panel .empty-state{padding:25px}.calendar-day-panel>h3{font-size:32px}}@media(max-width:760px){.calendar-controls{gap:17px}.calendar-month{justify-content:space-between;width:100%;gap:8px}.calendar-month h2{font-size:32px;min-width:0}.calendar-options{width:100%;justify-content:space-between;align-items:center}.calendar-options label{margin:0}.calendar-options select{min-width:175px}.calendar-caption{align-items:flex-start;gap:10px;font-size:10px}.calendar-caption .checkbox-label{font-size:8px}.calendar-month-panel{padding:12px 9px}.calendar-weekdays{font-size:8px}.calendar-grid{gap:3px}.calendar-day{min-height:70px;padding:6px 4px;gap:4px}.calendar-day strong{font-size:11px}.calendar-count{font-size:8px;padding:2px 3px}.calendar-count-word{display:none}.calendar-first{font-size:7px}.calendar-legend{gap:10px;font-size:8px}.calendar-layout{gap:16px}}.extra-appointment-actions{display:flex;flex-direction:column;gap:7px}.payment-dialog{background:var(--cream);padding:28px;width:620px;max-height:92dvh;overflow-y:auto;outline:0}.action-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.action-dialog-head h2{font-size:38px;letter-spacing:-1px}.payment-dialog label{display:block;font-size:11px;margin:18px 0}.payment-dialog input,.payment-dialog select,.payment-dialog textarea{display:block;width:100%;border:1px solid var(--line);background:#fffdfa;padding:12px;margin-top:8px}.payment-dialog form>.button{margin-top:23px;width:100%}.payment-dialog .time-grid{margin-bottom:20px}.action-success{text-align:center;padding:30px 0;display:flex;flex-direction:column;align-items:center;gap:20px}.action-success>svg{color:#9b657b}.action-success h3{font-family:var(--serif);font-size:36px}.action-success p{font-size:12px;line-height:1.8}.action-success small{font-size:10px;color:var(--muted);line-height:1.8}.receipt-list article{border-top:1px solid var(--line);padding:20px 0;margin-top:15px}.receipt-list strong{font-size:12px}.receipt-list small{display:block;margin:10px 0;color:var(--muted);font-size:10px}.receipt-list article>div{display:flex;gap:10px;flex-wrap:wrap}.receipt-list .button{font-size:10px;gap:8px}.appointment-buttons{max-width:180px}.finance-list .extra-appointment-actions{flex-direction:row;flex-wrap:wrap}.finance-list .extra-appointment-actions .button{font-size:9px}@media(max-width:760px){.extra-appointment-actions{flex-direction:row;flex-wrap:wrap;width:100%}.appointment-buttons{max-width:none}.payment-dialog{padding:22px}.action-dialog-head h2{font-size:32px}.payment-dialog .time-grid{grid-template-columns:repeat(4,1fr)}}.notification-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:#e6a8be;color:#34212c;border-radius:20px;font-size:9px;margin-left:7px}.admin-header-links{display:flex;align-items:center;gap:20px}.notice-shortcut{display:flex;align-items:center;background:none;border:0;font-size:10px;color:#8c6077;padding:7px}.portal-notices{display:flex;flex-direction:column;gap:12px;margin-top:20px}.portal-notices .unread{border-left:4px solid #b87894}.portal-notices article>p{font-size:12px;line-height:1.9;margin:14px 0}.portal-notices small{font-size:9px;color:var(--muted);display:block}.portal-notices article>div:last-child{display:flex;gap:10px;margin-top:18px}.reminder-panel textarea{font-size:12px;line-height:1.8}.reminder-actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.reminder-actions .button{font-size:10px;padding:12px;gap:10px}.attendance-box{border:1px solid #dfc6d0;background:#f5e8ec;padding:18px;margin:20px 0}.attendance-box strong{font-size:13px}.attendance-box p{font-size:10px;line-height:1.8;margin:8px 0 15px;color:var(--muted)}.attendance-box .button{width:100%;font-size:12px}.client-link{border:1px solid var(--line);padding:15px;margin:20px 0}.client-link label{margin:0!important;font-size:10px!important}.client-link input{font-size:10px!important;padding:10px!important}.client-link small{font-size:9px;color:var(--muted);line-height:1.8;display:block;margin-top:10px}@media(max-width:760px){.admin-header-links{gap:12px}.notice-shortcut{font-size:9px}.reminder-actions .button{width:100%}.portal-notices article>div:last-child{flex-wrap:wrap}}.payment-options{margin:24px 0;padding:20px;border:1px solid #dfc8d2;background:#fbf2f4}.payment-options h3{font-family:var(--serif);font-size:29px;margin-bottom:10px}.payment-options article{padding:16px 0;border-top:1px solid var(--line);margin-top:15px}.payment-options article>strong{font-size:12px}.payment-options article>small{display:block;font-size:10px;margin-top:8px;color:var(--muted)}.account-number{display:block;font-size:12px;overflow-wrap:anywhere;margin:12px 0}.payment-options article>p{font-size:11px;line-height:1.8;margin-top:10px}.payment-options>small{font-size:9px;line-height:1.8;color:var(--muted);display:block;margin-top:10px}.payment-options .button{font-size:10px;gap:10px}.entrance{position:fixed;inset:0;z-index:200;background:#272024;color:#e6afbd;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;animation:intro-away 1.5s ease forwards}.entrance>span{font-family:var(--serif);font-size:clamp(42px,8vw,88px);font-style:italic;animation:intro-logo 1.2s ease both}.entrance small{font-size:9px;letter-spacing:5px;margin-top:14px}.entrance i{height:1px;width:90px;background:#e6afbd;margin-top:35px;transform-origin:left;animation:intro-line .9s ease both}.hero-content{animation:content-in .9s ease both}.hero-image{animation:photo-in 1.3s ease both}@keyframes intro-logo{0%{opacity:0;transform:translateY(12px)}30%,80%{opacity:1;transform:translateY(0)}to{opacity:.8}}@keyframes intro-line{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes intro-away{0%,70%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes content-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes photo-in{0%{opacity:0;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.entrance{display:none}.hero-content,.hero-image{animation:none}}.login-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:#eee1e6;padding:24px}.login-page>.panel{width:430px;padding:35px}.login-page h1{font-family:var(--serif);font-size:38px;margin:30px 0 12px}.login-page label{display:block;font-size:12px;margin:20px 0}.login-page input{display:block;width:100%;padding:13px;border:1px solid var(--line);margin-top:9px;background:#fff}.login-page .button{width:100%;margin:12px 0 24px}.access-bar{position:sticky;top:0;z-index:35;background:#ead5df;color:#624859;min-height:30px;padding:7px 20px;font-size:8px;letter-spacing:1px;display:flex;justify-content:flex-end;gap:20px}.access-bar button{border:0;background:none;font-size:9px;text-decoration:underline;color:inherit}