@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2")}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/source-serif-4-latin-500-normal-CUHe9xxf.woff2) format("woff2")}:root{--gl-linen: #FAF8F3;--gl-evergreen: #1F3A2E;--gl-leaf: #2E7D5B;--gl-sunlight: #F2B33D;--gl-leaf-tint: #E3F1EA;--gl-sunlight-tint: #FBF0D5;--gl-moss: #5B6660;--gl-line: #E2E0D8;--gl-line-soft: #EEECE6;--gl-white: #FFFFFF;--gl-field-disabled: #F4F2EC;--gl-clay: #A8532F;--gl-dark-surface: #1F3A2E;--gl-dark-secondary: #BFD3C8;--gl-leaf-soft: #5FA383;--gl-font-display: "Source Serif 4", Georgia, serif;--gl-font-body: "IBM Plex Sans", system-ui, sans-serif;--gl-radius-field: 10px;--gl-radius-card: 14px;--gl-radius-chip: 999px;--gl-tap-min: 44px;--gl-field-h: 48px;--gl-tabbar-h: 56px}:root{--gutter: 20px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-width:0;background:var(--gl-linen);color:var(--gl-evergreen);font-family:var(--gl-font-body);font-size:1rem;line-height:1.5;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}img,svg,video{max-width:100%;height:auto}a,button,input,select,textarea,[role=button]{min-height:var(--gl-tap-min);min-width:var(--gl-tap-min)}a{display:inline-flex;align-items:center;color:var(--gl-leaf);font-weight:500}a:hover{color:var(--gl-evergreen)}button{font:inherit;font-weight:500;min-height:var(--gl-field-h);padding:0 var(--gutter);border:0;border-radius:var(--gl-radius-field);background:var(--gl-leaf);color:var(--gl-white)}input,select,textarea{font-family:inherit;font-size:max(16px,1rem);max-width:100%;color:var(--gl-evergreen);background:var(--gl-white);border:1.5px solid var(--gl-line);border-radius:var(--gl-radius-field)}input,select{min-height:var(--gl-field-h);padding:0 14px}.shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.shell-header{display:flex;align-items:center;gap:8px;padding:28px var(--gutter) 0;padding-top:max(28px,env(safe-area-inset-top))}.wordmark{font-size:15px;font-weight:500}.shell-main{flex:1;display:flex;flex-direction:column;gap:24px;width:100%;max-width:40rem;margin:0 auto;padding:24px var(--gutter) 28px;padding-bottom:max(28px,env(safe-area-inset-bottom))}h1{font-family:var(--gl-font-display);font-weight:500;font-size:26px;line-height:1.2;margin:0}p{margin:0}.lede{color:var(--gl-moss)}.footnote{font-size:13px;color:var(--gl-moss);text-align:center}.coming-soon{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px;text-align:center}.coming-soon h1{font-size:30px}@media (min-width: 768px){:root{--gutter: 24px}.coming-soon h1{font-size:36px}}.church-form,.church-welcome{display:flex;flex-direction:column;gap:20px}.field{display:flex;flex-direction:column;gap:8px}label,.church-id-label{font-weight:500}.field input{width:100%}.hint{font-size:14px;color:var(--gl-moss)}.notice{padding:12px 14px;border-radius:var(--gl-radius-field);background:var(--gl-sunlight-tint)}button:disabled{background:var(--gl-field-disabled)}.church-header{display:flex;align-items:center;gap:12px}.church-header .mark{flex:0 0 56px}.church-logo{flex:0 0 auto;height:56px;width:auto;min-width:56px;max-width:140px;object-fit:contain}.church-id-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;border:1.5px solid var(--gl-line);border-radius:var(--gl-radius-field);background:var(--gl-white)}.church-id-value{font-size:18px;letter-spacing:.08em}.link-button{align-self:center;padding:0 12px;background:none;color:var(--gl-leaf);text-decoration:underline}.join,.join-form{display:flex;flex-direction:column;gap:16px}.join{padding-top:8px;border-top:1.5px solid var(--gl-line)}.eyebrow{font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--gl-moss)}h2{font-family:var(--gl-font-display);font-weight:500;font-size:22px;line-height:1.25;margin:0}.notice{display:flex;flex-direction:column;gap:12px}.notice-good{background:var(--gl-leaf-tint)}.notice-refused{background:var(--gl-white);border:1.5px solid var(--gl-clay);color:var(--gl-clay)}.notice-refused button{align-self:flex-start}.notice-title{font-weight:500}input.digits{font-size:24px;letter-spacing:.3em;font-variant-numeric:tabular-nums}input.digits-signin{font-size:20px}.switch{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px;color:var(--gl-moss)}.checking{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:var(--gl-radius-field);background:var(--gl-leaf-tint)}.track{width:140px;height:4px;border-radius:var(--gl-radius-chip);background:var(--gl-leaf-tint);overflow:hidden}.boot{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.boot-ring{fill:none;stroke:var(--gl-leaf);stroke-width:9;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;animation:gl-ring .9s cubic-bezier(.4,0,.2,1) forwards}.boot-gift{fill:var(--gl-sunlight);opacity:0;animation:gl-gift .5s cubic-bezier(.34,1.3,.64,1) .9s forwards}.boot-mark,.waiting-mark{overflow:visible}.boot-word{font-family:var(--gl-font-display);font-size:34px;font-weight:500;letter-spacing:-.01em;line-height:1;opacity:0;animation:gl-word .4s ease-out 1.3s forwards}.boot-bar{height:4px;width:40%;border-radius:var(--gl-radius-chip);background:var(--gl-leaf);animation:gl-slide 1.8s cubic-bezier(.4,0,.2,1) infinite}.waiting{display:flex;flex-direction:column;align-items:center;gap:14px;padding-top:12px;font-size:15px;color:var(--gl-moss);text-align:center}.waiting-ring{fill:none;stroke:var(--gl-leaf);stroke-width:9;stroke-linecap:round;animation:gl-ringpulse 2.4s ease-in-out infinite}.waiting-gift{fill:var(--gl-sunlight);animation:gl-drop 2.4s cubic-bezier(.34,1.3,.64,1) infinite}.waiting .dot{animation:gl-dot 1.5s linear infinite}.waiting .dot:nth-of-type(2){animation-delay:.25s}.waiting .dot:nth-of-type(3){animation-delay:.5s}.waiting-bar{width:40%;height:4px;border-radius:var(--gl-radius-chip);background:var(--gl-leaf);animation:gl-slide 1.8s cubic-bezier(.4,0,.2,1) infinite}.waiting-detail{font-size:13px}fieldset{display:flex;flex-direction:column;gap:16px;margin:0;padding:0;border:0;min-width:0}fieldset:disabled{opacity:.45}fieldset:disabled input{background:var(--gl-field-disabled)}button.sending:disabled{background:var(--gl-leaf);color:var(--gl-white)}button.sending{display:inline-flex;align-items:center;justify-content:center;gap:10px}.spinner circle{stroke:var(--gl-white);stroke-opacity:.35}.spinner path{stroke:var(--gl-white)}.spinner{animation:gl-spin 1s linear infinite}.reassure{font-size:14px;color:var(--gl-moss)}@keyframes gl-ring{to{stroke-dashoffset:0}}@keyframes gl-gift{0%{transform:translateY(-48px);opacity:0}20%{opacity:1}70%{transform:translateY(4px)}to{transform:translateY(0);opacity:1}}@keyframes gl-word{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes gl-drop{0%{transform:translateY(-34px);opacity:0}12%{opacity:1}38%{transform:translateY(3px)}48%{transform:translateY(0)}72%{transform:translateY(0);opacity:1}84%{transform:translateY(10px);opacity:0}to{transform:translateY(-34px);opacity:0}}@keyframes gl-ringpulse{0%,40%{stroke:var(--gl-leaf)}48%{stroke:var(--gl-leaf-soft)}60%,to{stroke:var(--gl-leaf)}}@keyframes gl-spin{to{transform:rotate(360deg)}}@keyframes gl-dot{0%,20%{opacity:.2}30%,50%{opacity:1}60%,to{opacity:.2}}@keyframes gl-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media (prefers-reduced-motion: reduce){.boot-ring,.boot-gift,.boot-word,.boot-bar,.waiting-ring,.waiting-gift,.waiting .dot,.waiting-bar,.spinner{animation-duration:.01s!important;animation-delay:0s!important;animation-iteration-count:1!important}}
