html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}:root{--background: hsl(0, 0%, 100%);--foreground: hsl(262, 60%, 20%);--card: hsl(0, 0%, 100%);--primary: hsl(262, 70%, 45%);--primary-foreground: hsl(0, 0%, 100%);--primary-hover: hsl(262, 70%, 40%);--primary-5: hsla(262, 70%, 45%, .05);--primary-10: hsla(262, 70%, 45%, .1);--primary-20: hsla(262, 70%, 45%, .2);--muted-foreground: hsl(262, 15%, 45%);--accent: hsl(262, 50%, 94%);--accent-50: hsla(262, 50%, 94%, .5);--accent-foreground: hsl(262, 70%, 35%);--destructive: hsl(0, 65%, 50%);--border: hsl(262, 20%, 90%);--input: hsl(262, 20%, 90%);--ring: hsl(262, 70%, 45%);--radius: .75rem;--radius-xl: 1.25rem;--radius-2xl: 1.5rem;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1)}*,*:before,*:after{box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--background);color:var(--foreground);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;display:block}button{cursor:pointer;font-family:inherit;border:none;background:none;padding:0;color:inherit}button:focus-visible{outline:2px solid var(--ring);outline-offset:2px}a{color:inherit;text-decoration:none}.app-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.form-container{width:100%;max-width:36rem;position:relative}.step{display:none}.step.active{display:block}.step-inner{padding:2rem 1.5rem}.step-inner.center-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:3rem;padding-bottom:3rem}.step-enter{animation:stepFadeIn .4s ease forwards}@keyframes stepFadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.step-exit{animation:stepFadeOut .2s ease forwards}@keyframes stepFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-16px)}}.anim-fade-in,.anim-slide-in,.anim-scale-in{opacity:0;transition:opacity .4s ease,transform .4s ease}.anim-fade-in.entered,.anim-slide-in.entered,.anim-scale-in.entered{opacity:1}.anim-fade-in{transform:translateY(8px)}.anim-fade-in.entered{transform:translateY(0)}.anim-slide-in{transform:translate(-16px)}.anim-slide-in.entered{transform:translate(0)}.anim-scale-in{transform:scale(.9)}.anim-scale-in.entered{transform:scale(1)}h1{font-size:1.875rem;font-weight:600;color:var(--foreground);margin-bottom:.5rem;line-height:1.2}@media(min-width:768px){h1{font-size:2.25rem}}h2{font-size:1.5rem;font-weight:600;color:var(--foreground);margin-bottom:.75rem;line-height:1.2}@media(min-width:768px){h2{font-size:1.875rem}}h3{font-size:1rem;font-weight:500;color:var(--foreground)}.subtitle{font-size:1.125rem;color:var(--muted-foreground);margin-bottom:2rem;line-height:1.6}.step-subtitle{color:var(--muted-foreground);margin-bottom:2rem}.step-body{color:var(--foreground);margin-bottom:1.5rem;line-height:1.6}.step-body em{font-style:italic}.progress-label{font-size:.875rem;color:var(--muted-foreground);margin-bottom:.5rem}.helper-text{margin-top:2rem;font-size:.875rem;color:var(--muted-foreground)}.helper-text a{text-decoration:underline}.helper-text.center{text-align:center;margin-top:.5rem}.back-btn{display:flex;align-items:center;gap:.5rem;color:var(--muted-foreground);font-size:.875rem;margin-bottom:2rem;transition:color .2s}.back-btn:hover{color:var(--foreground)}.back-btn svg{flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--radius);font-size:.875rem;font-weight:500;padding:.625rem 1.25rem;transition:background .2s,color .2s,border-color .2s,opacity .2s,transform .1s;white-space:nowrap}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;pointer-events:none}.btn-primary{background:var(--primary);color:var(--primary-foreground)}.btn-primary:hover{background:var(--primary-hover)}.btn-ghost{background:transparent;color:var(--muted-foreground)}.btn-ghost:hover{background:var(--accent);color:var(--foreground)}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--foreground)}.btn-outline:hover{background:var(--accent)}.btn-lg{padding:.875rem 2rem;font-size:1rem}.btn-full{width:100%}.btn-stack{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.skip-link-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;align-self:center;margin-top:1rem;color:var(--muted-foreground);font-size:.875rem;font-weight:500;transition:color .2s}.skip-link-btn:hover{color:var(--foreground)}.skip-link-btn svg{flex-shrink:0}.input{display:block;width:100%;height:2.75rem;padding:0 .75rem;font-size:1rem;font-family:inherit;color:var(--foreground);background:var(--background);border:1px solid var(--input);border-radius:var(--radius);outline:none;transition:border-color .2s,box-shadow .2s}.input::placeholder{color:var(--muted-foreground);opacity:.6}.input:focus{border-color:var(--ring);box-shadow:0 0 0 2px #5d22c326}.input.has-error{border-color:var(--destructive)}.textarea{height:auto;min-height:9.375rem;padding:.75rem;resize:none;line-height:1.5}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b5c8a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem}.form-fields{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem;position:relative;z-index:1}.field{display:flex;flex-direction:column;gap:.5rem}.field-row{display:flex;flex-wrap:wrap;gap:1rem}.field-row.two-col>.field{flex:1;min-width:0;flex-basis:8rem}label{font-size:.875rem;font-weight:500;color:var(--foreground)}.label-row{display:flex;align-items:center;justify-content:space-between}.field-error{font-size:.875rem;color:var(--destructive);min-height:0}.field-error:empty{display:none}.field-hint{font-size:.75rem;color:var(--muted-foreground);margin-top:.25rem}.toggle-contact{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--primary);transition:color .2s}.toggle-contact:hover{opacity:.8}.toggle-contact .toggle-icon{flex-shrink:0}.sms-optin{margin-top:.75rem;padding:.75rem;border-radius:var(--radius);background:var(--accent-50);border:1px solid var(--border)}.checkbox-wrap{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-size:.875rem}.checkbox-wrap input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.custom-checkbox{flex-shrink:0;width:1rem;height:1rem;border:1px solid var(--border);border-radius:.25rem;margin-top:.125rem;position:relative;transition:background .2s,border-color .2s}.custom-checkbox:after{content:"";position:absolute;left:3px;top:0;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .15s ease}input:checked+.custom-checkbox{background:var(--primary);border-color:var(--primary)}input:checked+.custom-checkbox:after{transform:rotate(45deg) scale(1)}.checkbox-content{display:flex;flex-direction:column;gap:.125rem}.checkbox-title{display:flex;align-items:center;gap:.375rem;font-weight:500;color:var(--foreground)}.checkbox-title svg{color:var(--primary)}.checkbox-desc{font-size:.75rem;color:var(--muted-foreground)}.welcome-logo{height:4rem;width:auto;margin-bottom:1.5rem}@media(min-width:768px){.welcome-logo{height:5rem}}.avatar-row{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem}.avatar-row.center{justify-content:center}.avatar-stack{display:flex}.avatar-stack img{width:2rem;height:2rem;border-radius:50%;border:2px solid var(--background);object-fit:cover;margin-left:-.5rem}.avatar-stack img:first-child{margin-left:0}.avatar-text{font-size:.875rem;color:var(--muted-foreground)}.avatar-text strong{font-weight:500;color:var(--foreground)}.powered-by{display:flex;align-items:center;gap:.5rem;margin-top:3rem;color:var(--muted-foreground);font-size:.75rem}.called-icon{width:1rem;height:1rem}.called-name{font-weight:500}.card-list{display:flex;flex-direction:column;gap:.75rem}.option-card{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem;border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);text-align:left;transition:background .2s,border-color .2s}.option-card:hover{background:var(--accent);border-color:var(--primary-20)}.option-card h3{font-weight:500;color:var(--foreground)}.option-card p{font-size:.875rem;color:var(--muted-foreground);margin-top:.125rem}.option-card-icon{width:3rem;height:3rem;border-radius:var(--radius);background:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s}.option-card-icon svg{color:var(--primary)}.option-card:hover .option-card-icon{background:var(--primary-10)}.search-wrapper{position:relative;z-index:10}.search-input-wrap{position:relative}.search-input-wrap .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--muted-foreground);pointer-events:none}.search-input-wrap .input{padding-left:2.5rem;height:3rem}.search-dropdown{display:none;position:absolute;top:100%;left:0;right:0;margin-top:.5rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-height:16rem;overflow-y:auto;z-index:10}.search-dropdown.open{display:block}.search-result{display:flex;align-items:center;gap:.75rem;width:100%;padding:1rem;text-align:left;transition:background .15s;border-bottom:1px solid var(--border)}.search-result:last-child{border-bottom:none}.search-result:hover{background:var(--accent)}.search-result svg{flex-shrink:0;color:var(--muted-foreground)}.search-result .result-name{font-weight:500;color:var(--foreground)}.search-result .result-location{font-size:.875rem;color:var(--muted-foreground)}.no-results{text-align:center;padding:2rem 0;color:var(--muted-foreground);margin-top:1rem}.search-more-trigger{position:sticky;bottom:0;display:block;width:100%;padding:.75rem 1rem;text-align:center;font-size:.875rem;font-weight:500;color:var(--primary);background:var(--background);border:none;border-top:1px solid var(--border);cursor:pointer;transition:background .15s}.search-more-trigger:hover{background:var(--accent)}.highschool-search-wrapper{position:relative;z-index:10}.highschool-search-wrapper .search-dropdown{max-height:16rem;overflow-y:auto}.minister-initial{width:3rem;height:3rem;border-radius:50%;background:var(--primary-10);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:600;flex-shrink:0;border:2px solid var(--primary-20)}.sparkle-row{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.sparkle-row svg{color:var(--primary)}.sparkle-label{color:var(--primary);font-weight:500}.ministry-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-lg);margin-bottom:1.5rem}.ministry-card-hero{position:relative;height:8rem;overflow:hidden}.ministry-card-hero img{width:100%;height:100%;object-fit:cover}.ministry-card-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,var(--card) 0%,rgba(255,255,255,.2) 50%,transparent 100%)}.ministry-card-body{padding:1.5rem 1.5rem 1rem;margin-top:-1.5rem;position:relative}.ministry-name-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.ministry-icon-circle{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--primary-10);display:flex;align-items:center;justify-content:center;border:2px solid var(--background);box-shadow:var(--shadow-sm);flex-shrink:0}.ministry-icon-circle svg{color:var(--primary)}.ministry-desc{font-size:.875rem;color:var(--foreground);line-height:1.6}.ministry-badges{display:flex;flex-wrap:wrap;gap:.75rem;padding-top:1rem}.badge{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--muted-foreground);background:var(--accent-50);border-radius:9999px;padding:.375rem .75rem}.badge svg{width:.75rem;height:.75rem;flex-shrink:0}.ministry-minister{display:none;padding:1rem 1.5rem 1.5rem;border-top:1px solid hsla(262,20%,90%,.5)}.minister-label{font-size:.75rem;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.minister-row{display:flex;align-items:center;gap:.75rem}.minister-photo{width:3rem;height:3rem;border-radius:50%;object-fit:cover;border:2px solid var(--primary-20);flex-shrink:0}.minister-name{font-weight:500;color:var(--foreground);font-size:.875rem}.minister-name .title-suffix{font-weight:400;color:var(--muted-foreground)}.minister-welcome{font-size:.875rem;color:var(--muted-foreground);font-style:italic;margin-top:.25rem;line-height:1.4}.no-match-card{background:var(--accent-50);border-radius:var(--radius-2xl);padding:2rem;text-align:center}.no-match-card h2{font-size:1.25rem;margin-bottom:.75rem}.no-match-card p{color:var(--muted-foreground);margin-bottom:1.5rem}.no-match-icon{color:var(--primary);margin:0 auto 1rem}.scouting-photo-wrap{margin-bottom:1.5rem}.scouting-minister-photo{width:4rem;height:4rem;border-radius:50%;object-fit:cover;border:4px solid var(--accent)}.scouting-sparkle-icon{width:4rem;height:4rem;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center}.scouting-sparkle-icon svg{width:2rem;height:2rem;color:var(--primary)}.privacy-box{background:var(--accent-50);border-radius:var(--radius-xl);padding:1.25rem;margin-bottom:2rem}.privacy-box p{font-size:.875rem;color:var(--foreground)}.radio-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.radio-option{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:1rem;border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);text-align:left;transition:background .2s,border-color .2s}.radio-option:hover{background:var(--accent)}.radio-option.selected{border-color:var(--primary);background:var(--primary-5)}.radio-option .radio-label{color:var(--foreground)}.radio-option .radio-check{width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--primary);opacity:0;transform:scale(.8);transition:opacity .2s,transform .2s}.radio-option.selected .radio-check{opacity:1;transform:scale(1)}.radio-option .radio-option-icon+.radio-label{flex:1}.radio-option .radio-option-icon{width:2.5rem;height:2.5rem;border-radius:var(--radius);background:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s}.radio-option .radio-option-icon svg{color:var(--primary)}.radio-option.selected .radio-option-icon,.radio-option:hover .radio-option-icon{background:var(--primary-10)}.field-optional{font-weight:400;color:var(--muted-foreground)}#post-hs-notes-wrap{margin-top:.5rem;margin-bottom:1.5rem}.checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:2rem}@media(max-width:400px){.checkbox-grid{grid-template-columns:1fr}}.checkbox-option{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem;border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);text-align:left;font-size:.875rem;transition:background .2s,border-color .2s}.checkbox-option:hover{background:var(--accent)}.checkbox-option.selected{border-color:var(--primary);background:var(--primary-5)}.checkbox-option .cb-box{width:1.25rem;height:1.25rem;border-radius:.25rem;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,border-color .2s,transform .15s}.checkbox-option .cb-box svg{color:var(--primary-foreground);opacity:0;transform:scale(0);transition:opacity .15s,transform .15s}.checkbox-option.selected .cb-box{background:var(--primary);border-color:var(--primary);transform:scale(1.1)}.checkbox-option.selected .cb-box svg{opacity:1;transform:scale(1)}.checkbox-option .cb-label{color:var(--foreground)}.celebration-heart{width:5rem;height:5rem;border-radius:50%;background:linear-gradient(135deg,var(--primary),hsla(262,70%,45%,.7));display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);margin-bottom:1.5rem}.handoff-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-2xl);padding:1.5rem;margin-bottom:1.5rem;width:100%;max-width:28rem;box-shadow:var(--shadow-sm);text-align:left}.handoff-top{display:flex;align-items:center;gap:.75rem}.handoff-icon-circle{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--primary-10);display:flex;align-items:center;justify-content:center;flex-shrink:0}.handoff-icon-circle svg{color:var(--primary)}.handoff-title{font-weight:500;color:var(--foreground)}.handoff-sub{font-size:.875rem;color:var(--muted-foreground)}.handoff-bottom{display:flex;align-items:center;gap:.75rem;padding-top:1rem;margin-top:1rem;border-top:1px solid hsla(262,20%,90%,.5)}.handoff-bottom:empty{display:none}.handoff-bottom img{width:3rem;height:3rem;border-radius:50%;object-fit:cover;border:2px solid var(--primary-20);flex-shrink:0}.handoff-bottom .handoff-minister-name{font-weight:500;color:var(--foreground);font-size:.875rem}.handoff-bottom .handoff-minister-name .title-suffix{font-weight:400;color:var(--muted-foreground)}.handoff-bottom .handoff-minister-college{font-size:.75rem;color:var(--muted-foreground)}#complete-other-section{max-width:28rem;width:100%;text-align:center}.encouragement-box{background:var(--accent);border-radius:var(--radius-xl);padding:1.25rem;margin-bottom:1.5rem;max-width:28rem;width:100%}.encouragement-box p{font-size:.875rem;color:var(--muted-foreground);line-height:1.6;text-align:center}.instagram-link{display:flex;align-items:center;gap:.75rem;background:var(--accent);border:1px solid var(--border);border-radius:var(--radius-xl);padding:.75rem 1.25rem;margin-bottom:1.5rem;max-width:28rem;width:100%;transition:background .2s}.instagram-link:hover{background:#eee8f7cc}.instagram-link:hover .ig-title,.instagram-link:hover .ig-icon{color:var(--primary)}.ig-logo{height:2rem;width:auto;flex-shrink:0}.ig-text{flex:1;min-width:0;text-align:left}.ig-title{font-weight:500;font-size:.875rem;color:var(--foreground);transition:color .2s}.ig-handle{font-size:.75rem;color:var(--muted-foreground)}.ig-icon{color:var(--muted-foreground);flex-shrink:0;transition:color .2s}.invite-row{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--muted-foreground);margin-bottom:1.5rem}.invite-row svg{flex-shrink:0}@media(max-width:22rem){.instagram-link{flex-direction:column;text-align:center}.instagram-link .ig-text{text-align:center}.invite-row{flex-direction:column;text-align:center}}.link-btn{color:var(--primary);font-weight:500}.link-btn:hover{text-decoration:underline}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem;animation:fadeIn .2s ease}.modal{background:var(--card);border-radius:var(--radius-xl);padding:1.5rem;width:100%;max-width:24rem;position:relative;animation:scaleIn .2s ease}.modal h3{font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.modal-desc{font-size:.875rem;color:var(--muted-foreground);margin-bottom:1rem}.modal-btns{display:flex;gap:.5rem;margin-top:1rem}.modal-btns .btn-primary{flex:1}.modal-close{position:absolute;top:.75rem;right:.75rem;font-size:1.5rem;color:var(--muted-foreground);line-height:1}.modal-close:hover{color:var(--foreground)}#field-hearAboutOther{margin-top:.75rem}.toast{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%) translateY(1rem);background:var(--foreground);color:var(--background);padding:.75rem 1.5rem;border-radius:var(--radius);font-size:.875rem;font-weight:500;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;z-index:200;white-space:nowrap;max-width:calc(100vw - 2rem)}.toast.visible{opacity:1;transform:translate(-50%) translateY(0)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
