.cf-page{background:#0a0a0a;padding-bottom:80px}
.cf-intro{text-align:center;padding:60px 0 30px;max-width:760px}
.cf-intro h1{font-size:clamp(1.7rem,1rem + 2.4vw,2.8rem);margin:0}
.cf-intro .sub{font-size:1.25rem;margin:0 0 8px}
.cf-intro p{color:#cfcfcf}
.cf-note{font-size:14px;color:var(--muted)!important}
.cf{max-width:820px}
.cf-progress{list-style:none;display:flex;justify-content:space-between;gap:6px;padding:0;margin:0 0 26px;counter-reset:p;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.cf-progress li{flex:1;text-align:center;border-top:2px solid #333;padding-top:8px}
.cf-sec{background:#0f0f0f;border:1px solid #2b2b2b;padding:clamp(20px,4vw,36px);margin-bottom:22px}
.cf-sec h2{font-size:clamp(1.15rem,1rem + .8vw,1.5rem);margin:0 0 16px;display:flex;align-items:center;gap:14px}
.cf-sec h2 span{display:grid;place-items:center;width:34px;height:34px;flex:none;background:#fff;color:#000;font-size:16px;letter-spacing:0}
.cf-sec>p.muted{margin:-4px 0 18px;font-size:14.5px}
.qlist{display:grid;margin-bottom:18px}
.qrow{display:flex;justify-content:space-between;align-items:center;gap:16px;border:0;border-top:1px solid #242424;padding:12px 0;margin:0;min-width:0}
.qrow:last-child{border-bottom:1px solid #242424}
.qrow legend{float:left;padding:0;font-weight:400;font-size:15px;max-width:calc(100% - 150px)}
.qrow .yn{display:flex;gap:6px;flex:none;margin-left:auto}
.qrow .yn label{position:relative;border:1px solid #3a3a3a;padding:7px 16px;font-size:14px;cursor:pointer;min-width:58px;text-align:center}
.qrow .yn input{position:absolute;opacity:0;pointer-events:none;min-height:0}
.qrow .yn label:has(input:checked){background:#fff;color:#000;border-color:#fff}
.qrow .yn label:has(input:focus-visible){outline:2px solid #fff;outline-offset:2px}
.qrow.invalid legend{color:var(--err)}
.qrow.invalid .yn label{border-color:var(--err)}
.ilist{display:grid;gap:12px}
.irow{display:grid;grid-template-columns:1fr 92px;gap:16px;align-items:center;border:1px solid #242424;padding:14px 16px;background:#0b0b0b}
.irow p{margin:0;font-size:14.5px;color:#dcdcdc;line-height:1.6}
.irow p strong{color:#fff}
.irow input{text-align:center;text-transform:uppercase;letter-spacing:.1em;font-weight:600;padding:8px}
.irow label span{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:4px}
.aftercare{border-left:2px solid #fff;padding-left:18px}
.aftercare h3{font-size:1.15rem;font-weight:500;margin:18px 0 6px}
.aftercare h3:first-child{margin-top:0}
.aftercare ul{margin:0;padding-left:20px;color:#dcdcdc;font-size:15px}
.aftercare li{margin-bottom:4px}
.aftercare p{margin:0;color:#dcdcdc;font-size:15px}
.sigwrap{position:relative;background:#fff;border:1px solid #3a3a3a;height:190px;touch-action:none}
.sigwrap.invalid{border-color:var(--err);box-shadow:0 0 0 1px var(--err)}
.sigwrap canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair}
.sigline{position:absolute;left:18px;right:18px;bottom:40px;border-bottom:1px solid #bbb;color:#999;font-size:18px;pointer-events:none;line-height:1}
.sigbar{display:flex;justify-content:space-between;align-items:center;gap:12px}
.sigbar small{color:var(--muted)}
.cf-submit{display:flex;justify-content:flex-end}
.cf-submit .btn{min-width:220px}
.cf-done{max-width:860px;padding-top:50px}
.cf-actions{text-align:center;margin-bottom:30px}
.cf-actions h2{font-size:clamp(1.6rem,1rem + 1.8vw,2.4rem);margin:0 0 10px}
.cf-actions p{color:#cfcfcf;max-width:620px;margin:0 auto 22px}
.cf-actions .hero__actions{justify-content:center}
.doc{background:#fff;color:#111;padding:clamp(20px,4vw,44px);font-size:13.5px;line-height:1.5}
.doc header{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:2px solid #111;padding-bottom:12px;margin-bottom:16px}
.doc header img{width:90px}
.doc h3{font-family:'Cinzel',serif;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:15px;margin:0}
.doc h4{font-family:'Cinzel',serif;letter-spacing:.08em;text-transform:uppercase;font-size:12.5px;margin:18px 0 6px;border-bottom:1px solid #ccc;padding-bottom:4px}
.doc table{width:100%;border-collapse:collapse}
.doc td{padding:4px 6px;vertical-align:top;border-bottom:1px solid #eee}
.doc td:first-child{width:62%}
.doc td.k{color:#555;width:34%}
.doc .yes{font-weight:700}
.doc .sig{max-width:320px;border-bottom:1px solid #111;margin-top:6px}
.doc .office{margin-top:22px;border:1px dashed #999;padding:12px;font-size:12.5px}
.doc .office p{margin:6px 0}
@media(max-width:600px){
  .qrow{flex-direction:column;align-items:flex-start;gap:8px}
  .qrow legend{max-width:none;float:none}
  .qrow .yn{margin-left:0}
  .irow{grid-template-columns:1fr}
  .irow label{display:flex;align-items:center;gap:12px}
  .irow label span{margin:0}
  .irow input{width:110px}
  .cf-progress{font-size:10px;letter-spacing:.04em}
  .cf-submit .btn{width:100%}
}
@media print{
  @page{margin:12mm}
  body{background:#fff!important}
  .top,.skip,.noprint,.cf-intro,.cf,footer{display:none!important}
  .cf-page{padding:0;background:#fff}
  .cf-done{padding:0;max-width:none;width:100%}
  .doc{padding:0;font-size:11.5px}
  .doc h4{break-after:avoid}
  .doc tr{break-inside:avoid}
}
