/* Product V06: approved refinement; document scrolling, opaque fields, existing glass navigation. */
html {height:auto; min-height:100%; overflow:visible; scroll-padding-block:24px;}
body {height:auto; min-height:100dvh; overflow:visible;}
.shell {display:block; height:auto; min-height:100dvh; max-height:none; overflow:visible; padding-bottom:max(32px,env(safe-area-inset-bottom));}
.scroll,#content,.sec-label {height:auto; max-height:none; overflow:visible; overscroll-behavior:auto;}
.scroll {flex:none;}
.topbar,.botnav,.sec-label {position:static;}
.topbar,.botnav {border-radius:16px; box-shadow:0 3px 16px #18233105;}
.topbar {margin-top:12px;}
.botnav {margin-top:20px; margin-bottom:8px;}
.sec-label {border-radius:18px 18px 0 0; padding-top:28px;}
.scroll {border-radius:0 0 18px 18px;}
.sec-title {font-size:34px; font-weight:650; letter-spacing:-.8px; line-height:1.2;}
.sec-chip {font-size:11px; letter-spacing:.07em; font-weight:650;}
.sec-sub {font-size:15px;}
.welcome-card h2 {font-size:20px; letter-spacing:-.3px;}
.welcome-tag {border-radius:6px; padding:5px 9px; font-size:12px; font-weight:500;}
.card-title {font-size:17px; font-weight:650;}
.f input,.f select,.f textarea {scroll-margin-block:24px; font-size:16px;}
.f textarea {resize:vertical;}
.frow {margin-bottom:22px;}
.pb-icon:empty,.ei:empty,.bi:empty {display:none;}
.flag-btn {width:92px; min-width:92px; font-size:12px; line-height:1.25; font-weight:600; padding:6px; color:#596777;}
.flag-btn.flagged {background:#eff5ff; color:#1e55ca; border-color:#a9c5f6;}
.bf-step-guide {margin:20px 4px 0; color:var(--muted); font-size:13px; line-height:1.6;}
@media(max-width:700px) {
  .shell {padding:max(12px,env(safe-area-inset-top)) 12px max(24px,env(safe-area-inset-bottom));}
  .topbar {padding:14px; margin-bottom:16px;}
  .sec-label {padding:24px 20px 12px;}
  .sec-title {font-size:28px; letter-spacing:-.5px;}
  .sec-sub {font-size:14px;}
  .scroll {padding:14px 20px 28px;}
  .botnav {margin-top:16px; padding:12px;}
  .flag-btn {width:84px; min-width:84px;}
}

.bonfi-home{margin:0;background:#f7f9fc;color:#182331;font-family:system-ui,-apple-system,sans-serif;min-height:100dvh}.bonfi-home *{box-sizing:border-box}.bonfi-home .home-wrap{max-width:1040px;margin:auto;padding:32px 36px 24px}.bonfi-home header{display:flex;justify-content:space-between;align-items:center;gap:16px}.bonfi-home .logo{font-size:31px;font-weight:750;letter-spacing:-1.6px}.bonfi-home .logo span{color:#2563eb}.bonfi-home .eyebrow{margin-top:88px;color:#2563eb;font-size:12px;letter-spacing:.12em;font-weight:700}.bonfi-home h1{font-size:clamp(35px,5vw,54px);font-weight:650;letter-spacing:-2px;max-width:650px;line-height:1.13;margin:18px 0}.bonfi-home .intro{color:#64748b;font-size:17px;line-height:1.7;max-width:620px;margin-bottom:34px}.bonfi-home .choices{display:grid;grid-template-columns:1fr 1fr;gap:18px}.bonfi-home .choice{position:relative;display:flex;flex-direction:column;text-decoration:none;color:inherit;background:#fff;padding:30px;border:1px solid #dce4ee;border-radius:22px;min-height:260px;transition:transform .18s,border-color .18s,box-shadow .18s}.bonfi-home .choice:hover{transform:translateY(-3px);border-color:#83aaf7;box-shadow:0 10px 24px #213d6810}.bonfi-home .choice:focus-visible{outline:3px solid #2563eb;outline-offset:4px}.bonfi-home .choice b{color:#2563eb;font-size:12px;letter-spacing:.06em}.bonfi-home .choice h2{font-size:26px;margin:18px 0 12px;letter-spacing:-.6px}.bonfi-home .choice p{font-size:14px;color:#64748b;line-height:1.8;margin:0 0 24px}.bonfi-home .choice .enter{margin-top:auto;font-weight:650;font-size:14px;color:#2563eb}.bonfi-home footer{padding:26px 2px;color:#748195;line-height:1.8;font-size:12px}.bonfi-home .lang-toggle{display:flex;gap:8px}.bonfi-home .lang-btn{border:0;padding:8px;background:transparent;cursor:pointer}

.bonfi-home {line-height:1.5;}
.bonfi-home .logo::after {content:none;}
.bonfi-home .home-wrap {padding-top:max(32px,env(safe-area-inset-top)); padding-bottom:max(24px,env(safe-area-inset-bottom));}
.bonfi-home header .bf-language-control {flex-shrink:0;}
.bonfi-home h1 {overflow-wrap:anywhere;}
.bonfi-home footer p {margin:0 0 12px;}
@media(max-width:600px) {
  .bonfi-home .home-wrap {padding:max(23px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));}
  .bonfi-home header {gap:12px;flex-wrap:wrap;}
  .bonfi-home .eyebrow {margin-top:50px;}
  .bonfi-home h1 {letter-spacing:-1.3px;}
  .bonfi-home .intro {font-size:15px;}
  .bonfi-home .choices {grid-template-columns:1fr;gap:14px;}
  .bonfi-home .choice {padding:24px;min-height:215px;}
  .bonfi-home .choice h2 {font-size:23px;margin-top:14px;}
  .bonfi-home footer {padding-bottom:20px;}
}
@media(prefers-reduced-motion:reduce) {.bonfi-home .choice {transition:none;}}
