@font-face{font-family:Figtree;src:url(/assets/fonts/Figtree.ttf)format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Figtree;src:url(/assets/fonts/Figtree-Italic.ttf)format("truetype");font-weight:100 900;font-style:italic;font-display:swap}:root{--color-brand-blue:#0253d6;--color-brand-blue-deep:#2642c0;--color-brand-blue-electric:#0c0cfa;--color-brand-orange:#d85040;--color-white:#fff;--color-neutral-100:#f9f9f9;--color-neutral-200:#ededed;--color-neutral-300:#dae1e7;--color-neutral-400:#bcc1c7;--color-neutral-500:#838c95;--color-neutral-600:#5d5d5d;--color-neutral-700:#4f4f4f;--color-neutral-800:#454545;--color-neutral-900:#2d2d2d;--color-neutral-950:#111;--color-black:#000;--color-surface:var(--color-white);--color-surface-secondary:var(--color-neutral-100);--color-surface-tertiary:var(--color-neutral-200);--color-surface-alternate:var(--color-black);--color-on-surface:var(--color-neutral-950);--color-on-surface-faded:#2d2d2d99;--color-on-surface-alternate:var(--color-white);--color-border-primary:var(--color-neutral-950);--color-border-secondary:var(--color-neutral-400);--color-success:#027a48;--color-success-light:#ecfdf3;--color-error:#b42318;--color-error-light:#fef3f2;--space-tiny:.25rem;--space-xxs:.5rem;--space-xs:1rem;--space-sm:1.5rem;--space-md:2rem;--space-lg:3rem;--space-xl:4rem;--space-xxl:5rem;--space-huge:6rem;--space-xhuge:7rem;--space-xxhuge:10rem;--gutter:1rem;--container-small:47.5rem;--container-medium:52rem;--container-large:86rem;--radius-none:0;--radius-sharp:3px;--radius-sm:.25rem;--radius-md:.6875rem;--radius-lg:.75rem;--radius-pill:62.5rem}*{box-sizing:border-box}html,body{background:var(--color-surface);color:var(--color-on-surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-family:Figtree,system-ui,-apple-system,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.5}a{color:var(--color-on-surface)}button{font-family:inherit}#root,.signin-shell,.app-shell{flex-direction:column;min-height:100vh;display:flex}.site-header{background:var(--color-surface);border-bottom:1px solid var(--color-neutral-200)}.site-header-inner{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--gutter);flex-direction:row;display:flex}.site-header-brand{align-items:flex-start;gap:var(--space-xxs);flex-direction:column;display:flex}.site-header-logo{width:auto;height:30px;display:block}.site-header-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--color-on-surface);border-top:2px solid var(--color-black);padding-top:8px;font-size:.6875rem;font-weight:700;line-height:1;display:inline-block}.site-header-session{align-items:center;gap:var(--space-xs);font-size:.875rem;display:flex}.site-header-who{color:var(--color-on-surface);font-weight:600}.site-header-signout{appearance:none;border:1px solid var(--color-neutral-300);border-radius:var(--radius-sm);color:var(--color-on-surface);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:border-color .12s,color .12s,background-color .12s;display:inline-flex}.site-header-signout:hover{border-color:var(--color-brand-blue);color:var(--color-brand-blue)}.site-header-signout:focus-visible{outline:2px solid var(--color-brand-blue);outline-offset:2px}.site-header-signout-icon{display:block}.site-header-stripe{background:var(--color-brand-orange);height:4px}@media (width>=600px){:root{--gutter:2rem}.site-header-logo{height:34px}.site-header-eyebrow{font-size:.75rem}}.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}.page{padding:var(--space-md) var(--gutter);background-image:radial-gradient(circle, var(--color-neutral-200) 1px, transparent 1px);background-position:0 0;background-size:16px 16px;flex-direction:column;flex:1;align-items:center;display:flex}@media (width>=600px){.page{padding:var(--space-xl) var(--gutter)}}.page>*{width:100%;max-width:var(--container-small)}.page-wide>*{max-width:var(--container-medium)}.stack{gap:var(--space-sm);flex-direction:column;display:flex}.stack-md{gap:var(--space-md);flex-direction:column;display:flex}.stack-xs{gap:var(--space-xs);flex-direction:column;display:flex}.row{gap:var(--space-xs);align-items:center;display:flex}.row-between{gap:var(--space-xs);justify-content:space-between;align-items:center;display:flex}h1{margin:0;font-size:1.75rem;font-weight:700;line-height:1.2}h2{margin:0;font-size:1.375rem;font-weight:700;line-height:1.3}h3{margin:0;font-size:1.125rem;font-weight:700;line-height:1.4}@media (width>=600px){h1{font-size:2.5rem}h2{font-size:1.75rem}h3{font-size:1.25rem}}.muted{color:var(--color-on-surface-faded)}.btn{justify-content:center;align-items:center;gap:var(--space-xxs);border-radius:var(--radius-none);cursor:pointer;background:var(--color-black);min-height:44px;color:var(--color-on-surface-alternate);border:1px solid #0000;padding:.75rem 1.25rem;font-size:1rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}@media (width>=600px){.btn{padding:.75rem 1.5rem;font-size:1.125rem}}.btn:hover{background:var(--color-neutral-900)}.btn:disabled{background:var(--color-neutral-400);cursor:not-allowed}.btn-secondary{color:var(--color-on-surface);background:0 0;border-color:#0000}.btn-secondary:hover{background:var(--color-surface-secondary)}.btn-secondary-bordered{color:var(--color-brand-blue);border-color:var(--color-brand-blue);background:0 0}.btn-secondary-bordered:hover{background:#0253d60d}.btn-small{min-height:40px;padding:.5rem 1rem;font-size:.9375rem}@media (width>=600px){.btn-small{padding:.5rem 1.25rem;font-size:1rem}}.btn-danger{background:var(--color-error);color:var(--color-on-surface-alternate)}.btn-danger:hover{background:#931d13}label.field{gap:var(--space-tiny);flex-direction:column;font-size:.875rem;font-weight:500;display:flex}label.field input{border:1px solid var(--color-border-secondary);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-on-surface);padding:.75rem 1rem;font-family:inherit;font-size:1rem}label.field input:focus{border-color:var(--color-border-primary);outline:none}.field.field-error input{background:var(--color-error-light);border-color:var(--color-error);color:var(--color-error)}.error-text{color:var(--color-error);font-size:.875rem}.label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-on-surface-faded);font-size:.875rem;font-weight:500;display:inline-block}.card{background:var(--color-surface);border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);padding:var(--space-sm)}.card-alternate{background:var(--color-surface-alternate);color:var(--color-on-surface-alternate);border-radius:var(--radius-md);padding:var(--space-sm)}.chip{background:var(--color-surface-secondary);color:var(--color-on-surface);border-radius:var(--radius-pill);align-items:center;padding:.25rem .75rem;font-size:.875rem;font-weight:500;display:inline-flex}.role-tag{align-items:center;gap:var(--space-xxs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-brand-blue);font-size:.8125rem;font-weight:600;display:inline-flex}.role-tag .role-dot{background:var(--color-brand-blue);border-radius:9999px;width:8px;height:8px;display:inline-block}.team-code-badge{background:var(--color-surface-alternate);color:var(--color-on-surface-alternate);border-left:4px solid var(--color-brand-blue);flex-direction:column;display:flex}.team-code{letter-spacing:.32em;text-indent:.32em;padding:var(--space-md) var(--space-sm);color:var(--color-on-surface-alternate);background:0 0;border:none;justify-content:center;align-items:center;font-family:Figtree,monospace;font-size:1.75rem;font-weight:700;display:flex}.team-code-copy{letter-spacing:.1em;text-transform:uppercase;padding:var(--space-xs) var(--space-sm);color:var(--color-on-surface-alternate);cursor:pointer;background:0 0;border:none;border-top:1px solid #ffffff2e;min-height:44px;font-family:inherit;font-size:.875rem;font-weight:600}.team-code-copy:hover{background:#ffffff0f}.team-code-copy:focus-visible{outline:2px solid var(--color-brand-blue);outline-offset:-2px}@media (width>=600px){.team-code-badge{flex-direction:row;align-items:stretch}.team-code{padding:var(--space-md) var(--space-lg);flex:1;font-size:2.25rem}.team-code-copy{border-top:none;border-left:1px solid #ffffff2e;min-width:9rem}}.roster{flex-direction:column;gap:0;display:flex}.roster-header{justify-content:space-between;align-items:baseline;gap:var(--space-sm);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-border-secondary);display:flex}.roster-count{letter-spacing:.18em;text-transform:uppercase;color:var(--color-on-surface-faded);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:600}.roster-list{border-bottom:1px solid var(--color-border-secondary);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.roster-row{align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;grid-template-columns:auto 1fr auto;min-height:2.5rem;display:grid}.roster-row+.roster-row{border-top:1px dashed var(--color-neutral-200)}.roster-number{letter-spacing:.22em;color:var(--color-on-surface-faded);font-variant-numeric:tabular-nums;min-width:1.75rem;font-size:.75rem;font-weight:700}.roster-name{color:var(--color-on-surface);font-weight:600}.roster-empty{color:var(--color-on-surface-faded);font-style:italic}.roster-slot-meta{justify-content:flex-end;align-items:center;display:inline-flex}dialog.modal{max-width:calc(100vw - 2 * var(--gutter));background:0 0;border:none;margin:auto;padding:0}dialog.modal::backdrop{background:#111111a6}dialog.modal .modal-card{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-sm);gap:var(--space-sm);flex-direction:column;width:100%;max-width:28rem;display:flex}@media (width>=600px){dialog.modal .modal-card{padding:var(--space-md)}}dialog.modal h2{font-size:1.5rem}dialog.modal form{gap:var(--space-sm);flex-direction:column;display:flex}dialog.modal .modal-actions{justify-content:flex-end;gap:var(--space-xs);display:flex}.signin-links{gap:var(--space-sm);flex-wrap:wrap;font-size:.875rem;display:flex}.signin-links a{color:var(--color-on-surface);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.signin-links a:hover{color:var(--color-brand-blue)}.hero{isolation:isolate;background:var(--color-black);min-height:100dvh;color:var(--color-on-surface-alternate);flex:1;grid-template-rows:auto 1fr auto;display:grid;position:relative;overflow:hidden}.hero-video{object-fit:cover;z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-scrim{z-index:1;pointer-events:none;background:linear-gradient(#0000008c 0%,#00000040 35%,#000000a6 75%,#000000eb 100%);position:absolute;inset:0}.hero>:not(.hero-video):not(.hero-scrim){z-index:2;position:relative}.hero-header{align-items:flex-start;gap:var(--space-xxs);padding:var(--space-sm) var(--gutter) var(--space-xs);flex-direction:column;display:flex}.hero-header .hero-logo{width:auto;height:30px;display:block}.hero-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--color-on-surface-alternate);border-top:2px solid var(--color-brand-orange);padding-top:8px;font-size:.6875rem;font-weight:700;line-height:1;display:inline-block}.hero-content{padding:var(--space-sm) var(--gutter) var(--space-sm);align-self:end;gap:var(--space-xxs);flex-direction:column;max-width:100%;display:flex}.hero-meta{letter-spacing:.16em;text-transform:uppercase;color:#ffffffb8;margin:0;font-size:.6875rem;font-weight:600}.hero-title{letter-spacing:-.02em;text-transform:uppercase;flex-direction:column;margin:0;font-size:clamp(2.25rem,11vw,5.5rem);font-weight:800;line-height:.92;display:flex}.hero-title span{display:block}.hero-title-accent{color:var(--color-brand-orange)}.hero-sub{margin:var(--space-xxs) 0 0;color:#ffffffd9;max-width:32ch;font-size:.9375rem;line-height:1.4}.hero-card{color:var(--color-on-surface);padding:var(--space-sm) var(--space-sm) var(--space-xs);gap:var(--space-xs);border-top:4px solid var(--color-brand-blue);background:#ffffffeb;flex-direction:column;display:flex}.hero-card h2{letter-spacing:-.01em;margin:0;font-size:1.375rem;font-weight:700}.hero-card form{gap:var(--space-xs)}.hero-card .signin-links{font-size:.8125rem}@media (width<=719px){.hero-card-help{display:none}.hero-card label.field{gap:0}.hero-card label.field input{padding:.625rem .875rem}}.btn-block{width:100%}@media (width>=720px){.hero{grid-template:"header card""content card"1fr/1fr minmax(320px,28rem);align-items:end}.hero-header{padding:var(--space-lg) var(--space-lg) var(--space-md);grid-area:header}.hero-header .hero-logo{height:34px}.hero-eyebrow{font-size:.75rem}.hero-content{padding:var(--space-lg) var(--space-lg) var(--space-xl);gap:var(--space-sm);grid-area:content}.hero-title{font-size:clamp(3.5rem,7vw,6rem)}.hero-sub{max-width:38ch;font-size:1.125rem}.hero-card{padding:var(--space-lg) var(--space-md);border-top:none;border-left:4px solid var(--color-brand-blue);grid-area:card;justify-content:center;align-self:stretch}.hero-card h2{font-size:2rem}}@media (prefers-reduced-motion:reduce){.hero-video{display:none}.hero{background:linear-gradient(#00000080 0%,#000000d9 100%),url(/assets/video/anniversary-poster.jpg) 50%/cover no-repeat}}.home-section h2{letter-spacing:-.005em;margin-bottom:var(--space-xs);font-size:1.5rem}@media (width>=600px){.home-section h2{font-size:1.875rem}}.ig-prompt{background:var(--color-surface-alternate);color:var(--color-on-surface-alternate);padding:var(--space-md) var(--space-sm);gap:var(--space-sm);flex-direction:column;display:flex}.ig-prompt h2{font-size:1.5rem}@media (width>=600px){.ig-prompt{padding:var(--space-lg) var(--space-md)}.ig-prompt h2{font-size:2rem}}.ig-prompt-body{color:#ffffffc7;max-width:56ch;margin:0}.btn-alternate-outline{color:var(--color-on-surface-alternate);border:1px solid var(--color-on-surface-alternate);cursor:pointer;border-radius:var(--radius-none);background:0 0;justify-content:center;align-self:flex-start;align-items:center;min-height:44px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-alternate-outline:hover{background:var(--color-on-surface-alternate);color:var(--color-on-surface)}.ig-linked{align-items:center;gap:var(--space-sm);background:var(--color-surface-secondary);padding:var(--space-xs) var(--space-sm);flex-wrap:wrap;font-size:.9375rem;display:flex}.ig-linked-status{align-items:center;gap:var(--space-xxs);color:var(--color-success);font-weight:600;display:inline-flex}.ig-linked-dot{background:var(--color-success);border-radius:9999px;width:8px;height:8px;display:inline-block}.ig-linked-handle{letter-spacing:.01em;font-weight:700}.ig-linked-unlink{padding:var(--space-xxs) var(--space-xs);color:var(--color-on-surface-faded);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;min-height:36px;margin-left:auto;font-family:inherit;font-size:.8125rem;font-weight:500;text-decoration:underline}.ig-linked-unlink:hover{color:var(--color-on-surface)}.team-card{padding-left:var(--space-md);position:relative}.team-card-captain{border-left:4px solid var(--color-brand-blue)}.team-card-member{border-left:4px solid var(--color-brand-orange)}.role-stamp{align-items:center;gap:var(--space-xxs);letter-spacing:.2em;text-transform:uppercase;flex-shrink:0;font-size:.6875rem;font-weight:700;display:inline-flex}.role-stamp-dot{border-radius:9999px;width:6px;height:6px;display:inline-block}.role-stamp-captain{color:var(--color-brand-blue)}.role-stamp-captain .role-stamp-dot{background:var(--color-brand-blue)}.role-stamp-member{color:var(--color-brand-orange)}.role-stamp-member .role-stamp-dot{background:var(--color-brand-orange)}.team-card-header{justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.team-card-title{align-items:center;gap:var(--space-xs);min-width:0;display:flex}.team-card-title h2{margin:0;line-height:1}.team-card p{margin:0}.team-card-edit{appearance:none;color:var(--color-on-surface-faded);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .12s,background-color .12s;display:inline-flex}.team-card-edit:hover{color:var(--color-brand-blue);background:var(--color-neutral-100)}.team-card-edit:focus-visible{outline:2px solid var(--color-brand-blue);outline-offset:2px}.team-card-edit-icon{display:block}.team-card-danger{margin-top:var(--space-xs);justify-content:flex-end;display:flex}.team-card-danger-link{appearance:none;cursor:pointer;font:inherit;color:var(--color-error);text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:.8125rem;text-decoration:underline;transition:color .12s,text-decoration-thickness .12s}.team-card-danger-link:hover:not(:disabled),.team-card-danger-link:focus-visible:not(:disabled){text-decoration-thickness:2px}.team-card-danger-link:focus-visible{outline:2px solid var(--color-brand-blue);outline-offset:2px;border-radius:2px}.team-card-danger-link:disabled{color:var(--color-on-surface-faded);opacity:.6;cursor:not-allowed;text-decoration:none}.ig-linked{align-items:center;gap:var(--space-xs);display:flex}.notice{background:var(--color-surface-secondary);padding:var(--space-sm);border-radius:var(--radius-md)}.actions-row{gap:var(--space-xs);flex-direction:column;display:flex}.actions-row>.btn,.actions-row>button{width:100%}@media (width>=600px){.actions-row{flex-flow:wrap}.actions-row>.btn,.actions-row>button{width:auto}}.row-between{flex-wrap:wrap}
