@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--brown:#5b2c22;--brown-dark:#3d1d17;--cream:#fff8ef;--peach:#f3dfcc;--ink:#30221e;--muted:#766963}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{font-family:'DM Sans',sans-serif;color:var(--ink);background:#fff}a{color:inherit}.navbar{background:rgba(255,250,244,.96);backdrop-filter:blur(12px);box-shadow:0 3px 20px rgba(62,31,22,.07);padding:13px 0}.navbar-brand{font-family:'Playfair Display',serif;font-size:24px;font-weight:700;color:var(--brown);line-height:1}.navbar-brand em,.footer-brand em{font-weight:500}.navbar-brand small{display:block;font:600 8px 'DM Sans',sans-serif;letter-spacing:2.5px;margin-top:6px;color:#9b7768}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--brown);color:#fff;font-size:20px}.nav-link{font-size:14px;font-weight:600;color:#49342d!important}.nav-link:hover{color:#a65f43!important}.btn{border-radius:4px;font-weight:700}.btn-brown{background:var(--brown);color:#fff;border:1px solid var(--brown)}.btn-brown:hover{background:var(--brown-dark);border-color:var(--brown-dark);color:#fff}.btn-cream{background:var(--cream);color:var(--brown);border:1px solid var(--cream)}.btn-cream:hover{background:#f1ddc8;color:var(--brown)}.hero-section{position:relative;background:url('https://images.unsplash.com/photo-1550617931-e17a7b70dce2?auto=format&fit=crop&w=2000&q=90') center 52%/cover no-repeat;color:#fff;overflow:hidden}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(39,19,14,.88) 0%,rgba(39,19,14,.67) 47%,rgba(39,19,14,.12) 100%)}.min-vh-hero{min-height:660px}.eyebrow{display:inline-block;font-size:11px;font-weight:700;letter-spacing:2.5px;color:#a66b50;margin-bottom:18px}.hero-section .eyebrow{color:#f1c9a9}.hero-section h1{font:600 clamp(3rem,6vw,5.5rem)/1.06 'Playfair Display',serif;letter-spacing:-1.5px;margin:0 0 22px}.hero-section h1 span{font-style:italic;color:#f2c7a5}.hero-copy{max-width:510px;color:#f6e9df;font-size:17px;line-height:1.8}.hero-note{font-size:13px;color:#f7e8dc}.hero-note span{color:#f3c7a2;margin-right:8px}.hero-stamp{position:absolute;right:9%;bottom:12%;width:116px;height:116px;border:1px solid rgba(255,255,255,.8);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font:italic 15px 'Playfair Display',serif;transform:rotate(9deg);background:rgba(91,44,34,.35)}.hero-stamp i{color:#f2c7a5;margin-bottom:5px}.trust-strip{background:var(--cream);padding:24px 0;border-bottom:1px solid #f0e5da}.trust-strip .row>div{font-size:13px;font-weight:700;color:#614238}.trust-strip i{font-size:20px;color:#a66b50;margin-right:9px;vertical-align:middle}.section-pad{padding:100px 0}.about-section{background:#fff}.about-photo-wrap{position:relative;padding:0 38px 38px 0}.about-photo{width:100%;height:470px;object-fit:cover;border-radius:3px}.about-photo-wrap:after{content:"";position:absolute;z-index:0;right:0;bottom:0;width:65%;height:70%;border:1px solid #d7b49b;z-index:-1}.photo-caption{position:absolute;right:0;bottom:0;background:var(--brown);color:#fff;padding:19px 25px;font:italic 18px 'Playfair Display',serif}.photo-caption strong{font-size:23px}.section-title{font:600 clamp(2.3rem,4vw,3.5rem)/1.15 'Playfair Display',serif;color:var(--brown-dark);margin:0 0 22px}.section-title em{color:#a66b50}.section-copy{font-size:15px;line-height:1.9;color:var(--muted);max-width:540px}.text-link{display:inline-block;margin-top:16px;color:var(--brown);font-weight:700;text-decoration:none;border-bottom:1px solid #c79d82;padding-bottom:7px}.specialties-section{background:#fbf5ee}.section-heading .section-copy{max-width:560px}.treat-card{height:100%;background:#fff;box-shadow:0 10px 35px rgba(66,37,25,.07);transition:transform .25s,box-shadow .25s}.treat-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(66,37,25,.13)}.treat-card img{width:100%;height:260px;object-fit:cover}.treat-info{padding:25px 25px 28px}.treat-info span{font-size:9px;letter-spacing:1.7px;font-weight:700;color:#a66b50}.treat-info h3{font:600 25px 'Playfair Display',serif;color:var(--brown);margin:9px 0}.treat-info p{font-size:13px;line-height:1.7;color:var(--muted);margin:0}.quote-section{padding:78px 0;background:var(--brown);color:#fff}.quote-icon{font-size:40px;color:#e5b997}.quote-section h2{font:italic 38px 'Playfair Display',serif;margin:10px 0}.quote-section p{color:#e6cbb9;font-size:13px;letter-spacing:1px}.contact-section{background:#fff}.contact-detail{display:flex;gap:16px;margin-top:25px}.contact-detail>span{width:43px;height:43px;flex:0 0 43px;border-radius:50%;background:var(--cream);display:grid;place-items:center;color:var(--brown);font-size:18px}.contact-detail small{font-size:9px;letter-spacing:1.6px;font-weight:700;color:#a66b50}.contact-detail p{margin:5px 0 0;color:#55453e;font-size:14px;line-height:1.7}.contact-detail a{text-decoration:none}.map-link{display:inline-block;margin:24px 0 0 59px;color:var(--brown);font-size:13px;font-weight:700;text-decoration:none}.contact-form-card{background:var(--cream);padding:38px;border:1px solid #f0e2d5}.contact-form-card h3{font:600 30px 'Playfair Display',serif;color:var(--brown);margin-bottom:7px}.contact-form-card>p{font-size:13px;color:var(--muted);margin-bottom:25px}.form-label{font-size:12px;font-weight:700;color:#59443b}.form-control,.form-select{border:1px solid #e6d6c9;border-radius:3px;padding:12px 13px;font-size:13px;background:#fff}.form-control:focus,.form-select:focus{border-color:#a66b50;box-shadow:0 0 0 .2rem rgba(166,107,80,.13)}textarea.form-control{resize:vertical}.privacy-note{display:block;color:#8a7a70;font-size:10px;text-align:center;margin-top:12px;line-height:1.5}.form-status{font-size:12px;margin-top:10px;color:#9b2f24}.seo-section{background:#f7eee5;padding:58px 0}.seo-section h2{font:600 27px 'Playfair Display',serif;color:var(--brown);margin-bottom:12px}.seo-section p{font-size:13px;line-height:1.8;color:#75665e;max-width:1000px}.keyword-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.keyword-list span{font-size:11px;color:#68483b;background:#fff;border:1px solid #ead8c9;padding:8px 12px;border-radius:30px}.site-footer{background:#2d1a16;color:#e9d9ce;padding:55px 0 22px}.footer-brand{font:600 30px 'Playfair Display',serif;color:#fff;text-decoration:none}.site-footer p{font-size:12px;color:#c7afa2}.site-footer .footer-brand+p{margin-top:8px}.footer-address{margin:6px 0}.footer-address i{color:#d7a987;margin-right:8px}.footer-address a{color:#e9d9ce;text-decoration:none}.social-link{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid #80645a;border-radius:50%;color:#fff;text-decoration:none;margin-left:7px}.social-link:hover{background:#fff;color:var(--brown)}.site-footer hr{border-color:#71554a;margin:30px 0 18px}.footer-bottom{font-size:11px;color:#bda69a}.footer-bottom a{color:#f1c39e;text-decoration:none;font-weight:700}.floating-actions{position:fixed;right:20px;bottom:22px;z-index:1000;display:flex;flex-direction:column;gap:12px}.floating-actions a{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff;text-decoration:none;font-size:23px;box-shadow:0 5px 18px rgba(0,0,0,.22);transition:transform .2s}.floating-actions a:hover{transform:scale(1.08)}.float-call{background:#5b2c22}.float-wa{background:#20b85a}
@media(max-width:991.98px){.navbar-nav{padding:15px 0}.min-vh-hero{min-height:590px}.hero-stamp{right:5%;bottom:8%}.section-pad{padding:75px 0}.about-photo{height:410px}}
@media(max-width:575.98px){.hero-section{background-position:58% center}.hero-shade{background:linear-gradient(90deg,rgba(39,19,14,.88),rgba(39,19,14,.55))}.min-vh-hero{min-height:610px}.hero-section h1{font-size:3.25rem}.hero-copy{font-size:15px}.hero-stamp{width:88px;height:88px;right:18px;bottom:20px;font-size:12px}.trust-strip .row>div{font-size:11px}.trust-strip i{display:block;margin:0 0 5px;font-size:19px}.section-pad{padding:65px 0}.about-photo-wrap{padding:0 22px 24px 0}.about-photo{height:330px}.photo-caption{padding:13px 17px;font-size:14px}.photo-caption strong{font-size:19px}.treat-card img{height:230px}.quote-section h2{font-size:29px}.contact-form-card{padding:25px 19px}.contact-form-card h3{font-size:26px}.seo-section{padding:45px 0}.floating-actions{right:13px;bottom:14px}.floating-actions a{width:48px;height:48px}}
