@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',system-ui,sans-serif;color:#182d29;background:#f7f8f3}*{box-sizing:border-box}body{margin:0}header{max-width:1200px;margin:auto;padding:28px 30px;display:flex;justify-content:space-between;align-items:center;gap:24px}.logo{font-weight:800;font-size:30px;letter-spacing:-1px;text-decoration:none;color:#153c31}.logo span{display:block;font-size:11px;letter-spacing:2px;margin:4px 0}nav{display:flex;gap:8px}button,input,select{font:inherit}button{cursor:pointer;border:1px solid #d7dfd7;border-radius:12px;background:white;padding:11px 18px;color:inherit}button:hover{border-color:#316e52}button.active,.primary{background:#195b43;color:white;border-color:#195b43}main{max-width:1140px;margin:15px auto;padding:0 24px;min-height:65vh}.hero{background:#e6eee2;border-radius:28px;padding:48px;position:relative;overflow:hidden}.eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#55745c}h1{font-size:clamp(34px,5vw,60px);letter-spacing:-2px;line-height:1.08;max-width:700px;margin:18px 0}p{color:#60716a;line-height:1.7}.actions{display:flex;gap:12px;flex-wrap:wrap}.accent{background:#e4b361;border-color:#e4b361}.filters{display:flex;align-items:end;gap:14px;flex-wrap:wrap;background:white;padding:20px;border-radius:18px;margin:25px 0}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}input,select{padding:12px;border:1px solid #d5ddd4;border-radius:9px;background:#fff;min-width:120px}h2{letter-spacing:-.7px}.section-head{display:flex;justify-content:space-between;align-items:center;margin:30px 0 18px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:white;border:1px solid #e0e5da;border-radius:20px;overflow:hidden}.art{height:150px;background:#274e40;display:flex;align-items:center;justify-content:center;font-size:56px;color:#d9bd88}.card:nth-child(2n) .art{background:#a08462}.card-content{padding:22px}.card h3{font-size:22px;margin:8px 0}.badge{background:#e6f3e5;color:#326544;border-radius:20px;padding:6px 10px;font-size:12px;display:inline-block}.muted{background:#eee;color:#666}.row{display:flex;justify-content:space-between;align-items:center;gap:12px}.price{font-size:23px;font-weight:bold}.card button{margin-top:15px}.favorite{font-size:19px;padding:5px 10px}.empty{background:white;padding:30px;border-radius:18px}.appointment{background:white;padding:22px;margin-bottom:12px;border:1px solid #e0e5da;border-radius:18px}.panel{background:white;border-radius:20px;padding:25px;margin:20px 0}dialog{border:0;border-radius:22px;width:440px;max-width:95vw;padding:28px}dialog::backdrop{background:#142e2977}dialog label{margin:15px 0}.dialog-head{display:flex;justify-content:space-between;align-items:center}#error{color:#a33232}#notice{position:fixed;bottom:24px;right:24px;background:#193f32;color:white;padding:16px;border-radius:12px;display:none;z-index:10}footer{max-width:1140px;margin:45px auto 20px;padding:20px 24px;font-size:12px;color:#728278}@media(max-width:780px){header{flex-direction:column;align-items:start;padding:20px}nav{flex-wrap:wrap}nav button{padding:9px 11px;font-size:13px}.hero{padding:28px}.grid{grid-template-columns:1fr}.row{flex-wrap:wrap}}
