:root{--navy:#101c2c;--orange:#f47b20;--pale:#f5f7fa;--ink:#182332;--muted:#5d6978;--line:#dce2e9}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background:var(--pale);line-height:1.5}.site-head{height:86px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100% - 1180px)/2))}.brand img{display:block;max-width:255px;max-height:58px}.phone{font-weight:800;color:var(--navy);font-size:18px;text-decoration:none}.hero{background:var(--navy);color:#fff;padding:70px max(20px,calc((100% - 1080px)/2)) 58px}.eyebrow{color:#ffb06d;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:1.5px}.hero h1{font-size:clamp(34px,5vw,62px);line-height:1.05;max-width:800px;margin:14px 0}.lead{font-size:19px;max-width:720px;color:#dae2ec}.promise{display:flex;align-items:center;gap:12px;max-width:650px;margin-top:28px;background:#23344c;padding:16px 18px;border-left:4px solid var(--orange)}.promise span{color:#ffb06d;font-size:26px}.layout{max-width:1180px;margin:-28px auto 0;padding:0 20px 55px;display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:28px;position:relative}.booking-card,.side{background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px #15263b12}.booking-card{padding:28px}.side{padding:28px;height:max-content}.steps{display:flex;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:28px}.steps span{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:#85909d}.steps .current{font-weight:800;color:var(--orange)}fieldset{border:0;padding:0;margin:0}legend{font-size:28px;font-weight:800;color:var(--navy)}.hint{color:var(--muted);margin-top:4px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.service{display:block;cursor:pointer}.service input{position:absolute;opacity:0}.service span{height:100%;display:block;border:2px solid var(--line);padding:16px;border-radius:5px;position:relative}.service input:checked+span{border-color:var(--orange);box-shadow:0 0 0 2px #f47b2030}.service b{display:block;color:var(--navy);padding-right:58px}.service small{display:block;color:var(--muted);font-size:13px;margin-top:5px;padding-right:35px}.service strong{position:absolute;right:12px;top:16px;color:var(--orange);font-size:15px}.urgent{grid-column:span 2}.urgent span{background:#fff8f1}.next,.pay{background:var(--orange);border:0;color:#fff;font-weight:800;padding:15px 22px;border-radius:4px;cursor:pointer;font-size:16px}.actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.back{background:#fff;border:1px solid var(--line);padding:13px 18px;border-radius:4px;cursor:pointer;font-weight:700}.date-row,.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}label{display:block;font-weight:700;font-size:14px}input,select,textarea{display:block;width:100%;font:inherit;border:1px solid #cbd4df;border-radius:4px;padding:12px;margin-top:6px;background:#fff}textarea{resize:vertical}.wide{grid-column:span 2}.check{font-weight:400;color:var(--muted);font-size:13px;margin-top:18px;display:flex;gap:9px;align-items:flex-start}.check input{width:18px;margin:1px 0;flex:0 0 auto}.summary{background:#f7f9fb;border:1px solid var(--line);padding:16px;margin:20px 0}.summary dl{display:grid;grid-template-columns:1fr auto;gap:8px;margin:0}.summary dt{color:var(--muted)}.summary dd{font-weight:800;text-align:right;margin:0}.fine,.small{font-size:12px;color:var(--muted)}.side h2{font-size:25px;line-height:1.15;color:var(--navy);margin-top:0}.side li{margin:12px 0}.call{display:block;background:var(--navy);color:#fff;text-align:center;padding:13px 10px;text-decoration:none;font-weight:700;margin-top:25px}.seo{max-width:1080px;margin:0 auto;padding:0 20px 55px}.seo h2{color:var(--navy);font-size:26px;margin-top:30px}footer{background:var(--navy);color:#d9e1eb;text-align:center;padding:24px;font-size:13px}footer a{color:#ffb06d}.emergency-only{display:none}.has-emergency .emergency-only{display:flex}@media(max-width:800px){.layout{display:block}.side{margin-top:20px}.service-grid{grid-template-columns:1fr}.urgent{grid-column:span 1}.date-row,.form-grid{grid-template-columns:1fr}.wide{grid-column:span 1}.hero{padding-top:45px}.booking-card{padding:20px}.site-head{height:72px}.brand img{max-width:200px}.phone{font-size:15px}}
