.plan-wizard [hidden]{display:none!important}.plan-wizard .sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.planner-hero{padding-top:var(--space-8)}.planner-inner{max-width:760px}.planner-hero h1{font-size:var(--text-h1);margin-bottom:var(--space-4)}.planner-hero .lead{font-size:var(--text-body-lg);margin-bottom:0}.draft-note{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);background:var(--moss-tint-2);border-left:3px solid var(--color-amber);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:var(--text-body-sm);color:var(--text-primary)}.plan-wizard .js-only{display:none}.js .plan-wizard .plan-progress.js-only{display:block}.js .plan-wizard .plan-nav.js-only{display:flex}.js .plan-wizard .plan-step{display:none}.js .plan-wizard .plan-step.is-active{display:block}.plan-progress{margin-bottom:var(--space-5)}.progress-text{font-size:var(--text-label);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--text-heading);margin-bottom:var(--space-2)}.progress-dots{gap:var(--space-2);margin:0;padding:0;list-style:none;display:flex}.progress-dots li{border-radius:var(--radius-sm);background:var(--border-light);width:28px;height:4px;margin:0}.progress-dots li.is-current{background:var(--color-moss)}.plan-step{margin:0 0 var(--space-6);border:none;min-width:0;padding:0}.step-heading{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-h2);line-height:var(--leading-tight);letter-spacing:var(--tracking-snug);color:var(--text-heading);margin-bottom:var(--space-3);padding:0}.step-heading:focus{outline:none}.step-sub{max-width:60ch;color:var(--text-primary);margin-bottom:var(--space-5)}.step-sub a{color:var(--text-heading);text-underline-offset:3px;text-decoration:underline}.contact-sub{margin-top:var(--space-5)}.field{margin-bottom:var(--space-5)}.field label{font-weight:var(--weight-semibold);color:var(--text-label-light);margin-bottom:var(--space-2);display:block}.field .optional{font-weight:var(--weight-regular);color:var(--text-muted)}.field .hint{font-size:var(--text-body-sm);color:var(--text-muted);margin-bottom:var(--space-2)}.field input,.field textarea{background:var(--bg-input-light);border:1px solid var(--border-input-light);border-radius:var(--radius-md);width:100%;max-width:100%;padding:var(--space-3) var(--space-4);color:var(--text-primary);font-size:var(--text-body-sm);line-height:var(--leading-normal)}.field input{max-width:380px}.field textarea{resize:vertical}.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--border-input-focus-light);outline-offset:1px;border-color:var(--border-input-focus-light)}.field-row{gap:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.field-row .field{margin-bottom:0}.field-row .field input{max-width:100%}.choice-row{gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.choice-pill{align-items:center;gap:var(--space-3);background:var(--bg-light-card);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);cursor:pointer;min-height:44px;font-weight:var(--weight-medium);color:var(--text-primary);transition:border-color var(--transition-normal), box-shadow var(--transition-normal);display:flex}.choice-pill:hover{border-color:var(--color-amber);box-shadow:var(--shadow-light)}.choice-pill:has(input:checked){border-color:var(--color-moss);box-shadow:inset 0 0 0 1px var(--color-moss)}.choice-pill:has(input:focus-visible){outline:2px solid var(--border-input-focus-light);outline-offset:2px}.choice-pill input{accent-color:var(--color-moss);width:18px;height:18px;margin:0}.goodbye-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.goodbye-card{background:var(--bg-light-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-light);padding:var(--space-5) var(--space-6);cursor:pointer;transition:border-color var(--transition-normal), box-shadow var(--transition-normal);display:block}.goodbye-card:hover{border-color:var(--color-amber);box-shadow:var(--shadow-light-hover)}.goodbye-card:has(input:checked){border-color:var(--color-moss);box-shadow:inset 0 0 0 1px var(--color-moss), var(--shadow-light)}.goodbye-card:has(input:focus-visible){outline:2px solid var(--border-input-focus-light);outline-offset:2px}.goodbye-card input{opacity:0;width:1px;height:1px;position:absolute}.goodbye-name{font-weight:var(--weight-bold);color:var(--text-heading);font-size:var(--text-h4);margin-bottom:var(--space-2);display:block}.goodbye-card:has(input:checked) .goodbye-name:after{content:" ✓";color:var(--color-moss)}.goodbye-note{font-size:var(--text-body-sm);color:var(--text-primary);line-height:var(--leading-normal);display:block}.ceremony-grid{gap:var(--space-3);margin-bottom:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.ceremony-check{align-items:center;gap:var(--space-3);background:var(--bg-light-card);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);cursor:pointer;min-height:44px;color:var(--text-primary);transition:border-color var(--transition-normal);display:flex}.ceremony-check:hover{border-color:var(--color-amber)}.ceremony-check:has(input:checked){border-color:var(--color-moss);box-shadow:inset 0 0 0 1px var(--color-moss)}.ceremony-check:has(input:focus-visible){outline:2px solid var(--border-input-focus-light);outline-offset:2px}.ceremony-check input{accent-color:var(--color-moss);flex:none;width:18px;height:18px;margin:0}.plan-nav{justify-content:space-between;gap:var(--space-4);display:flex}.plan-nav .nav-btn{min-width:160px}.plan-nav #next-btn{margin-left:auto}.plan-summary{padding:var(--space-6);margin-bottom:var(--space-5)}.plan-summary h3{font-size:var(--text-label);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--text-heading);margin:var(--space-5) 0 var(--space-2)}.plan-summary h3:first-child{margin-top:0}.plan-summary p{margin:0 0 var(--space-2);white-space:pre-wrap;overflow-wrap:anywhere}.summary-empty{color:var(--text-muted)}.review-actions{gap:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.review-btn{text-align:center;white-space:nowrap;min-width:0;font-size:clamp(.8125rem,.72rem + .34vw,.9375rem)}.talk-note{margin:var(--space-3) 0 0;font-size:var(--text-body-sm);color:var(--text-muted);max-width:60ch}.talk-error{margin:var(--space-3) 0 0;padding:var(--space-3) var(--space-4);border-left:3px solid var(--color-persimmon,#c95000);background:var(--bg-light-card-alt);max-width:60ch}.start-over-row{margin:var(--space-5) 0 0}.start-over{padding:var(--space-2) 0;font-size:var(--text-body-sm);color:var(--text-muted);text-underline-offset:3px;background:0 0;border:none;text-decoration:underline}.start-over:hover,.start-over:focus-visible{color:var(--text-heading)}.noscript-note,.privacy-note{font-size:var(--text-body-sm);color:var(--text-muted);margin:var(--space-5) 0 0;max-width:60ch}.noscript-note a{color:var(--text-heading);font-weight:var(--weight-semibold)}.print-sheet{display:none}@media print{body *{visibility:hidden}.print-sheet,.print-sheet *{visibility:visible}.print-sheet{color:#000;background:#fff;width:100%;padding:24pt;font-size:11pt;line-height:1.5;display:block;position:absolute;inset:0 auto auto 0}.print-head{border-bottom:1pt solid #4b5d1f;align-items:center;gap:12pt;margin-bottom:14pt;padding-bottom:10pt;display:flex}.print-brand{color:#4b5d1f;margin:0;font-size:14pt;font-weight:700}.print-promise{color:#3d2610;margin:0;font-size:9pt}#print-summary h3{text-transform:uppercase;letter-spacing:.08em;color:#4b5d1f;margin:12pt 0 4pt;font-size:10pt}#print-summary p{white-space:pre-wrap;margin:0 0 4pt}}@media (width<=899px){.goodbye-grid,.ceremony-grid,.field-row,.review-actions{grid-template-columns:1fr}.review-btn{white-space:normal}.field-row .field{margin-bottom:var(--space-4)}}
