:root{font-family:'Be Vietnam Pro',Arial,sans-serif;font-synthesis:none;color:#22483b;background:#fffaf7;--green:#103e31;--gold:#a27a3a;--muted:#69756d;--line:#e7e5df}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 12% 25%,#f1e4d76b,transparent 48%),#fffaf7}a{color:inherit}header{max-width:1180px;margin:auto;padding:25px 36px;display:flex;justify-content:space-between;align-items:center;gap:16px}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;font-weight:600;font-size:19px;letter-spacing:1.6px}.brand img{width:61px;height:61px;object-fit:contain;border-radius:50%}.brand small{display:block;font-size:11px;font-weight:400;letter-spacing:3.5px;margin-top:6px}.phone{font-size:13px;text-decoration:none;text-align:right;color:var(--muted);line-height:1.7}.phone b{display:block;color:var(--green);font-size:18px;font-weight:600}main{max-width:1180px;margin:10px auto 65px;padding:0 36px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,500px);gap:70px;align-items:start}.intro{padding:40px 0;position:sticky;top:16px}.eyebrow{display:inline-block;margin:0;padding:9px 15px;border:1px solid #d8c5a8;border-radius:30px;color:#846334;font-size:12px;font-weight:500;letter-spacing:1px}h1{font-family:'Lora',Georgia,serif;font-size:clamp(39px,4.2vw,55px);font-weight:400;line-height:1.32;letter-spacing:-1.5px;margin:25px 0 23px;overflow-wrap:normal}h1 em{font-style:italic;color:var(--gold)}.description{font-size:16px;color:var(--muted);max-width:415px;line-height:1.85;margin:25px 0}.offer{border-top:1px solid #ddcdb5;border-bottom:1px solid #ddcdb5;display:flex;gap:26px;align-items:center;padding:21px 0;max-width:425px}.offer strong{font-family:'Lora',serif;font-size:65px;font-weight:400;line-height:1.1;color:var(--gold);white-space:nowrap}.offer strong span{font-size:31px}.offer div{font-size:14px;color:var(--muted);line-height:1.8}.offer b{font-weight:600;color:var(--green);font-size:16px}.service-list{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0}.service-list span{padding:9px 15px;background:#edf1e9;border-radius:30px;font-size:13px}.details{margin-top:34px;padding:5px 0 0;border-top:1px solid var(--line)}.details p{font-size:14px;line-height:1.8;margin:19px 0}.details span{display:block;color:var(--gold);font-size:11px;letter-spacing:1.3px;margin-bottom:4px}.booking-card{border:1px solid #e8e4da;border-radius:25px;background:#fff;padding:34px;box-shadow:0 15px 60px #7c5f2d0a}.card-heading{padding-bottom:22px}.step{font-size:11px;letter-spacing:1.6px;font-weight:500;color:var(--gold)}h2{font-family:'Be Vietnam Pro',Arial,sans-serif;font-size:28px;line-height:1.55;font-weight:500;letter-spacing:-.8px;margin:10px 0 5px}.card-heading p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}.card-heading p b{color:var(--gold);font-weight:600}fieldset{border:0;margin:0 0 19px;padding:0}legend{border-top:1px solid var(--line);font-size:15px;font-weight:600;width:100%;padding:19px 0 13px}label{display:block;font-size:14px;font-weight:500;line-height:1.6;margin-bottom:14px}label>span{color:var(--gold)}input,select,textarea{font:inherit;font-weight:400;font-size:15px;min-height:49px;border:1px solid #dddeda;border-radius:10px;width:100%;padding:12px 13px;margin-top:7px;background:#fdfdfb;color:#22483b;line-height:1.5}input::placeholder,textarea::placeholder{color:#8a938c}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #b69b68;outline-offset:2px;border-color:#b69b68}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px}.hint,.fine{font-size:12px;line-height:1.75;color:var(--muted);margin:0}.consent{display:flex;gap:10px;align-items:flex-start;margin:19px 0;font-weight:400}.consent input{width:17px;min-height:17px;flex-shrink:0;margin:4px 0;accent-color:var(--green)}.consent span{color:var(--muted);font-size:12px;line-height:1.85}.submit{background:var(--green);color:#fff;border:0;border-radius:30px;padding:16px;width:100%;font:inherit;font-size:15px;font-weight:500;line-height:1.6;cursor:pointer;box-shadow:0 6px 18px #103e3117;transition:background .2s}.submit:hover{background:#225542}button:disabled{opacity:.6;cursor:wait}.fine{text-align:center;margin-top:13px}.error{font-size:13px;line-height:1.6;color:#a03636}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}button:focus-visible,a:focus-visible{outline:3px solid #b69b68;outline-offset:4px}footer{border-top:1px solid var(--line);display:flex;justify-content:center;gap:25px;flex-wrap:wrap;padding:24px 25px;font-size:12px;color:var(--muted);line-height:1.7}footer span:first-child{font-weight:500;letter-spacing:1px}#success{padding:23px 0;line-height:1.8;font-size:15px}#success[hidden]{display:none}.success-mark{display:grid;place-items:center;width:57px;height:57px;border-radius:50%;background:#edf1e9;color:var(--green);font-size:25px}.reference{font-size:12px;color:var(--muted)}.call{display:block;margin:22px 0}#newBooking{background:white;border:1px solid #dddeda;border-radius:25px;padding:12px 20px;font:inherit;font-size:14px;cursor:pointer}@media(max-width:850px){header{padding:20px 22px}.brand{font-size:15px;letter-spacing:1px}.brand img{width:49px;height:49px}.brand small{font-size:10px;letter-spacing:2px}.phone{font-size:11px}.phone b{font-size:15px}main{grid-template-columns:1fr;gap:25px;padding:0 22px;margin-top:5px;margin-bottom:32px}.intro{position:static;padding:17px 0 0}h1{font-size:42px;line-height:1.3;margin:20px 0 22px;letter-spacing:-1px}h1 br{display:none}.offer{max-width:none;padding:16px 0;gap:24px}.offer strong{font-size:51px}.offer strong span{font-size:27px}.description{max-width:none;font-size:15px;margin:20px 0 0}.service-list{margin:20px 0 0}.details{display:none}.booking-card{padding:27px;border-radius:22px}h2{font-size:26px}input,select,textarea{font-size:16px}.consent span{font-size:13px}.hint,.fine{font-size:13px}footer{gap:10px}}@media(max-width:390px){header{padding:17px}.phone{font-size:0}.phone b{font-size:13px}main{padding:0 16px;gap:20px}h1{font-size:36px}.booking-card{padding:22px 19px}.form-grid{grid-template-columns:1fr;gap:0}.offer div{font-size:13px}.offer b{font-size:14px}.service-list span{font-size:12px;padding:8px 12px}}
