.form-page{background:var(--theme-paper);color:var(--theme-ink)}.form-page *{box-sizing:border-box}.form-shell{margin:0 auto;max-width:1080px;padding-inline:1.5rem}.form-hero{background:linear-gradient(120deg,transparent 0 70%,rgba(136,176,75,.12) 70% 77%,transparent 77%),var(--theme-bg);border-bottom:1px solid var(--theme-border);padding:clamp(4rem,7vw,6rem) 0}.form-hero__grid{align-items:end;display:grid;gap:clamp(2rem,6vw,6rem);grid-template-columns:minmax(0,1.2fr) minmax(260px,.65fr)}.form-eyebrow{color:var(--theme-green);font-size:.76rem;font-weight:700;letter-spacing:.15em;margin:0 0 1rem;text-transform:uppercase}.form-hero h1,.form-complete h1{color:var(--theme-deep-green);font-family:var(--serif-font-family);font-size:clamp(2.45rem,5vw,4rem);font-weight:600;letter-spacing:-.045em;line-height:1.3;margin:0}.form-hero__lead{font-size:clamp(1.02rem,1.8vw,1.2rem);line-height:2;margin:1.6rem 0 0;max-width:46rem}.form-hero__notice{border-top:1px solid var(--theme-border);color:var(--theme-muted);line-height:1.9;margin:0;padding-top:1.2rem}.form-section{padding:clamp(3.5rem,6vw,5.5rem) 0 clamp(5rem,8vw,7rem)}.form-layout{align-items:start;display:grid;gap:clamp(2rem,5vw,4.5rem);grid-template-columns:minmax(0,1.5fr) minmax(260px,.6fr)}.form-card{background:#fff;border:1px solid var(--theme-border);border-radius:1rem;box-shadow:0 1rem 2.5rem #1932290f;padding:clamp(1.35rem,4vw,2.5rem)}.form-card__intro{border-bottom:1px solid var(--theme-border);margin-bottom:2rem;padding-bottom:1.5rem}.form-card__intro h2,.form-side h2,.form-complete h2{color:var(--theme-deep-green);font-family:var(--serif-font-family);font-size:clamp(1.45rem,2.7vw,2rem);font-weight:600;margin:0}.form-card__intro p,.form-side p,.form-complete p,.form-complete li{color:var(--theme-muted);line-height:1.9}.form-required-note{font-size:.86rem;margin:.8rem 0 0}.form-fields{display:grid;gap:1.75rem}.form-field,.form-fieldset{border:0;display:grid;gap:.65rem;margin:0;min-width:0;padding:0}.form-field label,.form-fieldset legend{color:var(--theme-deep-green);font-size:.96rem;font-weight:700}.form-required,.form-optional{border-radius:999px;display:inline-block;font-size:.7rem;margin-left:.45rem;padding:.1rem .45rem;vertical-align:.1em}.form-required{background:var(--theme-deep-green);color:#fff}.form-optional{background:var(--theme-bg-soft);color:var(--theme-muted)}.form-field input,.form-field select,.form-field textarea{background:#fff;border:1px solid #aebdb4;border-radius:.55rem;color:var(--theme-ink);font:inherit;min-height:3.1rem;padding:.72rem .85rem;width:100%}.form-field textarea{line-height:1.7;min-height:9rem;resize:vertical}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible,.form-choice input:focus-visible,.form-submit:focus-visible,.form-link-button:focus-visible{outline:3px solid color-mix(in srgb,var(--theme-wakaba) 65%,#fff);outline-offset:2px}.form-field [aria-invalid=true]{border-color:#a63d40}.form-help,.form-error,.form-branch-status{font-size:.82rem;line-height:1.65;margin:0}.form-help,.form-branch-status{color:var(--theme-muted)}.form-error{color:#8b2226;min-height:1.2em}.form-choice-list{display:grid;gap:.65rem;grid-template-columns:repeat(2,minmax(0,1fr))}.form-choice{align-items:start;border:1px solid var(--theme-border);border-radius:.65rem;cursor:pointer;display:flex;gap:.65rem;line-height:1.55;padding:.8rem}.form-choice:has(input:checked){background:color-mix(in srgb,var(--theme-wakaba) 9%,#fff);border-color:var(--theme-wakaba)}.form-choice:has(input:disabled){color:var(--theme-muted);cursor:not-allowed;opacity:.6}.form-choice:has(input[data-payment-available=false]){background:var(--theme-bg-soft);opacity:.85}.form-choice input{flex:0 0 auto;margin-top:.25rem}.form-conditional{background:var(--theme-bg);border-left:3px solid var(--theme-wakaba);padding:1rem}.form-conditional[hidden],.form-fieldset[hidden]{display:none}.form-consent{border-top:1px solid var(--theme-border);display:grid;gap:.8rem;padding-top:1.5rem}.form-consent .form-choice{border:0;padding:0}.form-submit{background:var(--theme-deep-green);border:1px solid var(--theme-deep-green);border-radius:var(--btn-radius);color:#fff;cursor:pointer;font:inherit;font-weight:700;min-height:3.4rem;padding:.8rem 1.5rem;width:100%}.form-submit:hover:not(:disabled){background:var(--theme-color-hover)}.form-submit:disabled{cursor:wait;opacity:.72}.form-contract-note{background:var(--theme-bg-soft);border:1px solid var(--theme-border);border-radius:.7rem;color:var(--theme-ink);font-size:.9rem;line-height:1.8;margin:0;padding:1rem}.form-side{display:grid;gap:1.5rem;position:sticky;top:6rem}.form-side section{border-top:1px solid var(--theme-border);padding-top:1.25rem}.form-side h2{font-size:1.2rem}.form-side ul{color:var(--theme-muted);line-height:1.85;margin:.75rem 0 0;padding-left:1.25rem}.form-side ol{color:var(--theme-muted);line-height:1.8;list-style:decimal;margin:.75rem 0 0;padding-left:1.5rem}.form-side li+li{margin-top:.4rem}.form-side a,.form-card a,.form-complete a{color:var(--theme-deep-green);font-weight:700;text-underline-offset:.25em}.form-honeypot{left:-10000px;position:absolute;top:auto}.form-complete{background:var(--theme-bg);min-height:70vh;padding:clamp(4.5rem,9vw,8rem) 0}.form-complete__card{background:#fff;border:1px solid var(--theme-border);border-radius:1rem;margin:0 auto;max-width:760px;padding:clamp(1.6rem,5vw,3.5rem)}.form-complete__mark{align-items:center;background:var(--theme-deep-green);border-radius:50%;color:#fff;display:flex;font-size:1.4rem;height:3rem;justify-content:center;margin-bottom:1.5rem;width:3rem}.form-complete__notice{background:var(--theme-bg-soft);border-left:3px solid var(--theme-wakaba);margin:1.5rem 0;padding:1rem 1.2rem}.form-complete__actions{align-items:center;display:flex;flex-wrap:wrap;gap:1rem 1.4rem;margin-top:2rem}.form-link-button{background:var(--theme-deep-green);border-radius:var(--btn-radius);color:#fff!important;display:inline-flex;min-height:3rem;padding:.75rem 1.25rem;text-decoration:none}@media (max-width: 820px){.form-hero__grid,.form-layout{grid-template-columns:1fr}.form-side{position:static}}@media (max-width: 560px){.form-shell{padding-inline:1rem}.form-choice-list{grid-template-columns:1fr}.form-hero{padding-block:3.5rem}}
