.tamuk-obituary-form-wrapper{--obit-blue:var(--tamuk-blue, #003399);--obit-blue-dark:#002266;--obit-gold:var(--tamuk-gold, #FCC10F);--obit-red:#dc2626;--obit-white:#ffffff;--obit-gray-50:#f9fafb;--obit-gray-100:#f3f4f6;--obit-gray-200:#e5e7eb;--obit-gray-300:#d1d5db;--obit-gray-400:#9CA3AF;--obit-gray-500:#6B7280;--obit-gray-600:#4B5563;--obit-gray-900:#111827;--obit-radius:8px;--obit-radius-lg:12px;--obit-focus:0 0 0 3px rgba(0, 51, 153, 0.2);--obit-shadow:0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.04);--obit-shadow-md:0 4px 12px rgba(0, 0, 0, 0.07), 0 1px 4px rgba(0, 0, 0, 0.04);--obit-transition:180ms ease}.tamuk-obituary-form-wrapper{max-width:740px;margin:0 auto;padding:2.5rem 1.5rem 2rem;font-family:var(--font-body,'Source Sans 3','Source Sans Pro',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif);color:var(--obit-gray-900)}.tamuk-obit-title{text-align:center;font-size:1.75rem;font-weight:700;color:var(--obit-blue);margin:0 0 .25rem;font-family:var(--font-heading,'Cinzel',Georgia,serif);letter-spacing:.01em}.tamuk-obit-title::after{content:'';display:block;width:60px;height:3px;background:var(--obit-gold);margin:.75rem auto 0;border-radius:2px}.tamuk-obit-description{text-align:center;color:var(--obit-gray-500);margin:1rem 0 2.25rem;font-size:1.0625rem;line-height:1.65}.tamuk-obituary-form{background:var(--obit-white);border:1px solid var(--obit-gray-200);border-radius:var(--obit-radius-lg);box-shadow:var(--obit-shadow-md);padding:1.75rem 2rem 1rem}@media (max-width:600px){.tamuk-obituary-form{padding:1.25rem 1rem .75rem}}.tamuk-obituary-form fieldset{border:none;padding:0;margin:0 0 .5rem}.tamuk-obituary-form legend{font-weight:700;font-size:.8125rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--obit-gold);color:var(--obit-blue);letter-spacing:.02em;text-transform:uppercase;width:100%}.tamuk-obit-field{margin-bottom:1.25rem}.tamuk-obit-field label{display:block;font-weight:600;font-size:.8125rem;margin-bottom:.375rem;color:var(--obit-gray-600);letter-spacing:.02em;text-transform:uppercase}.tamuk-obit-req{color:var(--obit-red);font-weight:700;text-transform:none}.tamuk-obit-help{font-size:.8125rem;color:var(--obit-gray-400);margin:.25rem 0 .625rem;text-transform:none;letter-spacing:normal}.tamuk-obituary-form input[type="text"],.tamuk-obituary-form input[type="email"],.tamuk-obituary-form input[type="date"],.tamuk-obituary-form input[type="tel"],.tamuk-obituary-form select,.tamuk-obituary-form textarea{display:block;width:100%;padding:.6875rem .875rem;font-size:.9375rem;line-height:1.5;color:var(--obit-gray-900);background:var(--obit-white);border:1px solid var(--obit-gray-300);border-radius:var(--obit-radius);box-shadow:inset 0 1px 2px rgb(0 0 0 / .04);transition:border-color var(--obit-transition),box-shadow var(--obit-transition);box-sizing:border-box;font-family:inherit}.tamuk-obituary-form input[type="date"]{padding-top:.375rem;padding-bottom:.375rem;height:2.625rem}.tamuk-obituary-form input::placeholder,.tamuk-obituary-form textarea::placeholder{color:var(--obit-gray-400)}.tamuk-obituary-form input:focus,.tamuk-obituary-form select:focus,.tamuk-obituary-form textarea:focus{outline:none;border-color:var(--obit-blue);box-shadow:var(--obit-focus),inset 0 1px 2px rgb(0 0 0 / .04)}.tamuk-obituary-form textarea{resize:vertical;min-height:140px}.tamuk-obituary-form select{appearance:auto}.tamuk-obituary-form input[aria-invalid="true"],.tamuk-obituary-form select[aria-invalid="true"],.tamuk-obituary-form textarea[aria-invalid="true"]{border-color:var(--obit-red);box-shadow:0 0 0 3px rgb(220 38 38 / .12),inset 0 1px 2px rgb(0 0 0 / .04)}.tamuk-obit-row{display:flex;gap:1rem}.tamuk-obit-row--half>.tamuk-obit-field{flex:1;min-width:0}@media (max-width:600px){.tamuk-obit-row{flex-direction:column;gap:0}}.tamuk-obit-fieldset{margin-bottom:1.25rem;padding:1.25rem 1.25rem .25rem;background:var(--obit-gray-50);border:1px solid var(--obit-gray-200);border-radius:var(--obit-radius)}.tamuk-obit-field--checkbox{padding:1rem 1.25rem;background:var(--obit-gray-50);border:1px solid var(--obit-gray-200);border-radius:var(--obit-radius)}.tamuk-obit-field--checkbox label{display:flex;align-items:flex-start;gap:.625rem;font-weight:400;cursor:pointer;text-transform:none;letter-spacing:normal}.tamuk-obit-field--checkbox input[type="checkbox"]{width:18px;height:18px;margin-top:2px;flex-shrink:0;accent-color:var(--obit-blue)}.tamuk-obit-field--checkbox span{font-size:.875rem;line-height:1.55;color:var(--obit-gray-600)}.tamuk-obit-error{display:none;font-size:.8125rem;color:var(--obit-red);margin-top:.3rem;text-transform:none;letter-spacing:normal;font-weight:500}.tamuk-obit-error:not(:empty){display:block}.tamuk-obit-alert{padding:.875rem 1rem;border-radius:var(--obit-radius);font-size:.875rem;margin-bottom:1.5rem}.tamuk-obit-alert--error{background:#fef2f2;border:1px solid #fecaca;color:var(--obit-red)}.tamuk-obit-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0}.tamuk-obit-file-input{font-size:.875rem}.tamuk-obit-previews{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.75rem}.tamuk-obit-preview{position:relative;width:80px;height:80px;border-radius:var(--obit-radius);overflow:hidden;border:1px solid var(--obit-gray-200);box-shadow:var(--obit-shadow)}.tamuk-obit-preview img{width:100%;height:100%;object-fit:cover;display:block}.tamuk-obit-preview-remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:rgb(0 0 0 / .55);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1;padding:0;transition:background-color var(--obit-transition)}.tamuk-obit-preview-remove:hover{background:rgb(220 38 38 / .85)}.tamuk-obit-field--submit{margin-top:1.25rem;text-align:center}.tamuk-obit-submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9375rem 2.75rem;background:var(--obit-blue);color:var(--obit-white);font-size:1.0625rem;font-weight:600;font-family:inherit;border:none;border-radius:var(--obit-radius);cursor:pointer;transition:background-color var(--obit-transition),box-shadow var(--obit-transition),transform 100ms ease;min-width:240px;box-shadow:0 2px 6px rgb(0 51 153 / .2)}.tamuk-obit-submit:hover{background:var(--obit-blue-dark);box-shadow:0 4px 12px rgb(0 51 153 / .3)}.tamuk-obit-submit:focus-visible{outline:none;box-shadow:var(--obit-focus),0 2px 6px rgb(0 51 153 / .2)}.tamuk-obit-submit:active{transform:translateY(1px);box-shadow:0 1px 3px rgb(0 51 153 / .2)}.tamuk-obit-submit:disabled{opacity:.65;cursor:not-allowed;box-shadow:none}.tamuk-obit-spinner svg{display:block}.tamuk-obit-thank-you{animation:tamukObitFadeIn 0.5s ease-out}.tamuk-obit-thank-you-inner{text-align:center;padding:3.5rem 2rem;background:linear-gradient(135deg,#f0f4ff 0%,#eef2ff 50%,var(--obit-gray-50) 100%);border:1px solid var(--obit-gray-200);border-radius:var(--obit-radius-lg);box-shadow:var(--obit-shadow-md)}.tamuk-obit-thank-you-icon{margin-bottom:1.25rem}.tamuk-obit-thank-you-icon svg{filter:drop-shadow(0 2px 6px rgb(0 51 153 / .2))}.tamuk-obit-thank-you-title{font-size:1.75rem;font-weight:700;color:var(--obit-blue);margin:0 0 .25rem;font-family:var(--font-heading,'Cinzel',Georgia,serif)}.tamuk-obit-thank-you-title::after{content:'';display:block;width:50px;height:3px;background:var(--obit-gold);margin:.75rem auto 0;border-radius:2px}.tamuk-obit-thank-you-message{font-size:1.0625rem;color:var(--obit-gray-500);line-height:1.7;max-width:540px;margin:1rem auto 0}@keyframes tamukObitFadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}