@font-face{font-family:Barlow Condensed;src:url(/fonts/BarlowCondensed-Medium.ttf) format("truetype");font-display:swap;font-style:normal;font-weight:500}:root{color-scheme:light;--grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--app-background: #ffffff}:root[data-theme=light]{color-scheme:light;--app-background: #ffffff}:root[data-theme=dark]{color-scheme:dark;--app-background: #141820}@media(prefers-color-scheme:dark){:root:not([data-theme]),:root[data-theme=system]{color-scheme:dark;--app-background: #141820}}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%;min-width:0}body{margin:0;font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif;color:#1a2233;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:var(--app-background, #ffffff);overflow-x:clip}a{color:inherit}.app-shell{position:relative;min-height:100vh;display:flex;flex-direction:column;isolation:isolate}.app-shader-background{position:fixed;inset:0;z-index:0;width:100vw;height:100vh;overflow:hidden;background:var(--app-background, #ffffff);pointer-events:none}.app-shader-background canvas{display:block;width:100%!important;height:100%!important}.app-shader-background-static{position:absolute;inset:0;background:#ebebeb url(/app-background.webp) center/cover no-repeat;isolation:isolate}.app-shader-background-static:after{content:"";position:absolute;inset:0;background-image:url(/app-background-grain.svg);background-size:128px 128px;opacity:.65;mix-blend-mode:screen}.app-shader-background--climbs .app-shader-background-static{filter:grayscale(1)}.app-shader-background--journey .app-shader-background-static{filter:hue-rotate(270deg)}.app-content{position:relative;z-index:2;flex:1 0 auto}.app-route-loading{min-height:min(60vh,36rem);display:grid;place-items:center;padding:2rem;color:#4a5872;font-family:IBM Plex Mono,SFMono-Regular,Menlo,monospace;font-size:.9375rem;letter-spacing:.06em;text-transform:uppercase}.app-route-loading p{margin:0}.app-load-error{max-width:36rem;margin:15vh auto;padding:2rem;background:#fffaf0;color:#1a2233}.app-load-error h1{font-size:1.75rem}.app-load-error button{padding:.75rem 1.25rem;border:0;border-radius:.25rem;background:#1a2233;color:#fffaf0;font:inherit;cursor:pointer}.app-footer{position:relative;z-index:2}.grain-overlay{position:relative;isolation:isolate}.grain-overlay:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.user-header{width:min(100% - 1.5rem,840px);margin:.75rem auto 0;padding:0;background:transparent}.user-header-inner{position:relative;width:100%;max-width:100%;margin:0;height:62px;min-height:62px;padding:1px .75rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;border:1px solid rgba(165.4695652174,179.7130434783,204.1304347826,.48);border-radius:10px;background:#fff;box-shadow:0 8px 18px #061c121f}.user-header-inner--wide{max-width:100%}.app-title{margin:0;display:flex;align-items:center;min-width:0;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:clamp(1rem,4.2vw,1.125rem);font-weight:700;text-transform:uppercase;letter-spacing:.08em;line-height:0;color:#1a2233}.app-title-link{display:inline-flex;align-items:center;height:58px;max-width:100%;min-width:0;overflow:hidden;color:inherit;text-decoration:none}.app-title-link:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.app-title-logo{display:block;width:auto;max-width:100%;height:68px;max-height:none;object-fit:contain}.user-badge{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;min-width:0}.user-badge-button{border:0;background:transparent;min-height:44px;padding:0;cursor:pointer}.user-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex:0 0 auto;min-width:0}.user-nav-menu{position:relative;display:flex;align-items:center}.user-nav-toggle{display:inline-grid;width:44px;height:44px;place-items:center;padding:0;border:0;background:#fff;color:#1a2233;cursor:pointer}.user-nav-toggle svg{width:20px;height:20px}.user-nav-toggle:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.user-header-nav{background-color:#fff;border:1px solid #d3dae6;box-shadow:0 8px 18px #061c121f;border-radius:0;position:absolute;z-index:100;top:calc(100% + .5rem);right:0;width:min(100vw - 1.5rem,280px);padding:.5rem;display:none;grid-template-columns:minmax(0,1fr);gap:2px}.user-header-nav--open{display:grid}.user-header-link{display:inline-flex;align-items:center;justify-content:flex-start;min-height:40px;width:100%;padding:0 .75rem;font-family:Bebas Neue,Sora,Avenir Next,Segoe UI,sans-serif;font-size:1.56rem;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:red;text-decoration:none;white-space:nowrap}.user-header-link:hover{background:#ff000014;text-decoration:none}.user-header-link:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.user-header-link--active{color:#c00;text-decoration:underline}.user-menu{position:relative;display:flex;align-items:center;justify-content:flex-end;min-width:0}.user-avatar{width:36px;height:36px;border:1px solid rgb(165.4695652174,179.7130434783,204.1304347826);border-radius:999px;box-shadow:0 8px 18px #061c121f;object-fit:cover;display:block;flex-shrink:0}.user-avatar-placeholder{display:flex;align-items:center;justify-content:center;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:700;text-transform:uppercase;background:#f2f4f8;color:#1a2233}.user-name{max-width:clamp(84px,28vw,180px);font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.9375rem;font-weight:700;letter-spacing:.02em;color:#1a2233;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-popover{background-color:#fff;border:1px solid #d3dae6;box-shadow:0 8px 18px #061c121f;border-radius:0;position:absolute;top:calc(100% + .5rem);right:0;min-width:180px;padding:.5rem;display:flex;flex-direction:column;gap:2px;z-index:100}.user-menu-item{padding:.5rem 1rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:1px solid #2f4f8f;cursor:pointer;transition:all .2s ease;border-radius:0}.user-menu-item:focus{outline:2px solid #3b67ad;outline-offset:2px}.user-menu-item:disabled{opacity:.5;cursor:not-allowed}.user-menu-item{display:flex;align-items:center;width:100%;text-align:left;text-decoration:none;border-color:transparent;background:transparent;color:#1a2233;text-transform:none;letter-spacing:normal}.user-menu-item:hover{background:#f2f4f8}.user-menu-item-danger{color:#b43b34}.user-menu-item-danger:hover:not(:disabled){background:#b43b3414}.user-menu-error{margin:.25rem 0 0;padding:.5rem;border:1px solid rgba(180,59,52,.35);background:#b43b3414;color:#b43b34;font-size:.6875rem;line-height:1.2}.user-header--bonds .user-header-inner{border-color:#c8c8c8;background:#f8f8f8;box-shadow:0 3px 10px #3232321a}.user-header--bonds .user-nav-toggle{color:#9147fa;background:#f2f2f2}.user-header--bonds .user-header-nav,.user-header--bonds .user-menu-popover{border-color:#c8c8c8;background:#faf8ef}.user-header--bonds .user-header-link{color:#9147fa}.user-header--bonds .user-header-link:hover{background:#9147fa1a}.user-header--bonds .user-header-link:focus-visible{outline-color:#9147fa}.user-header--bonds .user-header-link--active{color:#6825b6}@media(min-width:760px){.user-header{width:min(100% - 2rem,840px);margin-top:1rem}.user-header-inner{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;height:90px;min-height:90px;padding:1px 1rem}.app-title{justify-self:start}.app-title-link{height:86px}.app-title-logo{width:auto;height:102px;max-width:none}.user-header-actions{display:contents}.user-nav-menu{position:static;justify-self:start;margin-left:1rem}.user-nav-toggle{display:none}.user-header-nav{position:static;z-index:auto;width:auto;padding:0;border:0;background:transparent;box-shadow:none;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:flex-start}.user-header-link{width:auto;padding:0}.user-header-link:hover{background:transparent;text-decoration:underline}.user-menu{grid-column:4;justify-self:end}.user-name{max-width:clamp(120px,42vw,280px)}}@media(max-width:759px){.user-nav-menu{display:none}}@media(max-width:420px){.user-header{width:calc(100% - 1rem);margin-top:.5rem}.user-header-inner{gap:.5rem;padding-top:1px;padding-right:.5rem;padding-bottom:1px;padding-left:.5rem}.app-title-logo{width:auto;max-width:min(100%,100vw - 104px)}.user-name{display:none}}.user-header--climbs .app-title-logo{filter:grayscale(1)}.user-header--climbs .user-header-inner{border-color:#c8c8c8;background:#f8f8f8;box-shadow:0 3px 10px #3232321a}.user-header--climbs .user-header-link,.user-header--climbs .user-nav-toggle{color:#5e5e5e}.user-header--climbs .user-header-link:hover{background:#ededed}.user-header--climbs .user-header-link:focus-visible{outline-color:#666}.user-header--climbs .user-header-nav,.user-header--climbs .user-menu-popover{border-color:#c8c8c8;background:#fafafa}.app-footer{flex-shrink:0;padding:.75rem}.app-footer__inner{width:min(100%,1280px);margin:0 auto;padding-top:.75rem;border-top:1px solid rgba(165.4695652174,179.7130434783,204.1304347826,.45);display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem}.app-footer__strava-link,.app-footer__text-link{display:inline-flex;align-items:center}.app-footer__strava-link:focus-visible,.app-footer__text-link:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.app-footer__strava-link{flex-shrink:0;min-height:32px}.app-footer__strava-mark{display:block;width:auto;height:16px}.app-footer__nav{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0}.app-footer__right{display:flex;flex-direction:column;align-items:flex-end;gap:0}.app-footer__text-link{min-height:32px;padding:0;gap:.5rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.6875rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:#4a5872;text-decoration:none;white-space:nowrap;transition:color .2s ease}.app-footer__text-link:hover{color:#1a2233;text-decoration:underline;text-underline-offset:.16em}.app-footer__icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;flex-shrink:0}@media(min-width:760px){.app-footer{padding:.75rem 1rem 1rem}.app-footer__inner{align-items:center;gap:1rem}.app-footer__strava-mark{height:18px}.app-footer__strava-link{min-height:40px}.app-footer__nav,.app-footer__right{flex-direction:row;align-items:center;gap:1rem}.app-footer__text-link{min-height:40px;font-size:.8125rem}}.impersonation-banner{position:sticky;z-index:301;top:0;padding:.5rem;background:repeating-linear-gradient(-45deg,#772f2a 0 10px,#853832 10px 20px);color:#fff4dc;box-shadow:0 3px #3219143d}.impersonation-banner__inner{width:min(100%,1100px);min-height:48px;margin:0 auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:.75rem;align-items:center;padding:.5rem .75rem;border:1px solid rgba(255,244,220,.58);background:#772f2a}.impersonation-banner__inner>svg{color:#f1ca78}.impersonation-banner p{min-width:0;margin:0;display:flex;gap:.75rem;align-items:baseline}.impersonation-banner p span,.impersonation-banner p small{font-family:IBM Plex Mono,SFMono-Regular,Menlo,monospace;font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase}.impersonation-banner p span{color:#f1ca78;font-weight:700}.impersonation-banner p strong{overflow:hidden;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.9375rem;text-overflow:ellipsis;white-space:nowrap}.impersonation-banner p small{color:#e7c8ad;white-space:nowrap}.impersonation-banner__error{color:#ffe0a3;font-size:.8125rem}.impersonation-banner button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:36px;padding:.5rem .75rem;border:1px solid #f1ca78;border-radius:0;background:#f3dca5;color:#48221f;cursor:pointer;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.6875rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.impersonation-banner button:hover:not(:disabled){background:#ffeab8}.impersonation-banner button:focus-visible{outline:2px solid #fff4dc;outline-offset:2px}.impersonation-banner button:disabled{cursor:wait;opacity:.65}@media(max-width:640px){.impersonation-banner__inner{grid-template-columns:auto minmax(0,1fr) auto}.impersonation-banner p{display:grid;gap:1px}.impersonation-banner p small{white-space:normal}.impersonation-banner__error{grid-column:1/-1;grid-row:2}.impersonation-banner button{width:40px;padding:0;font-size:0}}@keyframes loading-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes public-hero-slide-in{0%{opacity:.72;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes public-hero-map-crossfade{0%,28%{opacity:1;transform:scale(1.01)}36%,94%{opacity:0;transform:scale(1.045)}to{opacity:1;transform:scale(1.01)}}.landing{min-height:calc(100vh - 72px);padding:.75rem;color:#1a2233;font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif}.landing .authenticated-content{width:100%;max-width:840px;min-width:0;margin:0 auto}.landing .public-landing{width:min(100%,1320px);margin:0 auto;padding:.75rem}.landing .public-hero{position:relative;isolation:isolate;display:grid;gap:1rem;min-height:460px;padding:1rem 2rem;overflow:hidden;border:1px solid rgba(77,99,141,.3);background:transparent;box-shadow:0 16px 34px #061c1229}.landing .public-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fffcf4f0,#f8f4e8db),repeating-linear-gradient(0deg,rgba(77,99,141,.09),rgba(77,99,141,.09) 1px,transparent 1px,transparent 34px),repeating-linear-gradient(90deg,rgba(77,99,141,.07),rgba(77,99,141,.07) 1px,transparent 1px,transparent 34px);opacity:.32;transition:opacity .5s cubic-bezier(.22,1,.36,1);pointer-events:none}.landing .public-hero.is-in-focus:before{opacity:1}.landing .hex-fog-edge{position:absolute;inset:0 auto 0 0;z-index:-1;width:100%;height:100%;overflow:hidden}.landing .hex-fog-edge--hero{width:52%}.landing .hex-fog-edge--mobile{display:none}.landing .public-hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;min-height:370px;align-items:stretch}.landing .public-hero-copy{display:grid;align-content:center;gap:1rem;min-width:0;padding:1rem 0 1rem 1rem}.landing .public-hero-copy h1{max-width:16ch;margin:0;color:#1a2233;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:2.95rem;font-weight:700;line-height:1.02;letter-spacing:0;overflow-wrap:anywhere}.landing .public-hero-lede-group{display:grid;gap:.5rem;min-height:4.185rem;align-content:start;animation:public-hero-slide-in .42s cubic-bezier(.22,1,.36,1)}.landing .public-hero-lede{max-width:48ch;margin:0;color:#4a5872;font-size:calc(1.125rem * 1.2);line-height:1.55}.landing .public-hero-showcase{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(96px,1fr);gap:0;align-items:stretch;align-self:center;width:100%;height:auto;min-width:0;min-height:0;margin:0;padding:0;border:1px solid rgba(77,99,141,.34);background:#e5e9f1;box-shadow:0 18px 42px #1a223321}.landing .public-hero-video-frame{position:relative;min-width:0;aspect-ratio:960/610;overflow:hidden;border-bottom:1px solid rgba(77,99,141,.32);background:#e1e6ef}.landing .public-hero-video{display:block;width:100%;height:auto;aspect-ratio:960/610;filter:saturate(.96) contrast(1.025)}.landing .public-hero-map-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr;gap:0;min-width:0;min-height:clamp(96px,10vw,132px)}.landing .public-hero-map-tile{position:relative;min-width:0;min-height:0;overflow:hidden;border-right:1px solid rgba(77,99,141,.32);background:#e5e9f1}.landing .public-hero-map-tile:last-child{border-right:0}.landing .public-hero-map-tile img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;filter:saturate(.92) contrast(1.03);animation:public-hero-map-crossfade 15s linear infinite;will-change:opacity,transform}.landing .public-hero-map-tile img:nth-child(1){animation-delay:0s}.landing .public-hero-map-tile img:nth-child(2){animation-delay:5s}.landing .public-hero-map-tile img:nth-child(3){animation-delay:10s}.landing .public-hero-map-tile--2 img:nth-child(1){animation-delay:-1.65s}.landing .public-hero-map-tile--2 img:nth-child(2){animation-delay:3.35s}.landing .public-hero-map-tile--2 img:nth-child(3){animation-delay:8.35s}.landing .public-hero-map-tile--3 img:nth-child(1){animation-delay:-3.3s}.landing .public-hero-map-tile--3 img:nth-child(2){animation-delay:1.7s}.landing .public-hero-map-tile--3 img:nth-child(3){animation-delay:6.7s}.landing .public-kicker{margin:0;color:#2f4f8f;font-family:IBM Plex Mono,SFMono-Regular,Menlo,monospace;font-size:.8125rem;font-weight:700;line-height:1.2;letter-spacing:0;text-transform:uppercase}.landing .public-section-heading h2{margin:0;color:#1a2233;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-weight:700;line-height:1.05;letter-spacing:0;overflow-wrap:anywhere}.landing .public-section-heading p{max-width:60ch;margin:0;color:#4a5872;font-size:1.125rem;line-height:1.55}.landing .public-activity-type-rotator{position:relative;isolation:isolate;border-color:#c00;background-color:red;color:#fff}.landing .public-activity-type-rotator:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .public-activity-type-rotator{display:inline-grid;place-items:center;width:10ch;min-width:10ch;margin:0 .16em;padding:.05em .36em .08em;border:1px solid #cc0000;border-radius:6px;color:#fff;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-weight:700;line-height:1.1;text-align:center;vertical-align:.04em;white-space:nowrap;--grain-scale: 130px;--grain-opacity: .48}.landing .public-hero-actions{display:grid;justify-items:start;gap:.75rem;min-width:0;padding-top:.5rem}.landing .public-strava-import-card{background-color:#fff;background-image:linear-gradient(#08352009,#08352009),repeating-linear-gradient(0deg,#fffffff5,#fffffff5 2px,#0c573705 2px 4px);display:flex;align-items:center;gap:.75rem;width:min(100%,560px);min-width:0;padding:.75rem;border:1px solid rgba(77,99,141,.34);border-radius:0}.landing .public-strava-import-copy{flex:1 1 18ch;min-width:14ch;margin:0;color:#1a2233;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.9375rem;font-weight:700;line-height:1.2;text-transform:uppercase}.landing .public-strava-import-copy-mobile{display:none}.landing .public-connect-button{flex:0 0 auto;max-width:236px}.landing .public-open-app-button{padding:.5rem 1rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:1px solid #2f4f8f;cursor:pointer;transition:all .2s ease;border-radius:0}.landing .public-open-app-button:focus{outline:2px solid #3b67ad;outline-offset:2px}.landing .public-open-app-button:disabled{opacity:.5;cursor:not-allowed}.landing .public-open-app-button{position:relative;isolation:isolate;border-color:#c00;background-color:red;color:#fff}.landing .public-open-app-button:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .public-open-app-button{display:inline-flex;flex:0 0 auto;align-items:center;align-self:center;min-width:148px;min-height:48px;justify-content:center;text-align:center;text-decoration:none;--grain-scale: 140px;--grain-opacity: .52}.landing .public-open-app-button:hover{position:relative;isolation:isolate;border-color:#c00;background-color:#c00;color:#fff}.landing .public-open-app-button:hover:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .public-auth-copy{max-width:50ch;margin:0;color:#4a5872;font-size:.9375rem;line-height:1.55}.landing .public-feature{position:relative;isolation:isolate;display:grid;gap:2rem;padding:4rem 2rem;border-right:1px solid rgba(77,99,141,.24);border-bottom:1px solid rgba(77,99,141,.24);border-left:1px solid rgba(77,99,141,.24);background:transparent}.landing .public-feature:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fffcf4f0,#f8f4e8db),repeating-linear-gradient(90deg,rgba(77,99,141,.06),rgba(77,99,141,.06) 1px,transparent 1px,transparent 42px);opacity:.32;transition:opacity .5s cubic-bezier(.22,1,.36,1);pointer-events:none}.landing .public-feature.is-in-focus:before{opacity:1}.landing .public-feature--fog{grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:center}.landing .hex-fog-edge--fog{width:44%}.landing .public-feature--generation{grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:start}.landing .hex-fog-edge--generation{width:42%}.landing .public-feature--generation:before{background:linear-gradient(90deg,#f7faf6f0,#f7faf6db),repeating-linear-gradient(0deg,rgba(62,95,153,.06),rgba(62,95,153,.06) 1px,transparent 1px,transparent 38px)}.landing .public-feature--generation .public-section-heading{max-width:430px;min-height:640px;grid-template-rows:auto auto auto minmax(0,1fr)}.landing .public-generation-preset-showcase{align-self:center;justify-self:center;width:min(100%,430px);min-width:0}.landing .public-generation-preset-showcase .onboarding-map-showcase{width:100%}.landing .onboarding-map-showcase--public{gap:.5rem}.landing .onboarding-map-showcase--public .onboarding-preset-carousel{padding:.5rem 16%}.landing .onboarding-map-showcase--public .onboarding-preset-slide{flex-basis:66%}.landing .onboarding-map-showcase--public .onboarding-preset-slide-media{aspect-ratio:4/3}.landing .public-section-heading{display:grid;gap:.75rem;align-content:start}.landing .public-section-heading h2{max-width:12ch;font-size:3rem}.landing .public-fog-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;align-items:end}.landing .public-fog-example{position:relative;min-width:0;margin:0;overflow:hidden;border:1px solid rgba(77,99,141,.34);background:#ebeef4;box-shadow:0 8px 18px #061c121f}.landing .public-fog-example img{display:block;width:100%;height:100%;object-fit:cover}.landing .public-fog-example{aspect-ratio:4/5}.landing .public-fog-example--fog-overview{transform:translateY(-1.5rem)}.landing .public-fog-example--fog-frontier img{object-position:72% center;filter:saturate(.95) contrast(1.08)}.landing .public-fog-example figcaption{position:absolute;right:.5rem;bottom:.5rem;left:.5rem;display:inline-flex;align-items:center;gap:.5rem;min-width:0;padding:.52rem .64rem;border:1px solid rgba(77,99,141,.28);background:#fffcf4e6;color:#1a2233;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:700;line-height:1.2}.landing .public-fog-example figcaption span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing .public-feature-points{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.landing .public-feature-point{display:flex;align-items:center;gap:.75rem;min-width:0;padding:.75rem;border-top:1px solid rgba(77,99,141,.24);color:#4a5872;font-size:.9375rem;line-height:1.55}.landing .public-feature-point svg{width:18px;height:18px;flex:0 0 auto;color:#2f4f8f;stroke-width:2.2}.landing .public-feature-point span{min-width:0}.landing .public-map-gallery-preview{height:640px;min-height:0;padding:0;border-color:#3e5f9947;box-shadow:0 16px 34px #061c1229}.landing .public-map-gallery-grid{height:100%;min-height:0;grid-template-rows:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(0,1fr)}.landing .public-map-gallery-preview .home-mini-gallery-item{border-right:1px solid rgba(77,99,141,.2);border-bottom:1px solid rgba(77,99,141,.2)}.landing .public-map-gallery-preview .home-mini-gallery-image{object-fit:cover;object-position:top center;filter:saturate(.94) contrast(.98)}.landing .home-dashboard{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:.75rem;min-width:0}.landing .strava-quota-notice{position:relative;isolation:isolate;border-color:#f3cf73;background-color:#fff3cd;color:#2f4f8f}.landing .strava-quota-notice:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .strava-quota-notice{display:flex;align-items:center;gap:.65rem;margin-bottom:.75rem;padding:.8rem 1rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.9375rem;font-weight:700;line-height:1.35;--grain-scale: 180px;--grain-opacity: .45}.landing .strava-quota-notice svg{width:18px;height:18px;flex:0 0 auto;stroke-width:2.3}.landing .home-dashboard>*{min-width:0}.landing .auth-shell{background-color:#fff;border:1px solid #d3dae6;box-shadow:0 8px 18px #061c121f;border-radius:0;padding:1rem;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);max-width:420px;margin:2rem auto 0}.landing .auth-shell .loading-text,.landing .auth-shell .error-message{margin:0}.landing .auth-shell-plain{padding:0;border:0;background:transparent;box-shadow:none}.landing .activities-section{background-color:#fff;border:1px solid #d3dae6;box-shadow:0 8px 18px #061c121f;border-radius:0;padding:.75rem;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:flex;flex-direction:column;gap:.75rem;min-width:0}.landing .onboarding-shell{display:grid;justify-items:center;width:min(100%,780px);max-width:780px;margin:2rem auto 0;scroll-margin-top:calc(72px + .75rem)}.landing .onboarding-status{position:relative;isolation:isolate;border-color:#bfdbfe;background-color:#dbeafe;color:#2f4f8f}.landing .onboarding-status:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .onboarding-status{display:inline-flex;align-items:center;gap:.45rem;justify-self:center;margin-bottom:.75rem;padding:.52rem .78rem;border-radius:999px;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:700;line-height:1.2;letter-spacing:.01em;--grain-scale: 150px;--grain-opacity: .5}.landing .onboarding-status svg{width:16px;height:16px;flex:0 0 auto;stroke-width:2.3}.landing .onboarding-preview-exit{margin-left:.25rem;padding-left:.75rem;border-left:1px solid rgba(47,79,143,.28);color:#2f4f8f;font-size:.6875rem;text-underline-offset:3px}.landing .onboarding-preview-exit:hover{color:#3b67ad}.landing .onboarding-preview-exit:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.landing .onboarding-dialog{background-color:#fff;border:1px solid #d3dae6;box-shadow:0 8px 18px #061c121f;border-radius:0;padding:1.5rem;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:grid;gap:1rem;width:100%;overflow:hidden}.landing .onboarding-step-dots{display:inline-flex;justify-self:center;gap:.4rem;align-items:center}.landing .onboarding-step-dot{display:block;width:8px;height:8px;border:1px solid rgba(47,79,143,.42);border-radius:999px;background:#ffffffb8}.landing .onboarding-step-dot.is-active{width:24px;background:#2f4f8f}.landing .onboarding-slide{--onboarding-slide-height: min(430px, calc(100svh - 250px) );display:grid;gap:1rem;min-height:var(--onboarding-slide-height);min-width:0}.landing .onboarding-slide--defaults{grid-template-rows:auto auto;align-content:start;gap:1.5rem;min-height:0}.landing .onboarding-slide--leaderboard{height:var(--onboarding-slide-height);grid-template-rows:auto minmax(0,1fr);text-align:left}.landing .onboarding-slide--leaderboard .leaderboard-consent{font-size:.9375rem}.landing .onboarding-slide--leaderboard .leaderboard-consent p{margin-bottom:.5rem}.landing .onboarding-slide--leaderboard .leaderboard-consent small{margin-top:.5rem}.landing .onboarding-slide--leaderboard .leaderboard-consent-toggle{padding:12px;min-height:44px}.landing .onboarding-leaderboard-content{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,1fr);align-items:center;gap:1.5rem;min-height:0;overflow-y:auto}.landing .onboarding-leaderboard-preview{display:block;width:100%;height:auto;border:1px solid #d3dae6;border-radius:12px;box-shadow:0 8px 18px #061c121f}.landing .onboarding-defaults-content{display:grid;align-content:start;gap:0;width:min(100%,640px);min-height:0;margin:0 auto;border-top:2px solid #1a2233;text-align:left}.landing .onboarding-heading{display:grid;padding-bottom:.5rem;border-bottom:1px solid rgb(165.4695652174,179.7130434783,204.1304347826)}.landing .onboarding-heading h1{margin:0;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:1.85rem;line-height:1.2;letter-spacing:0}.landing .onboarding-heading-kicker{font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:#4a5872;margin:0 0 .25rem;color:#2f4f8f}.landing .onboarding-heading-copy{max-width:56ch;margin:.5rem 0 0;color:#4a5872;font-size:.9375rem;line-height:1.55}.landing .onboarding-slide-copy{max-width:58ch;margin:-.5rem 0 0;color:#4a5872;font-size:1rem;line-height:1.55}.landing .onboarding-map-showcase{display:grid;gap:.75rem;min-width:0;align-self:stretch;align-content:center}.landing .onboarding-map-carousel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.25rem;min-width:0}.landing .onboarding-carousel-arrow{padding:.5rem 1rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:1px solid #2f4f8f;cursor:pointer;transition:all .2s ease;border-radius:0}.landing .onboarding-carousel-arrow:focus{outline:2px solid #3b67ad;outline-offset:2px}.landing .onboarding-carousel-arrow:disabled{opacity:.5;cursor:not-allowed}.landing .onboarding-carousel-arrow{width:40px;min-width:40px;min-height:40px;padding:0;border:0;border-radius:999px;background:#ffffffe0;color:#2f4f8f;box-shadow:0 8px 18px #061c121f}.landing .onboarding-carousel-arrow svg{width:20px;height:20px;stroke-width:2.4}.landing .onboarding-carousel-arrow:hover:not(:disabled){background:#fff;color:#3b67ad}.landing .onboarding-carousel-arrow:disabled{opacity:.35;cursor:default}.landing .onboarding-preset-carousel{display:flex;flex-wrap:nowrap;gap:.75rem;align-items:start;min-width:0;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding:.5rem 25%}.landing .onboarding-preset-carousel::-webkit-scrollbar{display:none}.landing .onboarding-preset-slide{flex:0 0 42%;min-width:0;opacity:.72;scroll-snap-align:center;transition:transform .2s ease,opacity .2s ease}.landing .onboarding-preset-slide.is-selected,.landing .onboarding-preset-slide:focus-within,.landing .onboarding-preset-slide:hover{opacity:1;transform:scale(1.04)}.landing .onboarding-preset-slide-button{display:flex;flex-direction:column;width:100%;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}.landing .onboarding-preset-slide-button:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.landing .onboarding-preset-slide-media{position:relative;display:block;width:100%;aspect-ratio:8/5;overflow:hidden;background:linear-gradient(135deg,#d3dae659,#ffffffeb),#f2f4f8}.landing .onboarding-preset-slide-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#ffffff14,#1a22336b),linear-gradient(90deg,rgba(211,218,230,.16) 1px,transparent 1px);background-size:auto,18px 18px;pointer-events:none}.landing .onboarding-preset-slide-thumb{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.9) sepia(.1);transform:scale(1.02);transition:transform .2s ease,filter .2s ease}.landing .onboarding-preset-slide.is-selected .onboarding-preset-slide-thumb,.landing .onboarding-preset-slide-button:hover .onboarding-preset-slide-thumb,.landing .onboarding-preset-slide-button:focus-visible .onboarding-preset-slide-thumb{filter:saturate(.96) sepia(.06);transform:scale(1.08)}.landing .onboarding-preset-slide-caption{padding-top:6px;color:#1a2233;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.9375rem;font-weight:700;line-height:1.15;text-align:center;text-transform:uppercase}.landing .onboarding-preset-description{min-height:3.1875rem;max-width:58ch;margin:0 auto;color:#4a5872;font-size:.9375rem;line-height:1.55;text-align:center}.landing .onboarding-carousel-loading{margin:0;color:#4a5872;font-size:.9375rem}.landing .onboarding-fog-intro{display:grid;grid-template-columns:minmax(0,.85fr) minmax(240px,1fr);align-items:center;gap:1rem;min-height:0}.landing .onboarding-fog-intro p{max-width:34ch;margin:0;color:#4a5872;font-size:1rem;line-height:1.55}.landing .onboarding-fog-example{display:block;width:100%;max-height:230px;aspect-ratio:16/10;object-fit:cover;border:1px solid rgb(165.4695652174,179.7130434783,204.1304347826);box-shadow:0 8px 18px #061c121f}.landing .onboarding-slide--territories{height:var(--onboarding-slide-height);grid-template-rows:auto minmax(0,1fr)}.landing .onboarding-territory-showcase{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:stretch;gap:1rem;min-height:0}.landing .onboarding-territory-copy{display:grid;align-content:center;gap:1.5rem;min-width:0}.landing .onboarding-territory-copy h2{margin:0 0 .5rem;color:#1a2233;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:1.125rem;font-weight:700;line-height:1.2}.landing .onboarding-territory-copy p{margin:0;color:#4a5872;font-size:.9375rem;line-height:1.55}.landing .onboarding-territory-collage{position:relative;min-width:0;min-height:0;isolation:isolate}.landing .onboarding-territory-photo{position:absolute;display:block;padding:4px;border:1px solid rgb(165.4695652174,179.7130434783,204.1304347826);background:#fff;box-shadow:0 6px 16px #1a223329;object-fit:cover}.landing .onboarding-territory-photo--town{top:4%;left:3%;width:65%;height:72%;object-position:40% center;transform:rotate(-5deg)}.landing .onboarding-territory-photo--zone{z-index:1;top:8%;right:2%;width:49%;height:85%;object-position:center top;transform:rotate(5deg)}.landing .onboarding-territory-photo--progress{z-index:2;bottom:3%;left:0;width:76%;height:42%;object-position:center top;transform:rotate(-2deg)}.landing .onboarding-strava-toggle{display:grid;grid-template-columns:46px minmax(0,1fr);gap:.75rem;align-items:center;width:100%;padding:1rem 0;border-bottom:1px solid rgb(165.4695652174,179.7130434783,204.1304347826);cursor:pointer}.landing .onboarding-strava-toggle>input{position:absolute;width:1px;height:1px;opacity:0}.landing .onboarding-strava-toggle-track{position:relative;width:46px;height:26px;border:1px solid #1a2233;background:#f2f4f8;transition:background-color .2s ease}.landing .onboarding-strava-toggle-track:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:#1a2233;transition:transform .2s ease,background-color .2s ease}.landing .onboarding-strava-toggle>input:checked+.onboarding-strava-toggle-track{background:#2f4f8f}.landing .onboarding-strava-toggle>input:checked+.onboarding-strava-toggle-track:after{transform:translate(20px);background:#fff}.landing .onboarding-strava-toggle>input:focus-visible+.onboarding-strava-toggle-track{outline:2px solid #3b67ad;outline-offset:2px}.landing .onboarding-strava-toggle-copy{color:#1a2233;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.9375rem;font-weight:700;text-transform:lowercase}.landing .onboarding-fieldset{display:grid;justify-content:stretch;gap:.5rem;margin:0;padding:0;border:0}.landing .onboarding-fieldset legend{margin:0;padding:0;color:#4a5872;font-size:.8125rem;font-weight:700;line-height:1.2;text-transform:uppercase}.landing .onboarding-fieldset--units,.landing .onboarding-fieldset--theme{grid-template-columns:minmax(0,1fr) minmax(280px,320px);align-items:center;gap:1.5rem;width:100%;padding:1rem 0;border-bottom:1px solid rgb(165.4695652174,179.7130434783,204.1304347826)}.landing .onboarding-preference-heading{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:.75rem;min-width:0}.landing .onboarding-preference-heading>span:last-child{display:grid;gap:2px;min-width:0}.landing .onboarding-preference-heading strong{font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.9375rem;line-height:1.2}.landing .onboarding-preference-heading small{color:#4a5872;font-size:.8125rem;line-height:1.35}.landing .onboarding-preference-index{padding-top:2px;color:#2f4f8f;font-family:IBM Plex Mono,SFMono-Regular,Menlo,monospace;font-size:.6875rem;font-weight:700;letter-spacing:.08em}.landing .onboarding-segmented-control{display:inline-grid;grid-auto-flow:column;grid-auto-columns:minmax(72px,auto);align-items:center;width:fit-content;overflow:hidden;border:1px solid rgb(165.4695652174,179.7130434783,204.1304347826);background:#ffffffb8}.landing .onboarding-segmented-control--units{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding:3px;border-color:#a5b4cc;background:#f2f4f8b8}.landing .onboarding-segmented-control--theme{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;padding:3px;border-color:#a5b4cc;background:#f2f4f8b8}.landing .onboarding-segmented-control--maps{grid-auto-flow:row;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));width:100%}.landing .onboarding-segmented-option{position:relative;display:grid;min-height:30px;place-items:center;border-right:1px solid #d3dae6;background:transparent;color:#1a2233;cursor:pointer;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:700;line-height:1;text-transform:uppercase;transition:background-color .12s ease,color .12s ease,box-shadow .12s ease,transform .12s ease}.landing .onboarding-segmented-option:last-child{border-right:0}.landing .onboarding-segmented-option span{display:inline-flex;align-items:center;justify-content:center;min-width:0;padding:0 .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing .onboarding-segmented-option input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}.landing .onboarding-segmented-option:hover{background:#2f4f8f0f;color:#2f4f8f}.landing .onboarding-segmented-option:active{transform:scale(.985)}.landing .onboarding-segmented-option:has(input:checked){background:#2f4f8f1a;color:#2f4f8f;box-shadow:inset 0 0 0 1px #2f4f8f57}.landing .onboarding-segmented-option:has(input:checked) small{color:#2f4f8f}.landing .onboarding-segmented-option:has(input:focus-visible){outline:2px solid #3b67ad;outline-offset:2px}.landing .onboarding-segmented-control--units .onboarding-segmented-option,.landing .onboarding-segmented-control--theme .onboarding-segmented-option{min-height:44px;border-right:0}.landing .onboarding-segmented-control--units .onboarding-segmented-option:has(input:checked),.landing .onboarding-segmented-control--theme .onboarding-segmented-option:has(input:checked){background:#2f4f8f;color:#fff;box-shadow:0 2px 8px #1a223329,inset 0 0 0 1px #1a22331f}.landing .onboarding-terms-consent{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:.75rem;width:100%;padding-top:1rem;color:#4a5872;font-size:.9375rem;line-height:1.35;text-align:left}.landing .onboarding-terms-consent input{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);cursor:pointer}.landing .onboarding-terms-consent>span{min-width:0}.landing .onboarding-terms-consent label,.landing .onboarding-terms-consent .onboarding-terms-checkbox{cursor:pointer}.landing .onboarding-terms-consent small{display:block;margin-top:2px;color:#73809a;font-size:.6875rem}.landing .onboarding-terms-consent a{color:#2f4f8f;font-weight:700;text-decoration-thickness:1px;text-underline-offset:2px}.landing .onboarding-terms-consent a:hover{color:#3b67ad}.landing .onboarding-terms-consent a:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.landing .onboarding-terms-checkbox{display:grid;width:26px;height:26px;place-items:center;border:1px solid #1a2233;background:#ffffffd1;color:transparent;transition:background-color .12s ease,border-color .12s ease,color .12s ease,transform .12s ease}.landing .onboarding-terms-checkbox svg{width:17px;height:17px;stroke-width:2.6}.landing .onboarding-terms-checkbox:active{transform:scale(.94)}.landing .onboarding-terms-consent input:checked+.onboarding-terms-checkbox{border-color:#2f4f8f;background:#2f4f8f;color:#fff}.landing .onboarding-terms-consent input:focus-visible+.onboarding-terms-checkbox{outline:2px solid #3b67ad;outline-offset:2px}.landing .onboarding-actions{display:flex;justify-content:space-between;gap:.5rem}.landing .onboarding-button{padding:.5rem 1rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:1px solid #2f4f8f;cursor:pointer;transition:all .2s ease;border-radius:0}.landing .onboarding-button:focus{outline:2px solid #3b67ad;outline-offset:2px}.landing .onboarding-button:disabled{opacity:.5;cursor:not-allowed}.landing .onboarding-button{min-height:44px;padding-inline:1rem}.landing .onboarding-button-primary{position:relative;isolation:isolate;border-color:red;background-color:red;color:#fff}.landing .onboarding-button-primary:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .onboarding-button-primary{margin-left:auto}.landing .onboarding-button-primary:hover:not(:disabled){position:relative;isolation:isolate;border-color:#c00;background-color:#c00;color:#fff}.landing .onboarding-button-primary:hover:not(:disabled):after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .onboarding-button-secondary{background:#ffffffc7;color:#2f4f8f}.landing .onboarding-button-secondary:hover:not(:disabled){background:#fff;color:#3b67ad}.landing .home-mini-panel{background-color:#fff;border:1px solid #d3dae6;box-shadow:0 8px 18px #061c121f;border-radius:0;padding:.75rem;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);min-width:0;overflow:hidden}.landing .home-mini-fog{height:clamp(173px,24vw - 25px,335px);padding:0}.landing .home-mini-fog-link{position:relative;display:block;width:100%;height:100%;min-height:0;color:inherit;background:linear-gradient(#ffffff2e,#ffffff2e),repeating-linear-gradient(0deg,rgba(77,99,141,.08),rgba(77,99,141,.08) 1px,transparent 1px,transparent 10px),var(--home-mini-fog-bg, #e8ecf2);text-decoration:none}.landing .home-mini-fog-link:focus-visible{outline:2px solid #3b67ad;outline-offset:2px;outline-offset:-4px}.landing .home-mini-mapbox{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .2s ease}.landing .home-mini-mapbox.is-ready{opacity:1}.landing .home-mini-mapbox .mapboxgl-canvas{display:block}.landing .home-mini-mapbox--base{z-index:0}.landing .home-mini-mapbox--fog-style{z-index:1;mask-repeat:no-repeat;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100% 100%}.landing .home-mini-mapbox--fog-style .mapboxgl-control-container{display:none}.landing .home-mini-mapbox-loading{position:absolute;inset:0;z-index:2;display:grid;place-items:center;color:#4a5872;font-size:.9375rem;pointer-events:none}.landing .home-mini-fog-title{position:absolute;top:.75rem;left:.75rem;z-index:3;display:grid;gap:2px;max-width:calc(100% - 1.5rem);padding:.5rem .75rem;border:1px solid rgba(77,99,141,.28);background:linear-gradient(#fffcf6eb,#fffcf6eb),repeating-linear-gradient(0deg,rgba(77,99,141,.06),rgba(77,99,141,.06) 1px,transparent 1px,transparent 18px);box-shadow:0 2px 8px #061c1214;pointer-events:none}.landing .home-mini-fog-title strong{overflow:hidden;color:#1a2233;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.9375rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.landing .home-mini-fog-location{font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;display:inline-flex;align-items:center;gap:4px;overflow:hidden;color:#4a5872}.landing .home-mini-fog-location svg{flex:0 0 auto}.landing .home-mini-fog-location span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing .home-mini-gallery{position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:0;padding:0}.landing .home-mini-gallery-empty-prompt{position:absolute;top:50%;left:50%;z-index:3;width:max-content;max-width:calc(100% - 2rem);margin:0;padding:.5rem .75rem;border:1px solid rgba(26,34,51,.32);background:#ffffffe0;box-shadow:0 8px 18px #061c121f;color:#1a2233;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.8125rem,1.2vw,.9375rem);font-weight:700;line-height:1.2;text-align:center;transform:translate(-50%,-50%);pointer-events:none}.landing .home-mini-gallery-grid{display:grid;flex:1;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(72px,1fr);gap:0;min-height:0}.landing .home-mini-gallery-item{position:relative;display:block;min-width:0;min-height:0;overflow:hidden;border:0;background:#ebeef4}.landing .home-mini-gallery-item:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(77,99,141,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(77,99,141,.07) 1px,transparent 1px);background-size:32px 32px;mix-blend-mode:multiply;opacity:.5;pointer-events:none}.landing .home-mini-gallery-surface{display:block;height:100%;color:inherit;text-decoration:none}.landing a.home-mini-gallery-surface:hover .home-mini-gallery-image,.landing a.home-mini-gallery-surface:focus-visible .home-mini-gallery-image{filter:saturate(1.05) contrast(1.02);transform:scale(1.03)}.landing a.home-mini-gallery-surface:focus-visible{outline:2px solid #3b67ad;outline-offset:2px;outline-offset:-3px}.landing .home-mini-gallery-item--curated{background:#c9cccf;opacity:.76}.landing .home-mini-gallery-item--curated .home-mini-gallery-image-wrap{position:relative;isolation:isolate;border-color:transparent;background-color:#c9cccf;color:inherit}.landing .home-mini-gallery-item--curated .home-mini-gallery-image-wrap:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .home-mini-gallery-item--curated .home-mini-gallery-image-wrap{--grain-scale: 104px;--grain-opacity: .78;--grain-blend: hard-light}.landing .home-mini-gallery-item--curated .home-mini-gallery-image-wrap:after{z-index:1;box-shadow:inset 0 0 0 1px #31373c29;filter:contrast(1.85)}.landing .home-mini-gallery-item--curated .home-mini-gallery-image{filter:grayscale(1) contrast(.78) brightness(1.06);opacity:.62;transform:scale(1.01)}.landing .home-mini-gallery-image-wrap{position:relative;height:100%;overflow:clip;background:#e8ecf3}.landing .home-mini-gallery-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .24s ease,filter .24s ease}.landing .home-mini-gallery-tile--feature-left{grid-column:1/span 2;grid-row:1/span 2}.landing .home-mini-gallery-tile--small-1{grid-column:3;grid-row:1}.landing .home-mini-gallery-tile--small-2{grid-column:4;grid-row:1}.landing .home-mini-gallery-tile--small-3{grid-column:3;grid-row:2}.landing .home-mini-gallery-tile--small-4{grid-column:4;grid-row:2}.landing .home-mini-gallery-tile--feature-right{grid-column:3/span 2;grid-row:3/span 2}.landing .home-mini-gallery-tile--small-5{grid-column:1;grid-row:3}.landing .home-mini-gallery-tile--small-6{grid-column:2;grid-row:3}.landing .home-mini-gallery-tile--small-7{grid-column:1;grid-row:4}.landing .home-mini-gallery-tile--small-8{grid-column:2;grid-row:4}.landing .home-mini-empty{display:grid;width:100%;min-height:100%;place-items:center;margin:0;padding:.75rem;color:#4a5872;font-size:.9375rem;text-align:center}.landing .activities-header-actions{display:grid;grid-template-columns:1fr;gap:.75rem}.landing .activity-search{display:flex;flex-direction:column;gap:.5rem;width:100%}.landing .activity-search-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem;align-items:stretch}.landing .activity-search-field{position:relative;min-width:0}.landing .search-input{padding:.5rem .75rem;font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif;font-size:.9375rem;color:#1a2233;background-color:#fff;border:1px solid rgb(165.4695652174,179.7130434783,204.1304347826);border-radius:0;transition:border-color .2s ease}.landing .search-input:focus{outline:none;border-color:#2f4f8f;box-shadow:0 0 0 3px #3b67ad2e}.landing .search-input::placeholder{color:#73809a}.landing .search-input{width:100%;min-height:44px;background:#fff;border-color:#a5b4cc;color:#1a2233;padding-right:5.5rem}.landing .activity-search-field-actions{position:absolute;top:50%;right:4px;display:inline-flex;align-items:center;gap:2px;transform:translateY(-50%)}.landing .activity-filter-button,.landing .sync-activities-button{display:grid;width:36px;height:36px;place-items:center;border:0;background:transparent;color:#4a5872;cursor:pointer;transition:color .2s ease,background-color .2s ease}.landing .activity-filter-button:hover,.landing .activity-filter-button:focus-visible,.landing .activity-filter-button.is-active,.landing .sync-activities-button:hover,.landing .sync-activities-button:focus-visible,.landing .sync-activities-button.is-active{color:#2f4f8f;background:#2f4f8f14}.landing .activity-filter-button:focus-visible,.landing .sync-activities-button:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.landing .sync-activities-button:disabled{cursor:progress;opacity:.72}.landing .sync-activities-button svg.is-syncing{animation:activity-refresh-spin .9s linear infinite}.landing .sync-activities-button:hover:not(:disabled),.landing .sync-activities-button:focus-visible{color:#2f4f8f;background:#2f4f8f14}.landing .sync-status{margin:0;font-size:.8125rem;line-height:1.2}.landing .sync-status-success{color:#215635}.landing .sync-status-error{color:#b43b34}.landing .activity-filter-dialog{width:min(100% - 2rem,520px);max-width:none;padding:0;border:2px solid rgb(165.4695652174,179.7130434783,204.1304347826);background:transparent;color:#1a2233;box-shadow:0 22px 48px #061c1233}.landing .activity-filter-dialog::backdrop{background:#1a223380}.landing .activity-filter-sheet{background-color:#fff;background-image:linear-gradient(#08352009,#08352009),repeating-linear-gradient(0deg,#fffffff5,#fffffff5 2px,#0c573705 2px 4px);padding:1.5rem}.landing .activity-filter-heading,.landing .activity-filter-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.landing .activity-filter-heading{padding-bottom:1rem;border-bottom:1px solid rgb(165.4695652174,179.7130434783,204.1304347826)}.landing .activity-filter-heading h2{margin:2px 0 0;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:1.375rem}.landing .activity-filter-kicker{font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:#4a5872;margin:0}.landing .activity-filter-close{width:38px;height:38px;border:1px solid #d3dae6;background:#ffffffb3;color:#4a5872;font-size:1.5rem;line-height:1;cursor:pointer}.landing .activity-filter-close:hover,.landing .activity-filter-close:focus-visible{color:#1a2233;border-color:#a5b4cc}.landing .activity-filter-close:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.landing .activity-filter-options{display:flex;flex-direction:column}.landing .activity-filter-option{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem;padding:1rem 0;border-bottom:1px solid #d3dae6;cursor:pointer}.landing .activity-filter-option-copy{font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:1rem;font-weight:700}.landing .activity-filter-radio{width:22px;height:22px;margin:0;appearance:none;border:1px solid rgb(165.4695652174,179.7130434783,204.1304347826);background:#d3dae6;cursor:pointer}.landing .activity-filter-radio:before{display:block;width:12px;height:12px;margin:4px;background:transparent;content:""}.landing .activity-filter-radio:checked{border-color:#2f4f8f;background:#fff}.landing .activity-filter-radio:checked:before{background:#2f4f8f}.landing .activity-filter-radio:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.landing .activity-filter-footer{justify-content:flex-end;padding-top:1rem;border-top:1px solid rgb(165.4695652174,179.7130434783,204.1304347826)}.landing .activity-filter-apply{padding:.5rem 1rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:1px solid #2f4f8f;cursor:pointer;transition:all .2s ease;border-radius:0}.landing .activity-filter-apply:focus{outline:2px solid #3b67ad;outline-offset:2px}.landing .activity-filter-apply:disabled{opacity:.5;cursor:not-allowed}.landing .activity-filter-apply{position:relative;isolation:isolate;border-color:red;background-color:red;color:#fff}.landing .activity-filter-apply:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .activity-filter-apply{min-height:40px;padding:.5rem .85rem;font-size:.8125rem}.landing .activity-filter-apply.is-dirty{position:relative;isolation:isolate;border-color:#c00;background-color:#c00;color:#fff}.landing .activity-filter-apply.is-dirty:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .activities-summary-row{display:flex;flex-direction:column;gap:.75rem}.landing .activities-summary-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.landing .activities-summary{margin:0;color:#4a5872;font-size:.9375rem}.landing .activities-summary-link{color:inherit;text-decoration:none}.landing .activities-summary-link:hover{color:#3b67ad;text-decoration:underline;text-underline-offset:.16em}.landing .activities-summary-link:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.landing .fog-of-war-link{padding:.5rem 1rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:1px solid #2f4f8f;cursor:pointer;transition:all .2s ease;border-radius:0}.landing .fog-of-war-link:focus{outline:2px solid #3b67ad;outline-offset:2px}.landing .fog-of-war-link:disabled{opacity:.5;cursor:not-allowed}.landing .fog-of-war-link{position:relative;isolation:isolate;border-color:red;background-color:red;color:#fff}.landing .fog-of-war-link:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.landing .fog-of-war-link{min-height:40px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.landing .activities-pagination{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;padding-top:0;border-top:0}.landing .pagination-pages{display:inline-flex;align-items:center;gap:.25rem;flex-wrap:wrap}.landing .pagination-button{padding:.5rem 1rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:1px solid #2f4f8f;cursor:pointer;transition:all .2s ease;border-radius:0}.landing .pagination-button:focus{outline:2px solid #3b67ad;outline-offset:2px}.landing .pagination-button:disabled{opacity:.5;cursor:not-allowed}.landing .pagination-button{min-height:auto;padding:0;border:0;border-radius:0;background:transparent;color:#3b67ad;font-size:.6875rem;letter-spacing:.03em;text-transform:none}.landing .pagination-button:hover:not(:disabled){color:#2e5087;text-decoration:underline}.landing .pagination-button.is-active{background:transparent;color:#3b67ad;text-decoration:underline}.landing .pagination-page{min-width:0}.landing .pagination-ellipsis{display:inline-flex;align-items:center;padding:0 4px;color:#3b67ad;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.6875rem;font-weight:500;letter-spacing:.03em}.landing .connect-button{width:100%;max-width:236.867px;padding:0;border:0;background:transparent;display:block;margin:0 auto;line-height:0;cursor:pointer;border-radius:0;transition:opacity .2s ease}.landing .connect-button:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.landing .connect-button:disabled{cursor:not-allowed;opacity:.6}.landing .connect-button-image{width:100%;height:auto;display:block;border-radius:0}.landing .auth-shell .loading-text{text-align:center}.landing .auth-reconnect-button{padding:.5rem 1rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:1px solid #2f4f8f;cursor:pointer;transition:all .2s ease;border-radius:0}.landing .auth-reconnect-button:focus{outline:2px solid #3b67ad;outline-offset:2px}.landing .auth-reconnect-button:disabled{opacity:.5;cursor:not-allowed}.landing .auth-reconnect-button{display:flex;justify-content:center;width:100%;margin-top:.75rem;background:red;color:#fff}.landing .activities-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.landing .activity-item{background-color:#fff;border:1px solid #d3dae6;box-shadow:0 8px 18px #061c121f;border-radius:0;max-width:100%;min-width:0;overflow:hidden;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.landing .activity-item:hover{transform:translateY(-1px);box-shadow:0 16px 34px #061c1229}.landing .activity-content{display:flex;flex-direction:column;gap:.75rem;min-width:0;padding:.75rem}.landing .activity-left-wrapper{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-width:0}.landing .activity-left{display:flex;flex-direction:column;gap:.25rem;flex:1 1 auto;min-width:0}.landing .activity-name{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.9375rem;font-weight:700;letter-spacing:.03em;line-height:1.2;min-width:0;overflow-wrap:anywhere}.landing .activity-distance,.landing .activity-type{border:1px solid rgb(165.4695652174,179.7130434783,204.1304347826);background:#fff;padding:2px .5rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.landing .activity-location{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;max-width:100%;min-width:0;font-size:.8125rem;color:#4a5872}.landing .activity-location .activity-distance{color:#1a2233}.landing .location-icon{flex-shrink:0}.landing .location-text{min-width:0;overflow-wrap:anywhere}.landing .activity-imported-athlete{color:#1a2233;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.landing .activity-minimap{width:clamp(96px,30vw,150px);max-width:38%;overflow:hidden;flex:0 1 auto}.landing .activity-minimap svg{display:block;width:100%;height:auto;overflow:visible}.landing .activity-minimap.activity-route-minimap svg path{stroke:var(--activity-route-color, #ff0000)!important}.landing .activity-minimap-summary{display:flex;align-items:flex-start;gap:.5rem;min-width:0}.landing .activity-minimap-summary-overlay{position:relative;isolation:isolate}.landing .activity-minimap-summary-overlay .activity-minimap{position:relative;z-index:0}.landing .activity-minimap-summary-overlay .activity-fog-unlock{position:absolute;top:0;left:50%;z-index:2;background-color:#fff;transform:translate(-50%)}.landing .activity-fog-preview-button{padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:inherit;cursor:pointer}.landing .activity-fog-preview-button:hover .activity-fog-unlock{text-decoration:underline}.landing .activity-fog-preview-button:focus-visible{outline:2px solid var(--activity-unlock-color);outline-offset:4px}.landing .activity-right{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.landing .activity-date{font-size:.8125rem;color:#4a5872}.landing .activity-fog-unlock{border:1px solid rgba(47,123,75,.42);background:linear-gradient(#2f7b4b14,#2f7b4b14),#fff;padding:2px .5rem;color:#1b472c;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.6875rem;font-weight:700;letter-spacing:.04em;line-height:1.2;white-space:nowrap}.landing .activity-fog-unlock-classic{border-color:color-mix(in srgb,var(--activity-unlock-color) 58%,transparent);background:color-mix(in srgb,var(--activity-unlock-fill) 18%,transparent);color:var(--activity-unlock-color)}@media(max-width:380px){.landing .activity-content{padding:.5rem}.landing .activity-left-wrapper{align-items:stretch;flex-direction:column}.landing .activity-minimap{align-self:end;width:min(100%,220px);max-width:220px;overflow:visible}.landing .activity-minimap-summary{align-self:end;flex-wrap:wrap;justify-content:flex-end}}.landing .loading-text,.landing .no-activities,.landing .error-message,.landing .success-message{margin:0;padding:.75rem;border:1px solid rgb(165.4695652174,179.7130434783,204.1304347826);background:#fff;font-size:.9375rem}.landing .loading-text{animation:loading-pulse 1.2s ease-in-out infinite}.landing .error-message{border-color:#b43b3473;background:#b43b3414;color:#b43b34}.landing .success-message{border-color:#a5b4cc;background:#2f7b4b1a;color:#1e4f30}.landing .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.landing .public-hero-lede-group,.landing .public-hero:before,.landing .public-feature:before{transition:none}.landing .public-hero-lede-group{animation:none}.landing .public-hero-map-tile img{animation:none;opacity:0;transform:none}.landing .public-hero-map-tile img:first-child{opacity:1}.landing .onboarding-segmented-option,.landing .onboarding-terms-checkbox{transition:none}}@media(max-width:1120px){.landing .public-hero{min-height:auto}.landing .public-hero-copy{padding-left:0}.landing .public-hero-copy h1{font-size:3.1rem}.landing .public-feature--fog,.landing .public-feature-points{grid-template-columns:1fr}}@media(max-width:420px){.landing{padding-right:.5rem;padding-left:.5rem}}@media(max-width:520px){.landing .public-hero{gap:1.5rem;padding:1.5rem 1rem}.landing .public-hero-lede,.landing .public-section-heading p{font-size:1rem}.landing .public-hero-lede{font-size:1.2rem}.landing .public-hero-lede-group{min-height:calc(1rem * 1.2 * 1.55 * 2)}.landing .public-hero-layout{gap:1rem}.landing .public-hero-copy{gap:.75rem;padding:0}.landing .public-hero-copy h1{max-width:13ch;font-size:2.65rem}.landing .public-hero-actions{justify-items:center;text-align:center}.landing .public-strava-import-card{flex-direction:column;align-items:stretch}.landing .public-strava-import-copy{flex:none;min-width:0;text-align:center}.landing .public-strava-import-copy-desktop{display:none}.landing .public-strava-import-copy-mobile{display:inline}.landing .public-connect-button{align-self:center}.landing .public-feature{gap:1.5rem;padding:2rem 1rem}.landing .public-section-heading h2{max-width:11ch;font-size:2.1rem}.landing .public-fog-examples{grid-template-columns:1fr}.landing .public-fog-example{aspect-ratio:16/11}.landing .public-fog-example--fog-overview{transform:none}.landing .public-map-gallery-preview,.landing .public-map-gallery-grid{height:560px}.landing .public-map-gallery-grid{grid-auto-rows:minmax(0,1fr)}.landing .home-dashboard{gap:.75rem}.landing .home-mini-gallery{min-height:260px}.landing .home-mini-gallery-grid{grid-auto-rows:minmax(128px,1fr)}.landing .activity-search-controls{grid-template-columns:minmax(0,1fr)}.landing .activity-filter-heading,.landing .activity-filter-footer{align-items:stretch;flex-direction:column}.landing .activity-filter-apply{width:100%}.landing .onboarding-segmented-control{grid-auto-flow:row;grid-auto-columns:minmax(0,1fr);width:100%}.landing .onboarding-segmented-control--units{grid-auto-flow:initial;grid-template-columns:repeat(2,minmax(0,1fr))}.landing .onboarding-segmented-control--theme{grid-auto-flow:initial;grid-template-columns:repeat(3,minmax(0,1fr))}.landing .onboarding-segmented-option{border-right:0;border-bottom:1px solid #d3dae6}.landing .onboarding-segmented-option:last-child{border-bottom:0}.landing .onboarding-segmented-control--units .onboarding-segmented-option,.landing .onboarding-segmented-control--theme .onboarding-segmented-option{border-bottom:0}.landing .onboarding-slide{--onboarding-slide-height: min(430px, calc(100svh - 220px) )}.landing .onboarding-slide--defaults{gap:1rem;min-height:0}.landing .onboarding-heading h1{font-size:1.45rem}.landing .onboarding-fieldset--units,.landing .onboarding-fieldset--theme{grid-template-columns:minmax(0,1fr);gap:.75rem;padding:.75rem 0}.landing .onboarding-preference-heading{grid-template-columns:24px minmax(0,1fr);gap:.5rem}.landing .onboarding-terms-consent{padding-top:.75rem}.landing .onboarding-map-carousel{grid-template-columns:36px minmax(0,1fr) 36px;margin-right:-.5rem;margin-left:-.5rem}.landing .onboarding-carousel-arrow{width:36px;min-width:36px;min-height:44px;border-radius:0;background:transparent;box-shadow:none}.landing .onboarding-preset-carousel{gap:.5rem;padding-right:.5rem;padding-left:.5rem}.landing .onboarding-preset-slide{flex-basis:72%}.landing .onboarding-fog-intro{grid-template-columns:minmax(0,1fr);align-content:start;gap:.75rem}.landing .onboarding-fog-intro p{max-width:none;font-size:.9375rem}.landing .onboarding-fog-example{max-height:155px}.landing .onboarding-leaderboard-content{grid-template-columns:minmax(0,1fr);align-content:start;gap:.5rem}.landing .onboarding-slide--leaderboard .leaderboard-consent{font-size:.8125rem}.landing .onboarding-slide--leaderboard .leaderboard-consent p{line-height:1.5;margin-bottom:.25rem}.landing .onboarding-slide--leaderboard .leaderboard-consent small{line-height:1.4}.landing .onboarding-territory-showcase{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:.75rem}.landing .onboarding-territory-copy{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.landing .onboarding-territory-copy h2{font-size:1rem}.landing .onboarding-territory-copy p{font-size:.8125rem}.landing .onboarding-actions{align-items:stretch;flex-direction:column-reverse}.landing .onboarding-button{width:100%}.landing .activity-filter-sheet{padding:1rem}.landing .fog-of-war-link{width:100%}.landing .activities-summary-actions{align-items:stretch;flex-direction:column}.landing .activities-pagination{align-items:center;flex-direction:row;flex-wrap:nowrap;overflow-x:auto}.landing .pagination-pages{flex-wrap:nowrap;justify-content:center;min-width:0}.landing .pagination-button,.landing .pagination-ellipsis{flex:0 0 auto;white-space:nowrap}}@media(min-width:760px){.landing{padding:1.5rem 1rem}.landing .activities-section{padding:1rem}.landing .activities-header-actions{grid-template-columns:minmax(0,1fr);align-items:end}.landing .activity-search-controls{grid-template-columns:minmax(0,1fr)}.landing .activities-summary-row{flex-direction:row;align-items:center;justify-content:space-between;gap:1rem}.landing .activities-pagination{flex-wrap:nowrap}.landing .activity-content{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:1rem}.landing .activity-left-wrapper{flex:1;display:grid;grid-template-columns:minmax(0,max-content) minmax(0,max-content);align-items:center;justify-content:start;gap:1.5rem;width:100%}.landing .activity-minimap{width:120px;height:80px;max-width:none;justify-self:start}.landing .activity-minimap svg{width:100%;height:100%}.landing .activity-right{flex-direction:column;align-items:flex-end;justify-content:flex-start;flex-shrink:0}}@media(max-width:960px){.landing .public-landing{width:min(100%,760px)}.landing .public-hero-layout{grid-template-columns:1fr;min-height:auto}.landing .public-hero-showcase{height:auto;min-height:0}.landing .public-feature--generation{grid-template-columns:1fr}.landing .public-feature--generation .public-section-heading{max-width:none;min-height:auto;grid-template-rows:none}.landing .public-hero-copy{padding:0}.landing .public-hero-copy h1{max-width:14ch;font-size:3.1rem}.landing .public-section-heading h2{font-size:2.4rem}.landing .public-feature{padding-right:1.5rem;padding-left:1.5rem}.landing .public-feature--fog{gap:1.5rem}.landing .public-map-gallery-preview,.landing .public-map-gallery-grid{height:600px}.landing .public-map-gallery-grid{grid-template-rows:none;grid-auto-rows:minmax(0,1fr)}.landing .authenticated-content{max-width:840px}.landing .home-mini-gallery{min-height:100%}.landing .home-mini-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing .home-mini-gallery-item,.landing .home-mini-gallery-tile--feature-left,.landing .home-mini-gallery-tile--feature-right,.landing .home-mini-gallery-tile--small-1,.landing .home-mini-gallery-tile--small-2,.landing .home-mini-gallery-tile--small-3,.landing .home-mini-gallery-tile--small-4,.landing .home-mini-gallery-tile--small-5,.landing .home-mini-gallery-tile--small-6,.landing .home-mini-gallery-tile--small-7,.landing .home-mini-gallery-tile--small-8{grid-column:auto;grid-row:auto}.landing .home-mini-gallery-tile--feature-left,.landing .home-mini-gallery-tile--feature-right{grid-column:span 2}}@media(max-width:680px){.landing .public-landing{width:100%;padding:.5rem 0}.landing .hex-fog-edge{inset:0 0 auto auto;width:100%;height:28%;transform:none}.landing .hex-fog-edge--desktop{display:none}.landing .hex-fog-edge--mobile{display:block}.landing .public-hero{padding:1.5rem 1rem}.landing .public-hero-layout{gap:.75rem}.landing .public-hero-copy{display:contents}.landing .public-hero-copy h1{order:1;max-width:13ch;font-size:2.2rem}.landing .public-hero-lede-group{order:2;min-height:4.65rem}.landing .public-hero-showcase{order:3;grid-template-columns:1fr;gap:0;margin-top:-.5rem;padding:0}.landing .public-hero-map-tiles{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;gap:0;min-height:clamp(74px,24vw,112px)}.landing .public-hero-video-frame{border-right:0;border-bottom:1px solid rgba(77,99,141,.32)}.landing .public-hero-map-tile{border-right:1px solid rgba(77,99,141,.32);border-bottom:0}.landing .public-hero-map-tile:last-child{border-right:0}.landing .public-hero-actions{order:4;justify-items:center;padding-top:0;text-align:center}.landing .public-hero-lede,.landing .public-section-heading p{font-size:1rem}.landing .public-strava-import-card{flex-direction:column;align-items:stretch;gap:.5rem}.landing .public-strava-import-copy{flex:none;min-width:0;text-align:center}.landing .public-connect-button{align-self:center}.landing .public-feature{gap:1.5rem;padding:2rem 1rem}.landing .public-section-heading h2{max-width:12ch;font-size:2.15rem}.landing .public-fog-examples{grid-template-columns:1fr;gap:.5rem}.landing .public-fog-example{aspect-ratio:16/11}.landing .public-fog-example--fog-overview{transform:none}.landing .public-feature-points{display:none}.landing .public-generation-preset-showcase{width:100%}.landing .onboarding-map-showcase--public .onboarding-map-carousel{grid-template-columns:34px minmax(0,1fr) 34px;margin-right:-.5rem;margin-left:-.5rem}.landing .onboarding-map-showcase--public .onboarding-preset-carousel{padding-right:.5rem;padding-left:.5rem}.landing .onboarding-map-showcase--public .onboarding-preset-slide{flex-basis:78%}.landing .public-map-gallery-preview{height:560px;min-height:0;overflow:hidden}.landing .public-map-gallery-grid{display:grid;width:100%;height:100%;min-height:0;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(0,1fr)}.landing .public-map-gallery-preview .home-mini-gallery-item{height:100%}.landing .public-map-gallery-preview .home-mini-gallery-tile--feature-left{grid-column:1/span 2;grid-row:1/span 2}.landing .public-map-gallery-preview .home-mini-gallery-tile--small-1{grid-column:3;grid-row:1}.landing .public-map-gallery-preview .home-mini-gallery-tile--small-2{grid-column:4;grid-row:1}.landing .public-map-gallery-preview .home-mini-gallery-tile--small-3{grid-column:3;grid-row:2}.landing .public-map-gallery-preview .home-mini-gallery-tile--small-4{grid-column:4;grid-row:2}.landing .public-map-gallery-preview .home-mini-gallery-tile--feature-right{grid-column:3/span 2;grid-row:3/span 2}.landing .public-map-gallery-preview .home-mini-gallery-tile--small-5{grid-column:1;grid-row:3}.landing .public-map-gallery-preview .home-mini-gallery-tile--small-6{grid-column:2;grid-row:3}.landing .public-map-gallery-preview .home-mini-gallery-tile--small-7{grid-column:1;grid-row:4}.landing .public-map-gallery-preview .home-mini-gallery-tile--small-8{grid-column:2;grid-row:4}.landing .home-mini-fog{order:1;height:clamp(144px,37.5vw,198px);aspect-ratio:auto;border-radius:14px}.landing .activities-page--embedded{order:2;width:100%;min-width:0}.landing .home-mini-fog-link{border-radius:inherit}.landing .home-mini-fog-title{top:.5rem;left:.5rem;max-width:calc(100% - 1rem);padding:.35rem .5rem}.landing .home-mini-fog-location{display:none}.landing .home-mini-gallery{min-height:320px}.landing .home-mini-gallery-grid{grid-template-columns:1fr}.landing .public-map-gallery-preview .public-map-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(0,1fr)}.landing .home-mini-gallery-tile--feature-left,.landing .home-mini-gallery-tile--feature-right{grid-column:auto}}@media(max-width:520px){.landing .landing{padding:.5rem}.landing .public-hero-copy h1{font-size:2.05rem}.landing .public-section-heading h2{font-size:2.1rem}.landing .public-map-gallery-preview{height:520px}}.strava-scope-upgrade{position:relative;isolation:isolate;border-color:#d3dae63d;background-color:#fffffffa;color:#2f4f8f}.strava-scope-upgrade:after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:var(--grain-scale, 320px);opacity:var(--grain-opacity, .5);mix-blend-mode:var(--grain-blend, screen);border-radius:inherit;pointer-events:none}.strava-scope-upgrade{position:relative;z-index:4;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;width:min(100% - 2rem,980px);margin:.75rem auto 0;padding:.75rem 1rem;border-top:2px solid #2f4f8f;box-shadow:0 8px 18px #061c121f;color:#1a2233;--grain-opacity: .28;--grain-scale: 170px}.strava-scope-upgrade--settings{width:100%;margin:0;box-shadow:none}.strava-scope-upgrade__marker{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(47,79,143,.4);border-radius:999px;color:#2f4f8f}.strava-scope-upgrade__marker svg{width:20px;height:20px;stroke-width:1.8}.strava-scope-upgrade__copy{min-width:0}.strava-scope-upgrade__copy h2{margin:1px 0 3px;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.2}.strava-scope-upgrade__copy>p:not(.strava-scope-upgrade__kicker):not(.strava-scope-upgrade__error){max-width:65ch;margin:0;color:#4a5872;font-size:.8125rem;line-height:1.55}.strava-scope-upgrade__kicker{font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:#4a5872;margin:0;color:#2f4f8f}.strava-scope-upgrade__error{margin:.25rem 0 0;color:#b43b34;font-size:.8125rem}.strava-scope-upgrade__actions{display:flex;align-items:center;gap:.75rem}.strava-scope-upgrade__actions button{padding:.5rem 1rem;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:1px solid #2f4f8f;cursor:pointer;transition:all .2s ease;border-radius:0}.strava-scope-upgrade__actions button:focus{outline:2px solid #3b67ad;outline-offset:2px}.strava-scope-upgrade__actions button:disabled{opacity:.5;cursor:not-allowed}.strava-scope-upgrade__actions button{min-height:42px;border-color:#2f4f8f;background:#2f4f8f;color:#fff;white-space:nowrap}.strava-scope-upgrade__actions button:hover:not(:disabled){border-color:#1a2233;background:#1a2233}.strava-scope-upgrade__actions a{color:#4a5872;font-family:Sora,Avenir Next,Segoe UI,sans-serif;font-size:.8125rem;font-weight:700;white-space:nowrap}@media(max-width:720px){.strava-scope-upgrade{grid-template-columns:auto minmax(0,1fr);align-items:start;width:calc(100% - 1rem);gap:.5rem;margin-top:.5rem;padding:.75rem}.strava-scope-upgrade--settings{width:100%}.strava-scope-upgrade__actions{grid-column:2;flex-wrap:wrap;gap:.5rem .75rem}}@media(max-width:440px){.strava-scope-upgrade{grid-template-columns:minmax(0,1fr)}.strava-scope-upgrade__marker{display:none}.strava-scope-upgrade__actions{grid-column:1}.strava-scope-upgrade__actions button{flex:1 1 100%;width:100%}}.mobile-bottom-nav,.mobile-bottom-nav__spacer{display:none}@media(max-width:759px){.mobile-bottom-nav{position:fixed;z-index:900;right:0;bottom:calc(env(safe-area-inset-bottom) + 8px);left:0;display:flex;justify-content:center;padding:0 max(12px,env(safe-area-inset-left));pointer-events:none}.mobile-bottom-nav__glass{position:relative;isolation:isolate;width:min(100%,360px);min-height:64px;padding:5px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:22px;background:#f7f3e8b3;box-shadow:0 16px 36px #0e1f2d33,inset 0 1px #ffffffb8;-webkit-backdrop-filter:saturate(165%) blur(22px);backdrop-filter:saturate(165%) blur(22px);pointer-events:auto}.mobile-bottom-nav__glass:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(145deg,#ffffff61,#ffffff0d);pointer-events:none}.mobile-bottom-nav__item{min-width:0;min-height:52px;padding:5px 7px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:17px;color:#4a5872;font-family:IBM Plex Mono,SFMono-Regular,Menlo,monospace;font-size:.68rem;font-weight:700;line-height:1;text-decoration:none;transition:background-color .15s ease,color .15s ease,transform .15s ease}.mobile-bottom-nav__item svg{width:21px;height:21px}.mobile-bottom-nav__item:active{transform:scale(.96)}.mobile-bottom-nav__item:focus-visible{outline:2px solid #3b67ad;outline-offset:2px}.mobile-bottom-nav__item.is-active{color:#c00;background:#ffffff94;box-shadow:inset 0 0 0 1px #ff00001f}.mobile-bottom-nav__spacer{display:block;height:calc(80px + env(safe-area-inset-bottom));flex:0 0 auto}}@media(max-width:759px)and (prefers-reduced-transparency:reduce){.mobile-bottom-nav__glass{background:#f7f3e8;-webkit-backdrop-filter:none;backdrop-filter:none}}@media(max-width:759px)and (prefers-reduced-motion:reduce){.mobile-bottom-nav__item{transition:none}}
