.lm-races-section,
.lm-race-extras {
font-family: Roboto, sans-serif;
}
.lm-race-page-heading {
display: grid;
gap: 4px;
margin: 30px 2px 18px;
}
.lm-race-page-heading .lm-eyebrow {
margin: 0;
color: var(--lm-teal-dark);
font-size: 11px !important;
font-weight: 700;
letter-spacing: .105em;
line-height: 1.25;
text-transform: uppercase;
}
.lm-race-page-heading h3 {
margin: 0;
color: var(--lm-primary);
font-family: LenteDruk, "Druk Wide Bold", Roboto, sans-serif;
font-size: clamp(2rem, 4vw, 2.8rem);
font-weight: 700;
letter-spacing: -.025em;
line-height: 1;
text-transform: uppercase;
}
.lm-race-page-heading > p:last-child {
max-width: 680px;
margin: 5px 0 0;
color: var(--lm-muted);
font-size: 15px;
line-height: 1.55;
}
.lm-races-section .lm-registration-grid {
display: grid;
grid-template-columns: minmax(0, 1fr);
gap: 24px;
}
.lm-races-section .lm-registration-card {
display: block;
min-width: 0;
padding: 0;
overflow: visible;
border: 0;
border-radius: 0;
background: transparent;
box-shadow: none;
}
.lm-races-section .lm-registration-card::before {
display: none;
}
.lm-races-section .lm-registration-card__panel {
position: relative;
min-width: 0;
padding: clamp(22px, 3vw, 30px);
overflow: hidden;
border: 1px solid var(--lm-line);
border-radius: 16px;
background: #fff;
box-shadow: 0 10px 28px rgba(24, 36, 62, .055);
}
.lm-races-section .lm-registration-card__panel--entry {
display: block;
padding-top: clamp(25px, 3vw, 32px);
background: #fff;
}
.lm-races-section .lm-registration-card__panel--entry::before {
position: absolute;
inset: 0 0 auto;
display: block;
height: 7px;
background: linear-gradient(90deg, #6ababc 0%, #9297d7 25%, #e99fc9 50%, #f1d65b 76%, #8ec39d 100%);
content: "";
}
.lm-races-section .lm-card-section-head {
display: flex;
gap: 12px;
align-items: center;
justify-content: space-between;
padding: 0 0 13px;
border-bottom: 1px solid var(--lm-line);
}
.lm-races-section .lm-card-section-head h4 {
margin: 0;
color: var(--lm-muted);
font-size: 11px;
font-weight: 700;
letter-spacing: .09em;
line-height: 1.2;
text-transform: uppercase;
}
.lm-races-section .lm-status {
min-height: 28px;
padding: 5px 10px;
border: 1px solid rgba(32, 119, 126, .16);
background: #edf6f5;
color: var(--lm-teal-dark);
font-size: 11px;
font-weight: 700;
}
.lm-races-section .lm-status--actief,
.lm-races-section .lm-status--active,
.lm-races-section .lm-status--betaald,
.lm-races-section .lm-status--paid {
border-color: rgba(80, 141, 83, .2);
background: #edf6ed;
color: #3e7643;
}
.lm-registration-summary {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(270px, 340px);
gap: clamp(24px, 4vw, 44px);
align-items: stretch;
margin-top: 21px;
}
.lm-races-section .lm-race-identity {
display: flex;
min-width: 0;
flex-direction: column;
align-items: flex-start;
margin: 0;
}
.lm-race-identity .lm-eyebrow {
margin: 0 0 6px;
color: var(--lm-teal-dark);
font-size: 10px !important;
font-weight: 700;
letter-spacing: .09em;
line-height: 1.3;
text-transform: uppercase;
}
.lm-race-identity h5 {
margin: 0;
color: var(--lm-primary);
font-family: LenteDruk, "Druk Wide Bold", Roboto, sans-serif;
font-size: clamp(1.65rem, 3.5vw, 2.25rem);
font-weight: 700;
letter-spacing: -.02em;
line-height: 1.05;
text-transform: uppercase;
}
.lm-race-identity .lm-runner-name {
margin: 8px 0 0;
color: var(--lm-muted);
font-size: 15px;
line-height: 1.45;
}
.lm-races-section .lm-registration-actions {
display: flex;
flex-flow: row wrap;
gap: 11px 16px;
align-items: center;
margin-top: auto;
padding-top: 22px;
}
.lm-races-section .lm-registration-actions .lm-button {
align-self: auto;
min-height: 44px;
padding: 10px 17px;
border-radius: 999px;
}
.lm-races-section .lm-registration-card .lm-photo-link {
align-self: auto;
margin: 0;
}
.lm-registration-meta {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px 18px;
align-content: start;
margin: 0;
padding: 4px 0 4px 28px;
border-left: 1px solid var(--lm-line);
}
.lm-registration-meta > div {
min-width: 0;
}
.lm-registration-meta dt,
.lm-race-facts dt {
margin: 0;
color: #59647a;
font-size: 11px;
font-weight: 700;
letter-spacing: .065em;
line-height: 1.3;
text-transform: uppercase;
}
.lm-registration-meta dd {
margin: 4px 0 0;
color: var(--lm-primary);
font-size: 14px;
font-weight: 700;
line-height: 1.35;
overflow-wrap: anywhere;
}
.lm-races-section .lm-registration-deadline,
.lm-races-section .lm-alert-line {
margin: 17px 0 0;
}
.lm-race-overview-grid {
display: grid;
grid-template-columns: minmax(0, 1.32fr) minmax(285px, .88fr);
gap: 14px;
align-items: start;
margin-top: 14px;
}
.lm-race-panel-heading {
display: flex;
gap: 12px;
align-items: flex-start;
justify-content: space-between;
margin-bottom: 18px;
}
.lm-race-panel-heading h4,
.lm-race-extras__heading h3 {
margin: 0;
color: var(--lm-primary);
font-family: LenteDruk, "Druk Wide Bold", Roboto, sans-serif;
font-size: 21px;
font-weight: 700;
letter-spacing: -.015em;
line-height: 1.08;
text-transform: uppercase;
}
.lm-race-panel-heading p {
max-width: 570px;
margin: 6px 0 0;
color: var(--lm-muted);
font-size: 13px;
line-height: 1.45;
}
.lm-bib-next-step {
display: grid;
grid-template-columns: 88px minmax(0, 1fr) auto;
gap: 9px 15px;
align-items: center;
margin-bottom: 13px;
padding: 13px 15px;
border-left: 4px solid var(--lm-teal);
border-radius: 0 11px 11px 0;
background: #edf6f5;
}
.lm-bib-next-step span {
color: var(--lm-teal-dark);
font-size: 10px;
font-weight: 700;
letter-spacing: .07em;
line-height: 1.25;
text-transform: uppercase;
}
.lm-bib-next-step strong {
min-width: 0;
color: var(--lm-primary);
font-size: 14px;
font-weight: 700;
line-height: 1.35;
}
.lm-bib-next-step time {
color: var(--lm-muted);
font-size: 12px;
font-weight: 700;
line-height: 1.3;
white-space: nowrap;
}
.lm-race-facts {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 8px;
margin: 0;
}
.lm-race-facts > div {
min-width: 0;
min-height: 74px;
padding: 12px 13px;
border: 1px solid rgba(105, 186, 187, .14);
border-radius: 11px;
background: #eef5f5;
}
.lm-race-facts dd {
margin: 6px 0 0;
color: var(--lm-primary);
font-size: 14px;
font-weight: 700;
line-height: 1.32;
overflow-wrap: anywhere;
}
.lm-race-fact--name dt {
letter-spacing: .025em;
white-space: nowrap;
}
.lm-races-section .lm-bib-pickup-choice {
margin: 15px 0 0;
border-color: rgba(241, 214, 91, .6);
box-shadow: none;
}
.lm-races-section .lm-bib-ticket-status {
grid-template-columns: 38px minmax(0, 1fr);
gap: 12px;
margin: 15px 0 0;
padding: 14px 15px;
border-radius: 12px;
box-shadow: none;
}
.lm-races-section .lm-bib-ticket-status__icon {
width: 38px;
height: 38px;
border-radius: 11px;
box-shadow: none;
}
.lm-races-section .lm-bib-ticket-status__icon svg {
width: 20px;
height: 20px;
}
.lm-races-section .lm-bib-ticket {
margin: 15px 0 0;
border-radius: 12px;
}
.lm-races-section .lm-bib-journey {
margin: 14px 0 0;
overflow: hidden;
border: 1px solid var(--lm-line);
border-radius: 12px;
background: #fff;
}
.lm-races-section .lm-bib-journey > summary {
display: flex;
min-height: 46px;
gap: 14px;
align-items: center;
justify-content: space-between;
padding: 12px 14px;
color: var(--lm-primary);
font-size: 13px;
font-weight: 700;
list-style: none;
cursor: pointer;
}
.lm-races-section .lm-bib-journey > summary::-webkit-details-marker {
display: none;
}
.lm-races-section .lm-bib-journey > summary::after {
color: var(--lm-teal-dark);
font-size: 18px;
line-height: 1;
content: "+";
}
.lm-races-section .lm-bib-journey[open] > summary::after {
content: "−";
}
.lm-races-section .lm-bib-journey > summary small {
margin-left: auto;
color: var(--lm-muted);
font-size: 11px;
font-weight: 700;
}
.lm-races-section .lm-bib-journey .lm-bib-timeline {
padding-top: 8px;
border-top: 1px solid var(--lm-line);
}
.lm-races-section .lm-pickup-info {
margin-top: 12px;
border: 1px solid rgba(105, 186, 187, .2);
background: #f1f8f7;
}
.lm-registration-card__panel--race-day {
background: #fff;
}
.lm-race-day-list {
display: grid;
gap: 0;
margin: 2px 0 0;
}
.lm-race-day-list > div {
display: grid;
grid-template-columns: minmax(115px, .88fr) minmax(0, 1.12fr);
gap: 14px;
align-items: center;
padding: 13px 0;
border-bottom: 1px solid var(--lm-line);
}
.lm-race-day-list dt {
display: flex;
min-width: 0;
gap: 9px;
align-items: center;
margin: 0;
color: var(--lm-teal-dark);
font-size: 11px;
font-weight: 700;
letter-spacing: .02em;
line-height: 1.25;
}
.lm-race-day-list dd {
margin: 0;
color: var(--lm-primary);
font-size: 13px;
font-weight: 700;
line-height: 1.4;
overflow-wrap: anywhere;
}
.lm-race-day-icon {
display: grid;
flex: 0 0 29px;
width: 29px;
height: 29px;
place-items: center;
border-radius: 9px;
background: #e9f5f4;
color: var(--lm-teal-dark);
}
.lm-race-day-icon svg {
display: block;
width: 16px;
height: 16px;
fill: none;
stroke: currentColor;
stroke-width: 1.7;
stroke-linecap: round;
stroke-linejoin: round;
}
.lm-race-day-link {
display: inline-flex;
min-height: 44px;
align-items: center;
margin-top: 18px;
padding: 9px 14px;
border: 1px solid rgba(32, 119, 126, .34);
border-radius: 999px;
color: var(--lm-teal-dark) !important;
font-size: 13px;
font-weight: 700;
text-decoration: none !important;
}
.lm-race-day-link:hover {
background: #edf6f5;
}
.lm-races-section .lm-registration-card__panel--walk {
background: #fff;
}
.lm-races-section .lm-walk-card-intro {
margin-top: 4px;
}
.lm-races-section .lm-walk-card-intro h5 {
font-family: LenteDruk, "Druk Wide Bold", Roboto, sans-serif;
font-size: 21px;
font-weight: 700;
text-transform: uppercase;
}
.lm-race-extras {
margin-top: 18px;
}
.lm-race-extras__heading {
display: flex;
gap: 16px;
align-items: center;
justify-content: space-between;
}
.lm-race-extras__heading .lm-text-link {
display: inline-flex;
flex: 0 0 auto;
min-height: 44px;
align-items: center;
justify-content: center;
padding: 8px 12px;
border: 1px solid rgba(32, 119, 126, .34);
border-radius: 999px;
color: var(--lm-teal-dark) !important;
font-size: 13px;
font-weight: 700;
text-decoration: none !important;
}
.lm-race-extras__heading .lm-text-link:hover {
background: #edf6f5;
}
.lm-race-extras .lm-section-intro {
margin: 7px 0 17px;
color: var(--lm-muted);
font-size: 14px;
}
.lm-race-extras .lm-extra-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 10px;
}
.lm-race-extras .lm-extra-card {
grid-template-columns: 42px minmax(0, 1fr);
gap: 12px;
padding: 14px;
border-radius: 13px;
background: #fff;
box-shadow: none;
}
.lm-race-extras .lm-extra-card__icon {
width: 42px;
height: 42px;
border-radius: 11px;
}
.lm-race-extras .lm-extra-card__icon svg {
width: 23px;
height: 23px;
}
.lm-race-extras .lm-extra-card__content h4 {
margin: 1px 0 7px;
font-size: 14px;
}
.lm-race-extras .lm-extra-card__tags {
margin-bottom: 8px;
}
.lm-race-extras .lm-extra-card__variants {
grid-template-columns: minmax(0, 1fr);
margin-bottom: 8px;
}
.lm-races-section .lm-registration-attention__issue {
display: grid;
gap: 3px;
}
.lm-races-section .lm-registration-attention__issue strong {
color: var(--lm-primary);
font-size: 13px;
line-height: 1.35;
}
.lm-races-section .lm-registration-attention__issue small {
color: var(--lm-muted);
font-size: 12px;
line-height: 1.45;
}
.lm-races-section summary:focus-visible,
.lm-race-day-link:focus-visible,
.lm-race-extras__heading .lm-text-link:focus-visible {
outline: 3px solid var(--lm-teal-dark);
outline-offset: 3px;
}
@media (max-width: 980px) {
.lm-registration-summary {
grid-template-columns: minmax(0, 1fr) minmax(250px, 320px);
gap: 24px;
}
.lm-race-overview-grid {
grid-template-columns: minmax(0, 1fr);
}
.lm-race-extras .lm-extra-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 720px) {
.lm-race-page-heading {
margin: 23px 2px 15px;
}
.lm-race-page-heading h3 {
font-size: clamp(1.75rem, 9vw, 2.2rem);
}
.lm-race-page-heading > p:last-child {
font-size: 14px;
}
.lm-races-section .lm-registration-grid {
gap: 18px;
}
.lm-races-section .lm-registration-card__panel {
padding: 19px;
border-radius: 14px;
}
.lm-races-section .lm-registration-card__panel--entry {
padding-top: 23px;
}
.lm-races-section .lm-registration-card__panel--entry::before {
height: 6px;
}
.lm-registration-summary {
grid-template-columns: minmax(0, 1fr);
gap: 19px;
}
.lm-registration-meta {
padding: 18px 0 0;
border-top: 1px solid var(--lm-line);
border-left: 0;
}
.lm-races-section .lm-registration-actions .lm-button {
min-height: 46px;
}
.lm-race-panel-heading h4,
.lm-race-extras__heading h3,
.lm-races-section .lm-walk-card-intro h5 {
font-size: 19px;
}
.lm-bib-next-step {
grid-template-columns: minmax(0, 1fr) auto;
}
.lm-bib-next-step span {
grid-column: 1 / -1;
}
.lm-race-facts {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.lm-race-facts > div {
min-height: 72px;
}
.lm-race-extras .lm-extra-grid {
grid-template-columns: minmax(0, 1fr);
}
}
@media (max-width: 480px) {
.lm-races-section .lm-card-section-head {
align-items: flex-start;
}
.lm-race-identity h5 {
font-size: clamp(1.45rem, 8.3vw, 1.9rem);
}
.lm-races-section .lm-registration-actions,
.lm-race-extras__heading {
align-items: stretch;
flex-direction: column;
}
.lm-races-section .lm-registration-actions .lm-button,
.lm-race-day-link,
.lm-race-extras__heading .lm-text-link {
width: 100%;
justify-content: center;
}
.lm-registration-meta {
grid-template-columns: minmax(0, 1fr);
gap: 13px;
}
.lm-bib-next-step {
grid-template-columns: minmax(0, 1fr);
}
.lm-bib-next-step time {
white-space: normal;
}
.lm-race-day-list > div {
grid-template-columns: minmax(0, 1fr);
gap: 5px;
}
.lm-race-day-list dd {
padding-left: 38px;
}
.lm-races-section .lm-bib-journey > summary {
flex-wrap: wrap;
}
.lm-races-section .lm-bib-journey > summary small {
margin-left: 0;
}
}
@media (max-width: 380px) {
.lm-race-facts {
grid-template-columns: minmax(0, 1fr);
}
.lm-race-fact--name dt {
white-space: normal;
}
}
@media (prefers-reduced-motion: reduce) {
.lm-races-section *,
.lm-race-extras * {
scroll-behavior: auto !important;
transition-duration: .01ms !important;
}
}.lm-training-plan {
display: grid;
gap: 11px;
margin-top: 18px;
padding: 18px;
border: 1px solid rgba(105, 186, 187, .42);
border-radius: 15px;
background: linear-gradient(135deg, #eef8f7, #fff);
}
.lm-training-plan .lm-eyebrow,
.lm-training-plan p,
.lm-training-plan small { margin: 0 !important; }
.lm-training-plan h6 {
margin: 0;
color: var(--lm-primary);
font-size: 1.12rem;
line-height: 1.25;
}
.lm-training-plan p { color: var(--lm-muted); line-height: 1.55; }
.lm-training-plan__runs {
justify-self: start;
padding: 6px 10px;
border-radius: 999px;
background: rgba(183, 219, 56, .24);
color: var(--lm-primary);
font-size: .78rem;
font-weight: 800;
}
.lm-training-plan .lm-button { justify-self: start; margin-top: 2px; }
.lm-training-plan small { color: #647089; line-height: 1.5; }
.lm-training-plan.is-beginner {
border-color: rgba(183, 219, 56, .7);
background: linear-gradient(135deg, #f7fbe9, #fff);
}
.lm-training-plan.is-unavailable {
border-color: #ead9ab;
background: #fff8e7;
}
@media (max-width: 520px) {
.lm-training-card { padding: 18px; }
.lm-training-plan { padding: 15px; }
.lm-training-plan .lm-button { width: 100%; justify-content: center; text-align: center; }
}.lm-training-home {
position: relative;
display: grid;
grid-template-columns: 64px minmax(0, 1fr) auto;
gap: 18px;
align-items: center;
margin: 18px 0;
padding: 22px 58px 22px 22px;
overflow: hidden;
border: 1px solid rgba(105, 186, 187, .55);
border-radius: 18px;
background:
radial-gradient(circle at 92% 0, rgba(183, 219, 56, .23), transparent 28%),
linear-gradient(135deg, #edf8f7 0%, #fff 72%);
box-shadow: 0 13px 30px rgba(24, 36, 62, .08);
}
.lm-training-home[hidden] { display: none !important; }
.lm-training-home__icon {
display: grid;
width: 64px;
height: 64px;
place-items: center;
border-radius: 17px;
background: var(--lm-primary);
color: #fff;
}
.lm-training-home__icon svg {
width: 40px;
height: 40px;
fill: none;
stroke: currentColor;
stroke-linecap: round;
stroke-linejoin: round;
stroke-width: 2.5;
}
.lm-training-home__content { min-width: 0; }
.lm-training-home__content .lm-eyebrow,
.lm-training-home__content h3,
.lm-training-home__content > p { margin: 0 !important; }
.lm-training-home__content h3 {
margin-top: 3px !important;
color: var(--lm-primary);
font-size: clamp(1.25rem, 2.2vw, 1.65rem);
line-height: 1.18;
}
.lm-training-home__content > p {
margin-top: 7px !important;
max-width: 720px;
color: var(--lm-muted);
line-height: 1.5;
}
.lm-training-home__meta {
display: flex;
flex-wrap: wrap;
gap: 7px;
margin-top: 11px;
}
.lm-training-home__meta span {
padding: 6px 10px;
border-radius: 999px;
background: rgba(183, 219, 56, .22);
color: var(--lm-primary);
font-size: .77rem;
font-weight: 800;
}
.lm-training-home__action {
white-space: nowrap;
}
.lm-training-home__dismiss {
position: absolute;
top: 12px;
right: 12px;
display: grid;
width: 36px;
height: 36px;
padding: 0;
place-items: center;
border: 0;
border-radius: 50%;
background: rgba(255, 255, 255, .82);
color: #59657b;
cursor: pointer;
}
.lm-training-home__dismiss:hover { background: #fff; color: var(--lm-primary); }
.lm-training-home__dismiss:focus-visible { outline: 3px solid var(--lm-accent); outline-offset: 2px; }
.lm-training-home__dismiss svg {
width: 18px;
height: 18px;
fill: none;
stroke: currentColor;
stroke-linecap: round;
stroke-width: 2;
}
@media (max-width: 760px) {
.lm-training-home {
grid-template-columns: 52px minmax(0, 1fr);
gap: 14px;
padding: 19px 50px 19px 18px;
}
.lm-training-home__icon { width: 52px; height: 52px; border-radius: 14px; }
.lm-training-home__icon svg { width: 34px; height: 34px; }
.lm-training-home__action {
grid-column: 1 / -1;
width: 100%;
justify-content: center;
text-align: center;
}
}
@media (max-width: 430px) {
.lm-training-home { grid-template-columns: 1fr; padding: 18px 48px 18px 18px; }
.lm-training-home__icon { width: 46px; height: 46px; }
.lm-training-home__action { grid-column: 1; }
}
@media (prefers-reduced-motion: no-preference) {
.lm-training-home.is-dismissing {
opacity: 0;
transform: translateY(-6px);
transition: opacity .18s ease, transform .18s ease;
}
}.lm-fundraising-overview {
margin: 22px 0 28px;
}
.lm-fundraising-overview__heading { margin: 0 2px 13px; }
.lm-fundraising-overview__heading .lm-eyebrow { margin: 0 0 3px; color: #20777e; font-family: Roboto, sans-serif; font-size: .68rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.lm-fundraising-overview__heading h3 { margin: 0; color: #18243e; font-family: "Druk Wide Bold", LenteDruk, sans-serif; font-size: clamp(1.45rem, 3vw, 2rem); font-weight: 700; }
.lm-fundraising-overview__heading > p:not(.lm-eyebrow) { max-width: 680px; margin: 5px 0 0; color: #526174; font-family: Roboto, sans-serif; font-size: .9rem; }
.lm-fundraising-overview__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 330px), 1fr)); gap: 13px; }
.lm-fundraiser-card {
position: relative;
display: grid;
grid-template-columns: 44px minmax(0, 1fr);
gap: 13px;
margin: 0;
padding: 16px 17px 21px;
overflow: hidden;
border: 1px solid #dce6e8;
border-radius: 15px;
background: #f6faf9;
color: #14233a;
font-family: Roboto, sans-serif;
}
.lm-fundraiser-card::after {
position: absolute;
inset: auto 0 0;
height: 7px;
background: linear-gradient(90deg, #6ababc 0%, #9297d7 25%, #e99fc9 50%, #f1d65b 76%, #8ec39d 100%);
content: "";
}
.lm-fundraiser-card.is-active { background: #f0f8f7; }
.lm-fundraiser-card__icon {
display: grid;
width: 44px;
height: 44px;
place-items: center;
border-radius: 13px;
background: #18243e;
color: #fff;
}
.lm-fundraiser-card.is-active .lm-fundraiser-card__icon { background: #20777e; }
.lm-fundraiser-card__icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.lm-fundraiser-card__content { min-width: 0; }
.lm-fundraiser-card .lm-eyebrow { margin: 0 0 2px; color: #20777e; font-family: Roboto, sans-serif; font-size: .68rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.lm-fundraiser-card h6 { margin: 0; color: #18243e; font-family: Roboto, sans-serif; font-size: 1.06rem; font-weight: 700; line-height: 1.25; }
.lm-fundraiser-card__participant { margin: 0 0 3px !important; color: #18243e !important; font-size: .78rem !important; font-weight: 700; }
.lm-fundraiser-card__content > p:not(.lm-eyebrow) { margin: 6px 0 12px; color: #526174; font-size: .88rem; line-height: 1.5; }
.lm-fundraiser-card .lm-button { width: fit-content; max-width: 100%; text-align: center; }
.lm-fundraiser-card small { display: block; margin-top: 9px; color: #677284; font-size: .76rem; line-height: 1.45; }
@media (max-width: 480px) {
.lm-fundraiser-card { grid-template-columns: 38px minmax(0, 1fr); gap: 11px; padding: 14px 14px 19px; }
.lm-fundraiser-card::after { height: 6px; }
.lm-fundraiser-card__icon { width: 38px; height: 38px; border-radius: 11px; }
.lm-fundraiser-card__icon svg { width: 20px; height: 20px; }
.lm-fundraiser-card .lm-button { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
.lm-fundraiser-card .lm-button { transition: none; }
}.lm-activities-section .lm-activity-card,
.lm-activities-section .lm-activity-card--primary {
grid-column: auto !important;
display: flex !important;
grid-template-columns: none !important;
}
.lm-activities-section .lm-activity-card--primary > .lm-content-media {
min-height: 0 !important;
aspect-ratio: 16 / 8.7 !important;
}
.lm-activity-capacity-badge {
position: absolute;
bottom: 12px;
left: 12px;
z-index: 3;
display: grid;
max-width: calc(100% - 24px);
gap: 1px;
padding: 8px 12px 9px;
border: 1px solid rgba(255, 255, 255, .72);
border-radius: 11px;
background: var(--lm-accent);
box-shadow: 0 7px 20px rgba(10, 24, 42, .28);
color: var(--lm-primary);
line-height: 1.1;
}
.lm-activity-capacity-badge small {
color: inherit;
font-size: .6rem;
font-weight: 900;
letter-spacing: .075em;
text-transform: uppercase;
}
.lm-activity-capacity-badge strong {
font-size: .86rem;
font-weight: 900;
}
.lm-activity-capacity-badge.is-urgent {
background: #ffd66e;
color: #523600;
}
.lm-activity-capacity-badge.is-full {
background: #8f2f37;
color: #fff;
}
.lm-activity-practical {
display: grid !important;
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
gap: 8px !important;
align-items: start;
margin: 0 0 12px !important;
}
.lm-activity-practical .lm-activity-guide,
.lm-activity-practical .lm-activity-route {
min-width: 0;
min-height: 54px;
margin: 0 !important;
}
.lm-activity-practical .lm-activity-guide {
grid-template-columns: 34px minmax(0, 1fr);
gap: 8px;
padding: 8px 9px;
}
.lm-activity-practical .lm-activity-guide__avatar {
width: 34px;
height: 34px;
font-size: .78rem;
}
.lm-activity-practical .lm-activity-guide small,
.lm-activity-practical .lm-activity-route small {
font-size: .58rem;
}
.lm-activity-practical .lm-activity-guide strong,
.lm-activity-practical .lm-activity-route strong {
font-size: .8rem;
}
.lm-activity-practical .lm-activity-guide em {
font-size: .7rem;
}
.lm-activity-practical .lm-activity-route:only-child,
.lm-activity-practical .lm-activity-route:has(details[open]) {
grid-column: 1 / -1;
}
.lm-activity-practical .lm-activity-route details > summary,
.lm-activity-practical .lm-activity-route__link {
min-height: 52px;
padding: 8px 10px;
}
.lm-activity-partners {
margin-bottom: 11px;
padding: 8px 9px;
}
.lm-activity-partners__item {
min-height: 44px;
padding-top: 5px;
padding-bottom: 5px;
}
.lm-activity-consent {
gap: 0;
margin-bottom: 10px;
padding: 10px 11px;
border-left: 4px solid var(--lm-teal);
background: #f7faf9;
}
.lm-activity-consent__required {
font-size: .75rem;
line-height: 1.4;
}
@media (max-width: 520px) {
.lm-activity-practical {
grid-template-columns: 1fr !important;
}
.lm-activity-practical .lm-activity-guide,
.lm-activity-practical .lm-activity-route {
grid-column: 1 !important;
}
.lm-activity-capacity-badge {
bottom: 10px;
left: 10px;
max-width: calc(100% - 20px);
}
}.lm-activity-route__zoom {
position: relative;
display: block;
width: 100%;
overflow: hidden;
padding: 0;
border: 0;
border-radius: 10px;
background: #fff;
color: var(--lm-primary);
cursor: zoom-in;
text-align: left;
}
.lm-activity-route__zoom .lm-activity-route__image {
transition: transform .2s ease, filter .2s ease;
}
.lm-activity-route__zoom > span {
position: absolute;
right: 9px;
bottom: 9px;
display: inline-flex;
min-height: 34px;
align-items: center;
gap: 6px;
padding: 7px 10px;
border: 1px solid rgba(255, 255, 255, .55);
border-radius: 999px;
background: rgba(24, 36, 62, .9);
box-shadow: 0 5px 15px rgba(10, 24, 42, .24);
color: #fff;
font-size: .72rem;
font-weight: 850;
line-height: 1;
}
.lm-activity-route__zoom:hover .lm-activity-route__image,
.lm-activity-route__zoom:focus-visible .lm-activity-route__image {
filter: brightness(.96);
transform: scale(1.015);
}
.lm-activity-route__zoom:focus-visible {
outline: 3px solid rgba(183, 219, 56, .75);
outline-offset: 3px;
}
.lm-activity-route-dialog {
width: min(1100px, calc(100vw - 40px));
max-width: none;
max-height: calc(100dvh - 40px);
overflow: hidden;
padding: 0;
border: 0;
border-radius: 18px;
background: #fff;
box-shadow: 0 25px 80px rgba(6, 19, 36, .38);
color: var(--lm-primary);
}
.lm-activity-route-dialog::backdrop {
background: rgba(9, 20, 38, .78);
backdrop-filter: blur(5px);
}
.lm-activity-route-dialog__panel {
display: grid;
max-height: calc(100dvh - 40px);
grid-template-rows: auto minmax(0, 1fr) auto;
}
.lm-activity-route-dialog header {
display: flex;
justify-content: space-between;
align-items: center;
gap: 18px;
padding: 14px 16px;
border-bottom: 1px solid var(--lm-line);
}
.lm-activity-route-dialog header > div {
min-width: 0;
}
.lm-activity-route-dialog header small {
display: block;
margin-bottom: 2px;
color: var(--lm-teal-dark);
font-size: .62rem;
font-weight: 900;
letter-spacing: .075em;
text-transform: uppercase;
}
.lm-activity-route-dialog header h5 {
margin: 0;
overflow-wrap: anywhere;
color: var(--lm-primary);
font-size: clamp(1rem, 2.1vw, 1.35rem);
line-height: 1.15;
}
.lm-activity-route-dialog [data-lm-route-close] {
display: grid;
width: 42px;
height: 42px;
flex: 0 0 42px;
place-items: center;
padding: 0;
border: 0;
border-radius: 50%;
background: var(--lm-primary);
color: #fff;
cursor: pointer;
font-size: 1.65rem;
line-height: 1;
}
.lm-activity-route-dialog [data-lm-route-close]:focus-visible {
outline: 3px solid var(--lm-accent);
outline-offset: 3px;
}
.lm-activity-route-dialog__canvas {
display: grid;
min-height: 0;
place-items: center;
overflow: auto;
padding: 14px;
background: #edf3f2;
}
.lm-activity-route-dialog__image {
display: block;
width: auto;
max-width: 100%;
height: auto;
max-height: calc(100dvh - 180px);
margin: auto;
object-fit: contain;
border-radius: 10px;
background: #fff;
}
.lm-activity-route-dialog__external {
display: inline-flex;
min-height: 46px;
align-items: center;
justify-self: start;
margin: 10px 16px 14px;
color: var(--lm-teal-dark) !important;
font-size: .82rem;
font-weight: 850;
}
body:has(.lm-activity-route-dialog[open]) {
overflow: hidden;
}
@media (max-width: 520px) {
.lm-activity-route-dialog {
width: calc(100vw - 18px);
max-height: calc(100dvh - 18px);
border-radius: 14px;
}
.lm-activity-route-dialog__panel {
max-height: calc(100dvh - 18px);
}
.lm-activity-route-dialog header {
padding: 11px 12px;
}
.lm-activity-route-dialog__canvas {
padding: 8px;
}
.lm-activity-route-dialog__image {
max-height: calc(100dvh - 150px);
}
}
@media (prefers-reduced-motion: reduce) {
.lm-activity-route__zoom .lm-activity-route__image {
transition: none;
}
}