:root{--ink: #4a4a4a;--ink-soft: #6b6b6b;--crimson: #b82025;--crimson-deep: #96181c;--gold: #e2c876;--grey: #e3e3e3;--line: #d4d4d4;--font-body: "Lato", "Helvetica Neue", Arial, sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);line-height:1.6;font-size:1.0625rem;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}html{scroll-behavior:smooth}h1,h2,h3{text-wrap:balance}p,li{text-wrap:pretty}::selection{background:var(--gold);color:var(--ink)}.page{overflow-x:hidden;overflow-x:clip}.hero{position:relative;padding:clamp(2.5rem,7vw,4.5rem) clamp(1rem,5vw,2rem) clamp(2.5rem,6vw,4.5rem)}.hero__inner{position:relative;max-width:1180px;margin:0 auto;display:grid;gap:2.5rem}.intro{text-align:center}.signup{scroll-margin-top:1rem}@media(min-width:960px){.hero__inner{grid-template-columns:1fr minmax(0,560px);align-items:start;gap:clamp(2.5rem,5vw,4.5rem)}.intro{text-align:left;position:sticky;top:2.5rem;padding-top:1.5rem}.intro .headline,.intro .lede{margin-left:0}.intro .when{margin-bottom:0}.intro .when__date{align-items:flex-start}.intro .btn--cta{display:none}}.eyebrow{font-size:clamp(.85rem,1.6vw,1rem);font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-soft);margin-bottom:1rem}.headline{font-weight:900;font-size:clamp(2.2rem,5.2vw,3.75rem);line-height:1.1;color:var(--crimson);max-width:16ch;margin:0 auto}.headline__accent{background:linear-gradient(var(--gold),var(--gold)) no-repeat left 92% / 0% .28em;animation:underline .8s cubic-bezier(.6,.1,.3,1) .9s forwards}.lede{font-size:clamp(1.15rem,2.3vw,1.45rem);line-height:1.5;max-width:38ch;margin:1.5rem auto 0}.lede strong{color:var(--crimson)}.when{margin:1.75rem 0 2rem;font-weight:700;color:var(--crimson)}.when p{margin:0}.when__where{font-size:clamp(1.05rem,2.2vw,1.25rem);letter-spacing:.04em;text-transform:uppercase;color:var(--crimson-deep)}.when__date{display:flex;flex-direction:column;align-items:center;gap:.1rem;margin-top:.35rem!important;font-size:clamp(1.25rem,3vw,1.6rem);line-height:1.3}.when__date span{white-space:nowrap}.star{position:absolute;width:clamp(36px,7vw,64px);pointer-events:none;animation:twinkle 4s ease-in-out infinite}.star--blue{top:1.25rem;left:2%}.star--gold{top:1.5rem;right:2%;width:clamp(30px,5.5vw,52px);animation-delay:1.3s}.star--orange{bottom:1.5rem;left:4%;width:clamp(26px,4.5vw,44px);animation-delay:2.6s}@media(max-width:600px){.star--blue{top:.5rem;left:2%}.star--gold{top:auto;bottom:1rem;right:4%}.star--orange{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-body);cursor:pointer;text-decoration:none;border:0;transition:transform .3s,background .3s,box-shadow .3s}.btn--cta{background:var(--crimson);color:#fff;font-size:clamp(1.15rem,2.4vw,1.5rem);font-weight:400;text-transform:uppercase;letter-spacing:.04em;padding:.85rem 2.5rem;border-radius:50px;box-shadow:0 1px 5px #000000b3}.btn--cta:hover:not(:disabled){background:var(--crimson-deep);transform:translateY(-2px) scale(1.02);box-shadow:0 4px 12px #00000073}.btn--cta:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 3px #0009}.btn--cta:disabled{opacity:.7;cursor:progress}.btn--block{width:100%;font-size:1.2rem}.btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.btn--quiet{margin-top:1.75rem;background:none;color:var(--crimson);font-weight:700;font-size:.95rem;text-decoration:underline;text-underline-offset:3px}.btn--quiet:hover{color:var(--crimson-deep)}.band{background:var(--grey);padding:clamp(2.5rem,6vw,4.5rem) clamp(1rem,4vw,2rem)}.card{position:relative;background:#fff;border-radius:6px;border-top:6px solid var(--crimson);padding:clamp(1.5rem,4vw,2.25rem);box-shadow:0 1px 5px #0006}.card__title{font-weight:900;font-size:clamp(1.6rem,3.6vw,2rem);line-height:1.15;color:var(--crimson)}.card__note{margin:.35rem 0 1.5rem;font-size:1.05rem}.card__fine{text-align:center;font-size:.9rem;margin-top:.85rem}.field-row{display:grid;gap:0 1rem}@media(min-width:480px){.field-row{grid-template-columns:1fr 1fr}}.field{display:block;border:0;margin-bottom:1.15rem}.field>span,.field>legend{display:block;font-weight:700;font-size:.95rem;color:var(--ink);margin-bottom:.4rem}.field>legend{margin-bottom:.6rem}.field em{font-weight:400;color:var(--ink-soft)}.field input,.field textarea{width:100%;font:inherit;font-size:1rem;color:var(--ink);background:#fff;border:2px solid var(--line);border-radius:6px;padding:.7rem .85rem;transition:border-color .2s,box-shadow .2s}.field textarea{resize:vertical;min-height:5.5rem}.field input:hover,.field textarea:hover{border-color:#b5b5b5}.field input:focus,.field textarea:focus{outline:none;border-color:var(--crimson);box-shadow:0 0 0 3px #b8202526}.field input[aria-invalid=true]{border-color:var(--crimson)}.field__error{color:var(--crimson);font-size:.88rem;font-weight:700;margin-top:.35rem}.pills{display:flex;flex-wrap:wrap;gap:.5rem}.pill{position:relative;font-size:.92rem;padding:.45rem 1rem;border-radius:50px;border:2px solid var(--line);background:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s,border-color .2s,color .2s,transform .2s}.pill input{position:absolute;opacity:0;pointer-events:none}.pill:hover{border-color:var(--crimson);transform:translateY(-1px)}.pill--on{background:var(--crimson);border-color:var(--crimson);color:#fff}.pill:has(input:focus-visible){outline:3px solid var(--gold);outline-offset:2px}.form-error{background:#b8202514;color:var(--crimson);border-left:4px solid var(--crimson);padding:.65rem .85rem;font-weight:700;font-size:.95rem;margin-bottom:1rem;animation:shake .35s}.about{position:relative;overflow:hidden;background:radial-gradient(circle at 12% 20%,rgba(226,200,118,.45),transparent 42%),radial-gradient(circle at 92% 85%,rgba(184,32,37,.1),transparent 40%),#fbf5e6;border-top:6px solid var(--gold);box-shadow:inset 0 6px 0 var(--crimson)}.about:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(184,32,37,.09) 1.2px,transparent 1.2px);background-size:22px 22px;-webkit-mask-image:linear-gradient(to bottom right,#000,transparent 70%);mask-image:linear-gradient(to bottom right,#000,transparent 70%);pointer-events:none}.about__inner{position:relative;max-width:1000px;margin:0 auto;display:grid;gap:1.75rem;justify-items:center;text-align:center}.about__photo-wrap{position:relative;display:grid;place-items:center}.about__photo-wrap:before,.about__photo-wrap:after{content:"";position:absolute;border-radius:50%;aspect-ratio:1;width:92%}.about__photo-wrap:before{background:radial-gradient(circle,#f3e2a8 0%,var(--gold) 70%);box-shadow:0 12px 30px #96181c26}.about__photo-wrap:after{width:106%;border:2px dashed rgba(184,32,37,.45);animation:spin 40s linear infinite}.about__photo{position:relative;z-index:1;width:clamp(170px,45vw,260px);height:auto;filter:drop-shadow(0 4px 10px rgba(0,0,0,.22))}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.about__photo-wrap:after{animation:none}}.about__copy{max-width:62ch}.about__copy .eyebrow{color:var(--crimson-deep);margin-bottom:.5rem}.about__title{font-weight:900;font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.15;color:var(--crimson)}.about__known{font-size:clamp(1.2rem,2.4vw,1.45rem);font-weight:700;margin:.75rem 0 1.25rem}.about__epic{color:var(--crimson);background:linear-gradient(var(--gold),var(--gold)) no-repeat left 92% / 100% .28em}.about__copy p+p{margin-top:.9rem}.about__copy p:not(.eyebrow):not(.about__known){font-size:1.05rem;line-height:1.65}@media(min-width:760px){.about__inner{grid-template-columns:auto 1fr;align-items:center;gap:clamp(2rem,5vw,4rem);text-align:left}}.card--success{text-align:center;overflow:hidden;animation:pop .5s cubic-bezier(.2,1.4,.4,1) both}.success__check{width:4rem;height:4rem;margin:.5rem auto 1rem;border-radius:50%;background:var(--crimson);color:#fff;display:grid;place-items:center;font-size:2rem;font-weight:900;box-shadow:0 1px 5px #0006}.success__meta{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem}.success__meta span{background:var(--gold);color:var(--ink);font-weight:700;font-size:.88rem;padding:.35rem .9rem;border-radius:50px}.success__burst{position:absolute;top:4.5rem;left:50%;pointer-events:none}.success__burst span{position:absolute;width:10px;height:10px;border-radius:2px;background:var(--crimson);animation:burst .9s ease-out both;transform:rotate(calc(var(--i) * 30deg)) translateY(0)}.success__burst span:nth-child(3n){background:var(--gold)}.success__burst span:nth-child(3n+1){background:var(--ink-soft)}.success__when{color:var(--crimson);font-weight:700;margin:-.25rem 0 .75rem}.zoom{margin:1.25rem 0 .5rem;padding:1rem;border:1px solid var(--line);border-radius:12px;background:#fff}.zoom__url{display:block;font-weight:700;color:var(--crimson);word-break:break-all;text-underline-offset:3px;margin-bottom:.85rem}.zoom__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;align-items:center}.zoom__join{font-size:.95rem;padding:.55rem 1.4rem}.zoom__copy{cursor:pointer;font-family:inherit}.zoom__url:focus-visible,.zoom__join:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.addcal{margin-top:1.75rem;padding-top:1.25rem;border-top:1px dashed var(--line)}.addcal__label{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin:0 0 .85rem}.addcal__links{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.addcal__btn{font-weight:700;font-size:.88rem;color:var(--ink);text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:50px;padding:.5rem 1rem;box-shadow:0 1px 3px #00000040;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,color .15s ease}.addcal__btn:hover{background:var(--crimson);border-color:var(--crimson);color:#fff;transform:translateY(-2px);box-shadow:0 4px 10px #00000040}.addcal__btn:active{transform:translateY(1px);box-shadow:0 1px 2px #0000004d}.addcal__btn:focus-visible,.addcal__other:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.addcal__other{display:inline-block;margin-top:.9rem;font-size:.85rem;color:var(--ink-soft);text-decoration:underline;text-underline-offset:3px}.addcal__other:hover{color:var(--crimson)}.footer{background:var(--crimson);color:#fff;text-align:center;font-size:.9rem;padding:1.5rem}.reveal{animation:rise .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--d, 0ms)}@keyframes rise{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}@keyframes underline{to{background-size:100% .28em}}@keyframes twinkle{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.12) rotate(8deg)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes burst{0%{opacity:1;transform:rotate(calc(var(--i) * 30deg)) translateY(0) scale(1)}to{opacity:0;transform:rotate(calc(var(--i) * 30deg)) translateY(-110px) scale(.4)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}}.zoom__email{margin:.75rem 0 0;font-size:.9rem;color:var(--ink-soft);animation:rise .4s ease both}
