@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--green:#124f3c;--green2:#1f6a51;--earth:#b85f43;--cream:#fbf8ef;--mint:#e7f4ec;--text:#23352e;--muted:#5e7068;--line:#cfe1d6;--white:#fff}
*{box-sizing:border-box}
body{margin:0;background:linear-gradient(135deg,#eef9f3 0,#fffaf0 48%,#f1f8f4 100%);color:var(--text);font-family:"DM Sans",sans-serif;line-height:1.55}
.hero{max-width:900px;margin:0 auto;padding:56px 24px 34px;text-align:center}
.brand{color:var(--green);font:800 14px/1 "Manrope",sans-serif;letter-spacing:.13em;text-decoration:none}
.eyebrow{margin:42px 0 10px;color:var(--earth);font-weight:800;letter-spacing:.15em;font-size:14px}
h1{margin:0;color:var(--green);font:800 clamp(38px,7vw,70px)/1.05 "Manrope",sans-serif;letter-spacing:-.045em}
.lead{max-width:720px;margin:20px auto;color:var(--muted);font-size:19px}
.notice,.sensitive{border-left:5px solid var(--earth);background:#fff5ee;border-radius:12px;padding:15px 18px;text-align:left}
main{max-width:900px;margin:0 auto 80px;padding:0 20px}
form{display:grid;gap:20px}
section{position:relative;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:24px;padding:32px;box-shadow:0 14px 50px rgba(22,72,54,.07)}
.step{position:absolute;right:28px;top:25px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--mint);color:var(--green);font-weight:800}
h2{margin:0 50px 22px 0;color:var(--green);font:800 27px/1.2 "Manrope",sans-serif}
.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
label{display:block;margin:14px 0;font-weight:700}
label span,.required{color:var(--earth)}
label small,.hint{font-weight:400;color:var(--muted)}
input,textarea,select{width:100%;margin-top:7px;border:2px solid var(--line);border-radius:13px;background:#fffdf8;padding:13px 14px;color:var(--text);font:inherit;outline:none}
input:focus,textarea:focus,select:focus{border-color:var(--green2);box-shadow:0 0 0 3px rgba(31,106,81,.12)}
textarea{resize:vertical}
fieldset{border:0;padding:0;margin:0 0 16px}legend{color:var(--muted);margin-bottom:8px}
.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px}
.choices label,.consents label{display:flex;gap:10px;align-items:flex-start;font-weight:500}
.choices input,.consents input{width:20px;height:20px;margin:3px 0 0;accent-color:var(--green);flex:0 0 auto}
.symptoms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
.sensitive{margin-bottom:18px}
.consents{display:grid;gap:8px}
.consents label{border:1px solid var(--line);border-radius:13px;padding:14px;background:var(--cream)}
.consents a{color:var(--green);font-weight:800}
button{width:100%;border:0;border-radius:999px;background:var(--earth);color:#fff;padding:17px 24px;font:800 17px "Manrope",sans-serif;cursor:pointer;box-shadow:0 10px 25px rgba(184,95,67,.25)}
button:hover{filter:brightness(.94)}button b{margin-left:10px}
.privacy-note{text-align:center;color:var(--muted);font-size:13px}
footer{text-align:center;padding:30px 20px 48px;color:var(--muted);font-size:14px}.hidden{position:absolute;left:-10000px}
.legal{max-width:820px;margin:0 auto}.legal h2{margin-top:32px}.legal li{margin:7px 0}.legal a{color:var(--green);font-weight:700}
@media(max-width:650px){.hero{padding-top:35px}.eyebrow{margin-top:30px}.grid.two,.choices,.symptoms{grid-template-columns:1fr}section{padding:26px 20px;border-radius:18px}h2{font-size:23px}.lead{font-size:17px}}
