@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap";html{scroll-behavior:smooth}body{color:#29251f;background:#faf8f4;min-width:320px;margin:0;font-family:DM Sans,Arial,sans-serif}button,input,textarea,select{font:inherit}a{-webkit-tap-highlight-color:transparent}#root{width:100%}.website{color:#29251f;background:#faf8f4;width:100%;overflow:hidden}.header{background:#faf8f4;justify-content:space-between;align-items:center;height:86px;padding:0 7%;display:flex}.logo{color:#29251f;flex-direction:column;line-height:1;text-decoration:none;display:flex}.logo-mark{letter-spacing:2px;font-family:Georgia,serif;font-size:29px}.logo-name{letter-spacing:5px;text-align:center;margin-top:5px;font-size:10px}.navigation{align-items:center;gap:34px;display:flex}.navigation a{color:#514a41;font-size:13px;text-decoration:none}.navigation a:hover{color:#a98753}.header-button,.primary-button{color:#fff;letter-spacing:.5px;background:#302a24;justify-content:center;align-items:center;gap:18px;padding:15px 23px;font-size:12px;text-decoration:none;transition:background .2s;display:inline-flex}.header-button:hover,.primary-button:hover{background:#9b7950}.hero{background:#f0ebe3;grid-template-columns:1fr 1fr;min-height:570px;display:grid}.hero-content{flex-direction:column;justify-content:center;align-items:flex-start;padding:100px 10% 85px 14%;display:flex}.eyebrow{color:#a17d4d;letter-spacing:3px;font-size:10px;font-weight:600}.hero h1{margin:22px 0;font-family:Georgia,serif;font-size:clamp(42px,5vw,66px);font-weight:400;line-height:1.1}.hero-description{color:#71695f;max-width:390px;margin-bottom:30px;font-size:14px;line-height:1.9}.hero-note{color:#8b8175;margin-top:23px;font-size:11px;font-style:italic}.hero-image{background:linear-gradient(#0000 52%,#231a146b),url(https://images.unsplash.com/photo-1604654894610-df63bc536371?auto=format&fit=crop&w=1200&q=85) 50%/cover;min-height:570px;position:relative}.image-caption{color:#fff;flex-direction:column;gap:9px;display:flex;position:absolute;bottom:38px;left:40px}.image-caption span:first-child{letter-spacing:3px;font-family:Georgia,serif;font-size:25px}.image-caption span:last-child{letter-spacing:3px;font-size:9px}.welcome-section,.services-section,.booking-section{text-align:center;padding:95px 8%}.welcome-section h2,.services-section h2,.booking-section h2{margin:15px 0;font-family:Georgia,serif;font-size:39px;font-weight:400}.welcome-section>p:last-child{color:#766f65;max-width:620px;margin:18px auto 0;font-size:14px;line-height:1.9}.services-section{background:#f0ebe3}.section-description{color:#766f65;font-size:14px}.service-grid{grid-template-columns:repeat(3,1fr);gap:22px;max-width:1000px;margin:45px auto 0;display:grid}.service-card{text-align:left;background:#faf8f4;border:1px solid #e5ddd1;padding:35px 25px}.service-number{color:#a17d4d;font-family:Georgia,serif;font-size:23px}.service-card h3{margin:22px 0 10px;font-family:Georgia,serif;font-size:23px;font-weight:400}.service-card p{color:#766f65;font-size:13px;line-height:1.8}.booking-section{padding-top:100px;padding-bottom:100px}.booking-section>p:not(.eyebrow):not(.booking-note){color:#766f65;margin-bottom:28px}.booking-note{color:#918779;margin-top:20px;font-size:11px}.footer{color:#f8f4ed;text-align:center;background:#302a24;padding:45px 20px}.footer-logo{font-family:Georgia,serif;font-size:27px}.footer p{color:#d0c5b7;font-size:12px}.footer .copyright{color:#a99d8e;margin-top:28px;font-size:10px}@media (width<=750px){.header{flex-wrap:wrap;gap:15px;height:auto;min-height:75px;padding:16px 5%}.navigation{order:3;justify-content:center;gap:20px;width:100%}.navigation a{font-size:11px}.header-button{padding:12px;font-size:10px}.hero{grid-template-columns:1fr}.hero-content{padding:75px 8%}.hero-image{min-height:390px}.service-grid{grid-template-columns:1fr}.welcome-section,.services-section,.booking-section{padding:70px 7%}.welcome-section h2,.services-section h2,.booking-section h2{font-size:32px}}.booking-container{width:100%;max-width:650px;margin:0 auto}.booking-intro{color:#766f65;max-width:520px;margin:15px auto 35px;font-size:14px;line-height:1.8}.booking-form{text-align:left;background:#fffdfa;border:1px solid #e5ddd1;padding:35px}.form-group{flex-direction:column;flex:1;gap:9px;margin-bottom:22px;display:flex}.form-group label{color:#302a24;font-size:12px;font-weight:600}.form-group input{color:#302a24;background:#faf8f4;border:1px solid #ded6ca;outline:none;width:100%;min-height:48px;padding:12px 14px}.form-group input:focus{border-color:#a17d4d}.form-group input::placeholder{color:#aaa095;font-size:12px}.form-row{gap:18px;display:flex}.booking-submit{color:#fff;cursor:pointer;letter-spacing:.5px;background:#302a24;border:none;width:100%;min-height:52px;font-size:13px}.booking-submit:hover{background:#9b7950}.booking-privacy{color:#8b8175;text-align:center;margin:18px 0 0;font-size:11px;line-height:1.7}@media (width<=600px){.booking-form{padding:22px 17px}.form-row{flex-direction:column;gap:0}}*{box-sizing:border-box}.admin-page{color:#302820;background:#f7f4ef;min-height:100vh;padding:40px;font-family:Arial,sans-serif}.admin-loading{color:#55483c;background:#f7f4ef;place-items:center;min-height:100vh;font-size:15px;display:grid}.admin-login{background:#fffdfa;border:1px solid #e8ded1;border-radius:5px;width:min(100%,430px);margin:8vh auto;padding:42px;box-shadow:0 12px 40px #3728190f}.admin-eyebrow{color:#a17b50;letter-spacing:4px;margin-bottom:14px;font-size:11px;font-weight:700}.admin-login h1,.admin-header h1{margin:0 0 12px;font-family:Georgia,serif;font-size:34px;font-weight:400}.admin-description{color:#82786e;margin-bottom:28px;font-size:14px;line-height:1.6}.admin-login label{margin:20px 0 8px;font-size:13px;font-weight:600;display:block}.admin-login input,.admin-search{color:#302820;background:#fff;border:1px solid #dfd4c7;border-radius:3px;outline:none;width:100%;padding:13px 14px;font-size:14px}.admin-login input:focus,.admin-search:focus{border-color:#a17b50;box-shadow:0 0 0 2px #a17b501f}.admin-primary-button,.admin-secondary-button{cursor:pointer;border:none;padding:12px 20px;font-size:13px;font-weight:600;transition:all .2s}.admin-primary-button{color:#fff;background:#302820;width:100%;margin-top:26px}.admin-primary-button:hover{background:#806443}.admin-secondary-button{color:#40352a;background:#eee7de;border-radius:3px}.admin-secondary-button:hover{background:#dfd1c0}.admin-error{color:#a43e31;overflow-wrap:anywhere;background:#fff0ed;margin-top:16px;padding:12px;font-size:13px;line-height:1.5}.admin-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:36px;display:flex}.admin-header .admin-description{margin:0}.admin-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:30px;display:grid}.admin-stat-card{background:#fffdfa;border:1px solid #e8ded1;padding:25px}.admin-stat-card span{color:#8a7e70;margin-bottom:12px;font-size:13px;display:block}.admin-stat-card strong{font-family:Georgia,serif;font-size:32px;font-weight:400}.admin-bookings{background:#fffdfa;border:1px solid #e8ded1;padding:28px}.admin-bookings-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.admin-bookings-heading h2{margin:0 0 7px;font-family:Georgia,serif;font-size:25px;font-weight:400}.admin-bookings-heading p{color:#8a7e70;margin:0;font-size:13px}.admin-search{max-width:420px;margin-bottom:22px}.admin-table-wrapper{width:100%;overflow-x:auto}.admin-table{border-collapse:collapse;text-align:left;width:100%;min-width:750px}.admin-table th{color:#806d59;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;background:#f6f1ea;padding:15px 12px;font-size:11px}.admin-table td{border-bottom:1px solid #eee7df;padding:16px 12px;font-size:13px}.admin-table tr:hover td{background:#fcfaf6}.admin-status{color:#685a4a;background:#eee9e1;border-radius:20px;padding:6px 10px;font-size:11px;font-weight:600;display:inline-block}.status-pending{color:#94641a;background:#fff2d8}.status-confirmed{color:#347447;background:#e4f3e7}.status-completed{color:#405e8e;background:#e7edf8}.status-cancelled,.status-no_show{color:#a34539;background:#fbe9e6}.admin-empty{text-align:center;color:#94887b;padding:30px}@media (width<=700px){.admin-page{padding:22px 15px}.admin-login{margin-top:5vh;padding:28px 22px}.admin-header{align-items:flex-start}.admin-header h1{font-size:27px}.admin-stats{grid-template-columns:1fr;gap:12px}.admin-stat-card{padding:18px}.admin-bookings{padding:18px 12px}.admin-bookings-heading{align-items:flex-start}}
