*{box-sizing:border-box} :root{color-scheme:light;--ink:#172a34;--muted:#5e6d72;--paper:#f4f1e9;--surface:#fffefa;--line:#deded5;--green:#0f5c54;--green-dark:#0b4842;--mint:#eaf2ef;--rust:#a34f3e;--shadow:0 18px 54px rgba(26,43,45,.07);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}
body{margin:0;min-height:100vh;background:var(--paper)}button,input,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.topbar{min-height:82px;padding:16px clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(36,57,59,.13);background:rgba(250,249,244,.88)}.brand{display:flex;align-items:center;gap:13px;color:inherit;text-decoration:none}.brand-mark{width:42px;height:42px;border:1.5px solid var(--green);color:var(--green);display:grid;place-items:center;font-family:Georgia,serif;font-weight:700;font-size:17px;letter-spacing:-1px}.brand-copy{display:grid;gap:2px}.brand-copy strong{font-family:Georgia,serif;font-weight:600;font-size:17px;letter-spacing:.01em}.brand-copy small{font-size:11px;color:var(--muted);letter-spacing:.045em}.privacy-note{display:flex;align-items:center;gap:8px;font-size:12px;color:#465b5a}.privacy-dot{width:8px;height:8px;border-radius:50%;background:var(--green)}.page-shell{width:min(100% - 40px,860px);margin:0 auto;padding:62px 0 88px}.intro,.form-shell,.success-panel{background:var(--surface);border:1px solid rgba(33,56,59,.1);box-shadow:var(--shadow)}.intro{padding:clamp(26px,5vw,62px) clamp(24px,6vw,76px)}.eyebrow,.section-label{margin:0 0 12px;color:var(--green);font-size:11px;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.intro h1,.success-panel h1{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,5.5vw,53px);line-height:1.1;font-weight:500;letter-spacing:-.035em}.intro-subtitle{margin:12px 0 0;color:var(--muted);font-family:Georgia,serif;font-size:19px}.intro-rule{width:58px;height:2px;background:var(--green);margin:27px 0 28px}.notice-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.notice-card{padding:20px 21px;background:#f5f6f1;border-left:2px solid var(--green)}.notice-card-muted{background:#f8f6f0;border-left-color:#9a9b85}.notice-card h2{margin:0 0 8px;font:600 16px Georgia,serif}.notice-card p,.privacy-disclosure{margin:0;color:#49585c;font-size:14px;line-height:1.7}.privacy-disclosure{margin:21px 0 28px;padding:15px 17px;border:1px solid var(--line);background:#fcfbf7;font-size:12px;line-height:1.65}.button{min-height:48px;padding:12px 19px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:13px;font-size:14px;font-weight:650;transition:background .18s ease,border-color .18s ease,transform .18s ease}.button:focus-visible,input:focus-visible,textarea:focus-visible,.review-group summary:focus-visible{outline:3px solid rgba(15,92,84,.27);outline-offset:2px}.button-primary{background:var(--green);color:white}.button-primary:hover{background:var(--green-dark);transform:translateY(-1px)}.button-primary:disabled{opacity:.62;cursor:wait;transform:none}.button-secondary{border-color:#bdc7c1;background:transparent;color:var(--ink)}.button-secondary:hover:not(:disabled){background:#f0f3ef;border-color:var(--green)}.button-secondary:disabled{opacity:.42;cursor:not-allowed}.button-start{min-width:232px}.intro-footnote{margin:13px 0 0;color:var(--muted);font-size:12px}.form-shell{padding:0 clamp(21px,5.4vw,64px) 42px}.step-header{margin:0 calc(clamp(21px,5.4vw,64px)*-1);padding:24px clamp(21px,5.4vw,64px) 17px;background:#fbfaf6;border-bottom:1px solid var(--line)}.step-headline{display:flex;justify-content:space-between;align-items:center}.step-headline .eyebrow{margin:0}.step-count{margin:0;color:var(--muted);font-size:12px}.progress-track{height:4px;margin:13px 0 15px;background:#e1e6e0;overflow:hidden}.progress-track span{height:100%;display:block;background:var(--green);transition:width .2s ease}.section-nav{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}.nav-item{min-width:0;padding-top:5px;border-top:2px solid #dce1dc;color:#82908d;font-size:9px;line-height:1.25}.nav-item.active{border-color:var(--green);color:var(--green);font-weight:650}.nav-item.complete{border-color:#9cb9ac;color:#526e65}.nav-index{display:block;margin-bottom:3px;font-size:9px;letter-spacing:.04em}.step-content{padding:34px 0 10px;outline:none}.step-content h1{margin:0 0 12px;font:500 clamp(29px,4vw,39px)/1.16 Georgia,"Times New Roman",serif;letter-spacing:-.025em}.section-label{margin-bottom:9px}.section-intro{max-width:690px;margin:0 0 24px;color:var(--muted);font-size:15px;line-height:1.7}.questions{display:grid;gap:21px;margin-top:23px}.question{min-width:0;padding:0;border:0;margin:0}.field-label,.question legend{display:block;width:100%;margin:0 0 9px;font-size:14px;font-weight:630;line-height:1.5}.question legend{padding:0}.question-number{display:inline-grid;place-items:center;width:26px;height:26px;margin-right:9px;border:1px solid #d8dfd9;color:var(--green);font-size:10px;font-weight:700;vertical-align:middle}.required-note{margin-left:7px;color:var(--rust);font-size:10px;font-weight:550}.question input:not([type=checkbox]):not([type=radio]),.question textarea,.part-label input{width:100%;border:1px solid #cbd2cd;border-radius:0;background:white;color:var(--ink);padding:12px 13px;font-size:14px}.question textarea{min-height:102px;resize:vertical;line-height:1.6}.question input::placeholder,.question textarea::placeholder{color:#8b9692}.field-parts{display:grid;grid-template-columns:1fr 1fr;gap:13px}.part-label{display:block;color:var(--muted);font-size:12px}.part-label input{display:block;margin-top:7px}.choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.choice-list-multiple{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-option{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border:1px solid #d8dfd9;background:#fff;color:#34484b;font-size:13px;line-height:1.4;cursor:pointer}.choice-option:has(input:checked){border-color:#80a89a;background:#f1f7f3}.choice-option input,.consent-choice input{width:16px;height:16px;margin:1px 0 0;accent-color:var(--green);flex:none}.conditional-note{display:block;margin-top:12px;color:var(--muted);font-size:12px}.conditional-note textarea{display:block;width:100%;margin-top:6px;border:1px solid #cbd2cd;padding:10px}.field-hint{margin:0 0 12px;color:var(--muted);font-size:12px;line-height:1.6}.inline-hint{padding:12px 14px;background:var(--mint)}.upload-card{padding:19px;border:1px solid var(--line);background:#fbfaf6}.upload-card input[type=file]{display:block;width:100%;margin-top:10px;color:var(--muted);font-size:12px}.file-list{padding-left:18px;margin:10px 0 0;font-size:12px;color:#465653}.file-list li{padding:4px 0}.file-list span{color:var(--muted)}.declaration-box{padding:22px;background:#f5f6f1;border-left:2px solid var(--green)}.declaration-box p{margin:0 0 16px;font-size:14px;line-height:1.75}.consent-choice{display:flex;align-items:flex-start;gap:10px;padding-top:14px;border-top:1px solid var(--line);font-size:13px;font-weight:600;line-height:1.5}.step-actions{display:flex;justify-content:space-between;gap:12px;padding-top:24px;margin-top:20px;border-top:1px solid var(--line)}.form-error{margin:12px 0 0;padding:12px 14px;border-left:3px solid var(--rust);background:#fbefeb;color:#763a31;font-size:13px;line-height:1.5}.review-list{margin-top:23px;border-top:1px solid var(--line)}.review-group{border-bottom:1px solid var(--line)}.review-group summary{display:flex;align-items:center;gap:11px;padding:15px 2px;cursor:pointer;list-style:none;font-size:14px;font-weight:640}.review-group summary::-webkit-details-marker{display:none}.review-group summary::after{content:'+';margin-left:auto;color:var(--green);font-size:19px}.review-group[open] summary::after{content:'−'}.review-index{color:var(--green);font-size:10px;letter-spacing:.05em}.review-count{margin-left:auto;color:var(--muted);font-size:11px;font-weight:450}.review-items{padding:0 4px 13px 30px}.review-item{padding:10px 0;border-top:1px solid #eceee9}.review-item strong{font-size:12px}.review-item p,.empty-review{margin:5px 0 0;color:#4e5b5c;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.empty-review{font-style:italic}.review-consent-reminder{margin-top:19px;padding:14px;background:var(--mint);color:#354c49;font-size:13px;line-height:1.6}.success-panel{padding:clamp(30px,6vw,70px);text-align:center}.success-icon{width:47px;height:47px;margin:0 auto 20px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:var(--green);font-size:23px}.success-panel h1{max-width:600px;margin:0 auto 14px;font-size:clamp(31px,5vw,45px)}.success-panel>p:not(.eyebrow){max-width:560px;margin:0 auto;color:#536161;line-height:1.7}.success-footnote{padding-top:14px;font-size:12px}.site-footer{display:flex;justify-content:space-between;gap:12px;width:min(100% - 40px,860px);margin:0 auto;padding:0 0 28px;color:#71807c;font-size:11px}.questionnaire-busy{opacity:.7}
@media(max-width:640px){.topbar{min-height:70px;padding:13px 18px}.brand-mark{width:37px;height:37px}.brand-copy strong{font-size:15px}.brand-copy small{font-size:9px}.privacy-note{font-size:0}.privacy-dot{width:9px;height:9px}.page-shell{width:calc(100% - 24px);padding:25px 0 44px}.intro{padding:27px 22px}.intro h1{font-size:36px}.notice-grid{grid-template-columns:1fr;gap:9px}.notice-card{padding:16px}.privacy-disclosure{font-size:11px}.form-shell{padding:0 19px 28px}.step-header{margin:0 -19px;padding:19px}.section-nav{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:8px}.nav-item{font-size:8px}.step-content{padding-top:27px}.step-content h1{font-size:31px}.choice-list,.choice-list-multiple{grid-template-columns:1fr}.field-parts{grid-template-columns:1fr}.step-actions .button{flex:1;padding:11px 9px;font-size:13px}.review-group summary{gap:7px;font-size:12px}.review-count{font-size:10px}.review-items{padding-left:19px}.site-footer{width:calc(100% - 28px);flex-direction:column;gap:5px;font-size:10px}.success-panel{padding:35px 21px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.link-button{padding:8px 0;border:0;background:transparent;color:var(--green);font-size:12px;text-decoration:underline;text-underline-offset:3px}

progress.progress-track{display:block;width:100%;height:4px;margin:13px 0 15px;border:0;appearance:none;background:#e1e6e0}
progress.progress-track::-webkit-progress-bar{background:#e1e6e0}
progress.progress-track::-webkit-progress-value{background:var(--green);transition:width .2s ease}
progress.progress-track::-moz-progress-bar{background:var(--green)}
