.fb-hero{background:var(--navy);color:var(--on);padding:64px 0 112px;position:relative;overflow:hidden}
.fb-hero::after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(121,191,187,.5),transparent)}
.fb-hero .in,.fb-wrap .in{max-width:760px}
.fb-hero h1{font-size:52px;margin-top:14px}
.fb-hero .lead{font-size:18px;margin-top:18px}
.fb-wrap{padding:0 0 88px;margin-top:-64px;position:relative;z-index:1}
.fb-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:36px 40px;box-shadow:0 18px 40px -22px rgba(14,29,44,.35)}
.fb-field{margin:0 0 24px;border:0;min-width:0}
.fb-field label,.fb-field legend{display:block;font-weight:600;font-size:15px;margin-bottom:8px;padding:0}
.fb-opt{font-weight:500;font-size:12.5px;color:var(--mute);margin-left:6px}
.fb-field textarea,.fb-field input[type=email],.fb-sel select{width:100%;font:400 16px/1.5 var(--sans);color:var(--ink);background:var(--paper);border:1px solid #d6d0c2;border-radius:8px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.fb-field textarea{resize:vertical;min-height:96px}
.fb-field textarea:focus,.fb-field input:focus,.fb-sel select:focus{outline:0;border-color:var(--teal);box-shadow:0 0 0 3px rgba(44,128,124,.15);background:#fff}
.fb-sel{position:relative}.fb-sel select{appearance:none;-webkit-appearance:none;padding-right:42px;cursor:pointer}
.fb-sel::after{content:"";position:absolute;right:16px;top:50%;width:8px;height:8px;border-right:2px solid var(--mute);border-bottom:2px solid var(--mute);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.fb-stars{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.fb-stars input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.fb-stars label{margin:0;width:40px;height:40px;cursor:pointer;display:grid;place-items:center;border-radius:8px}
.fb-stars label::before{content:"";width:30px;height:30px;background:#d9d4c8;-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat;transition:background .12s,transform .12s}
.fb-stars{--star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.6l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.4l-5.9 3.3 1.3-6.6-4.9-4.6 6.6-.8z'/%3E%3C/svg%3E")}
.fb-stars label.on::before{background:#c9a24a}
.fb-stars label:hover::before{transform:scale(1.08)}
.fb-stars input:focus-visible+label{outline:3px solid var(--teal2);outline-offset:1px}
.fb-rtxt{font-size:14px;color:var(--mute);margin-left:10px}
.fb-clear{margin-left:8px;background:none;border:0;color:var(--teal);font:600 13px var(--sans);cursor:pointer;padding:6px}
.fb-hint{font-size:13px;color:var(--mute);margin-top:6px}
.fb-hp{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.fb-err{color:#b3261e;font-size:14.5px;min-height:0;margin:0 0 12px}.fb-err:empty{display:none}
.fb-btn{background:var(--navy);color:var(--on);border:0;cursor:pointer;font-family:var(--sans);min-width:220px}
.fb-btn:hover{background:var(--navy2)}.fb-btn[disabled]{opacity:.65;cursor:default}
.fb-legal{font-size:13px;color:var(--mute);margin-top:16px}.fb-legal a{color:var(--teal);text-decoration:underline;text-underline-offset:2px}
.fb-done{text-align:center;padding:52px 40px}.fb-done:focus{outline:0}
.fb-check{width:56px;height:56px;border-radius:50%;background:var(--navy);color:var(--teal2);display:grid;place-items:center;margin:0 auto 18px}
.fb-done h2{margin-top:0;font-size:36px}.fb-done p{color:var(--mute);max-width:480px;margin:12px auto 0}
.fb-acts{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:28px}.fb-acts .btn{background:var(--navy);color:var(--on)}.fb-acts .btn:hover{background:var(--navy2)}
.fb-link{color:var(--teal);font-weight:600;font-size:14.5px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(max-width:640px){.fb-hero{padding:44px 0 92px}.fb-hero h1{font-size:36px}.fb-hero .lead{font-size:16.5px}.fb-wrap{margin-top:-60px;padding-bottom:56px}
.fb-card{padding:24px 20px}.fb-done{padding:40px 22px}.fb-btn{width:100%}.fb-stars label{width:44px;height:44px}.fb-rtxt{flex-basis:100%;margin:4px 0 0 4px}.fb-done h2{font-size:30px}}
