:root { color-scheme: light; font-family: Inter,Arial,Helvetica,sans-serif; color:#202023; background:#fff; font-synthesis:none; }
* { box-sizing:border-box; }
body { margin:0; }
[hidden] { display:none!important; }
a { color:inherit; text-underline-offset:3px; }
.topbar { max-width:800px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 30px; border-bottom:1px solid #ededee; }
.topbar img { display:block; object-fit:contain; }
.ordinary { font-size:13px; text-decoration:none; }
.ordinary span { color:#df1230; margin-left:5px; }
main { max-width:740px; margin:0 auto; padding:36px 30px 24px; }
h1 { font-size:30px; line-height:1.2; letter-spacing:-.8px; margin:0 0 10px; font-weight:650; }
.intro { color:#68686f; font-size:15px; line-height:1.5; margin:0 0 28px; }
fieldset { padding:0; margin:0; border:0; min-width:0; }
.fields { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:18px 20px; }
.field { display:flex; flex-direction:column; gap:8px; min-width:0; font-size:13px; font-weight:600; }
.field small { font-size:12px; color:#68686f; font-weight:400; margin-left:4px; }
.full { grid-column:1/-1; }
.service { margin-bottom:22px; }
input,select,textarea { width:100%; min-width:0; font-family:inherit; font-size:16px; font-weight:400; line-height:1.3; color:#202023; border:1px solid #dcdce0; border-radius:8px; background:#fff; padding:12px; min-height:46px; }
input::placeholder,textarea::placeholder { font-size:14px; color:#74747b; opacity:1; }
textarea { resize:vertical; }
select,button,input[type=checkbox] { cursor:pointer; }
input:disabled { background:#f5f5f6; color:#74747b; }
.check { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:400; color:#68686f; min-height:25px; }
input[type=checkbox] { width:16px; height:16px; min-height:16px; padding:0; margin:0; accent-color:#df1230; }
.days { display:flex; flex-wrap:wrap; gap:8px; }
.days label { display:flex; align-items:center; gap:7px; border:1px solid #dcdce0; border-radius:7px; min-height:44px; padding:9px 11px; font-size:13px; font-weight:400; cursor:pointer; }
.days label:has(input:checked) { border-color:#df1230; background:#fff4f5; }
.contact { border-top:1px solid #ededee; padding-top:22px; margin-top:25px; }
h2 { font-size:17px; font-weight:600; margin:0 0 17px; }
.submit-row { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:27px; }
.submit-row p { font-size:12px; color:#68686f; line-height:1.5; margin:0; }
button { background:#df1230; color:white; border:0; border-radius:8px; font-family:inherit; font-size:15px; font-weight:600; padding:15px 23px; min-height:49px; }
button span { margin-left:14px; }
button:disabled { opacity:.65; cursor:default; }
fieldset:disabled { opacity:.8; }
#enquiryStatus { margin-top:20px; padding:15px 17px; border:1px solid #dadadd; border-radius:8px; background:#f7f7f8; font-size:14px; line-height:1.5; overflow-wrap:anywhere; }
#enquiryStatus[data-kind=error] { border-color:#e3a2ab; background:#fff5f6; color:#8c1426; }
#enquiryStatus[data-kind=received] { border-color:#bbd9ca; background:#f1faf5; color:#20583d; }
#receiptNote { font-size:14px; line-height:1.6; }
.footer-note { display:flex; gap:12px; justify-content:center; margin:28px 0 0; color:#68686f; font-size:12px; }
@media(max-width:520px) { main{padding:28px 20px 24px;} .topbar{padding:17px 20px;} .ordinary{max-width:140px;text-align:right;} h1{font-size:27px;} .fields{grid-template-columns:minmax(0,1fr);} .submit-row{flex-direction:column-reverse;align-items:stretch;gap:13px;} .submit-row p{text-align:center;} .check{min-height:35px;} }
