.fp-page{background:linear-gradient(180deg,#f7f7f5,#e8eee7);min-height:100vh;color:#38393e;padding:9rem 1.5rem 6rem}.fp-container{max-width:880px;margin:0 auto}.fp-header{text-align:center;margin-bottom:3rem}.fp-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-lavender,#233c32);margin-bottom:1.25rem}.fp-eyebrow-dot{width:6px;height:6px;border-radius:99px;background:#315345;box-shadow:0 0 8px rgba(49,83,69,.8)}.fp-title{font-size:clamp(2.25rem,5vw,3.5rem);font-weight:600;letter-spacing:-.03em;line-height:1.05;margin:0 0 1.25rem;color:#1c1d21}.fp-title em{color:var(--accent-lavender,#233c32);font-style:italic}.fp-lead{font-size:1.15rem;line-height:1.7;color:#6d6e72;max-width:640px;margin:0 auto 1.5rem;font-weight:300}.fp-lead em{color:#38393e;font-style:italic}.fp-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:1.25rem;font-size:.85rem;color:#6d6e72}.fp-progress{margin-bottom:2.5rem}.fp-progress-steps{display:flex;gap:.5rem;margin-bottom:1rem}.fp-progress-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;padding:.25rem;color:#b0aea5;transition:color .3s ease}.fp-progress-step.active,.fp-progress-step.done{color:#1c1d21}.fp-progress-step:disabled{cursor:default}.fp-progress-num{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;background:#e8eee7;border:1px solid rgba(20,20,19,.12);transition:all .3s ease}.fp-progress-step.active .fp-progress-num{background:#315345;border-color:#315345;color:#fff;box-shadow:0 0 0 4px rgba(49,83,69,.18)}.fp-progress-step.done .fp-progress-num{background:rgba(49,83,69,.18);border-color:rgba(49,83,69,.5);color:var(--accent-lavender,#233c32)}.fp-progress-label{font-size:.72rem;font-weight:500;text-align:center;line-height:1.2}.fp-progress-bar{height:4px;border-radius:99px;background:rgba(20,20,19,.08);overflow:hidden}.fp-progress-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#315345,#5f7b6c);transition:width .4s cubic-bezier(.16,1,.3,1)}.fp-form{background:#ffffff;border:1px solid rgba(20,20,19,.08);border-radius:1.5rem;padding:2.5rem;position:relative}.fp-step{border:none;margin:0;padding:0;min-inline-size:auto}.fp-step-title{font-size:1.5rem;font-weight:600;color:#1c1d21;letter-spacing:-.01em;padding:0;margin:0 0 .4rem}.fp-step-help{font-size:.95rem;color:#6d6e72;margin:0 0 1.75rem}.fp-field{margin-bottom:1.25rem;display:flex;flex-direction:column}.fp-field label{font-size:.85rem;font-weight:600;color:#38393e;margin-bottom:.5rem}.fp-req{color:#315345}.fp-field input[type=email],.fp-field input[type=tel],.fp-field input[type=text],.fp-field select,.fp-field textarea,.fp-repeater-row input,.fp-repeater-row textarea{width:100%;background:#f7f7f5;border:1px solid rgba(20,20,19,.14);border-radius:.7rem;padding:.8rem 1rem;color:#1c1d21;font-size:.95rem;font-family:inherit;transition:border-color .25s ease,box-shadow .25s ease}.fp-field textarea,.fp-repeater-row textarea{resize:vertical;line-height:1.5}.fp-field input::placeholder,.fp-field textarea::placeholder,.fp-repeater-row input::placeholder,.fp-repeater-row textarea::placeholder{color:#b0aea5}.fp-field input:focus,.fp-field select:focus,.fp-field textarea:focus,.fp-repeater-row input:focus,.fp-repeater-row textarea:focus{outline:none;border-color:rgba(49,83,69,.6);box-shadow:0 0 0 3px rgba(49,83,69,.15)}.fp-field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b6a62' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.fp-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.fp-row .fp-field{margin-bottom:1.25rem}.fp-repeater{gap:1rem}.fp-repeater,.fp-repeater-row{display:flex;flex-direction:column}.fp-repeater-row{background:#f7f7f5;border:1px solid rgba(20,20,19,.08);border-radius:1rem;padding:1.1rem 1.25rem;gap:.6rem}.fp-repeater-head{display:flex;justify-content:space-between;align-items:center}.fp-repeater-badge{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-lavender,#233c32)}.fp-remove{background:none;border:none;cursor:pointer;color:#6d6e72;font-size:.8rem;padding:.2rem .4rem;transition:color .2s ease}.fp-remove:hover{color:#233c32}.fp-add{margin-top:1rem;align-self:flex-start;background:rgba(49,83,69,.08);border:1px dashed rgba(49,83,69,.4);color:var(--accent-lavender,#233c32);padding:.6rem 1.1rem;border-radius:.7rem;font-size:.88rem;font-weight:500;cursor:pointer;transition:all .25s ease}.fp-add:hover{background:rgba(49,83,69,.15);border-style:solid}.fp-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.6rem}.fp-check{display:flex;align-items:center;gap:.6rem;background:#f7f7f5;border:1px solid rgba(20,20,19,.14);border-radius:.7rem;padding:.7rem .9rem;cursor:pointer;font-size:.9rem;color:#38393e;transition:all .2s ease}.fp-check:hover{border-color:rgba(49,83,69,.35)}.fp-check input{accent-color:#315345;width:16px;height:16px}.fp-check:has(input:checked){border-color:rgba(49,83,69,.6);background:rgba(49,83,69,.1);color:#1c1d21}.fp-consent{display:flex;gap:.7rem;align-items:flex-start;margin-top:1.5rem;font-size:.85rem;color:#6d6e72;line-height:1.5;cursor:pointer}.fp-consent input{accent-color:#315345;width:16px;height:16px;margin-top:2px;flex-shrink:0}.fp-consent a{color:var(--accent-lavender,#233c32)}.fp-error{margin-top:1.25rem;background:rgba(193,95,63,.08);border:1px solid rgba(193,95,63,.3);color:#233c32;border-radius:.7rem;padding:.8rem 1rem;font-size:.9rem}.fp-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem}.fp-btn,.fp-nav{align-items:center}.fp-btn{display:inline-flex;justify-content:center;gap:.5rem;padding:.9rem 1.75rem;border-radius:999px;font-size:.95rem;font-weight:600;cursor:pointer;border:1px solid transparent;text-decoration:none;transition:all .3s cubic-bezier(.16,1,.3,1)}.fp-btn-primary{background:#315345;color:#fff;border-color:#315345}.fp-btn-primary:hover{background:#233c32;transform:translateY(-2px);box-shadow:0 12px 30px -8px rgba(49,83,69,.4)}.fp-btn-primary:disabled{opacity:.6;cursor:default;transform:none;box-shadow:none}.fp-btn-ghost{background:transparent;color:#38393e;border-color:rgba(20,20,19,.18)}.fp-btn-ghost:hover{border-color:rgba(49,83,69,.5);color:#1c1d21}.fp-fineprint{text-align:center;font-size:.78rem;color:#b0aea5;margin:1.5rem 0 0}.fp-footnote{text-align:center;font-size:.95rem;color:#6d6e72;margin-top:2.5rem}.fp-footnote a{color:var(--accent-lavender,#233c32)}.fp-loading{margin-top:1.5rem;background:rgba(49,83,69,.05);border:1px solid rgba(49,83,69,.2);border-radius:1rem;padding:1.5rem}.fp-loading-title{font-size:.9rem;color:var(--accent-lavender,#233c32);font-weight:600;margin:0 0 .75rem}.fp-loading-line{font-size:.92rem;color:#38393e;padding:.3rem 0;animation:fp-fade .4s ease}@keyframes fp-fade{0%{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:none}}.fp-success{background:#ffffff;border:1px solid rgba(49,83,69,.25);border-radius:1.5rem;padding:3rem 2.5rem;text-align:center}.fp-success-check{width:64px;height:64px;border-radius:50%;margin:0 auto 1.5rem;background:linear-gradient(135deg,#315345,#496b5b);display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;font-weight:700;box-shadow:0 0 0 8px rgba(49,83,69,.12)}.fp-success h2{font-size:1.8rem;font-weight:600;margin:0 0 1rem;letter-spacing:-.02em;color:#1c1d21}.fp-success-summary{font-size:1.05rem;color:#6d6e72;line-height:1.7;max-width:560px;margin:0 auto 2rem}.fp-success-card{text-align:left;background:rgba(49,83,69,.06);border:1px solid rgba(49,83,69,.2);border-radius:1rem;padding:1.5rem 1.75rem;margin:0 auto 1.5rem;max-width:580px}.fp-success-card-title{font-weight:600;color:var(--accent-lavender,#233c32);margin:0 0 1rem;font-size:.95rem}.fp-highlights{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}.fp-highlights li{display:flex;align-items:flex-start;gap:.7rem;font-size:.95rem;color:#38393e;line-height:1.5;text-align:left}.fp-highlight-dot{width:7px;height:7px;border-radius:50%;background:#315345;margin-top:.5rem;flex-shrink:0}.fp-prompt-preview{max-width:580px;margin:0 auto 2rem;text-align:left}.fp-prompt-preview summary{cursor:pointer;font-size:.9rem;font-weight:600;color:#38393e;padding:.75rem 0;list-style:none;user-select:none}.fp-prompt-preview summary::-webkit-details-marker{display:none}.fp-prompt-preview summary:before{content:"▸ ";color:var(--accent-lavender,#233c32)}.fp-prompt-preview[open] summary:before{content:"▾ "}.fp-prompt-box{position:relative}.fp-prompt-box pre{background:#e8eee7;border:1px solid rgba(20,20,19,.08);border-radius:.8rem;padding:1.25rem;font-size:.78rem;line-height:1.6;color:#38393e;white-space:pre-wrap;word-break:break-word;max-height:360px;overflow-y:auto;font-family:ui-monospace,SF Mono,Menlo,monospace;margin:.5rem 0 0}.fp-copy{position:absolute;top:1.25rem;right:.75rem;z-index:2;background:rgba(49,83,69,.15);border:1px solid rgba(49,83,69,.4);color:var(--accent-lavender,#233c32);border-radius:.5rem;padding:.35rem .75rem;font-size:.78rem;cursor:pointer;font-weight:500;transition:all .2s ease}.fp-copy:hover{background:rgba(49,83,69,.25)}.fp-prompt-note{font-size:.8rem;color:#6d6e72;margin:.75rem 0 0;line-height:1.5}.fp-success-next{border-top:1px solid rgba(20,20,19,.08);padding-top:2rem;max-width:580px;margin:0 auto}.fp-success-next p{font-size:.98rem;color:#38393e;line-height:1.65;margin:0 0 1.5rem}.fp-success-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media (max-width:720px){.fp-page{padding:7rem 1rem 4rem}.fp-form{padding:1.75rem 1.25rem}.fp-success{padding:2rem 1.25rem}.fp-progress-label{display:none}.fp-progress-steps{gap:.4rem}.fp-nav{flex-direction:row}.fp-btn{padding:.8rem 1.25rem;font-size:.9rem}.fp-remove{min-height:40px;min-width:40px;padding:.5rem .6rem}.fp-copy{min-height:40px;padding:.5rem .85rem}.fp-add{min-height:44px;padding:.75rem 1.25rem}}