:root{color-scheme:dark;--yellow:#f4d300;--ink:#0c0d0b;--muted:#a3a49a;--line:#2c2d27;--cream:#f1f0e8;font-family:Arial,Helvetica,sans-serif;background:var(--ink);color:var(--cream);scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,label{ -webkit-tap-highlight-color:transparent}button,a.button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}.hidden{display:none!important}.shell{width:min(1240px,calc(100% - 80px));margin:auto}.preview-bar{background:#24251b;border-bottom:1px solid #454627;color:#d9d8ba;font-size:10px;letter-spacing:.08em;padding:10px 28px;display:flex;justify-content:space-between;gap:12px}.preview-bar i,.yellow-dot{width:6px;height:6px;border-radius:50%;background:var(--yellow);display:inline-block;margin-right:7px}.site-header{height:108px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.site-header img{width:205px;height:auto}.site-header nav{display:flex;align-items:center;gap:35px;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:17px 22px;background:var(--yellow);color:#10120a;font-size:13px;font-weight:700;border:1px solid var(--yellow);border-radius:7px;line-height:1.35;transition:background .2s,transform .2s}.button:hover{background:#ffe844}.button span{font-size:20px;line-height:1}.button.outline{color:var(--cream);border-color:#515244;background:transparent}.button.outline:hover{background:#25261d}.button.small{padding:12px 17px}.text-button{background:none;border:0;color:var(--cream);padding:12px 0;font-size:13px;cursor:pointer}.text-button span{margin-left:12px}.text-button:hover{text-decoration:underline}.simulation{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:22px 0 0;color:var(--muted);font-size:11px}.segmented{display:flex;background:#191a14;border:1px solid var(--line);border-radius:7px;padding:4px;gap:3px}.segmented button{border:0;background:transparent;border-radius:4px;color:#adae9e;font-size:11px;padding:7px 13px;cursor:pointer}.segmented button[aria-pressed=true]{background:#3c3e29;color:#fafbdd}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:center;padding:45px 0 54px;min-height:520px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.17em;color:var(--muted);line-height:1.5}.hero-copy>.eyebrow{margin-bottom:30px}.live-label{font-size:10px;letter-spacing:.15em;color:var(--yellow);display:flex;gap:9px;align-items:center}.live-label>span:first-child{width:6px;height:6px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 4px #f4d30012}h1{font-size:clamp(46px,5.4vw,76px);font-weight:800;line-height:1.02;letter-spacing:-.055em;margin:20px 0 23px}em{font-style:normal;color:var(--yellow)}.hero-copy>p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:1.8;max-width:400px}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:29px}.hero-foot{display:flex;align-items:center;gap:14px;margin-top:36px}.hero-foot p{font-size:10px;line-height:1.6;margin:0}.hero-foot strong,.hero-foot p span{display:block}.hero-foot p span{color:var(--muted)}.tiny-avatars{display:flex;padding-left:0}.tiny-avatars img{height:33px;width:33px;object-fit:cover;border-radius:50%;border:3px solid var(--ink);margin-left:-7px}.tiny-avatars img:first-child{margin-left:0}.portrait-composition{position:relative;isolation:isolate;max-width:500px;width:100%;margin:auto;padding:37px 22px 25px}.mosaic-orbit{position:absolute;border:1px solid #3b3d22;border-radius:50%;z-index:-1;inset:0;transform:rotate(-22deg);pointer-events:none}.orbit-one{inset:5% -3%;border-style:dashed;opacity:.55}.orbit-two{inset:20% -7%;transform:rotate(28deg);opacity:.6}.orbit-label{position:absolute;top:0;right:10%;font-size:8px;letter-spacing:.2em;color:#8f927b;transform:rotate(8deg)}.avatar-mosaic{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;align-items:center}.mosaic-avatar{aspect-ratio:1;border-radius:50%;border:5px solid var(--ink);outline:1px solid #4f5036;overflow:hidden;background:#25291c;transition:opacity .5s,transform .5s;position:relative}.mosaic-avatar:nth-child(4n+1){transform:translateY(18px)}.mosaic-avatar:nth-child(4n+2){transform:translateY(-9px)}.mosaic-avatar:nth-child(3n){outline-color:#7f7130}.mosaic-avatar img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .45s}.mosaic-avatar.switching img{opacity:0}.mosaic-caption{display:flex;align-items:center;justify-content:center;gap:4px;font-size:10px;color:#d5d7ba;margin:30px auto 8px;padding:10px 12px;border:1px solid #4a4d31;border-radius:25px;width:fit-content;background:#15170f}.pause{border:0;background:transparent;color:var(--yellow);cursor:pointer;padding:4px 9px;margin-left:5px}.art-caption{display:block;text-align:center;color:#787b6b;font-size:9px}.race-strip{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;gap:20px}.race-strip>div:first-child{display:grid;gap:7px}.race-strip strong{font-size:14px}.race-strip>div>span:last-child:not(.eyebrow){color:var(--muted);font-size:11px}.race-distances{display:flex;gap:32px}.race-distances>span{font-size:31px!important;font-weight:800;letter-spacing:-.04em;color:var(--cream)!important}.race-distances small{font-size:9px;color:var(--yellow);letter-spacing:0;margin-left:5px}.day-agenda{display:grid;grid-template-columns:1.2fr repeat(4,1fr);gap:20px;padding:24px 0 30px}.day-agenda>div{display:grid;gap:8px;align-content:center}.day-agenda p{font-size:12px;margin:0}.day-agenda strong{font-size:21px;font-variant-numeric:tabular-nums}.day-agenda>div>span:not(.eyebrow){color:var(--muted);font-size:10px}.mural-section{margin-top:35px;border-top:1px solid #303128;background:#13140f;padding:57px 0 35px;scroll-margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-heading .eyebrow{color:var(--yellow)}h2{font-size:40px;letter-spacing:-.045em;line-height:1.1;margin:12px 0 15px}.section-heading p:not(.eyebrow){color:var(--muted);font-size:13px}.mural-toolbar{display:flex;justify-content:space-between;gap:20px;margin-top:35px;padding-bottom:20px;border-bottom:1px solid var(--line)}.filters{display:flex;gap:7px}.filters button{background:transparent;border:1px solid #34362a;color:#b9bbab;border-radius:5px;font-size:11px;padding:11px 14px;cursor:pointer;white-space:nowrap}.filters button[aria-pressed=true]{background:#f0f0e6;color:#15170e;border-color:#f0f0e6}.search{display:flex;gap:10px;align-items:center;border:1px solid #34362a;border-radius:6px;padding:0 12px;min-width:280px}.search span{font-size:23px;color:var(--muted)}.search input{background:transparent;border:0;padding:11px 0;color:var(--cream);width:100%;font-size:12px;min-width:0}.list-summary{font-size:10px;letter-spacing:.05em;color:var(--muted);margin:22px 0}.athlete-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:15px}.athlete-card{background:#1b1d15;border:1px solid #2d3022;border-radius:12px;padding:21px 14px 16px;min-width:0;text-align:center;position:relative;overflow:hidden}.athlete-card .bib{position:absolute;left:11px;top:12px;font-size:9px;color:#989d85}.athlete-portrait{width:90px;max-width:90%;aspect-ratio:1;border-radius:50%;object-fit:cover;display:block;margin:5px auto 16px;background:#2b3021;border:3px solid #303623}.athlete-card h3{font-size:13px;line-height:1.5;margin:0 0 4px;font-weight:600;overflow-wrap:break-word}.athlete-card p{margin:0;color:#afb497;font-size:10px}.athlete-card .distance-tag{display:inline-block;margin-top:13px;font-size:9px;font-weight:700;padding:5px 9px;background:#30351e;border-radius:4px;color:#d7dfa7}.athlete-card .no-photo{color:#737965;font-size:9px;margin-top:8px}.selfie-invitation{display:flex;gap:24px;align-items:center;border:1px solid #4e5028;background:linear-gradient(110deg,#292d17,#1d2013);border-radius:12px;padding:29px 32px;margin-top:35px}.selfie-invitation .camera-icon{font-size:47px;color:var(--yellow);width:62px;text-align:center}.selfie-invitation h3{font-size:23px;letter-spacing:-.02em;margin:5px 0 10px}.selfie-invitation p{font-size:12px;color:#afb59a;margin:0}.selfie-invitation .button{margin-left:auto;flex-shrink:0}.album-note{display:flex;align-items:center;gap:16px;margin-top:30px;color:#8f957d;font-size:11px;line-height:1.8}.album-note>span:first-child{font-size:28px}.album-note strong{color:#c1c7ae;font-weight:400}.coming-soon{font-size:8px;letter-spacing:.12em;margin-left:auto}.footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:35px 0}.footer img{width:140px;opacity:.7}.footer p{font-size:9px;letter-spacing:.16em;color:#95987e}.footer small{color:#727660;font-size:9px}.empty{text-align:center;color:var(--muted);padding:35px}dialog{background:#191b14;color:var(--cream);border:1px solid #4b4e38;border-radius:17px;padding:0;width:min(570px,calc(100% - 24px));max-height:90dvh;box-shadow:0 25px 100px #0009}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.dialog-top{position:sticky;top:0;z-index:3;background:#20231a;display:flex;align-items:center;justify-content:space-between;padding:13px 22px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.08em}.close{background:none;border:0;color:#d5d8c6;font-size:27px;width:34px;height:34px;cursor:pointer}.dialog-body{padding:25px 28px}.dialog-body h2{font-size:29px}.muted,.file-help,.minor-note{color:#a4ab94;font-size:12px;line-height:1.7}.athlete-identity{display:flex;gap:13px;align-items:center;margin:22px 0}.identity-avatar{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:#323b1f;color:#d9e6b3;font-size:12px}.athlete-identity strong,.athlete-identity div>span{display:block;font-size:12px}.athlete-identity div>span{font-size:10px;color:#a5b18d;margin-top:5px}.kit-simulation{display:grid;gap:8px;background:#23271a;border:1px dashed #505838;border-radius:7px;padding:13px;margin:0 0 22px;font-size:11px}.kit-simulation select{padding:9px;background:#171b12;border:1px solid #434d2d;border-radius:4px;color:#e0e6d4;max-width:100%}.photo-actions{display:flex;gap:10px;margin-top:16px}.photo-actions>*{flex:1}.photo-actions .button{gap:10px;font-size:12px}.file-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.photo-actions label:has(+input:focus-visible){outline:3px solid var(--yellow);outline-offset:3px}.crop-editor{background:#10140d;border:1px solid #3a422a;border-radius:8px;padding:17px;margin:20px 0}.crop-frame{width:min(260px,100%);aspect-ratio:1;position:relative;margin:auto;overflow:hidden;border-radius:5px}.crop-frame canvas{display:block;width:100%;height:100%}.crop-mask{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle closest-side,transparent 97%,#ffffffa0 98%,#ffffffa0 99%,#0009 100%)}.crop-editor p{text-align:center;font-size:11px;color:#a7b096}.crop-editor label{display:flex;align-items:center;gap:15px;font-size:11px;color:#c0c9ae;margin:12px 0}.crop-editor input{margin-left:auto;width:68%;accent-color:var(--yellow)}.consent{border:1px solid #3b442a;border-radius:8px;padding:18px;margin:25px 0 16px}.consent legend{padding:0 8px;color:#e1e6d2;font-size:13px;font-weight:700}.consent label{display:flex;gap:12px;align-items:flex-start;font-size:12px;line-height:1.7;cursor:pointer;margin:0 0 17px}.consent input{flex-shrink:0;width:19px;height:19px;accent-color:var(--yellow);margin-top:2px}.consent p{border-top:1px solid var(--line);padding-top:14px;margin-bottom:0;font-size:10px;color:#a5af92;line-height:1.7}.minor-note{font-size:10px}.full{width:100%;margin-top:10px}.notice{padding:15px;background:#29331b;border:1px solid #495e2a;color:#d8e8bb;border-radius:7px;font-size:12px;line-height:1.7;margin:16px 0}.review-actions{display:grid;gap:12px}.danger{color:#f2b39d}.error{color:#ffb4a0;font-size:12px;line-height:1.7}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#f4d300;color:#171b0b;box-shadow:0 8px 35px #0009;padding:15px 22px;border-radius:8px;z-index:10;font-size:12px;width:max-content;max-width:calc(100% - 30px)}body:has(dialog[open]){overflow:hidden}
@media(min-width:1500px){.hero{gap:70px;padding-top:65px;padding-bottom:70px}.portrait-composition{max-width:530px}}
@media(max-width:1000px){.shell{width:calc(100% - 48px)}.hero{grid-template-columns:1fr 1fr;gap:20px}h1{font-size:54px}.hero-actions{align-items:flex-start;flex-direction:column;gap:8px}.avatar-mosaic{gap:9px}.portrait-composition{padding-inline:10px}.athlete-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mural-toolbar{flex-direction:column}.search{max-width:400px}.day-agenda{grid-template-columns:repeat(4,1fr)}.day-agenda>div:first-child{grid-column:1/-1}.selfie-invitation{padding:24px;gap:15px}.selfie-invitation .camera-icon{display:none}.race-distances{gap:20px}}
@media(max-width:640px){.shell{width:calc(100% - 36px)}.preview-bar{padding:9px 16px;font-size:8px;display:block;line-height:1.7}.preview-bar>span:last-child{display:block;color:#9c9f84;letter-spacing:0}.site-header{height:80px}.site-header img{width:151px}.site-header nav{gap:10px}.site-header nav>a{display:none}.site-header .small{font-size:10px;padding:10px 12px;gap:10px}.simulation{font-size:9px;padding-top:17px;gap:6px}.segmented button{font-size:10px;padding:7px 9px}.hero{grid-template-columns:1fr;padding:28px 0 24px;gap:22px}.hero-copy>.eyebrow{margin-bottom:22px;font-size:9px}.live-label{font-size:9px}h1{font-size:clamp(43px,11.5vw,68px);margin:16px 0 18px;max-width:430px}.hero-copy>p:not(.eyebrow){font-size:13px;line-height:1.75;margin-bottom:0;max-width:360px}.hero-actions{margin-top:23px;flex-direction:row;align-items:center;gap:17px}.hero-actions .button{padding:14px 15px;gap:13px;font-size:11px}.hero-actions .text-button{font-size:11px;max-width:110px;text-align:left;line-height:1.6}.hero-actions .text-button span{margin-left:2px}.hero-foot{margin-top:23px}.hero-foot p{font-size:9px}.portrait-composition{max-width:345px;padding:20px 13px 10px}.avatar-mosaic{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.mosaic-avatar{border-width:2px}.mosaic-avatar:nth-child(4n+1),.mosaic-avatar:nth-child(4n+2){transform:none}.mosaic-avatar:nth-child(2n){transform:translateY(7px)}.mosaic-caption{margin-top:21px;font-size:9px;padding:5px 9px}.orbit-label{font-size:6px;right:3%;top:-2px}.orbit-one{inset:0 0}.orbit-two{inset:18% -2%}.art-caption{font-size:8px}.race-strip{align-items:flex-start;flex-direction:column;padding:20px 0;gap:17px}.race-strip strong{font-size:12px}.race-strip .eyebrow{font-size:8px}.race-strip>div>span:last-child{font-size:10px}.race-distances{width:100%;justify-content:space-between}.race-distances>span{font-size:26px!important}.day-agenda{grid-template-columns:1fr 1fr;gap:21px;padding-bottom:10px}.day-agenda strong{font-size:22px}.day-agenda>div>span:not(.eyebrow){font-size:10px}.mural-section{margin-top:30px;padding-top:33px}.section-heading{align-items:flex-start;flex-direction:column;gap:6px}.section-heading .eyebrow{font-size:9px}h2{font-size:34px;margin:10px 0 13px}.section-heading p:not(.eyebrow){font-size:12px;line-height:1.7}.section-heading>.button{padding:12px 16px;font-size:11px}.mural-toolbar{margin-top:22px;gap:15px}.filters{gap:5px;flex-wrap:wrap}.filters button{font-size:10px;padding:10px 11px}.search{min-width:0;max-width:none}.search input{padding:13px 0;font-size:12px}.athlete-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.athlete-card{padding:19px 10px 14px}.athlete-portrait{width:85px;margin-bottom:13px}.athlete-card h3{font-size:12px}.selfie-invitation{flex-direction:column;align-items:flex-start;padding:22px;gap:20px;margin-top:25px}.selfie-invitation .button{margin-left:0;width:100%;font-size:12px}.selfie-invitation h3{font-size:22px}.selfie-invitation p{line-height:1.7;font-size:11px}.album-note{flex-wrap:wrap;gap:10px;font-size:10px}.album-note p{flex:1;min-width:230px}.coming-soon{margin:0 0 0 33px}.footer{flex-wrap:wrap;padding:28px 0;gap:16px}.footer img{width:120px}.footer p{font-size:7px}.footer small{font-size:8px;width:100%}.dialog-body{padding:20px}.dialog-body h2{font-size:26px}.dialog-top{padding:10px 17px}.photo-actions .button{padding:13px 11px;font-size:11px}.consent{padding:13px}.consent label{font-size:11px}.kit-simulation{font-size:10px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.hero{overflow:clip}
.event-information-link{display:flex;align-items:center;justify-content:space-between;gap:22px;border:1px solid #494d31;border-radius:10px;background:#1c2014;padding:24px 28px;margin:0 0 25px}.event-information-link h2{font-size:23px;margin:8px 0}.event-information-link p{font-size:12px;line-height:1.7;color:var(--muted);margin:0}.event-information-action{color:var(--yellow);font-size:12px;white-space:nowrap}.event-information-action>span{margin-left:15px}.event-information-link:hover{border-color:var(--yellow)}.preview-controls{flex-wrap:wrap}.site-header .event-nav-link{color:#d6dabf}.selfie-invitation p{max-width:480px;line-height:1.7}
@media(max-width:640px){.site-header{height:auto;min-height:80px;flex-wrap:wrap;padding:19px 0;gap:18px}.site-header nav{width:100%;justify-content:space-between;gap:10px}.site-header nav>.event-nav-link,.site-header nav>.account-link{display:inline-flex;font-size:11px}.site-header .small{padding:11px 12px}.event-information-link{padding:20px;align-items:flex-start;flex-direction:column;gap:18px}.event-information-link h2{font-size:22px}.event-information-link p{font-size:12px}.simulation .preview-controls{justify-content:flex-start;gap:8px}.preview-controls .segmented{margin-top:3px}.hero-actions .text-button{display:inline-block}}
.preview-controls{display:flex;align-items:center;gap:14px}.preview-controls .button{font-size:10px;padding:9px 12px;gap:8px}.preview-controls .button span{font-size:11px;background:var(--yellow);color:#171b0a;border-radius:50%;min-width:19px;height:19px;display:grid;place-items:center}.submitted-photo{display:grid;grid-template-columns:115px 1fr;gap:20px;align-items:start;background:#22271a;border:1px solid #455333;border-radius:10px;padding:19px;margin:20px 0}.submitted-photo>img{width:115px;height:115px;object-fit:cover;border-radius:12px}.submitted-photo p{font-size:12px;line-height:1.75;margin:12px 0}.photo-badge{display:inline-block;border-radius:5px;background:#494522;color:#f1df8c;font-size:10px;padding:7px 9px}.photo-badge.approved{background:#2b4826;color:#cfedbd}.submitted-photo .button{font-size:11px;padding:12px;gap:8px}.submitted-photo .text-button{font-size:11px;text-align:left;padding:5px 0;line-height:1.6}#cancelChange{display:block;text-decoration:underline}.moderation-image{display:block;max-width:100%;width:260px;height:260px;object-fit:cover;border-radius:14px;margin:20px auto}#moderationCard h3{text-align:center}#moderationCard>p{text-align:center}#moderationStatus{margin-bottom:0}
@media(max-width:640px){.simulation{align-items:flex-start;flex-direction:column;gap:12px}.preview-controls{width:100%;justify-content:space-between;gap:8px}.preview-controls .button{font-size:9px}.submitted-photo{grid-template-columns:1fr;padding:18px;gap:16px}.submitted-photo>img{width:150px;height:150px;margin:auto}.submitted-photo .review-actions{grid-template-columns:1fr}.submitted-photo p{font-size:12px}}
@media(min-width:641px) and (max-width:850px){h1{font-size:42px}.hero-copy>p:not(.eyebrow){font-size:13px}.portrait-composition{padding-inline:7px}.mosaic-caption{font-size:8px}}
#registrationChoice{display:block;font-size:12px;color:var(--muted);margin:18px 0}#selfieRegistration{display:block;width:100%;padding:12px;margin-top:8px;background:#24271e;color:var(--cream);border:1px solid #52583c;border-radius:6px}
.site-header.icon-header{height:98px;min-height:0;flex-wrap:nowrap;gap:20px;padding-block:18px}
.icon-header .header-brand{display:flex;align-items:center;flex-shrink:0}.icon-header .header-brand img{display:block;width:205px}
.site-header.icon-header nav{display:flex;align-items:center;width:auto;gap:10px;flex-shrink:0}
.site-header.icon-header nav>.header-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border:1px solid #393c30;border-radius:7px;background:#11130e;color:var(--yellow)}
.icon-header .header-icon svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.site-header.icon-header .header-icon:hover{background:#252817;border-color:var(--yellow)}
.site-header.icon-header .header-icon:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}
@media(max-width:640px){
  .site-header.icon-header{width:calc(100% - 32px);height:80px;gap:10px;padding-block:16px}
  .icon-header .header-brand img{width:clamp(88px,30vw,128px)}
  .site-header.icon-header nav{width:auto;gap:4px;justify-content:flex-end}
  .site-header.icon-header nav>.header-icon{width:40px;height:44px;border-radius:6px}
  .icon-header .header-icon svg{width:19px;height:19px}
}

.home-results-highlight { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px; margin:0 0 30px; border:2px solid #efcd47; border-radius:18px; background:#27291c; color:#fff; }
.home-results-highlight h2 { margin:8px 0; font-size:clamp(1.5rem,3vw,2.2rem); line-height:1.15; }
.home-results-highlight p { max-width:680px; }
.home-results-highlight .button { flex-shrink:0; background:#efcd47; color:#171b12; text-align:center; }
@media(max-width:700px) { .home-results-highlight { flex-direction:column; align-items:stretch; padding:20px; gap:16px; } .home-results-highlight .button { width:100%; } }
