@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;500;600&display=swap");:root{--cream:#f6f3ec;--ink:#292a27;--gold:#aa8e62;--line:#d9d3c7;--muted:#69685f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body-font,"DM Sans"),sans-serif;font-size:15px;line-height:1.75}a{color:inherit;text-decoration:none}button,input,select{font:inherit}a,button,input,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button{cursor:pointer}img{width:100%;height:100%;object-fit:cover;display:block}header{height:110px;display:flex;justify-content:space-between;align-items:center;padding:0 6%;border-bottom:1px solid var(--line)}.brand{font:italic 38px/1 var(--heading-font,"Cormorant Garamond"),Georgia,serif;letter-spacing:-1.5px}.brand span{display:block;font:9px/2.4 var(--body-font,"DM Sans"),sans-serif;letter-spacing:2.9px;margin-top:8px}.brand span,.eyebrow{text-transform:uppercase}nav{display:flex;align-items:center;gap:34px;font-size:12px}nav>a:not(.button){position:relative}nav>a:not(.button):after{content:"";height:1px;background:var(--gold);position:absolute;left:0;right:100%;bottom:-6px;transition:right .3s}nav>a:hover:after{right:0}.button{display:inline-flex;justify-content:center;align-items:center;gap:14px;background:var(--ink);color:#fff;padding:17px 25px;border:1px solid var(--ink);font-size:12px;letter-spacing:.35px;cursor:pointer;transition:background .25s,transform .25s}.button:hover{background:#49483e;transform:translateY(-2px)}.button.small{padding:12px 21px}.button:disabled{opacity:.45;transform:none;cursor:not-allowed}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--heading-font,"Cormorant Garamond"),Georgia,serif;font-weight:400;line-height:1.04}h1{font-size:clamp(64px,6.8vw,104px);letter-spacing:-3px;margin-bottom:28px}h2{font-size:clamp(43px,4.4vw,67px);letter-spacing:-1.6px;margin-bottom:26px}h3{font-size:29px;letter-spacing:-.5px}em{font-weight:400;color:var(--gold)}.eyebrow{font-size:9px;font-weight:500;letter-spacing:2.6px;display:block;margin-bottom:25px}.hero{display:grid;grid-template-columns:1.03fr 1fr;min-height:650px}.hero-copy{padding:75px 8% 45px 12%}.hero-copy p{max-width:350px;color:var(--muted);margin-bottom:32px;line-height:1.9}.hero-photo{position:relative;overflow:hidden}.hero-photo img{position:absolute;object-position:center 52%;animation:reveal 1.2s ease}.hero-photo:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0007)}.photo-note{position:absolute;bottom:32px;left:35px;font:italic 27px var(--heading-font,"Cormorant Garamond"),serif;color:white;z-index:1}.hero-note{margin-top:68px;font-size:8px;letter-spacing:1.6px;color:var(--muted);display:flex;align-items:center;gap:20px}.hero-note span{color:var(--gold);font-size:20px}.booking-top{padding:80px 8%;display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:center;background:var(--surface,#eae5db)}.booking-top>div>p{color:var(--muted)}.booking-card{background:#fcfaf5;border:1px solid #d8cebc;padding:32px;box-shadow:0 15px 45px #3d301008;max-width:760px;width:100%;margin:auto}.booking-title{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:22px}.booking-title .eyebrow{margin-bottom:18px}.muted{color:var(--muted);font-size:12px}.booking-card label{display:block;font-size:11px;letter-spacing:.35px;font-weight:500;margin-bottom:14px}input,select{border:1px solid var(--line);border-radius:0;color:var(--ink);background:transparent;padding:13px;width:100%;margin-top:7px;min-width:0}select{font-size:13px}input::placeholder{color:#76736b}.calendar{margin:16px 0}.month{display:flex;align-items:center;justify-content:space-between}.month h3{font-size:25px;text-transform:capitalize;margin:8px}.month button{border:0;background:transparent;padding:8px 14px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:3px;margin-top:12px}.calendar-grid span{font-size:10px;color:var(--muted);padding:7px}.calendar-grid button{border:1px solid transparent;background:transparent;font-size:12px;height:35px;color:var(--ink)}.calendar-grid button:hover:not(:disabled){border-color:var(--gold)}.calendar-grid button:disabled{opacity:.22;cursor:default}.calendar-grid .selected,.times .selected{background:var(--ink);color:white}.times{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 24px}.times button{font-size:11px;background:transparent;border:1px solid var(--line);padding:8px 11px;color:var(--ink)}.times button.selected{background:var(--ink);color:white}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check{display:flex!important;align-items:flex-start;gap:8px;font-size:10px!important;font-weight:400!important;letter-spacing:0!important;line-height:1.5;margin-top:16px}.check input{width:auto;margin:2px 0 0;accent-color:var(--ink)}.check a{text-decoration:underline}.full{width:100%}.fine{font-size:9px;text-align:center;color:var(--muted);margin:14px 0 0}.error{color:#a2392d;background:#f5e5e0;padding:12px;font-size:13px}.ribbon{padding:22px 20px;background:var(--ink);color:#e1d2ba;font:15px var(--heading-font,"Cormorant Garamond"),serif;text-align:center;letter-spacing:4px;white-space:nowrap;overflow:hidden}.section{padding:95px 8%}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:35px}.section-heading a,.textlink{font-size:12px;border-bottom:1px solid var(--gold);padding-bottom:7px;display:inline-block}.section-heading h2{margin:0}.services{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.services>a,.services>article{padding:25px 0 0;border-top:1px solid var(--gold)}.services>a:hover h3{color:var(--gold)}.services h3{font-size:28px;margin-top:28px;margin-bottom:19px;transition:color .3s}.services p{font-size:12px;color:var(--muted);line-height:1.9}.number{font-size:10px;letter-spacing:2px;color:var(--gold)}.price{border-top:1px solid var(--line);padding-top:15px;font-size:12px;margin-top:25px}.price span{float:right;color:var(--muted);font-size:10px}.editorial{display:grid;grid-template-columns:1fr 1fr;background:var(--surface,#eae5db);min-height:540px}.editorial img{max-height:620px}.editorial>div{padding:75px 16%;align-self:center}.editorial p{color:var(--muted);font-size:14px;line-height:1.95}.cta{text-align:center;padding:100px 20px;background:radial-gradient(ellipse at center,#ebe3d5,transparent 66%)}.cta p{color:var(--muted)}footer{background:var(--ink);color:var(--cream);padding:60px 8% 30px;display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:center}footer p{font-size:12px;color:#d0cbbf;margin:0}footer>a:not(.brand){font-size:10px;border-bottom:1px solid #797164}footer small{grid-column:1/-1;color:#bbb4a6;font-size:9px;border-top:1px solid #4b4b43;padding-top:25px}.page-intro{padding:80px 8% 65px;max-width:1000px}.page-intro p{color:var(--muted);max-width:520px}.page-intro.short{padding-bottom:35px}.service-list{padding:0 8%}.service-list article{display:grid;grid-template-columns:60px 1fr 210px;gap:30px;padding:55px 0;border-top:1px solid var(--line)}.service-list h2{font-size:48px}.service-list p{color:var(--muted);max-width:580px;font-size:14px}.faq{max-width:1100px;margin:auto}.faq details{padding:22px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:15px}details p{margin:20px 0 0;color:var(--muted);font-size:14px}.faq #privacidad{padding-top:50px;font-size:13px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:0 8% 65px;align-items:start}.gallery figure{margin:0}.gallery figure:nth-child(2){margin-top:65px}.gallery img{height:440px}.gallery figcaption{font-size:10px;letter-spacing:.5px;margin-top:18px}.booking-page{padding:0 8% 40px}.login{max-width:540px}.login h1{font-size:55px}.login h2{font-size:40px}.owner{padding-top:20px}.availability{padding:30px;background:#e9e3d8;margin:30px 0}.availability p{max-width:650px;font-size:13px}.availability form{display:flex;align-items:end;gap:15px}.availability label{font-size:12px}.availability input{background:var(--cream)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;min-width:700px}td,th{padding:18px 15px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:10px;letter-spacing:1px}.section-heading button,td button{background:none;border:1px solid var(--line);padding:7px 14px}.notice{background:#e9e0ca;border-left:2px solid var(--gold);padding:15px;font-size:13px}.confirmation .textlink{display:block;width:fit-content;margin:25px 0}.confirmation p{font-size:14px}.customer{margin-top:20px}@keyframes reveal{0%{transform:scale(1.06);opacity:0}to{transform:scale(1);opacity:1}}@media(min-width:1200px){.compact{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.compact .booking-title,.compact>.button,.compact>.customer,.compact>.error,.compact>.fine,.compact>label{grid-column:1/-1}.compact>.calendar{grid-row:3/5}.compact>.times{align-content:start}.compact>.calendar+.label{align-self:end}.compact .calendar{margin-top:0}.compact>label:nth-of-type(2){grid-column:2;grid-row:3;margin-top:25px}.compact>.times{grid-row:4;grid-column:2}.compact .customer{margin-top:0}.compact .calendar-grid button{height:32px}}@media(max-width:900px){header{padding:0 5%;height:96px}nav{gap:18px}nav>a:not(.button){display:none}.hero-copy{padding:60px 10%}.hero{min-height:580px}.hero-note{margin-top:35px;font-size:7px;gap:12px}.booking-top{gap:35px;padding:65px 6%;grid-template-columns:.6fr 1fr}.booking-card{padding:24px}.services{grid-template-columns:1fr 1fr;gap:30px}.editorial>div{padding:50px 10%}.gallery img{height:330px}.service-list article{grid-template-columns:35px 1fr 150px;gap:20px}footer{grid-template-columns:1fr 1fr}footer>a:not(.brand){width:fit-content}}@media(max-width:600px){body{font-size:14px}.brand{font-size:32px}.brand span{font-size:7px;letter-spacing:2.1px}header{height:86px}.button.small{font-size:10px;padding:11px 15px}h1{font-size:65px;letter-spacing:-2.3px}.hero{display:flex;flex-direction:column}.hero-copy{padding:45px 7% 35px}.hero-copy p{max-width:310px;font-size:13px}.hero .eyebrow{margin-bottom:22px}.hero-photo{height:390px;order:2}.hero-note{margin-top:30px}.photo-note{font-size:24px;bottom:22px;left:25px}.booking-top{grid-template-columns:1fr;padding:50px 6%;gap:15px}.booking-top h2 br{display:none}.booking-top h2{font-size:46px}.booking-top>div>p{font-size:13px}.booking-card{padding:23px 18px}.eyebrow{font-size:8px}.eyebrow,.ribbon{letter-spacing:2px}.ribbon{font-size:12px}.section{padding:60px 7%}.section-heading{display:block}.section-heading h2{margin-bottom:25px}.services{gap:25px 20px}.services h3{font-size:25px}.price,.services p{font-size:11px}.price span{float:none;display:block;margin-top:6px}.editorial{grid-template-columns:1fr}.editorial img{height:390px}.editorial>div{padding:45px 8%}.cta{padding:65px 7%}footer{grid-template-columns:1fr;gap:27px;padding:45px 7% 25px}footer small{grid-column:1}.page-intro{padding:50px 7% 35px}.service-list{padding:0 7%}.service-list article{grid-template-columns:25px 1fr;gap:15px;padding:35px 0}.service-list article>div:last-child{grid-column:2}.service-list h2{font-size:39px}.service-list p{font-size:13px}.service-list h3{margin-bottom:10px}.gallery{grid-template-columns:1fr;gap:35px;padding:0 7% 30px}.gallery figure:nth-child(2){margin-top:0}.gallery img{height:430px}.booking-page{padding:0 5% 25px}.two{grid-template-columns:1fr;gap:0}.availability{padding:20px}.availability form{flex-wrap:wrap}.calendar-grid button{height:39px}.times button{padding:10px 13px}.owner{padding-top:10px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.skip-link{position:fixed;top:-80px;left:20px;background:var(--ink);color:white;padding:12px 20px;z-index:20}.skip-link:focus{top:10px}.mobile-menu{display:none}.section-lead{max-width:520px;color:var(--muted);margin-bottom:38px}.compare-section{background:#eeeadf}.comparison{min-width:720px}.comparison td:first-child{font-family:var(--heading-font,"Cormorant Garamond"),serif;font-size:26px;width:23%}.comparison td{font-size:13px;padding:26px 12px}.comparison th{color:var(--muted);font-weight:500}.comparison a{border-bottom:1px solid var(--gold);white-space:nowrap}.process{background:var(--ink);color:var(--cream)}.process .eyebrow{color:#d7c4a7}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;margin-top:50px}.process-grid article{border-top:1px solid #696453;padding-top:24px}.process-grid article>span{color:#baa17d;font-size:11px;letter-spacing:2px}.process-grid h3{font-size:30px;margin:25px 0 18px}.process-grid p{font-size:13px;color:#d1cbbf;line-height:1.9}.care-teaser{display:grid;grid-template-columns:1fr 1fr;min-height:500px;background:var(--surface,#eae5db)}.care-teaser>div{padding:70px 15%;align-self:center}.care-teaser p{color:var(--muted);max-width:360px}.care-teaser img{max-height:570px}.detail-hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:580px;border-bottom:1px solid var(--line)}.detail-hero>div{padding:45px 10% 65px 12%;align-self:center}.detail-hero h1{font-size:clamp(55px,5.6vw,84px)}.detail-hero>div>p{font-size:20px;font-family:var(--heading-font,"Cormorant Garamond"),serif;color:var(--muted)}.detail-hero>img{max-height:650px;min-height:100%;object-fit:cover}.breadcrumbs{font-size:10px;color:var(--muted);margin-bottom:40px;line-height:1.8}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.service-facts{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:10px;margin:25px 0 30px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.detail-body{display:grid;grid-template-columns:1fr 300px;gap:10%;align-items:start}.detail-body article{max-width:730px}.detail-body article p,.guide-layout article p{font-size:15px;color:var(--muted);line-height:1.95}.detail-body article h3{margin:40px 0 20px;font-size:34px}.included{padding:0;list-style:none;margin:25px 0}.included li{border-bottom:1px solid var(--line);padding:15px 0 15px 28px;position:relative;color:var(--muted);font-size:14px}.included li:before{content:"✧";position:absolute;left:0;color:var(--gold)}.service-aside{background:var(--surface,#eae5db);border:1px solid var(--line);padding:35px 28px;position:sticky;top:30px}.service-aside h3{font-size:42px}.service-aside p{font-size:13px;color:var(--muted)}.service-aside .button{width:100%;padding:15px 10px}.service-aside small{display:block;font-size:10px;line-height:1.8;margin-top:18px;color:var(--muted)}.detail-faq{padding-top:0}.related{background:var(--surface,#eae5db)}.related .services{grid-template-columns:repeat(3,1fr)}.guide-layout{padding-top:0;display:grid;grid-template-columns:230px 1fr;gap:8%;align-items:start}.guide-layout>aside{position:sticky;top:30px;border-top:1px solid var(--gold);padding-top:25px}.guide-layout>aside>a{display:block;font-size:12px;margin:15px 0;color:var(--muted)}.guide-layout article{max-width:730px}.guide-layout article section{padding:35px 0 45px;border-top:1px solid var(--line);scroll-margin-top:25px}.guide-layout article h3{font-size:32px;margin:30px 0 18px}.guide-layout article .textlink{margin-bottom:15px}.footer-intro{margin-top:25px!important}.footer-links{align-self:start;display:grid;gap:9px}.footer-links .eyebrow{font-size:8px;margin-bottom:12px;color:#c7b797}.footer-links>a{font-size:12px}.footer-links .owner-link{font-size:10px;border-bottom:1px solid #797164;width:fit-content;margin-top:20px}footer{align-items:start;gap:50px;grid-template-columns:1.1fr 1fr 1fr}header nav{gap:24px}.service-list .textlink{margin:10px 0}.comparison td a:hover,.footer-links a:hover{color:var(--gold)}@media(max-width:1000px){header nav>a:not(.button){display:none}.mobile-menu{display:block;position:relative;margin-left:18px}.mobile-menu summary{list-style:none;cursor:pointer;font-size:11px;padding:12px 0}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{margin-left:8px}.mobile-menu nav{position:absolute;display:flex;flex-direction:column;align-items:stretch;right:0;top:48px;background:var(--cream);border:1px solid var(--line);min-width:250px;padding:25px;z-index:10;box-shadow:0 20px 45px #0001;gap:20px}.mobile-menu nav a:not(.button){display:block;font-size:14px}header>.brand{margin-right:auto}.detail-body{grid-template-columns:1fr 260px;gap:6%}.process-grid{gap:22px}.guide-layout{grid-template-columns:180px 1fr;gap:6%}}@media(max-width:700px){.detail-hero{grid-template-columns:1fr}.detail-hero>div{padding:35px 7% 45px}.detail-hero>img{height:390px;min-height:0}.detail-hero h1{font-size:64px}.detail-body{grid-template-columns:1fr;gap:35px}.service-aside{position:static}.process-grid{grid-template-columns:1fr 1fr;gap:25px}.process-grid h3{font-size:28px}.process-grid p{font-size:12px}.care-teaser{grid-template-columns:1fr}.care-teaser>div{padding:50px 7%}.care-teaser img{height:360px}.guide-layout{grid-template-columns:1fr;gap:30px}.guide-layout>aside{position:static}.guide-layout>aside>a{display:inline-block;margin:7px 15px 7px 0}.related .services{grid-template-columns:1fr}.related .services h3{margin-top:10px}.related .services p{font-size:13px}.detail-body article p,.guide-layout article p{font-size:15px}.comparison td{font-size:12px}.comparison td:first-child{font-size:24px}footer{grid-template-columns:1fr 1fr;gap:35px}footer>div:first-child{grid-column:1/-1}.footer-links p{font-size:11px}.comparison{min-width:660px}header{gap:0}header nav .button{padding:10px 12px}.mobile-menu{margin-left:14px}.mobile-menu summary{font-size:10px}header .brand{font-size:29px}header .brand span{font-size:6px;letter-spacing:1.6px}.breadcrumbs{margin-bottom:25px}}.popup-booking .calendar-prompt{font-size:11px;color:var(--muted);margin:14px 0}.calendar-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:9px;margin-top:14px;color:var(--muted)}.calendar-legend span{display:flex;align-items:center;gap:6px}.calendar-legend i{width:6px;height:6px;background:var(--gold);border-radius:50%;display:inline-block}.calendar-legend span+span i{background:#d4d0c7}.popup-booking .calendar-grid button:disabled{color:#8f8b83;background:#efede7;opacity:.42;text-decoration:line-through;cursor:not-allowed}.popup-booking .calendar-grid button:not(:disabled):not(.selected){border-color:#d7c6ab;background:#f7f2e6}.month button:disabled{opacity:.2;cursor:default}.appointment-choice{padding:25px;background:#f1ece2;margin:22px 0}.appointment-choice h3{font-size:36px;margin:12px 0}.appointment-choice p{font-size:12px;color:var(--muted);margin-bottom:12px}.appointment-choice .eyebrow{margin-bottom:15px}.choice-star{font-size:30px;color:var(--gold)}.appointment-choice .chosen-date{font-size:16px;color:var(--ink);text-transform:capitalize}.chosen-date strong{font:40px var(--heading-font,"Cormorant Garamond"),serif;font-weight:400}.text-button{background:none;border:none;border-bottom:1px solid var(--gold);padding:5px 0;color:var(--ink);font-size:12px;cursor:pointer}.booking-error{grid-column:1/-1}.time-dialog{width:min(540px,calc(100% - 30px));max-height:min(85dvh,750px);padding:32px;border:1px solid #c4b08d;background:var(--cream);color:var(--ink);overflow-y:auto;box-shadow:0 30px 100px #0003;animation:timePopup .3s ease-out;margin:auto}.time-dialog::backdrop{background:#171813a8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}body:has(.time-dialog[open]){overflow:hidden}.dialog-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.dialog-top .eyebrow{margin:0}.dialog-close{font:30px/1 Georgia,serif;border:1px solid var(--line);background:none;padding:2px 9px;color:var(--ink)}.time-dialog h2{font-size:43px;margin-bottom:20px}.dialog-date{font-size:16px;text-transform:capitalize;margin-bottom:4px}.dialog-service{font-size:11px;color:var(--muted);margin-bottom:25px}.dialog-times{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:25px;min-height:65px}.dialog-times>div,.dialog-times>p{grid-column:1/-1;color:var(--muted);font-size:13px}.dialog-times>button{border:1px solid var(--line);background:#fcfaf5;padding:11px 8px;color:var(--ink);font-size:13px;transition:background .2s,color .2s,transform .2s}.dialog-times>button:hover{background:var(--ink);color:white;transform:translateY(-2px)}.popup-booking:not(.compact) .appointment-choice{margin-top:15px}.popup-booking .customer{grid-column:1/-1}@media(min-width:1200px){.popup-booking.compact .calendar{grid-column:1;grid-row:3;margin:0}.popup-booking.compact .appointment-choice{grid-column:2;grid-row:3;margin:0 0 18px;align-self:center}.popup-booking.compact .customer{margin-top:20px}.popup-booking.compact>label{margin-bottom:24px}}@media(max-width:600px){.time-dialog{padding:25px 20px}.time-dialog h2{font-size:37px}.dialog-times{grid-template-columns:repeat(3,1fr)}.dialog-times>button{padding:13px 8px}.calendar-legend{font-size:10px}.appointment-choice{padding:20px}.appointment-choice h3 br{display:none}}@keyframes timePopup{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ribbonTravel{to{transform:translateX(-50%)}}@keyframes heroEntrance{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes slowBreathe{0%,to{transform:scale(1.01)}50%{transform:scale(1.045)}}.detail-hero>div,.hero-copy .eyebrow,.hero-copy h1,.hero-copy>.button,.hero-copy>p{animation:heroEntrance .85s both}.hero-copy h1{animation-delay:.1s}.hero-copy>p{animation-delay:.22s}.hero-copy>.button{animation-delay:.34s}.hero-photo img{animation:reveal 1.2s ease,slowBreathe 18s ease-in-out 1.2s infinite}.motion-ready .scroll-reveal{opacity:0;transform:translateY(32px);transition:opacity .8s ease var(--reveal-delay,0s),transform .8s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0s)}.motion-ready .scroll-reveal.is-visible{opacity:1;transform:translateY(0)}.moving-ribbon{display:flex;align-items:center;gap:22px;background:var(--ink);color:#e1d2ba;padding:19px 25px;overflow:hidden}.ribbon-window{overflow:hidden;flex:1 1;min-width:0}.ribbon-track{display:flex;width:max-content;animation:ribbonTravel 32s linear infinite;font:16px var(--heading-font,"Cormorant Garamond"),serif;letter-spacing:4px}.ribbon-track span{white-space:pre;padding-right:28px}.moving-ribbon>button{flex:none;font:10px var(--body-font,"DM Sans"),sans-serif;background:transparent;color:#e1d2ba;border:1px solid #807462;padding:7px 12px}.moving-ribbon.is-paused .ribbon-track,.moving-ribbon:focus-within .ribbon-track,.moving-ribbon:hover .ribbon-track{animation-play-state:paused}.services>a{transition:border-color .3s,background .3s,transform .3s}.services>a:hover{transform:translateY(-5px);border-color:var(--ink)}.gallery figure img{transition:transform .65s ease;clip-path:inset(0)}.gallery figure:hover img{transform:scale(1.025)}.calendar-grid button:not(:disabled){transition:background .2s,transform .2s}.calendar-grid button:hover:not(:disabled){transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .scroll-reveal{opacity:1;transform:none}.ribbon-track{transform:none!important}.hero-photo img{transform:none}.moving-ribbon>button{display:none}}.owner-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;margin-bottom:30px}.owner-toolbar p{text-transform:capitalize;margin:0}.owner-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin-bottom:40px;gap:10px}.owner-tabs button{background:transparent;border:0;border-bottom:3px solid transparent;color:var(--muted);padding:20px;font-size:15px;text-align:left;transition:background .2s}.owner-tabs button[aria-selected=true]{border-color:var(--gold);color:var(--ink);background:var(--surface,#eae5db)}.owner-panel{margin-bottom:45px;background:#fcfaf5;border:1px solid var(--line);padding:35px}.owner-panel h2{font-size:46px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.count-badge{font-size:11px;padding:7px 14px;background:var(--surface,#eae5db)}.appointment-list{display:grid;gap:15px}.appointment-item{display:grid;grid-template-columns:85px 1fr auto;gap:20px;padding:25px 0;border-top:1px solid var(--line)}.appointment-time>span{font:35px var(--heading-font,"Cormorant Garamond"),serif}.appointment-time small{display:block;font-size:11px;color:var(--muted)}.appointment-person h3{font-size:30px;margin:10px 0 8px}.appointment-person p{margin:0 0 10px;font-size:13px}.appointment-person a{font-size:12px}.appointment-person small{display:block;color:var(--muted);font-size:10px;margin-top:10px}.appointment-day{font-size:10px;color:var(--gold);text-transform:capitalize;letter-spacing:.5px}.appointment-actions p{font-size:12px}.appointment-actions .text-button{display:block;margin:8px 0}.appointment-item.cancelled{opacity:.55}.danger-button{background:#793c32;color:white;border:0;padding:10px 15px;font-size:12px}.empty-state{padding:25px;background:#f0ece3;font-size:13px;color:var(--muted)}.success-message{padding:15px;border-left:3px solid #6d7758;background:#e9eddf;font-size:13px}.weekly-hours{margin:30px 0}.weekly-row{display:grid;grid-template-columns:110px 1fr 135px 20px 135px;gap:20px;align-items:center;border-top:1px solid var(--line);padding:20px 0}.weekly-row>span:first-child{font-size:14px}.weekly-row label{font-size:11px}.weekly-row input{padding:10px}.weekly-row .day-off-toggle{display:flex;gap:8px;align-items:center;font-size:12px}.day-off-toggle input{width:16px;margin:0;accent-color:var(--ink)}.weekly-row.day-off input[type=time]{opacity:.3}.hours-dash{padding-top:25px;color:var(--muted)}.special-dates>p{font-size:14px;color:var(--muted)}.special-dates form{max-width:650px}.special-dates .two label,.special-dates form>label{display:block;font-size:12px}.block-mode{margin:25px 0;padding:15px 0;border:0}.block-mode legend{font-size:12px;margin-bottom:10px}.block-mode label{display:inline-flex;align-items:center;gap:8px;margin:0 25px 8px 0;font-size:13px}.block-mode input{width:16px;margin:0;accent-color:var(--ink)}.special-dates form>.button{margin-top:20px}.date-blocks{margin-top:40px}.date-blocks h3{font-size:30px}.block-item{padding:20px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.block-item span{font-size:13px;text-transform:capitalize}.block-item small{font-size:11px;color:var(--muted);display:block}.owner button:disabled{opacity:.45;cursor:wait}@media(max-width:900px){.weekly-row{grid-template-columns:100px 1fr 110px 10px 110px;gap:12px}.weekly-row input{padding:8px}.owner-panel{padding:25px}}@media(max-width:600px){.owner-panel{padding:20px 16px}.owner-panel h2{font-size:39px}.owner-tabs button{padding:16px 10px;font-size:12px}.owner-toolbar{align-items:flex-start}.owner-toolbar p{max-width:200px}.weekly-row{grid-template-columns:1fr 20px 1fr;gap:12px}.weekly-row>span:first-child{grid-column:1}.weekly-row .day-off-toggle{grid-column:2/4;justify-self:end}.weekly-row>label:nth-of-type(2){grid-column:1}.weekly-row>label:nth-of-type(3){grid-column:3}.weekly-row .hours-dash{grid-column:2;text-align:center}.appointment-item{grid-template-columns:65px 1fr;gap:15px}.appointment-time>span{font-size:28px}.appointment-actions{grid-column:2}.appointment-person h3{font-size:26px}.panel-heading{display:block}.count-badge{display:inline-block;margin-bottom:20px}.block-item{align-items:flex-start}.block-item .text-button{font-size:10px;white-space:nowrap}.owner-tabs{margin-bottom:25px}}.choice-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:20px}.choice-actions .button{font-size:11px;padding:13px 17px}.details-dialog{max-width:580px}.details-dialog h2{font-size:48px;line-height:1.02;margin-bottom:23px}.details-summary{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:22px}.details-summary>span{font-family:var(--heading-font,"Cormorant Garamond"),serif;font-size:26px}.details-summary p{font-size:13px;text-transform:capitalize;margin:6px 0}.details-summary small{font-size:11px;color:var(--muted)}.details-fields{border:0;padding:0;margin:0;min-width:0}.details-dialog .customer{margin:0}.details-dialog label{font-size:12px;margin-bottom:16px}.details-dialog input{background:#fcfaf5;font-size:14px}.details-dialog .two{gap:12px}.details-dialog .check{font-size:11px!important}.details-dialog .back-to-times{margin-top:22px}.details-dialog .button{margin-top:8px}.booking-flow-note{grid-column:1/-1;border-top:1px solid var(--line);padding-top:17px;margin-top:20px;font-size:10px}body:has(.details-dialog[open]){overflow:hidden}@media(max-width:600px){.details-dialog h2{font-size:43px}.details-dialog .two{grid-template-columns:1fr}.details-dialog label{margin-bottom:14px}.details-dialog{max-height:90dvh}.booking-flow-note{font-size:9px}}.owner-tabs{grid-template-columns:1fr 1fr 1fr}.service-editor-list{display:grid;grid-template-columns:1fr 1fr;gap:25px}.service-editor{padding:24px;border:1px solid var(--line);background:var(--cream)}.service-editor-title{display:flex;gap:15px;align-items:baseline;margin-bottom:22px}.service-editor-title h3{font-size:28px;margin:0}.new-service fieldset,.service-editor fieldset{margin:0;padding:0;border:0;min-width:0}.buffer-form label,.new-service label,.service-editor label{display:block;font-size:12px;margin-bottom:18px}.buffer-form input,.new-service input,.service-editor input{background:#fcfaf5}.new-service textarea,.service-editor textarea{width:100%;display:block;margin-top:7px;border:1px solid var(--line);padding:12px;font:14px/1.6 var(--body-font,"DM Sans"),sans-serif;resize:vertical;background:#fcfaf5;color:var(--ink)}.service-editor .button{padding:13px 18px;font-size:11px}.buffer-form{max-width:620px}.buffer-form input{max-width:220px;display:block}.buffer-example{padding:18px;background:#eee7d8;border-left:2px solid var(--gold);font-size:13px}.settings-note{font-size:12px;color:var(--muted);margin-bottom:25px}.new-service form{max-width:620px}.new-service>p{font-size:14px;color:var(--muted)}.booking-price{font-size:12px;color:var(--muted)}@media(max-width:800px){.service-editor-list{grid-template-columns:1fr}.owner-tabs button{font-size:12px;padding:17px 12px}}@media(max-width:600px){.owner-tabs{gap:4px}.owner-tabs button{padding:15px 6px;font-size:11px}.service-editor{padding:20px 15px}.service-editor-title h3{font-size:26px}}.salon-logo{width:auto;max-width:220px;max-height:50px;object-fit:contain}.admin-form label{display:block}.admin-form fieldset{border:0;padding:0}.admin-form input:not([type=checkbox]),.admin-form select,.admin-form textarea{width:100%;padding:10px;border:1px solid var(--line);background:transparent;color:inherit}.admin-form input[type=color]{height:45px}.admin-form .two{gap:20px;margin-bottom:16px}.admin-form h3{margin-top:30px}.staff-assignment{display:flex;align-items:end;gap:10px;margin:12px 0}.staff-assignment label{font-size:11px;display:grid;gap:4px}.staff-assignment input{max-width:210px;padding:7px;background:transparent;border:1px solid var(--line);color:inherit}