:root{--bg: #f6efe4;--surface: #fdfaf4;--surface-raised: #ffffff;--line: rgba(139, 106, 71, .2);--line-strong: rgba(139, 106, 71, .4);--ink: #33291f;--ink-soft: #6d5f4e;--ink-faint: #857459;--accent: #a87a4e;--accent-bright: #c39a6b;--accent-deep: #8a5f38;--sage: #6f7d62;--rose: #b97f6c;--error: #a34f3b;--error-strong: #b45f48;--radius: 14px;--font-display: "Didot", "Bodoni 72", "Playfair Display", "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", "Inter", Roboto, "Helvetica Neue", Arial, sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background-color:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(1100px 520px at 50% -8%,rgba(195,154,107,.18),transparent 65%),radial-gradient(900px 600px at -12% 110%,rgba(111,125,98,.12),transparent 60%),radial-gradient(700px 500px at 108% 88%,rgba(185,127,108,.1),transparent 60%);pointer-events:none}::selection{background:#c39a6b59}:focus-visible{outline:2px solid var(--accent-deep);outline-offset:3px;border-radius:4px}.page{display:flex;flex-direction:column;min-height:100vh}.page-main{flex:1;width:100%;max-width:720px;margin:0 auto;padding:clamp(24px,5vw,56px) clamp(20px,5vw,32px) 72px}.welcome-eyebrow,.progress-meta,.field-optional,.footer-links{letter-spacing:.14em;text-transform:uppercase}.welcome,.confirmation{min-height:72vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;animation:rise .7s ease both}.brand-logo{object-fit:contain}.welcome-eyebrow{margin:28px 0 10px;font-size:.72rem;color:var(--accent-deep)}.welcome-headline{margin:0 0 20px;font-family:var(--font-display);font-weight:400;font-size:clamp(2.5rem,7vw,3.9rem);line-height:1.12;letter-spacing:.01em;max-width:15ch}.welcome-headline em{font-style:italic;color:var(--accent)}.welcome-message{margin:0 auto 18px;max-width:34rem;color:var(--ink-soft);font-size:1.06rem}.welcome-note{margin:0 0 34px;color:var(--ink-faint);font-size:.92rem}.welcome-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-bottom:26px}.welcome-privacy{color:var(--ink-faint);font-size:.82rem;max-width:32rem;margin:0}.confirmation-headline{max-width:22ch}.confirmation-seal{color:var(--accent);width:84px;height:84px;margin-bottom:26px}.confirmation-seal svg{width:100%;height:100%}.seal-ring{stroke-dasharray:210;stroke-dashoffset:210;animation:draw 1.1s ease forwards .15s}.seal-check{stroke-dasharray:60;stroke-dashoffset:60;animation:draw .7s ease forwards .9s}.confirmation-spam{color:var(--ink-faint);font-size:.9rem;max-width:30rem;margin:0 0 34px}.confirmation-spam strong{color:var(--ink-soft);font-weight:500}.button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:999px;padding:14px 34px;font-family:var(--font-body);font-size:.98rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,filter .18s ease}.button:active{transform:scale(.975)}.button.primary{background:linear-gradient(135deg,#ddb98c,#bd8f5c 55%,#a87a4e);color:#2c2013;box-shadow:0 6px 20px #a87a4e59}.button.primary:hover{filter:brightness(1.05);box-shadow:0 10px 28px #a87a4e73;transform:translateY(-1px)}.button.primary:disabled{filter:saturate(.55) brightness(.95);cursor:default;transform:none;box-shadow:none}.button.ghost{background:transparent;border-color:var(--line-strong);color:var(--ink)}.button.ghost:hover{border-color:var(--accent);background:#a87a4e14}.button.ghost:disabled{opacity:.5;cursor:default}.button.danger{background:var(--error-strong);color:#fff6ef}.button.danger:hover{filter:brightness(1.08)}.link-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:2px 4px;font:inherit;font-size:.88rem;color:var(--ink-faint);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line-strong);cursor:pointer;transition:color .18s ease}.link-button:hover{color:var(--accent-deep)}.progress{margin-bottom:40px}.progress-meta{display:flex;justify-content:space-between;font-size:.7rem;color:var(--ink-faint);margin-bottom:10px}.progress-track{height:3px;border-radius:999px;background:#8b6a472e;overflow:hidden}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent-deep),var(--accent),var(--accent-bright));transition:width .6s cubic-bezier(.22,1,.36,1)}.step-shell{animation:rise .55s ease both}.step-header{margin-bottom:30px}.step-eyebrow{display:flex;align-items:center;gap:16px;margin:0 0 10px}.step-number{font-family:var(--font-display);font-size:1.9rem;color:var(--accent);line-height:1}.step-rule{flex:0 0 72px;height:1px;background:linear-gradient(90deg,var(--line-strong),transparent)}.step-title{margin:0 0 10px;font-family:var(--font-display);font-weight:400;font-size:clamp(1.9rem,5vw,2.6rem);line-height:1.15;letter-spacing:.01em}.step-intro{margin:0;color:var(--ink-soft);max-width:36rem}.step-nav{display:flex;justify-content:space-between;gap:14px;margin-top:42px}.start-over-row{text-align:center;margin:26px 0 0}.field{margin-bottom:30px;border:none;padding:0;min-width:0}fieldset.field{margin-inline:0}.field-label{display:block;font-size:.98rem;font-weight:500;color:var(--ink);margin-bottom:10px;padding:0}.field-required{color:var(--accent-deep);margin-left:5px}.field-optional{margin-left:10px;font-size:.62rem;color:var(--sage);border:1px solid rgba(111,125,98,.4);border-radius:999px;padding:2px 8px;vertical-align:2px}.field-hint{margin:-4px 0 12px;font-size:.86rem;color:var(--ink-faint);max-width:34rem}.field-input{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:10px;color:var(--ink);font:inherit;font-size:1rem;padding:13px 16px;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.field-input::placeholder{color:var(--ink-faint);opacity:.75}.field-input:hover{border-color:var(--line-strong)}.field-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #a87a4e2e;background:var(--surface-raised)}.field-textarea{resize:vertical;min-height:96px}input.field-input[type=date]{color-scheme:light;max-width:260px}.has-error .field-input{border-color:var(--error-strong)}.field-error{margin:8px 0 0;font-size:.86rem;color:var(--error)}.visually-hidden,.visually-hidden-input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.choice-list{display:flex;flex-direction:column;gap:10px}.choice-pill{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:13px 18px;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.choice-pill:hover{border-color:var(--line-strong);transform:translateY(-1px)}.choice-pill.is-selected{border-color:var(--accent);background:#a87a4e1a}.choice-pill:has(input:focus-visible){outline:2px solid var(--accent-deep);outline-offset:3px}.choice-dot{flex:0 0 18px;height:18px;border-radius:50%;border:1.5px solid var(--line-strong);background:var(--surface-raised);transition:border-color .18s ease,box-shadow .18s ease}.choice-pill.is-selected .choice-dot{border-color:var(--accent-deep);box-shadow:inset 0 0 0 4.5px var(--accent)}.has-error .choice-pill{border-color:#b45f4880}.has-error .choice-pill.is-selected{border-color:var(--accent)}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.chip-grid{display:flex;flex-wrap:wrap;gap:10px}.select-card{position:relative;display:flex;align-items:center;cursor:pointer;border:1px solid var(--line);background:var(--surface);transition:border-color .18s ease,background-color .18s ease,transform .18s ease,box-shadow .18s ease}.select-card.card{gap:14px;border-radius:var(--radius);padding:16px 44px 16px 18px;min-height:64px}.select-card.chip{border-radius:999px;padding:9px 38px 9px 18px;font-size:.92rem}.select-card:hover{border-color:var(--line-strong);transform:translateY(-2px);box-shadow:0 8px 20px #5a402324}.select-card.is-selected{border-color:var(--accent);background:linear-gradient(160deg,#c39a6b38,#c39a6b1a)}.select-card.chip.is-selected{border-color:var(--rose);background:linear-gradient(160deg,#b97f6c2e,#b97f6c14)}.select-card:has(input:focus-visible){outline:2px solid var(--accent-deep);outline-offset:3px}.card-index{font-family:var(--font-display);font-size:1.05rem;color:var(--ink-faint);transition:color .18s ease}.select-card.is-selected .card-index{color:var(--accent-deep)}.card-title{line-height:1.35}.card-check{position:absolute;right:15px;top:50%;width:16px;height:16px;color:var(--accent-deep);opacity:0;transform:translateY(-50%) scale(.6);transition:opacity .18s ease,transform .18s ease}.select-card.chip .card-check{right:13px;width:13px;height:13px;color:#96503c}.select-card.is-selected .card-check{opacity:1;transform:translateY(-50%) scale(1)}.agreement{display:flex;gap:16px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:20px;cursor:pointer;transition:border-color .18s ease,background-color .18s ease}.agreement:hover{border-color:var(--line-strong)}.agreement.is-selected{border-color:var(--accent);background:#c39a6b1f}.agreement:has(input:focus-visible){outline:2px solid var(--accent-deep);outline-offset:3px}.agreement-box{flex:0 0 22px;height:22px;margin-top:2px;border-radius:6px;border:1.5px solid var(--line-strong);background:var(--surface-raised);display:grid;place-items:center;transition:border-color .18s ease,background-color .18s ease}.agreement.is-selected .agreement-box{border-color:var(--accent-deep);background:var(--accent)}.agreement-box .card-check{position:static;transform:none;width:13px;height:13px;color:#fffaf2;opacity:0}.agreement.is-selected .agreement-box .card-check{opacity:1}.agreement-text{color:var(--ink-soft);font-size:.94rem;line-height:1.55}.has-error .agreement{border-color:var(--error-strong)}.review-group{border:1px solid var(--line);border-radius:16px;background:#fffdf8cc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 6px 24px #5a402312;padding:24px clamp(18px,4vw,28px);margin-bottom:18px}.review-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:16px}.review-group-title{margin:0;font-family:var(--font-display);font-weight:400;font-size:1.35rem;letter-spacing:.01em}.review-edit{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid var(--line-strong);border-radius:999px;color:var(--accent-deep);font:inherit;font-size:.8rem;padding:4px 16px;cursor:pointer;transition:background-color .18s ease,border-color .18s ease}.review-edit:hover{background:#a87a4e1a;border-color:var(--accent)}.review-rows{margin:0;display:flex;flex-direction:column;gap:12px}.review-row{display:grid;grid-template-columns:190px 1fr;gap:6px 18px}.review-row dt{color:var(--ink-faint);font-size:.86rem;padding-top:2px}.review-row dd{margin:0;color:var(--ink);font-size:.96rem;white-space:pre-wrap;overflow-wrap:anywhere}.review-row dd.not-provided{color:var(--ink-faint);font-style:italic}.submit-error{border:1px solid rgba(180,95,72,.5);background:#b45f4814;border-radius:12px;color:var(--error);font-size:.92rem;padding:16px 18px;margin-top:26px}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#3d2e1f61;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px;animation:fade .2s ease both}.dialog{background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:18px;box-shadow:0 30px 80px #46321e4d;max-width:430px;width:100%;padding:30px 28px 26px;animation:rise .28s ease both}.dialog-title{margin:0 0 10px;font-family:var(--font-display);font-weight:400;font-size:1.6rem}.dialog-message{margin:0 0 24px;color:var(--ink-soft);font-size:.95rem}.dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px}.dialog-actions .button{padding:11px 24px;font-size:.9rem}.site-footer{border-top:1px solid var(--line);background:linear-gradient(180deg,#c39a6b0d,#c39a6b1f);padding:44px 24px 40px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}.footer-name{margin:12px 0 2px;font-family:var(--font-display);font-size:1.12rem;letter-spacing:.04em}.footer-links{margin:0;font-size:.72rem;color:var(--ink-faint)}.footer-links a{color:var(--ink-soft);text-decoration:none;transition:color .18s ease}.footer-links a:hover{color:var(--accent-deep)}.footer-copyright{margin:10px 0 0;font-size:.74rem;color:var(--ink-faint)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes draw{to{stroke-dashoffset:0}}@media(max-width:640px){.card-grid{grid-template-columns:1fr}.review-row{grid-template-columns:1fr;gap:2px}.step-nav{flex-direction:column-reverse}.step-nav .button{width:100%}.welcome-actions{width:100%;flex-direction:column}.welcome-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}}
