@charset "UTF-8";
/* Widget styles bundle for public */
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@500;700&family=Inter:wght@400;500;600;700&display=swap");
@import url("/css/medtrop.css");
.nav-header__item--has-children:hover > .nav-header__submenu, .nav-header__item--has-children:focus-within > .nav-header__submenu { display: block; }
.nav-header__toggle[aria-expanded="true"] .nav-header__toggle-bar:nth-child(3) { transform: translateY(-7.5px) rotate(-45deg); }
.nav-header__nav { display: flex; }
.nav-header__overlay { display: none; position: fixed; inset: 0; background: rgba(19, 17, 23, 0.4); z-index: calc(var(--mt-z-sticky) - 1); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); }
.locale-switcher__toggle { display: flex; align-items: center; gap: 0.15rem; background: rgba(0, 0, 0, 0.06); border: 1px solid #d0d0d0; border-radius: var(--mt-radius-full); padding: 0.3rem 0.45rem; cursor: pointer; color: var(--mt-text-gray); font-family: var(--mt-font-body); font-size: 0.78rem; font-weight: 600; transition: background var(--mt-transition-fast), border-color var(--mt-transition-fast); min-height: 44px; }
.search-autocomplete { position: absolute; top: calc(100% + 0.55rem); left: 0; right: 0; z-index: calc(var(--mt-z-dropdown) + 5); padding-top: 0.1rem; }
.nav-header__topbar { background: var(--mt-bg-alt); padding: 0.4rem 1.5rem; }
.search-autocomplete__status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.nav-header__item--has-children:hover > .nav-header__link .nav-header__chevron, .nav-header__item--has-children:focus-within > .nav-header__link .nav-header__chevron { transform: rotate(180deg); }
.nav-header__toggle[aria-expanded="true"] .nav-header__toggle-bar:nth-child(2) { opacity: 0; }
.nav-header__topbar-social-fallback { font-family: var(--mt-font-heading); font-size: 0.7rem; font-weight: 700; }
.nav-header__logo-mark { display: inline-flex; align-items: center; justify-content: center; width: 2.25rem; height: 2.25rem; border-radius: var(--mt-radius-md); background: linear-gradient(135deg, var(--mt-primary), var(--mt-primary-dark)); color: white; font-family: var(--mt-font-heading); font-size: 1.25rem; font-weight: 800; }
.nav-header__link:focus-visible { outline: 2px solid var(--mt-primary); outline-offset: 2px; }
.nav-header__sublink { display: block; padding: 0.65rem 1.25rem; font-family: var(--mt-font-body); font-size: var(--mt-text-sm); color: var(--mt-text-dark); text-decoration: none; transition: background var(--mt-transition-fast), color var(--mt-transition-fast); white-space: nowrap; min-height: 44px; display: flex; align-items: center; }
.nav-header__search-input { width: min(220px, 24vw); border: none; background: transparent; padding: 0; font: inherit; color: var(--mt-text-dark); }
.search-autocomplete__action { width: 100%; display: grid; gap: 0.15rem; text-align: left; min-height: 44px; padding: 0.8rem 0.9rem; border: none; border-radius: 0.95rem; background: transparent; color: var(--mt-text-dark); cursor: pointer; transition: background var(--mt-transition-fast), transform var(--mt-transition-fast); }
.nav-header__topbar-inner { display: flex; align-items: center; justify-content: flex-end; gap: var(--mt-space-3); max-width: 1280px; margin: 0 auto; }
.nav-header__link { display: inline-flex; align-items: center; padding: 0.5rem 1rem; border-radius: var(--mt-radius-full); font-family: var(--mt-font-body); font-size: var(--mt-text-sm); font-weight: 600; color: var(--mt-text-dark); text-decoration: none; transition: transform var(--mt-transition-spring), background var(--mt-transition-fast); min-height: 44px; }
.search-autocomplete__label { font-weight: 700; line-height: 1.35; }
.locale-switcher__current-name { display: none; }
.nav-header__search-input::placeholder { color: var(--mt-text-light); }
.nav-header__toggle[aria-expanded="true"] .nav-header__toggle-bar:nth-child(1) { transform: translateY(7.5px) rotate(45deg); }
.locale-switcher { position: relative; display: inline-flex; align-items: center; }
.nav-header__subitem { margin: 0; }
.nav-header__mobile-bottom-link:focus-visible { outline: 2px solid var(--mt-primary); outline-offset: 2px; }
.search-autocomplete__item { margin: 0; }
.locale-switcher__lang-name { font-weight: 500; }
.nav-header__sublink:hover { background: var(--mt-primary-light); color: var(--mt-primary); }
.nav-header--scrolled { box-shadow: 0 2px 20px rgba(19, 17, 23, 0.08); }
.nav-header__main { padding: 0.75rem 1.5rem; }
.nav-header__topbar-social { display: flex; align-items: center; gap: var(--mt-space-3); }
.search-autocomplete__action:hover, .search-autocomplete__item.is-active .search-autocomplete__action { background: rgba(232,54,60,0.08); transform: translateY(-1px); }
.nav-header__search-input:focus { outline: none; }
.search-autocomplete[hidden] { display: none !important; }
.nav-header__mobile-bottom-label { font-family: var(--mt-font-body); font-size: 0.69rem; font-weight: 700; line-height: 1.1; text-align: center; }
.nav-header__topbar-social-link { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; color: var(--mt-text-gray); transition: all var(--mt-transition-fast); min-width: 44px; min-height: 44px; }
.nav-header__topbar-icon { flex-shrink: 0; }
.nav-header__mobile-bottom-inner { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.35rem; align-items: stretch; }
.nav-header__topbar-link:hover { color: var(--mt-primary-dark); }
.locale-switcher__current-flag-img { width: 21px; height: 14px; object-fit: cover; border-radius: 2px; border: 1px solid rgba(0,0,0,0.1); }
.locale-switcher__current-flag { display: none; }
.nav-header__mobile-bottom-icon svg { width: 24px; height: 24px; }
.nav-header__toggle-bar { display: block; width: 22px; height: 2.5px; background: var(--mt-text-dark); border-radius: 2px; transition: transform var(--mt-transition), opacity var(--mt-transition-fast); }
.nav-header__toggle:hover { background: var(--mt-primary-light); }
.locale-switcher__dropdown { position: absolute; top: calc(100% + 6px); right: 0; min-width: 140px; background: var(--mt-surface); border-radius: var(--mt-radius-md); box-shadow: var(--mt-shadow-lg); border: 1px solid var(--mt-border-light); padding: 0.35rem 0; z-index: var(--mt-z-dropdown); animation: nav-dropdown-in 0.2s ease; }
.nav-header__topbar-divider { width: 1px; height: 16px; background: #d0d0d0; }
.nav-header { background: rgba(251, 251, 251, 0.6); backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); padding: 0; border-radius: 0; position: relative; z-index: var(--mt-z-sticky); transition: box-shadow var(--mt-transition); }
.nav-header__toggle:focus-visible { outline: 2px solid var(--mt-primary); outline-offset: 2px; }
.search-autocomplete__meta { font-size: var(--mt-text-xs); color: var(--mt-text-gray); }
.nav-header__search-button { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: none; border-radius: 50%; background: var(--mt-primary); color: #fff; cursor: pointer; transition: transform var(--mt-transition-spring), background var(--mt-transition-fast); }
.nav-header__logo-sub { font-weight: 500; font-size: var(--mt-text-xs); color: var(--mt-primary); margin-left: 0.15rem; vertical-align: super; }
.nav-header__menu { display: flex; align-items: center; gap: 0.25rem; list-style: none; margin: 0; padding: 0; }
.locale-switcher__toggle:focus-visible { outline: 2px solid var(--mt-primary); outline-offset: 2px; }
.nav-header--sticky { position: sticky; top: 0; }
.nav-header__topbar-contact { display: flex; align-items: center; gap: var(--mt-space-3); }
.nav-header__item--search { margin-left: 0.5rem; }
.locale-switcher__flag { display: none; }
.nav-header__chevron { width: 10px; height: 10px; margin-left: 0.15rem; transition: transform var(--mt-transition-fast); }
.locale-switcher__chevron { font-size: 0.55rem; opacity: 0.7; transition: transform var(--mt-transition-fast); }
.search-autocomplete__type { color: var(--mt-primary-dark); font-weight: 700; }
.nav-header__topbar-link { display: inline-flex; align-items: center; gap: 0.35rem; font-family: var(--mt-font-body); font-size: var(--mt-text-xs); color: var(--mt-text-gray); text-decoration: none; transition: color var(--mt-transition-fast); padding: 0.25rem 0; min-height: 44px; }
.nav-header__logo { display: flex; align-items: center; gap: var(--mt-space-2); text-decoration: none; }
.search-autocomplete__list { list-style: none; margin: 0; padding: 0.4rem; border-radius: 1.15rem; background: rgba(255,255,255,0.98); border: 1px solid var(--mt-border-light); box-shadow: var(--mt-shadow-xl); display: grid; gap: 0.2rem; }
@keyframes nav-dropdown-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }
.locale-switcher--topbar { }
.nav-header__submenu { display: none; position: absolute; top: 100%; left: 0; min-width: 200px; background: var(--mt-surface); border-radius: var(--mt-radius-md); box-shadow: var(--mt-shadow-lg); border: 1px solid var(--mt-border-light); padding: 0.35rem 0; z-index: var(--mt-z-dropdown); animation: nav-dropdown-in 0.2s ease; }
.nav-header__inner { display: flex; align-items: center; justify-content: space-between; max-width: 1280px; margin: 0 auto; }
@media (max-width: 768px) { body.has-mobile-bottom-nav { padding-bottom: calc(5.9rem + env(safe-area-inset-bottom, 0px)); } body.nav-open { overflow: hidden; } .nav-header__topbar-contact .nav-header__topbar-link span { display: none; } .nav-header__topbar-inner { gap: var(--mt-space-2); } .nav-header__toggle { display: flex !important; } .nav-header__menu { display: none; flex-direction: column; position: fixed; top: 0; right: 0; bottom: 0; width: min(320px, 85vw); background: var(--mt-surface); backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); padding: 5rem 1.5rem calc(6.75rem + env(safe-area-inset-bottom, 0px)); box-shadow: var(--mt-shadow-xl); z-index: var(--mt-z-overlay); transform: translateX(100%); transition: transform var(--mt-transition) cubic-bezier(0.32, 0.72, 0, 1); overflow-y: auto; } .nav-header__menu.is-open { display: flex; transform: translateX(0); } .nav-header__item { width: 100%; border-bottom: 1px solid var(--mt-border-subtle); } .nav-header__item--search { margin: 0 0 1rem; border-bottom: none; } .nav-header__search-form { width: 100%; padding-left: 1rem; } .nav-header__search-input { width: 100%; } .nav-header__link { width: 100%; padding: 1rem 0; border-radius: 0; justify-content: flex-start; font-size: var(--mt-text-base); } .nav-header__item--has-children > .nav-header__submenu { display: none; position: static; box-shadow: none; border: none; border-radius: 0; padding: 0 0 0 var(--mt-space-6); background: transparent; animation: none; } .nav-header__item--has-children.is-open > .nav-header__submenu { display: flex; flex-direction: column; } .nav-header__sublink { padding: 0.75rem 0; border-radius: 0; } .nav-header__topbar { padding: 0.3rem 1rem; } .nav-header__main { padding: 0.5rem 1rem; } .nav-header__logo-img { height: 42px; } .locale-switcher--topbar { margin-left: auto; } .nav-header__mobile-bottom-nav { display: block; position: fixed; left: max(0.75rem, env(safe-area-inset-left, 0px)); right: max(0.75rem, env(safe-area-inset-right, 0px)); bottom: max(0.75rem, env(safe-area-inset-bottom, 0px)); z-index: calc(var(--mt-z-overlay) - 1); } .nav-header__mobile-bottom-inner { padding: 0.45rem; border: 1px solid rgba(255,255,255,0.72); border-radius: 1.35rem; background: rgba(255,255,255,0.9); box-shadow: 0 18px 40px rgba(19, 17, 23, 0.14); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); } body.nav-open .nav-header__mobile-bottom-nav { opacity: 0; pointer-events: none; transform: translateY(0.5rem); } }
.nav-header__overlay.is-open { display: block; }
.nav-header__search-form:focus-within { border-color: var(--mt-primary); box-shadow: 0 0 0 4px rgba(232,54,60,0.08); }
.nav-header__search-button:hover { background: var(--mt-primary-dark); transform: scale(1.04); }
.nav-header__mobile-bottom-link:hover { color: var(--mt-primary-dark); background: rgba(232,54,60,0.08); transform: translateY(-1px); }
@media (max-width: 480px) { .nav-header__topbar-contact .nav-header__topbar-link { font-size: 0; gap: 0; } .nav-header__topbar-contact .nav-header__topbar-icon { font-size: initial; } .nav-header__topbar-social { gap: var(--mt-space-2); } }
.locale-switcher__toggle:hover { background: rgba(0, 0, 0, 0.1); border-color: #bbb; }
.nav-header__logo-text { font-family: var(--mt-font-heading); font-size: 1.25rem; font-weight: 800; color: var(--mt-text-dark); }
.locale-switcher__option { display: flex; align-items: center; gap: 0.5rem; width: 100%; padding: 0.5rem 0.75rem; background: transparent; border: none; cursor: pointer; font-family: var(--mt-font-body); font-size: var(--mt-text-sm); color: var(--mt-text-dark); text-align: left; min-height: 44px; transition: background var(--mt-transition-fast), color var(--mt-transition-fast); }
.nav-header__mobile-bottom-link { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.28rem; min-height: 58px; padding: 0.4rem 0.25rem 0.25rem; border-radius: 1rem; color: var(--mt-text-gray); text-decoration: none; transition: color var(--mt-transition-fast), background var(--mt-transition-fast), transform var(--mt-transition-spring); }
.nav-header__search-form { position: relative; display: flex; align-items: center; gap: 0.35rem; padding: 0.2rem 0.25rem 0.2rem 0.9rem; border-radius: 999px; border: 1px solid var(--mt-border-subtle); background: rgba(255,255,255,0.82); min-height: 44px; }
.nav-header__search-label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.nav-header__logo-img { height: 52px; width: auto; object-fit: contain; }
.nav-header__link:hover { transform: scale(1.02); background: var(--mt-primary-light); }
.locale-switcher__option:hover { background: var(--mt-primary-light); color: var(--mt-primary); }
.nav-header__toggle { display: none; background: none; border: none; cursor: pointer; padding: 0.5rem; flex-direction: column; gap: 5px; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; border-radius: var(--mt-radius-md); transition: background var(--mt-transition-fast); }
.nav-header__mobile-bottom-link.is-active { color: var(--mt-primary-dark); background: rgba(232,54,60,0.12); }
.nav-header__mobile-bottom-nav { display: none; }
.nav-header__topbar-social-link:hover { color: white; background: var(--mt-primary-dark); transform: scale(1.1); }
.nav-header__mobile-bottom-icon { display: inline-flex; width: 24px; height: 24px; }
.nav-header__item { margin: 0; position: relative; }
.nav-header__item--has-children > .nav-header__link::after { content: ""; margin-left: 0.25rem; }
.locale-switcher__flag-img { width: 21px; height: 14px; object-fit: cover; border-radius: 2px; border: 1px solid rgba(0,0,0,0.1); flex-shrink: 0; }
.site-footer__contact-link { font-family: var(--mt-font-body); font-size: var(--mt-text-sm); color: var(--mt-text-gray); text-decoration: none; transition: color var(--mt-transition-fast); display: flex; align-items: center; gap: 0.5rem; min-height: 36px; }
.site-footer__tagline { font-family: var(--mt-font-body); font-size: var(--mt-text-sm); color: var(--mt-text-gray); line-height: var(--mt-leading-normal); }
.site-footer__logo-link { display: inline-block; }
.site-footer__newsletter { margin-top: .8rem; padding-top: .8rem; border-top: 1px solid var(--mt-border-subtle); }
.site-footer__newsletter-link { color: var(--mt-primary-dark); text-decoration: none; font-size: .86rem; font-weight: 600; }
.site-footer__social-links { display: flex; gap: 0.75rem; flex-wrap: wrap; }
.site-footer__newsletter-btn { min-height: 44px; border: none; border-radius: 999px; background: var(--mt-primary); color: #fff; padding: .72rem 1rem; font-weight: 700; cursor: pointer; white-space: nowrap; }
.site-footer__newsletter-btn:hover { background: var(--mt-primary-dark); }
.site-footer__nav-link--parent { font-weight: 600; color: var(--mt-text-dark); }
.site-footer__nav-title, .site-footer__contact-title, .site-footer__social-title { font-family: var(--mt-font-heading); font-size: 0.9rem; font-weight: 700; color: var(--mt-text-dark); margin: 0 0 0.5rem 0; }
.site-footer__social { margin-top: 0.5rem; }
.site-footer__social-icon { width: 18px; height: 18px; }
.site-footer__nav-link:hover { color: var(--mt-primary-dark); }
.site-footer__newsletter-label { font-size: .82rem; font-weight: 700; color: var(--mt-text-dark); }
.site-footer__social-fallback { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; font-family: var(--mt-font-heading); font-size: var(--mt-text-sm); font-weight: 700; color: var(--mt-text-gray); }
.site-footer { background: var(--mt-bg-alt); color: #4a4a4a; padding: 2rem 1.5rem 1rem; border-radius: var(--mt-radius-xl) var(--mt-radius-xl) 0 0; margin-top: 2rem; }
.site-footer__bottom { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--mt-border-light); text-align: center; }
@media (max-width: 768px) { .site-footer__inner { grid-template-columns: 1fr; gap: 2rem; } .site-footer__brand { text-align: center; align-items: center; } .site-footer__newsletter-row { flex-direction: column; align-items: stretch; } .site-footer__newsletter-btn { width: 100%; } .site-footer__nav-list { grid-template-columns: 1fr; } .site-footer__nav-title, .site-footer__contact-title, .site-footer__social-title { font-size: 0.9rem; cursor: pointer; display: flex; align-items: center; justify-content: space-between; padding: 0.75rem 0; border-bottom: 1px solid var(--mt-border-subtle); } .site-footer__nav-title::after, .site-footer__contact-title::after, .site-footer__social-title::after { content: "+" ; font-size: 1.2rem; transition: transform var(--mt-transition); } .site-footer__nav-title.is-open + .site-footer__nav-list, .site-footer__contact-title.is-open + .site-footer__contact-links, .site-footer__social-title.is-open + .site-footer__social { max-height: 400px; } .site-footer__nav-title.is-open::after, .site-footer__contact-title.is-open::after, .site-footer__social-title.is-open::after { content: "−"; } }
.site-footer__address { font-style: normal; font-family: var(--mt-font-body); font-size: var(--mt-text-sm); line-height: 1.5; margin: 0 0 0.5rem 0; }
.site-footer__nav-item { }
.site-footer__contact-link:hover { color: var(--mt-primary-dark); }
.site-footer__nav-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0 1.5rem; }
.site-footer__inner { display: grid; grid-template-columns: 1fr 1.2fr 1fr; gap: 1.5rem; max-width: 1280px; margin: 0 auto; }
.site-footer__nav-link { font-family: var(--mt-font-body); font-size: var(--mt-text-sm); color: var(--mt-text-gray); text-decoration: none; transition: color var(--mt-transition-fast); display: block; padding: 3px 0; line-height: 1.5; }
.site-footer__newsletter-title { margin: 0 0 .35rem; font-family: var(--mt-font-heading); font-size: .9rem; color: var(--mt-text-dark); }
.site-footer__newsletter-form { display: flex; flex-direction: column; gap: .55rem; }
.site-footer__brand { display: flex; flex-direction: column; gap: 0.5rem; }
.site-footer__newsletter-input { width: 100%; min-height: 44px; border: 1px solid var(--mt-border-light); border-radius: 999px; padding: .72rem .9rem; font: inherit; background: #fff; }
.site-footer__social-link { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; color: var(--mt-text-gray); transition: all var(--mt-transition-fast); min-width: 44px; min-height: 44px; }
.site-footer__contact-links { display: flex; flex-direction: column; gap: 0.25rem; margin-bottom: 0.5rem; }
.site-footer__newsletter-row { display: flex; gap: .55rem; align-items: center; }
.site-footer__address span { display: block; color: var(--mt-text-gray); }
.site-footer__newsletter-copy { margin: 0 0 .65rem; color: var(--mt-text-gray); font-size: var(--mt-text-sm); line-height: 1.55; }
.site-footer__social-link:hover { color: white; background: var(--mt-primary-dark); transform: scale(1.1); }
.site-footer__copyright { font-family: var(--mt-font-body); font-size: var(--mt-text-xs); color: var(--mt-text-light); margin: 0; }
.site-footer__social-title { margin-top: 0; }
.site-footer__logo { height: 40px; width: auto; }
.activity-card__image { width: 100%; aspect-ratio: 16/10; object-fit: cover; transition: transform var(--mt-transition); display: block; }
.activity-list-toolbar__search .btn[disabled] { opacity: 0.72; cursor: progress; }
.activities-section { background: var(--mt-surface); border-radius: var(--mt-radius-xl); padding: 1.5rem; }
.category-filter.is-loading, .activity-filter-chip.is-loading, .activity-filter-chips__reset.is-loading, .pagination__link.is-loading { color: var(--mt-primary, #e8363c); }
.activity-detail__title a:hover { color: var(--mt-primary, #e8363c); }
.category-filters { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 1.5rem; padding: 0.75rem 0; }
.activity-card__date { font-family: var(--mt-font-body); font-size: var(--mt-text-xs); color: var(--mt-text-light); display: inline-flex; align-items: center; gap: 0.35rem; }
.activity-card:hover .activity-card__image { transform: scale(1.03); }
.pagination__link:hover { color: var(--mt-primary, #e8363c); background: var(--mt-primary-light, rgba(232,54,60,.08)); border-color: var(--mt-border-light, #e5e7eb); }
@keyframes mt-skeleton-shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }
.activity-detail__image--skeleton { min-height: 100%; }
.activity-detail--skeleton { pointer-events: none; }
.activity-card__category { display: inline-flex; padding: 0.2rem 0.6rem; border-radius: var(--mt-radius-full); font-family: var(--mt-font-body); font-size: var(--mt-text-xs); font-weight: 600; background: var(--mt-primary-light); color: var(--mt-primary); text-transform: uppercase; letter-spacing: 0.05em; }
.activity-detail__line--text { width: 100%; }
.activity-detail__author { font-family: var(--mt-font-body, inherit); font-size: var(--mt-text-xs, 0.75rem); color: var(--mt-text-light, #9ca3af); }
.activity-detail__image--skeleton, .activity-detail__line { position: relative; overflow: hidden; background: linear-gradient(90deg, rgba(104,114,121,0.08) 0%, rgba(104,114,121,0.18) 45%, rgba(104,114,121,0.08) 100%); background-size: 200% 100%; animation: mt-skeleton-shimmer 1.25s linear infinite; }
.activity-detail--skeleton .activity-detail__body { gap: 0.8rem; }
.activity-detail__line { display: block; border-radius: var(--mt-radius-full, 9999px); height: 0.9rem; }
.pagination { display: flex; align-items: center; justify-content: center; gap: 0.35rem; margin-top: 2rem; padding: 1rem 0; }
.activities-section .section-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--mt-space-3); margin-bottom: 1.5rem; }
.activity-card__date::before { content: ""; display: inline-block; width: 3px; height: 3px; border-radius: 50%; background: var(--mt-text-light); }
.activity-detail__meta { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; margin-bottom: 0.25rem; }
.activities-section .section-header__link { font-family: var(--mt-font-body); font-size: var(--mt-text-sm); font-weight: 600; color: var(--mt-primary); text-decoration: none; transition: color var(--mt-transition); }
.activity-detail__line--cta { width: 8.5rem; }
.activity-card__content { padding: var(--mt-space-5) var(--mt-space-6); }
.activity-detail__title a { color: var(--mt-text-dark, #131117); text-decoration: none; transition: color var(--mt-transition-fast, .15s ease); }
.activity-detail { display: flex; flex-direction: row; background: transparent; border-radius: var(--mt-radius-lg, 1rem); overflow: hidden; border: 1.5px solid transparent; box-shadow: none; transition: transform var(--mt-transition, .25s ease), box-shadow var(--mt-transition, .25s ease), border-color var(--mt-transition-fast, .15s ease); }
.activity-detail__tag { display: inline-flex; padding: 0.15rem 0.6rem; border-radius: var(--mt-radius-full, 9999px); font-family: var(--mt-font-body, inherit); font-size: var(--mt-text-xs, 0.75rem); font-weight: 600; background: var(--mt-primary-light, rgba(232,54,60,.08)); color: var(--mt-primary, #e8363c); text-transform: uppercase; letter-spacing: 0.05em; }
.activity-list-toolbar__search { display: flex; align-items: center; gap: 0.75rem; width: 100%; max-width: 42rem; }
.activity-detail__line--title { width: 88%; height: 1rem; }
.category-filter__count { font-size: var(--mt-text-xs, 0.75rem); opacity: 0.7; }
.activity-list-toolbar__status { min-height: 1.5rem; margin: 0; font-size: var(--mt-text-sm, 0.875rem); color: var(--mt-text-gray, #687279); }
.activity-detail:hover .activity-detail__image { transform: scale(1.04); }
.activity-list { display: flex; flex-direction: column; gap: 1.5rem; background: transparent; }
@media (max-width: 720px) { .activity-detail { flex-direction: column; } .activity-detail__image-link, .activity-detail__image--placeholder { flex: none; min-height: 200px; } .activity-detail__image--placeholder { min-height: 200px; } }
.activity-detail__image { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform var(--mt-transition, .25s ease); }
.activity-detail__read-more { display: inline-flex; align-items: center; gap: 0.3rem; font-family: var(--mt-font-body, inherit); font-size: var(--mt-text-sm, 0.875rem); font-weight: 600; color: var(--mt-primary, #e8363c); text-decoration: none; margin-top: 0.5rem; transition: color var(--mt-transition-fast, .15s ease); }
.activity-detail__line--short { width: 62%; }
.activity-card__link { display: inline-flex; margin-top: var(--mt-space-3); padding: 0.4rem 1rem; border-radius: var(--mt-radius-full); font-family: var(--mt-font-body); font-size: var(--mt-text-sm); font-weight: 600; color: var(--mt-primary); text-decoration: none; transition: color var(--mt-transition-fast), background var(--mt-transition-fast); }
.activity-filter-chip, .activity-filter-chips__reset { display: inline-flex; align-items: center; gap: 0.35rem; padding: 0.4rem 0.85rem; border-radius: var(--mt-radius-full, 9999px); text-decoration: none; font-size: var(--mt-text-sm, 0.875rem); }
.pagination__link--prev, .pagination__link--next { font-weight: 600; }
.activity-filter-chips { display: flex; flex-wrap: wrap; align-items: center; gap: 0.6rem; margin-bottom: 1rem; }
.category-filter--active:hover { color: #fff; background: var(--mt-primary-dark, #c02a30); }
.content-card__image--placeholder { width: 100%; aspect-ratio: 16/10; background: linear-gradient(135deg, var(--mt-bg-subtle, #f5f5f7) 0%, var(--mt-primary-light, rgba(232,54,60,.08)) 100%); display: flex; align-items: center; justify-content: center; color: var(--mt-primary, #e8363c); opacity: 0.5; }
.activities-section .section-header__link:hover { color: var(--mt-primary-dark); }
.activity-detail__excerpt { font-family: var(--mt-font-body, inherit); font-size: var(--mt-text-sm, 0.875rem); color: var(--mt-text-gray, #687279); line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin: 0.25rem 0; }
.pagination__ellipsis { display: inline-flex; align-items: center; justify-content: center; min-width: 2rem; height: 2.25rem; font-size: var(--mt-text-sm, 0.875rem); color: var(--mt-text-light, #9ca3af); }
.activity-detail__image-link { flex: 0 0 360px; display: block; overflow: hidden; }
.activity-detail__date { font-family: var(--mt-font-body, inherit); font-size: var(--mt-text-xs, 0.75rem); color: var(--mt-text-light, #9ca3af); }
.activity-card:hover { transform: translateY(-4px); box-shadow: var(--mt-shadow-hover); border-color: var(--mt-border-light); }
.content-section--activities-detail.is-loading .category-filter, .content-section--activities-detail.is-loading .activity-filter-chip, .content-section--activities-detail.is-loading .activity-filter-chips__reset, .content-section--activities-detail.is-loading .pagination__link { pointer-events: none; }
.category-filter { display: inline-flex; align-items: center; padding: 0.4rem 1rem; border-radius: var(--mt-radius-full, 9999px); font-family: var(--mt-font-body, inherit); font-size: var(--mt-text-sm, 0.875rem); font-weight: 500; color: var(--mt-text-gray, #687279); background: var(--mt-bg-subtle, #f5f5f7); text-decoration: none; transition: color var(--mt-transition-fast, .15s ease), background var(--mt-transition-fast, .15s ease); }
.activity-filter-chip { color: var(--mt-primary, #e8363c); background: var(--mt-primary-light, rgba(232,54,60,.08)); }
.pagination__link--active { color: #fff; background: var(--mt-primary, #e8363c); font-weight: 700; border-color: var(--mt-primary, #e8363c); }
.activity-detail__title { font-family: var(--mt-font-heading, inherit); font-size: 1.15rem; font-weight: 700; line-height: var(--mt-leading-snug, 1.35); margin: 0; }
.category-filter--active { color: #fff; background: var(--mt-primary, #e8363c); font-weight: 600; }
.activity-detail__image--placeholder { flex: 0 0 360px; min-height: 220px; background: linear-gradient(135deg, var(--mt-bg-subtle, #f5f5f7) 0%, var(--mt-primary-light, rgba(232,54,60,.08)) 100%); display: flex; align-items: center; justify-content: center; color: var(--mt-primary, #e8363c); opacity: 0.5; }
.activity-detail:hover { transform: translateY(-3px); box-shadow: var(--mt-shadow-hover, 0 12px 28px rgba(0,0,0,.12)); border-color: var(--mt-border-light, #e5e7eb); }
.activity-filter-chips__reset { color: var(--mt-text-gray, #687279); background: transparent; border: 1px solid var(--mt-border-subtle, #e5e7eb); }
.activities-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: var(--mt-space-6); }
.activity-detail__read-more:hover { color: var(--mt-primary-dark, #c02a30); }
.activity-card__link:hover { color: var(--mt-primary-dark); background: var(--mt-primary-light); }
.activity-card__summary { font-family: var(--mt-font-body); font-size: var(--mt-text-sm); color: var(--mt-text-gray); line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.pagination__link { display: inline-flex; align-items: center; justify-content: center; min-width: 2.25rem; height: 2.25rem; padding: 0 0.5rem; border-radius: var(--mt-radius-md, 0.5rem); font-family: var(--mt-font-body, inherit); font-size: var(--mt-text-sm, 0.875rem); font-weight: 500; color: var(--mt-text-gray, #687279); background: transparent; text-decoration: none; transition: color var(--mt-transition-fast, .15s ease), background var(--mt-transition-fast, .15s ease), border-color var(--mt-transition-fast, .15s ease); border: 1.5px solid transparent; }
.pagination__link--active:hover { color: #fff; background: var(--mt-primary-dark, #c02a30); border-color: var(--mt-primary-dark, #c02a30); }
.activity-card__title { font-family: var(--mt-font-heading); font-size: 1rem; font-weight: 700; color: var(--mt-text-dark); margin: 0.5rem 0 0.25rem; line-height: var(--mt-leading-snug); }
.activity-list-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.activity-card { background: transparent; border-radius: var(--mt-radius-lg); overflow: hidden; border: 1.5px solid transparent; box-shadow: none; transition: transform var(--mt-transition-spring), box-shadow var(--mt-transition), border-color var(--mt-transition-fast); text-decoration: none; color: inherit; display: block; }
.content-section--activities-detail.is-loading { cursor: progress; }
.content-section--activities-detail.is-loading .activity-detail:not(.activity-detail--skeleton), .content-section--activities-detail.is-loading .empty-state { opacity: 0.28; }
.activity-card__meta { margin-top: 0.5rem; }
.content-section--activities-detail.is-loading .activity-list { position: relative; }
.category-filter:hover { color: var(--mt-primary, #e8363c); background: var(--mt-primary-light, rgba(232,54,60,.08)); }
.activity-list-toolbar__search .mt-input { flex: 1 1 auto; min-width: 0; }
.activity-list__results { margin: 0 0 1rem; color: var(--mt-text-gray, #687279); font-size: var(--mt-text-sm, 0.875rem); }
.activity-detail__line--tag { width: 7rem; height: 1.65rem; }
@media (max-width: 720px) { .activity-list-toolbar, .activity-list-toolbar__search { flex-direction: column; align-items: stretch; } .activity-list-toolbar__search .btn { width: 100%; justify-content: center; } }
.activity-detail__body { flex: 1 1 auto; padding: 1.5rem 1.75rem; display: flex; flex-direction: column; justify-content: center; gap: 0.35rem; }
.carousel-dot.carousel-dot--active::after, .carousel-dot:hover::after { background: var(--mt-primary); transform: scale(1.3); }
.activity-view-toggle__link--active{background:var(--mt-primary);color:#fff;box-shadow:var(--mt-shadow-sm);}
.activity-calendar__drawer{position:fixed;inset:0;z-index:80;}
.activity-week__day-header{display:flex;flex-direction:column;gap:.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--mt-border-subtle);}
.activity-calendar__nav{display:flex;align-items:center;gap:.75rem;padding:.65rem .85rem;background:rgba(232,54,60,.06);border-radius:999px;}
.carousel-dot::after { content: ""; width: 10px; height: 10px; border-radius: 50%; background: rgba(255, 255, 255, 0.4); transition: background var(--mt-transition), transform var(--mt-transition); }
.carousel-slide__content { position: relative; z-index: var(--mt-z-dropdown); text-align: center; padding: 2.5rem 1.5rem 7rem; max-width: 800px; }
.carousel-arrow:hover { background: rgba(255, 255, 255, 0.3); transform: translateY(-50%) scale(1.08); }
.carousel-arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: var(--mt-z-dropdown); width: 44px; height: 44px; border-radius: 50%; background: rgba(255, 255, 255, 0.15); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, 0.2); color: #ffffff; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background var(--mt-transition), transform var(--mt-transition-spring); }
.activity-calendar__more{font-size:.76rem;color:var(--mt-text-gray);font-weight:600;}
.activity-calendar__nav-link{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#fff;color:var(--mt-primary);text-decoration:none;box-shadow:var(--mt-shadow-sm);}
@media (max-width: 1200px){.activity-week__grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 768px) { .hero-section--carousel { min-height: 60vh; } .carousel-track { min-height: 60vh; } .carousel-slide__content { padding: 2.5rem 1rem 3rem; } .carousel-arrow { width: 36px; height: 36px; } .carousel-arrow--prev { left: 0.5rem; } .carousel-arrow--next { right: 0.5rem; } .carousel-dots { bottom: 1.5rem; } }
.carousel-arrow--next { right: 1.5rem; }
@media (max-width: 768px){.activity-calendar__header{align-items:stretch;}.activity-calendar__nav{justify-content:space-between;}.activity-calendar__nav--wide{padding:.85rem;align-items:stretch;}.activity-calendar__nav-copy{align-items:flex-start;}.activity-calendar__grid{grid-template-columns:1fr;}.activity-calendar__day{min-height:auto;}.activity-calendar__drawer-panel{width:100%;height:min(78vh,100%);bottom:0;top:auto;border-radius:1.25rem 1.25rem 0 0;}.activity-week__day{padding:.9rem;}}
.activity-calendar__nav-link--label{width:auto;height:auto;padding:.7rem .95rem;border-radius:999px;gap:.35rem;font-weight:700;}
.activity-calendar__nav-label{font-size:.95rem;color:var(--mt-text-dark);}
.activity-week__empty{padding:.95rem;border-radius:1rem;background:rgba(245,245,247,.6);color:var(--mt-text-gray);font-size:.9rem;line-height:1.6;}
.carousel-slide.carousel-slide--active { opacity: 1; z-index: var(--mt-z-base); }
.activity-calendar__detail-card{padding:1rem;border-radius:1.1rem;background:rgba(245,245,247,.8);border:1px solid transparent;}
.activity-week__day{display:flex;flex-direction:column;gap:.85rem;padding:1rem;border-radius:1.2rem;background:rgba(255,255,255,.72);border:1.5px solid transparent;min-height:100%;}
.activity-calendar__detail-actions{display:flex;flex-wrap:wrap;gap:.65rem;}
.activity-calendar__day:disabled{cursor:default;opacity:.72;}
.activity-week__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1rem;align-items:start;}
.activity-calendar__weekday{padding:.35rem 0;text-align:center;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--mt-text-gray);}
.activity-calendar__chip{display:block;padding:.45rem .6rem;border-radius:.8rem;background:rgba(232,54,60,.08);color:var(--mt-text-dark);font-size:.78rem;font-weight:600;line-height:1.35;}
.carousel-dots { position: absolute; bottom: 1.5rem; left: 50%; transform: translateX(-50%); display: flex; gap: 0.5rem; z-index: var(--mt-z-dropdown); }
.activity-calendar__detail-tag{display:inline-flex;align-items:center;gap:.4rem;padding:.32rem .7rem;border-radius:999px;background:color-mix(in srgb,var(--calendar-tag,#e8363c) 14%, white);color:var(--mt-text-dark);font-weight:700;font-size:.75rem;}
.activity-calendar__nav-today{font-size:.82rem;font-weight:700;color:var(--mt-primary);text-decoration:none;}
@media (max-width: 980px){.activity-calendar__grid{grid-template-columns:repeat(2,minmax(0,1fr));}.activity-calendar__weekday{display:none;}.activity-calendar__day{min-height:140px;}.activity-week__grid{grid-template-columns:1fr;}}
.carousel-slide__title { font-family: var(--mt-font-heading); font-size: clamp(1.5rem, 4vw, 2.5rem); font-weight: 700; color: #ffffff; margin: 0 0 0.5rem 0; line-height: var(--mt-leading-tight); text-shadow: 0 2px 8px rgba(0,0,0,0.4); }
.activity-calendar__intro{max-width:62ch;margin:.5rem 0 0;color:var(--mt-text-gray);}
.activity-calendar__legend-item{display:inline-flex;align-items:center;gap:.45rem;color:var(--mt-text-gray);font-size:.84rem;}
.activity-calendar__detail-meta{display:flex;flex-wrap:wrap;gap:.45rem .6rem;margin-bottom:.7rem;}
.activity-calendar__day--empty{cursor:default;pointer-events:none;min-height:0;padding:0;background:transparent;}
.activity-calendar__drawer-placeholder{margin:0;color:var(--mt-text-gray);line-height:1.6;}
.activity-calendar__legend{display:flex;gap:.85rem;flex-wrap:wrap;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--mt-border-subtle);}
.activity-calendar__day--today{background:rgba(232,54,60,.06);}
.hero-section--carousel { position: relative; min-height: 90vh; overflow: hidden; }
.carousel-slide__badge { display: inline-block; padding: 0.2rem 0.75rem; background: var(--mt-primary); color: #ffffff; font-family: var(--mt-font-heading); font-size: var(--mt-text-xs); font-weight: 700; border-radius: var(--mt-radius-full); text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 0.75rem; }
.activity-week__day-date{margin:0;font-size:1.02rem;color:var(--mt-text-dark);font-family:'IBM Plex Mono',sans-serif;}
.carousel-slide__date { font-family: var(--mt-font-body); font-size: var(--mt-text-sm); color: rgba(255, 255, 255, 0.55); letter-spacing: 0.02em; }
.carousel-track { position: relative; width: 100%; min-height: 90vh; }
.activity-calendar__nav--wide{justify-content:space-between;gap:1rem;flex-wrap:wrap;}
.activity-calendar__frame{padding:1.15rem;border-radius:1.5rem;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(245,245,247,.96));box-shadow:var(--mt-shadow-card);}
.activity-calendar__drawer-panel{position:absolute;top:0;right:0;height:100%;width:min(460px,100%);background:#fff;padding:1.25rem 1rem 1rem;display:flex;flex-direction:column;box-shadow:-16px 0 40px rgba(19,17,23,.12);overflow:auto;}
.carousel-slide__image { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(1.1) contrast(1.05); }
.carousel-dot { width: 10px; height: 10px; border-radius: 50%; background: rgba(255, 255, 255, 0.4); border: none; cursor: pointer; transition: background var(--mt-transition), transform var(--mt-transition); padding: 0; min-width: 44px; min-height: 44px; display: flex; align-items: center; justify-content: center; }
.activity-week__cards{display:flex;flex-direction:column;gap:.85rem;}
.activity-calendar__detail-summary{margin:0 0 .9rem;color:var(--mt-text-gray);line-height:1.6;}
.activity-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.7rem;}
.activity-calendar__drawer-stack{display:flex;flex-direction:column;gap:1rem;}
.carousel-arrow--prev { left: 1.5rem; }
.activity-calendar__drawer-backdrop{position:absolute;inset:0;background:rgba(19,17,23,.42);backdrop-filter:blur(4px);}
.activity-calendar__legend-dot{width:.7rem;height:.7rem;border-radius:50%;display:inline-block;}
.activity-week__day-label{margin:0;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mt-primary);}
.activity-calendar__detail-meta-item{font-size:.8rem;color:var(--mt-text-gray);}
.activity-view-toggle__link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem 1rem;border-radius:999px;color:var(--mt-text-dark);text-decoration:none;font-weight:600;transition:background var(--mt-transition-fast),color var(--mt-transition-fast),box-shadow var(--mt-transition-fast);}
.activity-calendar-archive{margin-top:0;padding-top:0;}
.activity-calendar__count--empty{color:var(--mt-text-light);}
.activity-week__day:hover{border-color:var(--mt-border-light);box-shadow:var(--mt-shadow-hover);}
.activity-calendar__day{appearance:none;border:none;text-align:left;padding:.85rem;border-radius:1.05rem;background:transparent;border:1.5px solid transparent;min-height:160px;display:flex;flex-direction:column;gap:.55rem;transition:border-color var(--mt-transition-fast),box-shadow var(--mt-transition-fast),transform var(--mt-transition-fast),background var(--mt-transition-fast);cursor:pointer;}
.activity-calendar__day:hover,.activity-calendar__day:focus-visible{border-color:var(--mt-border-light);box-shadow:var(--mt-shadow-hover);background:#fff;transform:translateY(-2px);outline:none;}
.carousel-slide__actions { display: flex; align-items: center; justify-content: center; gap: 1.25rem; flex-wrap: wrap; margin-top: 0.75rem; }
.activity-calendar__drawer-close{align-self:flex-end;border:none;background:rgba(232,54,60,.08);color:var(--mt-primary);width:42px;height:42px;border-radius:50%;font-size:1.5rem;cursor:pointer;}
.activity-calendar__title{margin:0;font-size:clamp(1.55rem,2vw,2rem);font-family:'IBM Plex Mono',sans-serif;color:var(--mt-text-dark);}
.carousel-slide__excerpt { font-family: var(--mt-font-body); font-size: clamp(0.9rem, 1.8vw, 1.1rem); color: rgba(255, 255, 255, 0.90); margin: 0 0 1.5rem 0; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-shadow: 0 1px 4px rgba(0,0,0,0.3); }
.activity-calendar__detail-title{margin:0 0 .5rem;font-size:1.02rem;color:var(--mt-text-dark);}
.activity-calendar__nav-copy{display:flex;flex-direction:column;align-items:center;gap:.2rem;}
.activity-calendar__eyebrow{margin:0 0 .35rem;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mt-primary);}
.activity-calendar__day-number{font-size:1rem;font-weight:700;color:var(--mt-text-dark);}
.activity-view-toggle{display:inline-flex;gap:.5rem;padding:.35rem;background:rgba(232,54,60,.08);border-radius:999px;margin:0 0 1rem;flex-wrap:wrap;}
.activity-calendar__count{font-size:.78rem;color:var(--mt-primary);font-weight:600;}
.activity-calendar__preview{display:flex;flex-direction:column;gap:.45rem;margin-top:auto;}
.activity-week__card{padding:1rem;border-radius:1rem;background:rgba(245,245,247,.92);border:1px solid rgba(19,17,23,.06);}
.activity-calendar__header{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap;margin-bottom:1rem;}
.activity-week__day-count{margin:.2rem 0 0;color:var(--mt-text-gray);font-size:.84rem;}
.carousel-slide__overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(19,17,23,0.25) 0%, rgba(19,17,23,0.45) 100%); z-index: var(--mt-z-base); }
.carousel-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 0.6s ease-in-out; display: flex; align-items: center; justify-content: center; z-index: 0; }
.activity-calendar__drawer-title{margin:.35rem 0 1rem;font-size:1.1rem;font-family:'IBM Plex Mono',sans-serif;color:var(--mt-text-dark);}