@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600&display=swap";*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{color:#153e34;background:#f8f7f3;margin:0;font:16px/1.6 DM Sans,Arial,sans-serif}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.045em;font-family:Manrope,Arial,sans-serif;font-weight:500;line-height:1.15}h1{font-size:clamp(2.8rem,4.9vw,4.8rem)}h2{font-size:clamp(2.2rem,3.5vw,3.4rem)}h3{font-size:1.55rem}p{color:#55695e}header{justify-content:space-between;align-items:center;gap:20px;max-width:1320px;margin:auto;padding:27px 5%;display:flex}.logo{letter-spacing:-.07em;font:3rem/.8 Georgia,serif;text-decoration:none;display:inline-block}.logo span{letter-spacing:.28em;text-align:center;margin-top:14px;font:600 .7rem/1.2 Arial,sans-serif;display:block}nav{align-items:center;gap:35px;display:flex}nav a{font-size:.9rem;text-decoration:none}.button{color:#fff;background:#153e34;border:1px solid #153e34;border-radius:4px;justify-content:center;align-items:center;min-height:52px;padding:16px 26px;font-weight:500;text-decoration:none;display:inline-flex}.button:hover{background:#2c5645}.button:disabled{opacity:.6;cursor:wait}.button.small{min-height:44px;padding:10px 20px}.hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:5%;max-width:1320px;margin:auto;padding:45px 5% 65px;display:grid}.eyebrow{letter-spacing:.2em;color:#57786a;margin-bottom:24px;font-size:.75rem;font-weight:600}.hero em{letter-spacing:-.04em;color:#6b8054;font-family:Georgia,serif;font-weight:400}.lead{max-width:465px;margin:30px 0;font-size:1.05rem}.hero-note{margin-top:20px;font-size:.875rem}.hero-image{background:#293e31;border-radius:180px 180px 5px 5px;height:535px;position:relative;overflow:hidden}.hero-image img{object-fit:cover;filter:brightness(.75);width:100%;height:100%}.hero-image span{color:#fff;font:1.6rem/1.3 Georgia,serif;position:absolute;bottom:25px;left:25px;right:20px}.promise{border-block:1px solid #d9dfd4;justify-content:center;gap:12%;padding:25px 5%;font-size:.9rem;display:flex}.promise span:before{content:"✧";color:#80916a;margin-right:13px}.section{max-width:1190px;margin:auto;padding:95px 35px}.section-heading{grid-template-columns:1fr 1fr;align-items:end;gap:14%;margin-bottom:45px;display:grid}.section-heading p:last-child{max-width:410px}.treatments{grid-template-columns:1fr 1fr;gap:25px;display:grid}.treatment{background:#eeeee6;border-radius:6px;padding:35px}.card-top{letter-spacing:.1em;justify-content:space-between;gap:15px;margin-bottom:40px;font-size:.7rem;display:flex}.treatment h3{margin-bottom:18px;font-size:2rem}.treatment p{max-width:390px;min-height:76px}.card-bottom{border-top:1px solid #cbd1c4;justify-content:space-between;align-items:center;gap:10px;margin-top:30px;padding-top:25px;display:flex}.card-bottom strong{font-size:2rem;font-weight:400}.card-bottom a{font-size:.875rem}.dark{color:#fff;background:#153e34}.dark p,.dark .card-top{color:#ccd8c9}.dark .card-bottom{border-color:#476457}.how{border-top:1px solid #d9dfd4;grid-template-columns:1fr 1fr;gap:10%;display:grid}.how ol{margin:0;padding:0;list-style:none}.how li{border-bottom:1px solid #d9dfd4;gap:25px;margin-bottom:26px;padding-bottom:26px;display:flex}.how b{color:#8c9d73;font-size:1.15rem;font-weight:400}.how h3{margin-bottom:8px;font-size:1.2rem}.booking{background:#e8ede4;grid-template-columns:1fr 1fr;gap:9%;max-width:none;padding:90px max(5%,50vw - 560px);display:grid}.booking>div>p{max-width:380px;margin-top:24px}.booking-note{color:#566b5c;border-top:1px solid #c7d2c0;max-width:365px;margin-top:50px;padding-top:22px;font-size:.875rem}.booking-form{background:#fff;border-radius:8px;align-self:start;padding:35px;box-shadow:0 15px 55px #24382208}.booking-form h3{margin-bottom:25px}.booking-form p{margin:15px 0}.booking-form label{flex-direction:column;gap:7px;margin-bottom:18px;font-size:.875rem;font-weight:500;display:flex}.booking-form input:not([type=radio]):not([type=checkbox]){color:#203e31;background:#fafbf8;border:1px solid #cbd4ca;border-radius:4px;width:100%;min-width:0;min-height:48px;padding:13px 12px}.booking-form fieldset{border:0;margin:0 0 24px;padding:0}.booking-form legend{margin-bottom:10px;font-size:.875rem}.duration-options{grid-template-columns:1fr 1fr;gap:12px;display:grid}.duration-options label{cursor:pointer;border:1px solid #cbd4ca;border-radius:4px;margin:0;padding:14px;position:relative}.duration-options label.selected{background:#f2f6ed;border:2px solid #204b3c;padding:13px}.duration-options input{accent-color:#204b3c;position:absolute;top:17px;right:12px}.duration-options strong{font-size:.875rem}.duration-options span{color:#6a7a68}.field-row{grid-template-columns:1fr 1fr;gap:15px;display:grid}.booking-form .checkbox{flex-direction:row;align-items:flex-start;gap:12px;font-weight:400;line-height:1.45}.checkbox input{accent-color:#204b3c;margin-top:4px}.full{width:100%}.form-note{text-align:center;font-size:.75rem}.error{color:#a43632;margin:12px 0;font-size:.9rem}.error:empty{display:none}.muted{color:#617263;font-size:.875rem}.faq{max-width:950px}.faq h2{margin-bottom:35px}.faq details{border-bottom:1px solid #d3dacf;padding:20px 0}.faq summary{cursor:pointer;font-size:1.05rem}.faq details p{max-width:680px;margin-top:12px}footer{color:#eaf0e2;background:#153e34;justify-content:space-between;align-items:center;gap:30px;padding:50px 6%;display:flex}footer p{color:#c5d3c3;font-size:.9rem}footer>a:last-child{font-size:.875rem}.admin{max-width:1100px;margin:auto;padding:40px 25px}.admin>.logo{margin-bottom:45px}.admin h1{margin-bottom:20px;font-size:3rem}.admin-tabs{flex-wrap:wrap;gap:10px;margin:30px 0;display:flex}.admin-tabs button,.admin-actions>button:not(.button){background:#fff;border:1px solid #bccabb;border-radius:4px;padding:10px 16px}.admin-tabs .active{color:#fff;background:#153e34}.admin-card{background:#fff;border:1px solid #d8ded3;border-radius:7px;justify-content:space-between;gap:25px;margin-bottom:18px;padding:25px;display:flex}.admin-card h3{margin:10px 0}.admin-card p{margin:5px 0}.admin-actions{flex-direction:column;justify-content:center;gap:10px;display:flex}.status{background:#f7ebcf;border-radius:4px;padding:4px 9px;font-size:.75rem}.status.confirmed{background:#deeddf}.status.declined{background:#f6dddd}.empty{text-align:center;background:#fff;border-radius:7px;padding:50px}:is(a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible){outline-offset:4px;outline:3px solid #b98746}@media (max-width:800px){header{padding:22px 6%}nav{gap:12px}nav>a:not(.button){display:none}.hero{grid-template-columns:1fr;gap:35px;padding:35px 6% 45px}.hero h1{font-size:clamp(2.5rem,8vw,4.5rem)}.hero-image{border-radius:140px 140px 5px 5px;height:380px}.lead{margin:23px 0}.promise{flex-wrap:wrap;gap:15px;font-size:.8rem}.section{padding:60px 6%}.section-heading,.treatments,.how,.booking{grid-template-columns:1fr;gap:30px}.section-heading{gap:20px}.treatment{padding:27px}.booking{padding:60px 6%}.booking-note{margin-top:25px}.booking-form{padding:24px}.faq{padding:60px 6%}footer{text-align:center;flex-direction:column;padding:40px 6%}.admin-card{flex-direction:column}.admin-actions{flex-flow:wrap}.hero-image span{font-size:1.4rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.treatments{grid-template-columns:repeat(3,minmax(0,1fr))}.treatment{padding:28px}.card-top{flex-direction:column;gap:8px;min-height:52px}.treatment h3{min-height:65px;font-size:1.7rem}.treatment p{min-height:115px}.card-bottom{flex-wrap:wrap}.duration-options{grid-template-columns:repeat(3,minmax(0,1fr))}.duration-options label{padding:33px 10px 12px}.duration-options label.selected{padding:32px 9px 11px}.duration-options input{top:10px;right:10px}.cards-section{padding-top:0}.price-table{overflow-x:auto}table{border-collapse:collapse;text-align:left;background:#eeeee6;border-radius:6px;width:100%}th,td{border-bottom:1px solid #d3dacf;padding:22px 25px}thead th{color:#55695e;font-size:.875rem;font-weight:500}tbody th{font-weight:500}tbody td:last-child{color:#153e34;font-size:1.15rem}tbody tr:last-child>*{border-bottom:0}@media (max-width:950px){.treatments{grid-template-columns:1fr}.treatment h3,.treatment p{min-height:0}.card-top{flex-direction:row;min-height:0}.card-bottom{flex-wrap:nowrap}}@media (max-width:500px){.duration-options{grid-template-columns:1fr}.duration-options label,.duration-options label.selected{flex-direction:row;justify-content:space-between;padding:12px 40px 12px 12px}.duration-options input{top:17px;right:12px}th,td{padding:16px 12px;font-size:.875rem}tbody td:last-child{font-size:1rem}.cards-section{padding-top:0}}.booking-form select{font:inherit;color:#203e31;background:#fafbf8;border:1px solid #cbd4ca;border-radius:4px;width:100%;min-width:0;min-height:48px;padding:13px 12px}.booking-form select:focus-visible{outline-offset:4px;outline:3px solid #b98746}.availability-note{border-left:2px solid #7b916b;padding-left:12px;font-size:.875rem;margin-bottom:25px!important}.contact{border-bottom:1px solid #d9dfd4;grid-template-columns:1fr 1fr;gap:10%;display:grid}.contact>div>p{max-width:390px;margin:25px 0}.contact-details{gap:25px;display:grid}.contact-details h3{margin-bottom:8px;font-size:1.1rem}.contact-details a{font-size:.9rem}.contact-details p{margin:0}.opening-note{font-size:.95rem}.opening-note strong{color:#153e34;font-weight:500}@media (max-width:800px){.contact{grid-template-columns:1fr;gap:35px}}.hero-image img{filter:none;object-position:center 55%}.hero-image span{text-shadow:0 2px 8px #000}
