.bfwrap{background:var(--cream);padding:40px 16px 56px}
.bf{max-width:680px;margin:0 auto;background:#fff;border:1px solid #e2ddd2;border-radius:8px;overflow:hidden;font-family:'Source Sans 3',sans-serif;color:#1c1c1c}
.bf-hd{background:#16314e;padding:34px 36px 30px;border-bottom:4px solid #c25e22;display:flex;flex-direction:column;gap:10px}
.bf-eb{font-size:12px;font-weight:700;letter-spacing:.16em;color:#cda14a}
.bf-hd h1,.bf-hd h2{margin:0;font-family:'Playfair Display',Georgia,serif;font-size:34px;line-height:1.15;color:#fff}
.bf-hd p{margin:0;font-size:16px;line-height:1.5;color:#e9e4da}
.bf-bd{padding:30px 36px 36px;display:flex;flex-direction:column;gap:26px}
.bf .step{display:flex;flex-direction:column;gap:20px}
.bf .step+.step{padding-top:26px;border-top:1px solid #e2ddd2}
.bf .num{font-size:13px;font-weight:700;letter-spacing:.12em;color:#b5531c;text-transform:uppercase}
.bf .f{display:flex;flex-direction:column;gap:6px;border:0;margin:0;padding:0;min-width:0}
.bf .lbl{font-size:15px;font-weight:600;color:#1c1c1c;padding:0;margin-bottom:2px}
.bf .req{color:#b5531c}.bf .opt-t{font-weight:400;color:#5f636a}
.bf .hint{font-size:13px;color:#5f636a;line-height:1.45;margin:0}
.bf .in{box-sizing:border-box;width:100%;height:46px;border:1px solid #cfc8b8;border-radius:6px;padding:0 14px;font:inherit;font-size:16px;color:#1c1c1c;background:#fff}
.bf select.in{appearance:auto}
.bf textarea.in{height:96px;padding:12px 14px;resize:vertical}
.bf .in:focus,.bf .chip:focus-within,.bf .opt:focus-within,.bf .drop:focus-within{outline:2px solid #cda14a;outline-offset:2px}
.bf .chips{display:flex;flex-wrap:wrap;gap:8px}
.bf .chip{position:relative;display:inline-flex;align-items:center;min-height:44px;box-sizing:border-box;padding:6px 16px;border:1px solid #cfc8b8;border-radius:999px;font-size:15px;line-height:1.3;background:#fff;cursor:pointer}
.bf .chip input,.bf .opt input{position:absolute;opacity:0;width:1px;height:1px}
.bf .chip:has(input:checked){background:#16314e;border-color:#16314e;color:#fff}
.bf .row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.bf .opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.bf .opt{position:relative;display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid #cfc8b8;border-radius:8px;background:#fff;cursor:pointer}
.bf .opt b{font-size:15px}.bf .opt span{font-size:13px;color:#5f636a;line-height:1.4}
.bf .opt:has(input:checked){border:2px solid #16314e;padding:13px 15px;background:#f6f3ec}
.bf .check{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5;cursor:pointer}
.bf .check input{width:20px;height:20px;margin:2px 0 0;accent-color:#16314e;flex:none}
.bf .note{padding:16px 18px;border-radius:6px;background:#f6f3ec;border-top:3px solid #c25e22;font-size:15px;line-height:1.5}
.bf .note b{color:#16314e}
.bf .ups{display:flex;flex-direction:column;gap:10px}
.bf .drop{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px;border:1.5px dashed #cfc8b8;border-radius:8px;background:#fbf9f4;text-align:center;cursor:pointer}
.bf .drop.more{padding:14px}.bf .drop.more svg,.bf .drop.more .hint{display:none}
.bf .drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.bf .dt{font-size:15px;font-weight:600;color:#16314e}.bf .fname{font-size:14px;font-weight:600;color:#2f5f3a;word-break:break-all}
.bf .uperr{color:#9b2c12;font-size:14px;margin:0}
.bf .ex{display:flex;flex-direction:column;gap:8px;padding:16px 18px;border:1px solid #e2ddd2;border-radius:6px;background:#fbf9f4}
.bf .ex-h{font-size:12px;font-weight:700;letter-spacing:.1em;color:#5f636a}
.bf .ex-doc{display:flex;gap:16px;align-items:flex-start;padding:14px 16px;background:#fff;border:1px solid #e2ddd2;font-family:Georgia,serif;font-size:12px;line-height:1.6;color:#3a3d42}
.bf .ex-doc mark{background:#fbe9dc;padding:0 3px}
.bf .ex-seal{flex:none;width:64px;height:64px;border:1.5px dashed #b9b2a3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Source Sans 3',sans-serif;font-size:11px;font-weight:700;color:#7d8188}
.bf .next{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px;border-radius:6px;background:#f6f3ec}
.bf .next div{display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.4}.bf .next .num{font-size:12px}
.bf .go{display:block;width:100%;height:54px;border:0;border-radius:6px;background:#b5531c;color:#fff;font:inherit;font-size:17px;font-weight:700;letter-spacing:.02em;cursor:pointer}
.bf .go:hover{background:#9c4616}.bf .go[disabled]{opacity:.7;cursor:wait}
.bf .foot{text-align:center}
.bf .bot{position:absolute;left:-9999px}.bf .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.bf .errsum{padding:14px 16px;border-radius:6px;background:#fdeee8;border-left:4px solid #9b2c12;color:#5c1a0a;font-size:15px}
.bf [data-show][hidden]{display:none!important}

.bf .sigpad{position:relative;border:1px solid #cfc8b8;border-radius:6px;background:#fff}.bf .sigpad canvas{display:block;width:100%;height:150px;touch-action:none;cursor:crosshair}.bf .sigclr{position:absolute;top:8px;right:8px;border:1px solid #cfc8b8;background:#fff;border-radius:4px;padding:4px 10px;font:inherit;font-size:13px;cursor:pointer}
@media(max-width:600px){.bf-hd{padding:26px 22px 24px}.bf-hd h1,.bf-hd h2{font-size:28px}.bf-bd{padding:24px 20px 28px}.bf .row,.bf .opts,.bf .next{grid-template-columns:1fr}}
.bf .routebox{margin-top:10px;padding:12px 14px;border-left:3px solid #c25e22;background:#f6f3ec;border-radius:4px;font-size:15px;line-height:1.55;color:#1c1c1c}.bf .routebox a{color:#16314e;font-weight:600}.bf .routebox .rwarn{display:inline-block;margin-top:6px;color:#8a3a12}
