:root{--red:#d71920;--red-dark:#a80f15;--ink:#16181d;--muted:#6d727b;--paper:#f3f4f6;--line:#e4e7eb;--soft:#fff7f7;--shadow:0 18px 50px rgba(21,25,32,.08)}
body{background:linear-gradient(135deg,#f7f7f8 0%,#f1f2f4 100%);color:var(--ink)}
.top{height:5px;background:linear-gradient(90deg,var(--red-dark),var(--red),#f15a5e)}
header{background:rgba(255,255,255,.9);backdrop-filter:blur(12px);box-shadow:0 1px 0 rgba(0,0,0,.04)}
.head{padding:18px 28px}.logo img{width:205px}.badge{letter-spacing:1.2px}
main{padding-top:64px}.intro{margin-bottom:38px}.eyebrow{color:var(--red);letter-spacing:2.4px}h1{font-weight:400;letter-spacing:-4px}.intro p{font-size:15px}
.professions{gap:18px}.profession{border:1px solid #e1e3e7;border-radius:14px;min-height:178px;padding:23px;background:rgba(255,255,255,.9);box-shadow:0 5px 20px rgba(21,25,32,.03)}
.profession[data-prof="Odontologia"]{display:none!important}
.profession:hover,.profession.active{border-color:var(--red);transform:translateY(-5px);box-shadow:var(--shadow)}.profession .num{letter-spacing:1px}.profession h2{font-size:24px;margin:44px 0 7px}.profession small{font-size:12px}
#formArea{margin-top:48px;filter:drop-shadow(0 18px 36px rgba(21,25,32,.06))}.formhead{border-radius:15px 15px 0 0;border-top:5px solid var(--red);padding:31px 34px;background:linear-gradient(120deg,#17191e,#292c33)}.formhead h2{font-size:36px}.formbody{border-radius:0 0 15px 15px;padding:32px 34px}.section{padding-top:28px;margin-top:28px}.section h3{font-size:23px}input,select,textarea{border-radius:8px;border-color:#dfe2e7;background:#fff}input:focus,select:focus,textarea:focus{outline:3px solid rgba(215,25,32,.12)}.notice{border-radius:0 8px 8px 0;background:var(--soft);color:#704448}.btn{border-radius:8px;padding:13px 20px}.btn.primary{background:var(--red);box-shadow:0 8px 18px rgba(215,25,32,.2)}.btn.primary:hover{background:var(--red-dark)}.btn.secondary{background:#eef0f2}.privacy{padding-top:22px}
@media(max-width:800px){.head{padding:18px}.logo img{width:180px}main{padding-top:42px}.formbody{padding:26px 22px}.formhead{padding:27px 22px}}
@media print{
  @page{size:A4;margin:15mm 14mm 17mm}
  :root{--ink:#1a1b1f;--muted:#555;--line:#cfd3d8}
  body,main{background:#fff!important;color:var(--ink)}
  header{display:block!important;background:#fff!important;box-shadow:none;border-bottom:2px solid var(--red);padding-bottom:8px}
  .head{display:flex!important;padding:0 0 8px}.logo img{width:178px}.badge{font-size:9px;color:#666}
  .top{display:block!important;height:4px}
  .formhead{border-radius:0;box-shadow:none;background:#fff;color:var(--ink);padding:13px 0 15px;border-top:0;border-bottom:2px solid var(--red)}
  .formhead .eyebrow{color:var(--red)!important}.formhead h2{font-size:27px;margin-top:5px}.formhead p{color:#555}
  .formbody{border-radius:0;padding:10px 0 0;box-shadow:none}.section{padding-top:16px;margin-top:16px}.section h3{font-size:18px;margin-bottom:12px;color:var(--red)}
  .fields{gap:10px}.field{gap:4px}label{font-size:9px;text-transform:uppercase;letter-spacing:.3px;color:#555}input,select,textarea{border:0;border-bottom:1px solid #bfc4ca;border-radius:0;padding:7px 0;background:#fff;font-size:11px}textarea{min-height:55px}
  .privacy{display:block!important;padding:12px 0 0;border-top:1px solid #d5d8dc;font-size:8px;color:#777}
  .formhead,.formbody,.section,.privacy{break-inside:avoid}.section h3{break-after:avoid}
}
