:root {
    --sans: Antique, sans-serif;
    --serif: Rhymes, serif;

    --light-background: #EEEEEE;
    --light-color: black;

    --background: var(--light-background);
    --color: var(--light-color);
    --mid-color: var(--btn-color-active);
    --dim-color: rgba(48, 48, 48, 0.69);

    --gray-0: hsl(0, 0%, 93%); /* bg-page-light */
    --gray-1: hsl(0, 0%, 89%); /* bg-cards-light */
    --gray-2: hsl(0, 0%, 83%); /* bg-tags-light */
    --gray-3: hsl(0, 0%, 75%); /* bg-tags-mid */
    --gray-4: hsl(0, 0%, 67%);
    --gray-5: hsl(0, 0%, 10%); /* bg-page-dark */
    --gray:   hsl(0, 0%, 18%); /* bg-tags-dark */

    --red-0: hsl(14, 100%, 95%);
    --red-1: hsl(14, 100%, 91%); 
    --red-2: hsl(14, 100%, 86%); 
    --red-3: hsl(14, 100%, 80%); 
    --red-4: hsl(14, 100%, 73%);
    --red-5: hsl(14, 100%, 39%);
    --red:   hsl(14, 100%, 50%); /* red-solid */

    --green-0: hsl(120, 95%, 95%);
    --green-1: hsl(120, 95%, 91%);
    --green-2: hsl(120, 95%, 85%);
    --green-3: hsl(120, 95%, 77%);
    --green-4: hsl(120, 95%, 69%);
    --green-5: hsl(120, 100%, 39%); /* green-dark-solid */
    --green:   hsl(120, 100%, 50%); /* green-solid */

    --blue-0: hsl(216, 100%, 95%);
    --blue-1: hsl(216, 100%, 91%); /* blue-lightest */
    --blue-2: hsl(216, 100%, 86%); /* blue-light */
    --blue-3: hsl(216, 100%, 80%); /* blue-mid */
    --blue-4: hsl(216, 100%, 73%);
    --blue-5: hsl(216, 100%, 39%);
    --blue:   hsl(216, 100%, 50%); /* blue-solid */

    --surface-0: var(--gray-0);
    --surface-1: var(--gray-1);
    --surface-2: var(--gray-2);
    --surface-3: var(--gray-3);
    --surface-4: var(--gray-4);
    --surface-5: var(--gray-5);
    --surface:   var(--gray);

    --accent-0: var(--blue-0);
    --accent-1: var(--blue-1);
    --accent-2: var(--blue-2);
    --accent-3: var(--blue-3);
    --accent-4: var(--blue-4);
    --accent-5: var(--blue-5);
    --accent:   var(--blue);

    --light-red: #FF3D0080;
    --orange: #FF5A00;
    --purple: #8000FF;

    --gray-background: var(--surface-1);
    --gray-background-outline: rgba(230, 230, 230, 0.95);
    --gray-background-transparent: #E3E3E300;

    --btn-accent-color: var(--accent-2);
    --btn-accent-color-active: var(--accent-3);
    --tag-light-color: var(--gray-2);
    --tag-dark-color: var(--gray);

    --btn-color: rgba(211, 211, 211, 0.6);
    --btn-color-active: rgba(155, 155, 155, 0.6);

    --inverse-background: black;
    --inverse-gray-background: #191919;
    --inverse-color: white;
    --inverse-dim-color: rgb(255 255 255 / 55%);

    --h1-baseline-offset: 11px;

    --size-h1: 88px;
    --size-h2: 68px;
    --size-h3: 48px;
    --size-h4: 34px;
    --size-h5: 24px;

    --line-height-h1: 105px;
    --line-height-h2: 82px;
    --line-height-h3: 58px;
    --line-height-h4: 46px;
    --line-height-h5: 30px;

    --size-perex: 42px;
    --size-article: 20px;
    --size-text: 18px;
    --size-caption: 16px;
    --size-caption-mobile: 14px;
    --size-small: 12px;

    --tag-size-small: 14px;
    --tag-size-large: var(--size-text);
    --tag-size-inline: var(--size-small);

    --line-height: 1.2;
    --line-height-caption: 1.325;
    --line-height-content: 1.3;
    --line-height-article: 1.5;
    --line-height-text: 26px;

    --content-gap: 60px;
    --grid-gap: 28px;

    --nav-margin: 114px;

    --focus-width-small: 6px;
    --focus-width-large: 10px;
    --focus-color: #007AFF80;
    --focus-color-hover: #007bffb0;

    --scrollbar-track-color: #C4C4C4;
    --scrollbar-thumb-color: black;
    --scrollbar-size: 6px;
    --scrollbar-size-hover: 16px;

    --pad-content: 40px;
    --pad-content-inv: -40px;
    --pad-content-half: 20px;
    --pad-content-half-inv: -20px;
    --pad-media: 12px;

    --rad-content: 20px;
    --rad-media: 12px;
    --rad-image: 4px;

    --btn-size: 36px;
    --btn-height: 74px;
    --btn-line-height: 60px;
    --btn-pad-horizontal: 25px;
    --btn-pad-vertical: 7px;
    --btn-radius: 26px;

    --title-bar-height: var(--btn-height);

    --form-radius: 14px;
    --form-btn-radius: 9px;
    --form-pad: 10px;
    --form-gap: 6px;
    --form-input: var(--size-text);
    --form-input-pad-horizontal: 12px;
    --form-input-pad-vertical: 7px;
    --form-input-pad: 7px 12px;
    --form-input-radius: 6px;
    --form-input-height: 43px;
    --form-input-line-height: 25px;
    --form-label: var(--tag-size-small);

    --select-text-offset: 60px;
    --select-icon-offset: 20px;
    --select-icon-size: 28px;

    --notification-bg: rgba(48, 48, 48, 0.6);
    --notification-color: var(--inverse-color);
    --notification-outline: rgba(211, 211, 211, 0.3);

    --scroll-gutter: 12px;
    --scroll-size: 4px;
    --scroll-color: var(--dim-color);
    --scroll-hover: var(--color);
}

@media (max-width: 767px) {
    :root {
        --content-gap: 40px;
        --grid-gap: 14px;

        --size-h1: 44px;
        --size-h2: 34px;
        --size-h3: 24px;
        --size-h4: 24px;
        --size-h5: 16px;

        --line-height-h1: 52px;
        --line-height-h2: 41px;
        --line-height-h3: 29px;
        --line-height-h4: 29px;
        --line-height-h5: 22px;

        --size-perex: 21px;
        --size-article: 16px;
        --size-text: 16px;
        --size-caption: 14px;
        --size-small: 12px;

        --tag-size-small: 12px;

        --pad-content: 20px;
        --pad-content-inv: -20px;
        --pad-content-half: 10px;
        --pad-content-half-inv: -10px;

        --nav-margin: 86px;

        --rad-content: 18px;

        --btn-size: 24px;
        --btn-height: 54px;
        --btn-line-height: 40px;
        --btn-pad-horizontal: 18px;
        --btn-pad-vertical: 7px;
        --btn-radius: 17px;

        --select-text-offset: 43px;
        --select-icon-offset: 17px;
        --select-icon-size: 15px;

        --title-bar-height: 50px;
    }
}

@font-face {
    font-family: Antique;
    src: url('/fonts/Antique-Legacy-Light.woff2') format('woff2'),
         url('/fonts/Antique-Legacy-Light.woff') format('woff');
    font-weight:  400;
    font-style:   normal;
    font-stretch: normal;
    font-display: swap;
}

@font-face {
    font-family: Antique;
    src: url('/fonts/Antique-Legacy-Regular.woff2') format('woff2'),
         url('/fonts/Antique-Legacy-Regular.woff') format('woff');
    font-weight:  550;
    font-style:   normal;
    font-stretch: normal;
    font-display: swap;
}

@font-face {
    font-family: Antique;
    src: url('/fonts/Antique-Legacy-Semibold.woff2') format('woff2'),
         url('/fonts/Antique-Legacy-Semibold.woff') format('woff');
    font-weight:  700;
    font-style:   normal;
    font-stretch: normal;
}

@font-face {
    font-family: Rhymes;
    src: url('/fonts/Rhymes Display UltraLight.woff2') format('woff2'),
         url('/fonts/Rhymes Display UltraLight.woff') format('woff');
    font-weight:  400;
    font-style:   normal;
    font-stretch: normal;
}

@font-face {
    font-family: Rhymes;
    src: url('/fonts/Rhymes Text Regular Italic.woff2') format('woff2'),
         url('/fonts/Rhymes Text Regular Italic.woff') format('woff');
    font-weight:  400;
    font-style:   italic;
    font-stretch: normal;
}

* {
    font-family: inherit;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
}

.theme--blue,
.theme--red,
.theme--green {
    background: var(--surface-0);
}

.section .theme--blue,
.section .theme--red,
.section .theme--green {
    padding: 10px;
    border-radius: 28px;
}

.section.theme--blue,
.section.theme--red,
.section.theme--green {
    padding-top: var(--pad-content);
    padding-bottom: var(--pad-content);
}

.section__content > .theme--blue,
.section__content > .theme--red,
.section__content > .theme--green {
    border-radius: 0;
    padding: calc(var(--content-gap) * 0.5) var(--pad-content);
    margin: calc(var(--content-gap) * -0.5) var(--pad-content-inv);
}

.theme--blue, .bg--blue {
    --surface-0: var(--blue-0);
    --surface-1: var(--blue-1);
    --surface-2: var(--blue-2);
    --surface-3: var(--blue-3);
    --surface-4: var(--blue-4);
    --surface-5: var(--blue-5);
    --surface:   var(--blue);
    --accent:    black;
}

.theme--green, .bg--green {
    --surface-0: var(--green-0);
    --surface-1: var(--green-1);
    --surface-2: var(--green-2);
    --surface-3: var(--green-3);
    --surface-4: var(--green-4);
    --surface-5: var(--green-5);
    --surface:   var(--green);
    
    --accent-0: var(--green-0);
    --accent-1: var(--green-1);
    --accent-2: var(--green-2);
    --accent-3: var(--green-3);
    --accent-4: var(--green-4);
    --accent-5: var(--green-5);
    --accent:   black;
}

.theme--red, .bg--red {
    --surface-0: var(--red-0);
    --surface-1: var(--red-1);
    --surface-2: var(--red-2);
    --surface-3: var(--red-3);
    --surface-4: var(--red-4);
    --surface-5: var(--red-5);
    --surface:   var(--red);

    --accent-0: var(--red-0);
    --accent-1: var(--red-1);
    --accent-2: var(--red-2);
    --accent-3: var(--red-3);
    --accent-4: var(--red-4);
    --accent-5: var(--red-5);
    --accent:   black;
}

.block,
.card,
.disclosure,
.sum__wrapper {
    --next-surface-0: var(--surface-1);
    --next-surface-1: var(--surface-2);
    --next-surface-2: var(--surface-3);
    --next-surface-3: var(--surface-4);
    --next-surface-4: var(--surface-5);

    --next-accent-0: var(--accent-1);
    --next-accent-1: var(--accent-2);
    --next-accent-2: var(--accent-3);
    --next-accent-3: var(--accent-4);
    --next-accent-4: var(--accent-5);
}

.block > *,
.card > *,
.disclosure > *,
.sum__wrapper > * {
    --surface-0: var(--next-surface-0);
    --surface-1: var(--next-surface-1);
    --surface-2: var(--next-surface-2);
    --surface-3: var(--next-surface-3);
    --surface-4: var(--next-surface-4);

    --accent-0: var(--next-accent-0);
    --accent-1: var(--next-accent-1);
    --accent-2: var(--next-accent-2);
    --accent-3: var(--next-accent-3);
    --accent-4: var(--next-accent-4);

    --tag-light-color: var(--surface-1);
    --btn-accent-color: var(--accent-1);
    --btn-accent-color-active: var(--accent-2);
}

img, video, iframe {
    display: block;
    max-width: 100%;
    height: auto;
}

body {
    padding: 0;
    margin: 0;
    background: var(--background);
    color: var(--color);
    font-size: var(--size-text);
    line-height: var(--line-height);

    font-family: var(--sans);
    font-synthesis: none;
    text-rendering: geometricPrecision;
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
}

a, button.a {
    color: inherit;

    -webkit-text-decoration-color: var(--mid-color);

            text-decoration-color: var(--mid-color);
    text-decoration-thickness: 0.075em;
    text-underline-offset: 0.11em;
}

a:focus-visible, button.a:focus-visible {
    outline: none;
    -webkit-text-decoration-color: var(--focus-color);
            text-decoration-color: var(--focus-color);
    text-decoration-thickness: var(--focus-width-small);
    -webkit-text-decoration-skip-ink: none;
            text-decoration-skip-ink: none;
}

@media (hover: hover) {
    a:hover, button.a:hover {
        -webkit-text-decoration-color: currentColor;
                text-decoration-color: currentColor;
    }
}

hr {
    border: none;
    outline: none;
    height: 2px;
    background: #D3D3D3;
    border-radius: 2px;
}

em {
    font-family: var(--serif);
    font-style: italic;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: inherit;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    --mid-color: var(--btn-color);
}

h1 {
    font-size: var(--size-h1);
    line-height: var(--line-height-h1);
    margin-top: 160px;
    margin-bottom: calc(60px - var(--h1-baseline-offset))
}

h2 {
    font-size: var(--size-h2);
    line-height: var(--line-height-h2);
}

h3 {
    font-size: var(--size-h3);
    line-height: var(--line-height-h3);
}

h4 {
    font-size: var(--size-h4);
    line-height: var(--line-height-h4);
}

h5, h6 {
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
}

ol, ul {
    padding-left: 0.95em;
}

.no-scroll {
    height: 100%;
    overflow: hidden;
}

.no-wrap {
    white-space: nowrap;
}

.spacer {
    flex-basis: 0;
    flex-grow: 1;
    visibility: hidden;
}

.row {
    display: flex;
}

@media (max-width: 767px) {
    .row {
        flex-direction: column;
    }
}

.column {
    flex-grow: 1;
}

.dim {
    color: var(--dim-color);
}

.dim.trim {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.strip-margin > *:first-child { margin-top: 0; }
.strip-margin > *:last-child { margin-bottom: 0; }


.link {
    display: block;

    font-size: var(--size-h3);

    border-radius: 20px;
    background: var(--surface-1);
    color: inherit;
    text-decoration: none;

    padding: 0.75em 0.9em;
}

.link:focus-visible {
    outline: none;
    border: none;

    box-shadow: 0 0 0 var(--focus-width-small) var(--focus-color);
}

@media (hover: hover) {
    .link {
        padding-right: 2em;
    }

    .link:hover {
        box-shadow: 0 0 0 var(--focus-width-large) var(--gray-background-outline);
        background-repeat: no-repeat;
        background-position: right 0.75em center;
        background-image: url("data:image/svg+xml,%3Csvg width='28' height='51' viewBox='0 0 28 51' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.42421 -6.87267e-05L0.00317166 1.41661L24.1608 25.5L0.00327829 49.5833L1.42432 51L25.5818 26.9167L25.5819 26.9168L27.003 25.5001L27.0028 25.5L27.0031 25.4998L25.582 24.0831L25.5818 24.0833L1.42421 -6.87267e-05Z' fill='%23969696'/%3E%3C/svg%3E%0A");
    }

    .link:hover:focus-visible {
        box-shadow: 0 0 0 var(--focus-width-small) var(--focus-color-hover);
    }
}

@media (max-width: 1300px) {
    .link {
        font-size: var(--size-h4);
        background-size: 0.6em;
    }
}

@media (max-width: 767px) {
    .link {
        font-size: var(--size-h3);
    }
}


.dl--wide {
    display: grid;
    grid-template: auto / 10em 3fr;
    line-height: var(--line-height-content);
}

.dl--wide dt {
    grid-column: 1;
    margin: 0.1em 0.25em 0.1em 0;
}

.dl--wide dd {
    overflow: hidden;
    text-overflow: ellipsis;
}

.dl--wide > :not(dt) {
    grid-column: 2;
    margin: 0.1em 0 0.25em 0.1em !important;
}

@container (width < 400px) {
    .dl--wide {
        display: flex;
        flex-direction: column;
        line-height: var(--line-height-article);
    }

    .viewport__content > .dl--wide { margin-top: -0.5em !important; }

    .dl--wide dt,
    .dl--wide > :not(dt) {
        margin: 0 !important;
    }

    .dl--wide dd + dt {
        margin-top: 20px !important;
    }
}

.dl--compact {
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dl--compact dt {
    display: inline;
    color: var(--color);
    margin-right: 0.25em;
}

.dl--compact dd {
    display: inline;
    color: var(--dim-color);
    margin: 0;
}

.dl--compact dd::after {
    content: "";
    display: block;
}



.map {
    position: relative;
    width: 100%;
    height: 100%;

    /* used to set viewport padding */
    scroll-padding: 42px 10px calc(var(--btn-height) + 20px);
}

.map[data-style="dark"], .map[data-style="ortho"] { background: #1f1f1f; }

.mapboxgl-canvas:focus-visible {
    outline: none;
}

.mapboxgl-ctrl-attrib.mapboxgl-compact {
    box-sizing: content-box;
}

.map__overlay {
    position: absolute;
    z-index: 11;
    overflow: auto;
    pointer-events: none;

    top: 0;
    left: 0;
    right: 0;
    padding: 10px;
    padding-right: 0;
    display: flex;
}

.map__overlay > :last-child {
    margin-right: 10px;
}

@media (max-height: 700px) and (max-width: 767px) {
    .map__overlay .tag__list { flex-wrap: nowrap; }
}

.map__overlay .tag {
    cursor: pointer;
    flex-shrink: 0;
    pointer-events: all;
}

.map__pin {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -100%);
    z-index: 11;
    pointer-events: none;
}

.map--scroll-aware .mapboxgl-ctrl-logo {
    display: none;
}

.map--non-interactive .mapboxgl-canvas-container {
    cursor: default !important;
}

.map--scroll-aware::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #808080;
    pointer-events: none;

    opacity: 0;
    transition: opacity 100ms ease-in-out;
}

@media (hover: hover) {
    .map--scroll-aware.map--non-interactive:hover::after {
        opacity: 0.3;
    }
}

.map--scroll-aware.map--non-interactive::after {
    opacity: 0.25;
}

.feed {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.feed:empty {
    display: none;
}

.feed__load,
.feed__load.btn {
    align-self: center;
    margin-left: auto;
    margin-right: auto;
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
    font-size: var(--tag-size-small);
    line-height: 18px;
    padding: 13px 18px;
    color: var(--dim-color);

    --bg: var(--btn-color);
    --bg-active: var(--bg);
}

.feed__load:focus-visible {
    color: var(--color);
}

@media (hover: hover) {
    .feed__load:hover {
        color: var(--color);
    }
}

.stack {
    display: flex;
    flex-direction: column;
}




.video {
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: var(--rad-media);
    overflow: hidden;
    contain: paint;
}

.oversized-arrow {
    display: block;
    width: auto;
    scroll-margin: var(--pad-content);
    border-radius: 999px;
}
.oversized-arrow svg {
    width: auto;
    height: 100%;
}
.oversized-arrow .bg { fill: var(--gray-background); }

@media (hover: hover) {
    .oversized-arrow:hover .bg { fill: var(--green); }
}

.oversized-arrow:focus-visible {
    box-shadow: 0 0 0 var(--focus-width-large) var(--focus-color);
    outline: none;
}

.page__content {
    min-height: 100vh;
}

.page__content > * {
    padding-left: var(--pad-content);
    padding-right: var(--pad-content);
}

.page__nav,
.buttons {
    position: fixed;
    left: 0;
    bottom: 0;
    
    padding: 20px;
    z-index: 9;

    display: flex;
    align-items: flex-end;

    font-size: var(--size-header);
    
    --gap: 8px;
}

.page__nav {
    width: 100vw;
    pointer-events: none;
}

.page__nav > * + * {
    margin-left: var(--gap) !important;
}

.page__nav__inner {
    padding: 10px;
    margin: -10px;
    background: white;
    border-radius: 34px;
    
    display: flex;
    align-items: flex-end;

    pointer-events: auto;
    min-width: 0;
}

.page__nav__inner > * + * {
    margin-left: var(--gap) !important;
}

.page__nav .separator {
    flex-shrink: 0;
    width: 3px;
    height: 60px;
    border-radius: 2px;
    background: #eeeeee;
    align-self: center;
}

.page__nav .overflow {
    display: flex;
    align-items: flex-end;

    overflow-x: auto;
    overflow-x: overlay;
    border-radius: var(--btn-radius);
    transform: translateZ(0);
    scrollbar-width: thin;
}

.page__nav .overflow > * + * {
    margin-left: var(--gap) !important;
}

.page__nav .overflow.has-overflow {
    -webkit-mask-image: linear-gradient(
        -90deg,
        rgba(126, 126, 126, 0) 0px,
        rgba(126, 126, 126, 0.11) 1px,
        rgba(126, 126, 126, 0.24) 3px,
        rgba(126, 126, 126, 0.44) 7px,
        rgba(126, 126, 126, 0.68) 14px,
        rgba(126, 126, 126, 0.92) 22px,
        rgba(126, 126, 126, 1) 40px
    );
            mask-image: linear-gradient(
        -90deg,
        rgba(126, 126, 126, 0) 0px,
        rgba(126, 126, 126, 0.11) 1px,
        rgba(126, 126, 126, 0.24) 3px,
        rgba(126, 126, 126, 0.44) 7px,
        rgba(126, 126, 126, 0.68) 14px,
        rgba(126, 126, 126, 0.92) 22px,
        rgba(126, 126, 126, 1) 40px
    )
}

.page__nav:not(.transparent) .page__nav__inner .btn {
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
}

.page__nav__inner.overflow::after {
    opacity: 1;
}

.page__nav > *:not(.spacer) {
    pointer-events: all;
}

.buttons {
    transform: translateY(116px);
}

.page__nav,
.page__nav .fixed,
.buttons {
    transition: transform ease-in-out 0.25s;
}



.nav-hidden .page__nav {
    transform: translateY(116px);
}

.nav-hidden .page__nav .fixed {
    transform: translateY(-116px);
}

.nav-hidden .buttons {
    transform: translateY(0);
}

@media (max-width: 767px) {
    #scroll-btn,
    .page__nav .spacer {
        display: none;
    }

    .page__nav,
    .buttons {
        padding: 10px 10px;
        --gap: 6px;
    }

    .page__nav__inner {
        padding: 6px;
        margin: 0;
        border-radius: 23px;
    }

    .page__nav.transparent .page__nav__inner {
        padding: 0;
    }

    .page__nav > .fixed {
        position: absolute;
        right: 10px;
        transform: translateY(116px);
    }

    .page__nav .separator {
        width: 2px;
        height: 42px;
    }
}

.page.type--content {
    --rad-image: var(--rad-media)
}

@media (max-width: 767px) {
    .slider__content > .html:first-child {
        display: none;
    }
}

.expo .page__nav .menu__button {
    display: none;
}



.outline ul {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    margin: 10px 0;
    gap: 10px;
}

.outline .btn {
    border-radius: 20px;
}

@media (max-width: 767px) {
    .outline ul {
        flex-wrap: nowrap;
        overflow: auto;
        margin-left: calc(var(--pad-content)* -1);
        padding-left: var(--pad-content);
        margin-right: calc(var(--pad-content)* -1);
        padding-right: var(--pad-content);
        padding-bottom: 10px;
        margin-bottom: -10px;
    }
}




.tabs__list {
    background: var(--tag-light-color);
    font-size: var(--size-caption-mobile);
    padding: 6px;
    border-radius: 12px;

    display: flex;
    gap: 6px;
}

.tabs__tab {
    -webkit-user-select: none;
            user-select: none;
    -webkit-appearance: none;
            appearance: none;
    border-radius: 7px;
    border: none;
    outline: none;
    background: transparent;
    font-size: inherit;
    padding: 0;
    margin: 0;
    line-height: 30px;
    flex-grow: 1;
    color: var(--color);
}

.tabs__tab[aria-selected="true"] {
    background: var(--tag-dark-color);
    color: var(--inverse-color);
}

.tabs__tab:focus-visible {
    box-shadow: 0 0 0 3px var(--focus-color);
}

.list__box {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.list__item {
    background: var(--gray-background);
    
    margin: 0;
    padding: 6px 10px;
    line-height: 30px;
    border-radius: 12px;

    display: flex;
    gap: 12px;
    justify-content: space-between;
    align-items: center;
    white-space: nowrap;
}

.list__item:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 3px var(--focus-color);
}

.list__fallback {
    margin: auto;
    text-align: center;
    font-size: var(--size-caption-mobile);
    line-height: inherit;
    color: var(--dim-color);
}

.list__item__label {
    padding: 0;
    margin: 0;
    color: var(--color);
    font-size: var(--size-text);
    line-height: inherit;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-shrink: 1;
}

.list__item__info {
    color: var(--dim-color);
    font-size: var(--size-caption-mobile);
    line-height: inherit;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-shrink: 100000;
}

.list__item .tag__list {
    height: 22px;
    overflow: hidden;
    justify-content: flex-end;
}

.list__item[aria-selected="true"] .list__item__info {
    color: var(--color);
}

@media (hover: hover) {
    .list__item:hover .list__item__info {
        color: var(--color);
    }
}

.dot.location {
    white-space: nowrap;
}

.dot::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    position: relative;
    top: 0.15em;
    margin-right: 0.25em;
}

.dot.gray::before {
    background: var(--dim-color);
    border-radius: 1em;
}

.dot.green::before {
    background: var(--green);
    border-radius: 1em;
}

.dot.red::before {
    background: var(--red);
    border-radius: 1em;
}

.dot.location::before {
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0.5' y='0.5' width='15' height='15' rx='7.5' stroke='black'/%3E%3Ccircle cx='8' cy='8' r='1.5' fill='black'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
}/* .page__header__banner {
    color: black !important;
    background-color: var(--orange)  !important;
    background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='1' y='1' width='46' height='46' rx='23' stroke='black' stroke-width='2'/%3E%3Crect x='25' y='37' width='2' height='17' rx='1' transform='rotate(-180 25 37)' fill='black'/%3E%3Ccircle cx='24' cy='14' r='2' fill='black'/%3E%3C/svg%3E%0A") !important;
    --btn-color-active: var(--blue-3) !important;
} */

/* html[data-logo="CAMP"] body {
    display: grid;
    grid-template-columns: 100%;
}

html[data-logo="CAMP"] body > * {
    grid-column: 1;
    grid-row: 1;
} */

html {
    --logo-grid: 4;
    --logo-block-size: calc((100vw - 40px) / var(--logo-grid));
}

html[data-logo="BYE"] {
    --logo-grid: 3;
}

html[data-logo] body:after {
    content: "";
    pointer-events: none;
    interactivity: inert;

    z-index: 99;
    mix-blend-mode: multiply;
    transform: translate3d(0, 0, 0);

    --w: var(--logo-block-size);
    --s: calc(var(--w) * 0.01144);
    --s: clamp(1.25px, calc(var(--w) * 0.01144), 6px);

    --v1: calc(var(--w) * -0.04 + 63px - var(--s) * 0.5);
    --v2: calc(var(--v1) + var(--s));
    
    --h1: calc((var(--w) - var(--s)) * 0.5);
    --h2: calc(var(--h1) + var(--s));

    background: repeating-linear-gradient(
        180deg,
        #0f00,
        #0f00 var(--v1),
        #0f0 var(--v1),
        #0f0 var(--v2),
        #0f00 var(--v2),
        #0f00 var(--w)
    ), repeating-linear-gradient(
        90deg,
        #0f00,
        #0f00 var(--h1),
        #0f0 var(--h1),
        #0f0 var(--h2),
        #0f00 var(--h2),
        #0f00 var(--w)
    );

    background-position: 0 0, 20px 0;

    /* display: block;
    grid-column: 1;
    grid-row: 1; */
    position: fixed;
    inset: 0;
}

@media (max-width: 500px) {
    html[data-logo] body:after {
        --logo-block-size: calc((100vw - 6px) / var(--logo-grid));
        --v1: calc(var(--logo-block-size) * -0.04 + 46px - var(--s) * 0.5);
        background-position: 0 0, 3px 0;
    }
}







.logo .tag {
    position: absolute;
    overflow: visible;
    --deg: calc((60 - var(--t, 0)) * 1turn / 60);
}

.logo .tag::after {
    content: "";
    display: block;
    position: absolute;
    border-radius: 100%;
    background: conic-gradient(var(--green) var(--deg), var(--orange) var(--deg));
}

.page__header__content .tag--hero {
    align-self: flex-start;
    margin-bottom: 0.41em; /* 62px */
}

@media (min-width: 1000px) {
    .logo .tag {
        right: 0;
        transform: translateY(calc(var(--logo-block-size) * 0.1));
    }

    .logo .tag::after {
        left: 0;
        right: 0;
        height: 0;
        top: calc(100% + 12px);
        padding-top: 100%;
    }

    .page__header__content .tag--hero {
        margin-left: calc(var(--logo-block-size) * 0.12); /* 42px */
        margin-top: calc(100svh - var(--logo-block-size) - 24.5rem);
    }
}

@media (max-width: 999px) {
    :root {
        --hero-font-size: clamp(40px, 8vw, 150px);
    }

    .tag--hero {
        font-size: var(--hero-font-size) !important;
    }

    .logo .tag {
        font-size: 150px;
        font-size: var(--hero-font-size);
        font-weight: 550;
        letter-spacing: 0.3em;
        --pad: 0.213em 0.0333em 0.213em 0.333em;
        --radius: 0.25em;

        top: 100%;
        left: calc(var(--logo-block-size) * 0.12);
    }

    .logo .tag::after {
        --w: 1.426em;
        width: var(--w);
        height: var(--w);
        left: 100%;
        top: 0;
        margin-left: 0.321em;
    }

    .page__header__content .tag--hero {
        margin-left: calc(var(--logo-block-size) * 0.12); /* 42px */
        margin-top: 1.8em;
    }
    
}

@media (max-width: 500px) {
    .page__header__content .tag--hero {
        transform: translateX(-17px);
    }
}





.popup {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
}

.popup.fullscreen {
    display: flex;
    flex-direction: column;
    overflow: auto;

    background: var(--inverse-background);
    color: var(--inverse-color);
}

.popup.overlay {
    background: #000000cc;
    padding: 6svh 10px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
}

.popup__window {
    width: 100%;
    max-width: 480px;
    min-height: 0;

    background: #EEEEEE;
    border-radius: 40px;
    --rad-image: 18px;
    overflow: hidden;
    contain: paint;

    display: flex;
    flex-direction: column;
}

.popup__window.round {
    border-radius: 80px;
}

.popup__header,
.popup__footer,
.popup__part {
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
}

.popup__content {
    margin: 0 22px;
    margin-right: 11px;
    padding-right: 11px;
    padding-bottom: 20px;
    overflow: auto;
    overscroll-behavior: contain;
    container: popup / inline-size;

    display: flex;
    flex-direction: column;
    gap: 20px;
}

.popup__content:first-child {
    padding-top: 22px;
}

.popup__content > .text {
    font-size: var(--size-text);
    line-height: var(--line-height-content);
}

.popup__content > .text,
.popup__content > .popup__part {
    padding-left: 8px;
    padding-right: 8px;
}

.popup__part {
    display: block;
    margin: 0;
    text-decoration: none;
}

.popup__part + .popup__part {
    border-top: 2px solid #D3D3D3;
    padding-top: 20px;
}

.popup__part a {
    text-decoration: none;
}

.popup__footer {
    margin: 0 22px;
    padding: 10px 8px;
    display: flex;
    justify-content: space-around;
}

.popup__title {
    padding: calc(var(--pad-content-half) + 4px) 22px;
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
    text-align: center;
}

.popup__header {
    margin: 0 22px;
    padding: 30px 8px;
    display: flex;
    gap: 30px;
}

.popup__header time {
    display: inline-block;
    width: 100px;
    height: 100px;
    font-size: 14px;
    line-height: 100px;
    text-align: center;
    letter-spacing: 0.3em;
    text-indent: 0.32em;
    text-transform: uppercase;
    flex-shrink: 0;
    font-weight: 550;

    background: #0f0;
    border-radius: 100px;
    box-shadow: 0 0 0 var(--focus-width-small) #D3D3D3;
}

.popup__header .state--open {
    background: var(--green);
}

.popup__header .state--closed {
    background: var(--red);
}

.popup__header .tag__list {
    margin-bottom: 6px;
}

@media (max-width: 767px) {
    .popup__window {
        border-radius: 30px;
        --rad-image: 12px;
    }

    .popup__window.round {
        border-radius: 60px;
    }

    .popup__header {
        padding: 25px 3px;
        gap: 20px;
    }

    .popup__header time {
        width: 80px;
        height: 80px;
        line-height: 80px;
    }

    .popup__title {
        font-size: var(--size-h4);
        line-height: var(--line-height-h4);
    }
}

@media (max-height: 500px) and (orientation: landscape) {
    .popup.overlay {
        padding: 10px;
    }

    .popup__window:not(.round) {
        max-width: 100%;
    }

    .popup__window:not(.round) .popup__header {
        padding: 15px 3px;
    }
}
.lang {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1;

    display: flex;
    align-items: flex-start;
    color: white;

    padding: var(--pad-content-half);
    gap: 10px;
}

.lang.standalone {
    position: relative;
    color: inherit;
    margin-bottom: var(--content-gap);
}

.lang.standalone::after {
    content: "";
    display: block;
    height: 2px;
    background: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: var(--pad-content-half);
    right: var(--pad-content-half);
}

.lang__item .word {
    display: inline-block;
    margin: 0 0.12em;
    white-space: nowrap;
}

.lang__label {
    margin-left: 0.12em;
}

.lang__item .square {
    display: inline-block;
}

.lang__item .square:first-letter {
    margin-right: 0.3em;
}

.lang__item .tag {
    color: inherit;
    
    margin-right: 0.5rem;
    
    vertical-align: top;
}

.lang__item {
    color: var(--inverse-color);
    text-decoration: none;
    flex-grow: 1;

    font-size: inherit;
    line-height: 22px;
    margin: 0;

    padding: 10px;
    margin: -10px;
}

.standalone .lang__item {
    color: inherit;
}

.lang .tag__switch {
    padding: 10px;
    margin: -10px;
}

.lang__item:first-child {
    width: calc(50% - 5px);
    flex-grow: 0;
    flex-shrink: 0;
    box-sizing: content-box;
}

.lang__item:focus-visible {
    outline: none;
}

.lang__item:focus-visible .tag {
    box-shadow: 0 0 0 var(--focus-width-small) var(--focus-color);
}

.lang__item:first-child .tag,
.lang__item.active .tag {
    background: var(--inverse-color);
    color: var(--inverse-background);
}

a.lang__item .lang__label { display: none; }

a.lang__item:focus .lang__label { display: inline; }
a.lang__item:focus .lang__heading { display: none; }

@media (hover: hover) {
    .lang__item:hover .tag { 
        background: var(--inverse-color);
        color: var(--inverse-background);
    }

    a.lang__item:hover .lang__label { display: inline; }
    a.lang__item:hover .lang__heading { display: none; }
}

@media (min-width: 768px) {
    .lang__item {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

@media (max-width: 767px) {
    .lang__heading {
        display: none;
    }

    .lang__item:first-child {
        width: auto;
    }

    .lang__item .tag {
        margin: 0;
    }

    .lang .tag__switch { flex-grow: 1; }
    .tag__switch + .lang__item { display: none; }
}

.opening-hours {
    -webkit-appearance: none;
            appearance: none;
    background: transparent;
    white-space: nowrap;
    outline: none;
    border: none;
    color: inherit;
    font-family: inherit;
    font-size: inherit;

    padding: 10px;
    margin: -10px;
    cursor: pointer;
    line-height: 22px;
    position: relative;
}

.opening-hours::before {

}

.open__icon {
    --size: 15px;
}

.open__icon::before,
.open__icon::after {
    width: var(--size);
    height: var(--size);
    border-radius: var(--size);
    vertical-align: center;
}

.opening-hours::before,
.opening-hours::after {
    transform: translateY(33%);
    vertical-align: top;
    margin-right: 6px;
}

.open__icon::before {
    display: inline-block;
    content: " ";
}

.open__icon.status--open::before {
    background: var(--green);
}

.open__icon.status--open-soon::before {
    background: var(--green-5);
}

.open__icon.status--closed::before {
    background: var(--red);
}

.open__icon.status--closed-soon::before {
    background: var(--red-5);
}

.open__icon.status--mixed::before {
    background: var(--red);
}

.open__icon.status--mixed::after {
    display: inline-block;
    content: " ";
    
    position: absolute;
    left: 2px;
    background: var(--green);
}
/*
.icon *[fill="black"] {
    fill: black;
}
*/

.btn {
    display: block;
    white-space: nowrap;
    transition: background-color ease-in-out 0.1s;

    -webkit-appearance: none;

            appearance: none;
    border: none;
    outline: none;
    margin: 0;

    --bg: var(--btn-color);
    --bg-active: var(--btn-color-active);

    color: var(--color);
    font-size: var(--btn-size);
    line-height: var(--btn-line-height);
    height: var(--btn-height);
    background-color: var(--bg);
    padding: var(--btn-pad-vertical) var(--btn-pad-horizontal);
    border-radius: var(--btn-radius);
}

.btn:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 var(--focus-width-small) var(--focus-color);
}

.icon.btn {
    padding: 0;
    border-radius: var(--btn-height);
    
    display: flex;
    align-items: center;

    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(80px);
}

.icon.btn .btn__label {
    font-size: var(--size-text);
}

.icon.btn .btn__label:first-child { padding-left: calc(var(--btn-height) * 0.4); }
.icon.btn .btn__label:last-child { padding-left: calc(var(--btn-height) * 0.4); }
.icon.btn .btn__label + .icon { margin-left: -6px; }
.icon.btn .icon + .btn__label { margin-left: -6px; }

.select:not(.icon).btn {
    padding-right: var(--select-text-offset);
    background-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 9.02081L14.0208 21.0416L26.0416 9.02081' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: right var(--select-icon-offset) center;
    background-size: var(--select-icon-size);
}

.icon--optional .icon {
    display: none;
}

@media (max-width: 600px) {
    .icon--optional .icon {
        display: block;
    }
    .icon--optional:has(.icon) .btn__label {
        display: none;
    }

    .select.btn.icon--optional:has(.icon) {
        padding: 0;
        border-radius: var(--btn-height);
        
        display: flex;
        align-items: center;
        background-image: none;
    }
}

.btn svg {
    max-height: 100%;
    width: auto;
    display: block;
    transition: transform 0.25s cubic-bezier(0.85, 0, 0.15, 1);
}

.btn.rotate svg {
    transform: scaleY(-1);
}

.btn.layer-1 path.layer-1,
.btn.layer-2 path.layer-2,
.btn.layer-3 path.layer-3 {
    fill: #A0A0A0;
}

a.btn {
    text-decoration: none;
    color: inherit;
}



.btn--primary {
    background-color: var(--green) !important;
}

.btn--secondary {
    background-color: var(--tag-dark-color) !important;
    color: white;
}

.btn--important {
    background-color: var(--orange) !important;
}

.btn--close {
    background-color: var(--red) !important;
}

.btn--blue {
    --bg: var(--btn-accent-color);
    --bg-active: var(--btn-accent-color-active);
    color: var(--accent) !important;
}


.btn--mid {
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
    height: auto;
    padding: 12px 18px;
    padding: min(0.5em, 12px) min(0.75em, 18px);
    border-radius: 0.85em;
}

.btn--small {
    font-size: var(--size-text);
    border-radius: 100px;
    padding: 16px 22px;
    line-height: 22px;
    height: auto;
}

.btn--center {
    text-align: center;
    border-radius: var(--form-btn-radius);
}

.btn.active,
.btn.selected,
.btn[data-selected],
.btn.select[data-expanded],
.btn.select[data-value] {
    --bg: var(--bg-active);
}

@media (hover: hover) {
    .btn:hover {
        background-color: var(--bg-active);
    }
}

.btn[disabled],
.btn[data-disabled="true"] {
    --bg-active: var(--bg);
}

.btn[data-no-outline]:focus-visible {
    box-shadow: none;
}


.btn[role="option"] {
    cursor: pointer;
    -webkit-user-select: none;
            user-select: none;
}

button.a {
    -webkit-appearance: none;
            appearance: none;
    border: none;
    outline: none;
    background: none;
    padding: 0;
    margin: inherit;
    font-size: inherit;
    color: inherit;
    cursor: pointer;
    text-decoration: underline;
    text-align: left;
    width: auto;
}

button.a.dim {
    color: var(--dim-color);
    text-decoration: none;
}

button.a.dim:focus-visible {
    color: inherit;
}

@media (hover: hover) {
    button.a.dim:hover {
        color: inherit;
    }
}



.icon__wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.icon__wrapper svg {
    display: block;
    max-width: 100%;
    max-height: 100%;
}

svg [fill="accent"] {
    fill: var(--accent);
}

svg [stroke="accent"] {
    stroke: var(--accent);
}.tag {
    text-decoration: none;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    line-height: 1;

    --text: var(--light-color);
    --fill: var(--tag-light-color);
    --pad: 6px 6px 6px 11px;
    --radius: 8px;
}

.tag, .tag--word {
    display: inline-block;
    
    border-radius: var(--radius);
    
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;

    color: var(--text);
    background-color: var(--fill-hover, var(--fill));
    padding: var(--pad);
}

.tag--word:not(:last-child) {
    border-top-right-radius: calc(var(--radius) * 0.45);
    border-bottom-right-radius: calc(var(--radius) * 0.45);
}

.tag--word + .tag--word {
    border-top-left-radius: calc(var(--radius) * 0.45);
    border-bottom-left-radius: calc(var(--radius) * 0.45);
}

button.tag {
    -webkit-appearance: none;
            appearance: none;
    margin: 0;
    border: 0;
}

.tag--text {
    overflow: visible;
    line-height: inherit;
    font-size: inherit;
    letter-spacing: normal;
    text-transform: none;
    white-space: inherit;
    flex-wrap: wrap;
    --pad: 0.1lh 0.45ex;
    margin: 0 -0.45ex;
    gap: calc(1lh - 1.2em) 0;

    --radius: 0.3em;
}

.tag--large {
    font-size: var(--tag-size-large);
}

.tag--small {
    font-size: var(--tag-size-small);
    font-weight: 550;
    --pad: 7px 7px 7px 11px;
}

.tag--inline {
    font-weight: 550;
    font-size: var(--tag-size-inline);
    --pad: 5px 3.5px 5px calc(3.5px + 0.3em);
    --radius: 6px;
}

.tag--hero {
    font-size: 150px;
    font-size: 10vw;
    font-weight: 550;
    letter-spacing: 0.3em;
    --pad: 0.213em 0.0333em 0.213em 0.333em;
    --radius: 0.25em;
}

.tag--location {
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0.5' y='0.5' width='15' height='15' rx='7.5' stroke='black'/%3E%3Ccircle cx='8' cy='8' r='1.5' fill='black'/%3E%3C/svg%3E%0A") !important;
    background-repeat: no-repeat !important;
    background-size: 16px !important;
    background-position: 7px 50% !important;
    text-indent: 20px;
    text-transform: none;
    letter-spacing: normal;
    font-size: var(--tag-size-small);
    line-height: calc(var(--tag-size-small) - 1px);
    font-weight: 550;
    --pad: 7px 8px;
}

.tag:has(.tag--word) {
    background: transparent;
    padding: 0;
    margin: 0;
    display: inline-flex;
}

.tag--word {
    line-height: 1em;
    height: 1.2lh;
    margin-left: -0.45ex;
}

@media (max-width: 767px) {
    .tag--small {
        padding: 7px 3px 7px 7px;
        line-height: 8.5px;
        font-size: var(--tag-size-small);
        --radius: 6px;
    }

    .tag--location {
        padding: 7px;
        line-height: 8.5px;
        font-size: var(--tag-size-small);
        --radius: 6px;

        background-size: 13px !important;
        background-position-x: 6px !important;
        text-indent: 16px;
        background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0.6' y='0.6' width='14.8' height='14.8' rx='7.5' stroke-width='1.15' stroke='black'/%3E%3Ccircle cx='8' cy='8' r='1.5' fill='black'/%3E%3C/svg%3E%0A") !important;
    }
}

.tag--important { --fill: var(--orange) }
.tag--primary   { --fill: var(--green) }
.tag--light     { --fill: var(--tag-light-color) }
.tag--dark      { --fill: var(--tag-dark-color); --text: var(--inverse-color); }
.tag--blue      { --fill: var(--accent); --text: var(--inverse-color); }
.tag--lightblue { --fill: var(--accent-2); --text: var(--accent); }
.tag--purple    { --fill: var(--purple); --text: var(--inverse-color); }

.tag--wire {
    color: var(--border);
    outline: 1px solid var(--border);
    outline-offset: -1px;
    background: transparent;
}

/*
.tag--wire {
    color: var(--border);
    border: 1px solid var(--border);
    background: transparent;
}

.tag--wire.tag--inline {
    padding: 2.5px 2.5px 2px;
    padding-left: calc(2.5px + 0.3em);
    line-height: 16px;
}

.tag--wire.tag--small {
    line-height: 17px;
    padding: 6px 6px 4px 10px;
}
*/

.tag--wire.tag--light {
    --border: var(--inverse-color);
    --text: var(--color);
}

.tag--wire.tag--dark {
    --border: var(--color);
    --text: var(--inverse-color);
}

.tag--wire.active {
    background: var(--border);
    color: var(--text);
}

.tag--link {
    cursor: pointer;
    -webkit-user-select: none;
            user-select: none;
}

.tag:focus-visible {
    outline: none;
    box-shadow: 0 0 0 4px var(--focus-color);
}

@media (hover: hover) {
    .tag--link.tag--wire:hover {
        background: var(--border);
        color: var(--text);
    }

    .tag--link:hover {
        --fill-hover: hsl(from var(--fill) h s calc(l * 0.9));
        /* box-shadow: 0 0 0 4px var(--focus-color); */
    }

    .tag:hover:focus-visible {
        box-shadow: 0 0 0 4px var(--focus-color-hover);
    }

    .tag:has(.tag--word):hover {

    }
}





.tag__list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 0;
    margin: 0;
    list-style: none;
}



.tag__switch {
    --bg: var(--inverse-color);
    --fg: var(--color);
    display: flex;
    background: transparent;
    text-decoration: none;
    align-items: flex-start;
}

.tag__switch.tag--dark {
    --bg: var(--tag-dark-color);
    --fg: var(--inverse-color);
}

.tag__switch.tag--dark .active {
    --bg: var(--color);
}

.tag__switch .tag {
    background: var(--bg);
    color: var(--fg);
}

.tag__switch .active {
    background: var(--fg);
    color: var(--bg);
    position: relative;
}

.tag__switch .tag + .tag {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left: 0.5em solid var(--bg);
    margin-left: -0.6em;
}

.tag__switch__label {
    padding-left: 10px;
    display: none;
}

.tag__list .tag__switch {
    margin-right: calc(var(--pad-content-half) * 2 - 12px);
}

@media (hover: hover) {
    .tag__switch:hover .tag__switch__label {
        display: block;
    }

    .tag__switch:hover + .lang__item .lang__heading {
        display: none;
    }
}


.select.tag {
    padding-right: 1.8em;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='10' viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.5 3.5L6 8L10.5 3.5' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: right 0.62em center;
    background-size: 1em;
}img {
    width: 100%;
    height: auto;
}

.image__caption {
    color: var(--dim-color);
    font-size: var(--size-caption);
    line-height: var(--line-height-caption);
    margin-top: 15px;
}

.image__caption * {
    margin: 0;
}

img:not([src]) {
    visibility: hidden;
}

.image--background {
    background: black;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
}

.page__content .image img,
.screen__content .image img,
.popup__content .image img,
.page__content .image svg,
.screen__content .image svg,
.popup__content .image svg {
    border-radius: var(--rad-image);
}
.card {
    --dim-opacity: 0.7;
    --pad: 10px;

    --bg: var(--surface-1);
    --bg-transparent: var(--gray-background-transparent);
    --bg-transparent: rgb(from var(--bg) r g b / 0);

    height: 640px;
    
    border-radius: 20px;
    background: var(--bg);
    text-decoration: none;
    color: inherit;
    transform: translateZ(0);

    display: flex;
    flex-direction: column;
    overflow: hidden;

    position: relative;
    outline: none;
    outline-offset: 0;
    scroll-margin: var(--pad-content);
}

@supports (contain: strict) {
    .card {
        transform: none;
        contain: strict;
    }
}

.card:focus-visible {
    box-shadow: 0 0 0 var(--focus-width-large) var(--focus-color);
    outline: none;
}

.card img {
    filter: saturate(0.5);
}

.card:focus-visible img,
.card--link-vertical img,
.card--link-horizontal img {
    filter: saturate(1);
}

.card--muted img {
    filter: saturate(0) !important;
}

@media (hover: hover) {
    a.card:hover {
        box-shadow: 0 0 0 var(--focus-width-large) var(--gray-background-outline);
        box-shadow: 0 0 0 var(--focus-width-large) rgb(from var(--bg) r g b / calc(alpha / 2));
    }

    a.card:hover:focus-visible {
        box-shadow: 0 0 0 var(--focus-width-large) var(--focus-color-hover);
    }

    a.card:hover .card__icon {
        background: var(--green);
    }

    .card:hover img {
        filter: saturate(1);
    }
}

.card__media,
.card__text {
    height: 50%;
}

.card__media {
    background: black;
    contain: strict;
}

.card__media .image {
    width: 100%;
    height: 100%;
    opacity: var(--dim-opacity);
    --rad-image: 0;
}

.card__media .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.card__media .image:empty { background: var(--background); }

.card__text {
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 10px;
}

.card__tags,
.card__info {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.card__icon {
    position: absolute;
    top: 20px;
    right: 20px;
    border-radius: 100px;
    background: var(--surface-2);

    width: var(--btn-height);
    height: var(--btn-height);
}

.card__icon:empty {
    display: none;
}

.card__icon svg {
    max-width: 100%;
    max-height: 100%;
}

.card--landscape {
    width: 944px;
    --dim-opacity: 0.5;
}

.card--landscape-wide {
    width: 1221px;
    --dim-opacity: 0.5;
}

.card--landscape .card__media,
.card--landscape-wide .card__media {
    height: 100%;
}

.card--landscape .card__text,
.card--landscape-wide .card__text {
    position: absolute;
    width: 100%;
    height: 100%;
    color: var(--inverse-color);

    flex-direction: row;
    align-items: flex-start;
}

@media (max-width: 500px) {
    .card--landscape .card__text,
    .card--landscape-wide .card__text {
        flex-direction: column;
        justify-content: flex-start;
    }

    .card--landscape .card__text > *:empty,
    .card--landscape-wide .card__text > *:empty {
        display: none;
    }
}

.card--landscape-wide .card__text { flex-direction: column; }

.card--landscape .card__info,
.card--landscape-wide .card__info {
    justify-content: flex-end;
}

.card--landscape .card__title {
    position: absolute;
    left: 30px;
    right: 70px;
    bottom: 20px;
}

.card--landscape-wide .card__title {
    position: absolute;
    left: 190px;
    right: 190px;
    top: 50%;
    transform: translateY(-50%);
    text-align: center;
}

@media (min-width: 768px) {
    .card--landscape .tag--small,
    .card--landscape-wide .tag--small:not(.tag--location) {
        font-size: var(--size-text);
        line-height: 22px;
        padding: 6px 7px 5px 11px;
    }

    .card--landscape .tag--location {
        background-size: 19px !important;
        background-position-x: 10px !important;
        text-indent: 24px;
        padding-right: 10px;
    }
}

@media (max-width: 767px) {
    .card--landscape,
    .card--landscape-wide {
        max-width: calc(100vw - var(--pad-content) * 2);
    }

    .card--landscape .card__title {
        left: var(--pad-content);
        right: var(--pad-content);
        margin-bottom: -0.1235em;
    }

    @media (orientation: portrait) {
        .card--landscape-wide .card__title {
            left: var(--pad-content-half);
            right: var(--pad-content-half);
        }
    }

    @media (orientation: landscape) {
        .card--landscape-wide .card__title {
            left: 10vw;
            right: 10vw;
        } 
    }
}

.card--portrait {
    width: 527px;
}

.card--portrait .card__title {
    line-height: 1.3235em;
    margin-bottom: -0.1235em;
}

.card--portrait-narrow {
    width: 388px;
}

.card--portrait-narrow .card__text {
    flex-direction: column-reverse;
}

.card--portrait-narrow .card__title {
    overflow: visible clip;
    min-height: 0;
    flex-grow: 1;
    position: relative;
}

.card--portrait-narrow .card__title::after {
    content: " ";
    background: linear-gradient(0deg, var(--bg), var(--bg-transparent));
    position: absolute;
    width: 100%;
    height: 2em;
    bottom: 0;
    left: 0;
}

.card--portrait .card__tags,
.card--portrait-narrow .card__tags {
    position: absolute;
    top: 20px;
    left: 20px;
    right: 20px;
}

@media (max-width: 767px) {
    @media (orientation: portrait) {
        .card--portrait {
            max-width: calc(100vw - var(--pad-content) * 2);
        }
    }
}

.card--link-horizontal {
    flex-direction: row;
    border-radius: 80px;
    contain: content;
    --dim-opacity: 1;
    
    min-height: 640px !important;
    max-height: none !important;
    height: auto !important;
}

.card--link-horizontal .card__media {
    width: 50%;
    height: auto;
    background: transparent;
}

.card--link-horizontal .card__text {
    justify-content: start;
    padding: 20px 30px 25px 30px;
    gap: 20px;
    width: 50%;
}

.card--link-horizontal .card__title { order: 1 }
.card--link-horizontal .card__tags  { order: 2 }
.card--link-horizontal .card__info  { order: 3 }

.card--link-horizontal .card__title { font-size: var(--size-h3); }

@media (max-width: 1200px) {
    .card--link-horizontal .card__title {
        font-size: var(--size-h4);
    }
}

@media (max-width: 767px) {
    .card--link-horizontal {
        flex-direction: column;
        border-radius: 45px;
    }

    .card--link-horizontal .card__media,
    .card--link-horizontal .image,
    .card--link-horizontal img,
    .card--link-horizontal .card__text {
        width: 100%;
        height: auto;
        contain: unset;
    }

    .card--link-horizontal .card__text {
        padding: 30px;
    }

    .card--link-horizontal .card__title {
        font-size: var(--size-h3);
    }
}

.card--link-vertical {
    border-radius: 80px;
    max-height: none !important;
    --dim-opacity: 1;
}

.card--link-vertical .card__tags:empty { display: none }

.card--link-vertical .card__media {
    height: 100%;
}

.card--link-vertical .card__text {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 50%;

    padding: 15px 20px;

    background: rgba(229, 229, 229, 0.6);
    backdrop-filter: blur(80px);
    -webkit-backdrop-filter: blur(80px);

    flex-direction: column-reverse;
}

.card--link-vertical .card__icon {
    position: absolute;
    top: 30px;
    right: 30px;
}

.grid .card.card--link-vertical {
    min-height: auto;
    height: auto;
    aspect-ratio: 1;
}

@media (min-width: 768px) and (max-width: 1300px) {
    .card--link-vertical,
    .card--link-horizontal {
        border-radius: 60px;
        --btn-height: 54px;
    }

    .grid .card--link-vertical .card__title {
        font-size: 2.42vw;
    }
}

@media (max-width: 767px) {
    .card--link-vertical {
        border-radius: 60px;
        max-width: none;
    }
}



.card--intro {
    width: 300px;
    background: var(--tag-dark-color);
    color: white;
}

.card--intro .card__text { height: 100%; }
.card--intro .card__title {
    font-size: var(--size-text); 
    line-height: var(--line-height-text);
}
.card--intro .card__info {
    font-size: var(--size-h4); 
    line-height: var(--line-height-h4);
}
.card--intro .card__title > :first-child { margin-top: 0; }
.card--intro .card__title > :last-child { margin-bottom: 0; }


.card--landscape-wide  .card__title { font-size: var(--size-h2); text-wrap: balance; }
.card--landscape       .card__title { font-size: var(--size-h2); text-wrap: balance; }
.card--landscape  .card__title.long { font-size: var(--size-h3); text-wrap: pretty; }
.card--portrait        .card__title { font-size: var(--size-h4); text-wrap: pretty; }
.card--portrait-narrow .card__title { font-size: var(--size-h5); }
.card--embed           .card__title { font-size: var(--size-h5); text-wrap: pretty; }
.card--link-vertical   .card__title { font-size: var(--size-h4); }

.card, .oversized-arrow {
    height: 62vh;
    height: calc(100vh - 365px);
    min-height: 480px;
    max-height: 640px;
}

.grid .card {
    aspect-ratio: auto;
    width: auto;
}

@supports (aspect-ratio: 1/1) {
    
    .card--portrait {
        aspect-ratio: 527 / 640;
        width: auto;
    }

    .card--portrait-narrow {
        aspect-ratio: 388 / 640;
        width: auto;
    }

    .card--landscape {
        aspect-ratio: 944 / 640;
        width: auto;
    }
    
    .card--landscape-wide {
        aspect-ratio: 1221 / 640;
        width: auto;
    }

    .card--link-vertical {
        aspect-ratio: 1 / 1;
        width: auto;
    }

}



.card--compact {
    flex-direction: row;
    align-items: stretch;
    padding: 12px;
    gap: 12px;
    height: auto;
    min-height: 80px;
    contain: inline-size;

    --focus-width-large: var(--focus-width-small);
    --dim-opacity: 0.85;
}

.card--compact .card__media {
    width: 88px;
    height: 88px;
    overflow: hidden;
    border-radius: 9px;
    contain: paint;
    flex-shrink: 0;
}

.card--compact .card__text {
    height: auto;
    flex-grow: 1;
    padding: 0;

    display: grid;
    grid-template-columns: 1fr min-content;
    grid-template-rows: 1fr min-content;
    align-items: start;
}

.card--compact .card__info {
    grid-column: 2;
    grid-row: 1;
    font-size: var(--tag-size-small);
    color: var(--dim-color);
    white-space: nowrap;
}

.card--compact .card__title {
    grid-column: 1;
    grid-row: 1;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.4;
    max-height: 2lh;
    text-wrap: balance;
}

.card--compact .card__tags {
    grid-column: -1 / 1;
    grid-row: 2;
    flex-wrap: nowrap;
}

.card--compact .card__tags .tag {
    flex-shrink: 0;
}

a.card--compact:focus-visible {
    box-shadow: inset 0 0 0 var(--focus-width-large) var(--focus-color);
}

@media (hover: hover) {
    a.card--compact:hover .card__info {
        color: var(--color);
    }

    a.card--compact:hover {
        box-shadow: none;
    }

    a.card--compact:hover:focus-visible {
        box-shadow: inset 0 0 0 var(--focus-width-large) var(--focus-color);
    }
}

@media (max-width: 767px) {
    .card--compact .card__media {
        width: 69px;
        height: 69px;
    }

    .card--compact .card__text {
        gap: 6px;
    }

    .card--compact .card__title {
        line-height: inherit;
    }

    /*

    .card--compact.card--wrap .card__text {
        font-size: var(--size-caption);
    }
    
    .card--compact .card__title {
        font-size: var(--size-caption);
        line-height: calc(var(--size-caption) * 1.23);
        -webkit-line-clamp: 2;
        max-height: calc(var(--size-caption) * 1.23 * 2);
    }

    .card--compact .card__tags {
        font-size: var(--size-caption);
    }
    */
}

@container popup (width < 400px) {
    .card--compact {
        min-height: unset;
    }

    .card--compact .card__media {
        display: none;
    }
}

.card--wrap .card__title {
    max-height: unset !important;
    -webkit-line-clamp: unset !important;
    text-wrap: auto !important;
    text-wrap: pretty !important;
}

.card--wrap .card__tags:empty {
    display: none;
}

.card--compact .card__text:has(.card__info:empty) { column-gap: 0; }
.card--compact .card__text:has(.card__tags:empty) { row-gap: 0; }

.disclosure {
    --gap: 12px;

    display: flex;
    flex-direction: column;

    border-radius: 20px;
    scroll-margin: var(--pad-content);

    background: var(--surface-1);
    color: inherit;
}

.disclosure summary {
    display: flex;
    gap: var(--gap);
    padding: var(--gap);
    position: relative;
}

.disclosure summary::-webkit-details-marker {
    display: none;
}

.disclosure summary::before {
    content: "";
    display: none;
    position: absolute;
    top: var(--gap);
    right: var(--gap);
    width: 14px;
    height: 14px;
    border-radius: 14px;
    background-color: var(--accent-1);
}

.disclosure summary:focus-visible {
    outline: none;
}

.disclosure summary:focus-visible::before {
    background-color: var(--accent);
}

@media (hover: hover) {
    .disclosure summary:hover::before {
        background-color: var(--accent);
    }
}

.disclosure__media {
    width: 88px;
    height: 88px;
    overflow: hidden;
    border-radius: var(--form-btn-radius);
    contain: paint;
    flex-shrink: 0;
}

.disclosure__summary {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    justify-content: space-between;
    text-wrap: balance;
}

.disclosure__summary > * { margin: 0; }

.disclosure__content {
    display: flex;
    flex-direction: column;
    gap: var(--gap);

    padding: var(--gap) 0;
    margin: 0 var(--gap);
    border-top: 2px solid var(--tag-light-color);
}

.disclosure__content .form {
    --gap: inherit;
}

@media (max-width: 767px) {
    .disclosure__media {
        width: 69px;
        height: 69px;
    }
}

.disclosure.compact { --gap: 16px; }
.disclosure.compact .disclosure__media { display: none; }
.disclosure.compact .disclosure__summary {
    padding: 10px 80px 10px 0;
}

.disclosure.compact summary::before {
    display: inline-block;
    width: 28px;
    height: 28px;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 9.02075L14.0208 21.0416L26.0416 9.02075' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
    background-color: transparent !important;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0.5;
}

.disclosure.compact[open] summary::before {
    transform: translateY(-50%) rotate(180deg);
}

.disclosure.compact summary:focus-visible::before {
    background-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 9.02075L14.0208 21.0416L26.0416 9.02075' stroke='%23007AFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
    opacity: 1;
}

@media (hover: hover) {
    .disclosure summary::before {
        display: inline-block;
    }

    .disclosure.compact summary:hover::before {
        opacity: 1;
    }

    .disclosure__summary {
        padding-right: 26px;
    }
}




.card--embed {
    border-radius: 20px;
    padding: var(--pad);
    flex-direction: row;
    min-height: auto;
    max-height: 340px;
    height: 340px;
    gap: calc(var(--pad) * 2);
}

.card--embed .card__media {
    flex-basis: 50%;
    border-radius: 10px;
    height: 100%;
}

.card--embed .card__media img { object-fit: cover; }

.card--embed .card__tags:empty { display: none; }

.card--embed .card__title {
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
}

.card--embed .card__text {
    flex-basis: 50%;
    gap: 14px;
    padding: 0;
    height: 100%;
    justify-content: flex-start;
    contain: size;
}

.card--embed .card__info {
    order: 1;
    font-size: var(--size-caption-mobile);
    line-height: var(--line-height-article);
    color: var(--dim-color);
    margin-right: 20px;
}

.card--embed .card__info .text { padding: 0 !important; }

.card--embed .card__text::after {
    content: " ";
    background: linear-gradient(0deg, var(--bg), var(--bg-transparent));
    position: absolute;
    height: 2em;
    height: 1lh;
    left: 50%;
    right: 10px;
    bottom: 0;
    border-bottom: var(--pad) solid var(--bg);
    border-bottom-right-radius: 20px;
}

@container (width < 475px) {
    .card--embed {
        flex-direction: column;
        height: auto;
        min-height: 0;
        max-height: none;
        aspect-ratio: 5 / 7 !important;
        gap: 8px;
    }

    .card--embed .card__text {
        min-height: 0;
        padding: var(--pad);
        padding-bottom: 0;
    }

    .card--embed .card__tags {
        position: absolute;
        left: calc(var(--pad) * 2);
        right: calc(var(--pad) * 2);
        top: calc(var(--pad) * 2);
    }

    .card--embed .card__text::after {
        left: 20px;
        right: 20px;
    }

    .card--embed .card__info {
        margin-right: 5cqw;
    }
}

@media (max-width: 767px) {
    .card--embed .card__title {
        font-size: var(--size-h4);
        line-height: var(--line-height-h4);
    }
}.detail__header {
    background: black;
    color: white;
    position: relative;
    min-height: 100svh;

    cursor: s-resize;
}

.detail__header__background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.detail__header__background::after {
    content: " ";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 75%;

    background: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.56));
}

.detail__header__background .image {
    opacity: 0.5;
    width: 100%;
    height: 100%;
}

.detail__header__background .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.detail__header__content {
    position: relative;
    padding: 20px 20px 25px;
}

.detail__header__content .style--title {
    padding: 12px;
}

@media (max-width: 767px) {
    .detail__header__content .style--title {
        padding: 12px 0;
    }

    .detail__header__content .tag__list {
        margin-top: var(--pad-content-half-inv);
        margin-left: var(--pad-content-half-inv);
    }
}.screen {
    min-height: 100vh;
    display: flex;
    flex-direction: column;

    padding: var(--pad-content);
    padding-bottom: 124px;
    gap: 20px;
}

.screen__title {
    position: relative;
}

.screen__title .section__select {
    top: calc((var(--line-height-h3) - 54px) / 2);
}

.screen__title .tag__list {
    margin: var(--pad-content-half-inv) 0 20px var(--pad-content-half-inv);
}

.screen__content {
    flex-grow: 1;

    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media (max-width: 767px) {
    .screen__title .tag__list {
        margin-bottom: var(--pad-content-half);
    }

    .screen + .screen .screen__title {
        margin-bottom: 28px;
    }
}.sum {
    display: flex;
    gap: 12px;
    align-items: stretch;
    line-height: var(--line-height-article);
}

.sum__media,
.sum__wrapper {
    flex-basis: 50%;
    border-radius: 20px;
}

.sum__media {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    contain: paint;
}

.sum__media .image {
    flex-grow: 1;
}

.sum__media .video {
    background: black;
}

.sum__media img {
    object-fit: cover;
    height: 100%;
}

.sum__wrapper {
    contain: strict;
    background: var(--surface-1);
    padding: 12px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.sum__content {
    overflow: auto;
    flex-grow: 1;

    --rad-image: 12px;
    --content-gap: 20px;
}

.sum__content > :first-child {
    margin-top: 0;
}

.sum__content > :last-child {
    margin-bottom: 0;
}

.sum__content .text {
    padding: 8px;
}

.sum__buttons {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.sum__buttons[data-multiple="true"][data-captions="false"] {
    flex-direction: row;
    flex-wrap: wrap;
}

.sum__button {
    display: flex;
    gap: 6px;
    align-items: center;
    flex-grow: 1;
}

.sum__button .btn {
    border-radius: 12px;
    text-align: center;
    flex-basis: 50%;
    flex-grow: 1;
    flex-shrink: 1;
    white-space: normal;
}

.sum__button__caption {
    font-size: var(--size-caption-mobile);
    line-height: var(--line-height-caption);
    color: var(--dim-color);
    text-wrap: pretty;
    flex-basis: 50%;
    padding-left: 12px;
}

@media (max-width: 550px) {
    .sum__buttons[data-captions="true"] {
        flex-direction: column;
        gap: 6px;
    }

    .sum__buttons[data-captions="true"] .sum__button {
        flex-direction: column-reverse;
        gap: 6px;
        align-items: stretch;
    }

    .sum__buttons[data-captions="true"] .sum__button__caption {
        padding: 0 8px;
    }

    .sum__buttons[data-captions="true"] .sum__button + .sum__button .sum__button__caption {
        padding-top: 6px;
    }

    .sum__buttons[data-captions="true"] .sum__button__caption:empty {
        display: none;
    }
}

/*
@media (orientation: landscape) {
    .sum__media {
        min-height: 50vh;
    }
}

@media (orientation: portrait) {
    .sum {
        flex-grow: 1;
    }

    .sum__media {
        min-height: 60vh;
    }
}
*/

.sum__media .image {
    height: 50vh;
}

/* 650 min-height 900 min-width */

@media (max-width: 1000px) {
    .sum {
        flex-direction: column;
        flex-grow: 1;
    }

    .sum__media {
        min-height: auto;
    }

    .sum__media .image {
        min-height: auto;
    }

    .sum__wrapper {
        contain: none;
    }
}

@media (max-height: 650px) {
    .sum {
        flex-direction: column;
        flex-grow: 1;
    }

    .sum__media {
        min-height: auto;
    }

    .sum__media .image {
        min-height: auto;
    }

    .sum__wrapper {
        contain: none;
    }
}
.people {
    background: var(--gray-background);
    padding-top: 80px;
    padding-bottom: 80px;
    text-align: center;

    display: flex;
    flex-direction: column;
    gap: 30px;
}

.people > * { margin: 0; }

.people__title,
.people__names {
    font-size: var(--size-caption);
}

.people__icons {
    display: flex;
    justify-content: center;
    gap: 14px;
}

.people__icon {
    width: 100px;
    height: 100px;
    border-radius: 100px;
    background: black;
    color: white;

    font-size: 34px;
    font-family: var(--serif);
    line-height: 100px;
}

.people__icon,
.people__name {
    text-decoration: none;
}

@media (hover: hover) {
    .people__names {
        color: var(--dim-color);
    }

    a.people__icon:hover {
        box-shadow: 0 0 0 var(--focus-width-small) #C4C4C4;
    }

    a.people__name:hover,
    a.people__name.active {
        color: var(--color);
    }
}
/*
[data-kb-scroll-lock] .page__nav__inner,
[data-kb-scroll-lock] .page__nav > *:not(.spacer),
[data-kb-scroll-lock] .slideshow__row > * {
    pointer-events: none;
}
*/

[data-popper-positioner] {
    z-index: 100 !important;
}

.dropdown {
    --rad: 34px;
    --pad: 10px;
    
    margin: 0;
    padding: var(--pad);
    /*
    border-radius: 34px;
    background: #ffffff80;
    backdrop-filter: blur(80px);
    */
    font-size: var(--btn-size);

    max-height: var(--kb-popper-content-available-height);
    min-width: min(var(--kb-popper-content-available-width), calc(var(--kb-popper-anchor-width) + var(--pad) * 2));
}

.dropdown__content {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 0;
    margin: 0;

    overflow-y: auto;
    overflow-x: hidden;
    position: relative;

    max-height: calc(var(--kb-popper-content-available-height) - var(--pad) * 2);
}

.dropdown::before {
    content: '';
    position: absolute;
    /*
    top: calc(var(--pad) * -1);
    left: calc(var(--pad) * -1);
    bottom: calc(var(--pad) * -1);
    right: calc(var(--pad) * -1);
    */
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: #ffffff80;
    -webkit-backdrop-filter: blur(80px);
            backdrop-filter: blur(80px);
    border-radius: var(--rad);
}

.dropdown:has(.dropdown__content:focus-visible)::before {
    box-shadow: inset 0 0 0 var(--focus-width-large) var(--focus-color);
}

.dropdown:focus-visible,
.dropdown__content:focus-visible {
    outline: none;
}

.dropdown__item,
.btn.dropdown__item {
    cursor: pointer;
    --bg: transparent;
    --bg-active: #ffffff80;
    transition: none;
    border-radius: calc(var(--rad) - var(--pad) + 2px);
}

.dropdown__item[data-highlighted] {
    --bg: var(--bg-active);
}

@media (max-width: 767px) {
    .dropdown {
        --pad: 6px;
        --rad: 21px;
    }

    .dropdown.condensed {
        --btn-pad-horizontal: 18px;
    }

    .dropdown.condensed .dropdown__item {
        padding: 12px var(--btn-pad-horizontal);
    }
}

@media (min-width: 768px) {
    .dropdown.condensed {
        --rad: 21px;
    }

    .dropdown.condensed .dropdown__item {
        padding-left: 25px;
    }
}



.dropdown {
	transform-origin: var(--kb-select-content-transform-origin);
	animation: dropdownSlideOut 150ms ease-in-out forwards;
}

.dropdown[data-expanded] {
	animation: dropdownSlideIn 150ms ease-in-out;
}

@keyframes dropdownSlideIn {
	from {
		transform: translateY(16px);
	}
	to {
		transform: translateY(0);
	}
}

@keyframes dropdownSlideOut {
	from {
		transform: translateY(0);
	}
	to {
		transform: translateY(16px);
	}
}



.dropdown__content,
.dropdown::before {
	animation: dropdownFadeOut 150ms ease-in-out forwards;
}

.dropdown[data-expanded] .dropdown__content,
.dropdown[data-expanded]::before {
	animation: dropdownFadeIn 150ms ease-in-out;
}

@keyframes dropdownFadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes dropdownFadeOut {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}


/*
.dropdown::before {
	animation: dropdownBGFadeOut 1250ms ease-in forwards;
}

.dropdown[data-expanded] .dropdown::before {
	animation: dropdownBGFadeIn 1250ms ease-out;
}

@keyframes dropdownBGFadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes dropdownBGFadeOut {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}
*/


.dropdown__label--combined {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    font-size: var(--size-text);
    line-height: 1.2;
}

.dropdown__label__line:first-child::after {
    content: ":";
}

/* .dropdown__label__line:last-child {
    color: var(--dim-color);
} */

@media (max-width: 767px) {
    .dropdown__label--combined {
        font-size: var(--size-caption);
    }
}.notice-group {
    display: flex;
    flex-direction: row;
    flex: 1;
    gap: var(--grid-gap);
}

.notice {
    display: flex;
    flex-grow: 1;
    background: rgba(0, 255, 0, 0.1);
    padding: var(--pad-content);
    
    border-radius: 20px;
}

.notice, .notice-group {
    margin: var(--pad-content) 0;
}

.notice > * {
    margin: 0;
}

.notice + .notice,
.notice + .notice-group {
    margin-top: 0;
}

.notice-group .notice {
    margin: 0;
}

.notice.feedback {
    background: rgba(0, 255, 0, 0.1);
}

.notice.qr {
    background: rgba(0, 102, 255, 0.1);
}

.notice.inline {
    color: var(--blue);
    background: var(--blue-2);
    --mid-color: var(--blue-3);
}

.notice svg {
    --size: 116px;

    min-width: var(--size);
    max-width: var(--size);
    border-radius: 10px;
    background: white;
    margin: -15px;
    margin-left: 20px !important;
    align-self: start;
}

.page > .notice,
.page > .notice-group {
    margin: var(--pad-content);
}

@media (max-width: 999px) {
    .feedback > *:not(:first-child) {
        margin-top: 20px;
    }

    .feedback {
        flex-direction: column;
    }

    .feedback .btn {
        text-align: center;
    }
}

@media (min-width: 1000px) {
    .feedback > *:not(:first-child) {
        margin-left: 20px;
    }

    .feedback .btn {
        align-self: center;
    }
}

@media (min-width: 768px) {
    .notice {
        padding: calc(var(--pad-content) - 5px);
    }

    .notice p {
        font-size: var(--size-caption);
        line-height: var(--line-height-caption);
    }
}

@media (max-width: 767px) {
    .notice p {
        font-size: var(--size-text);
        line-height: var(--line-height-content);
    }

    .notice svg {
        margin: 0;
        --size: 104px;
    }
}

@media (max-width: 1200px) {
    .notice-group {
        flex-direction: column;
    }
}

.notice.inline {
    flex-direction: column;
    gap: 1em;
    margin: 0;
    padding: 12px;
    position: relative;

    font-size: var(--size-text);
    line-height: var(--line-height-content);
}

.notice.inline p {
    font-size: inherit;
    line-height: inherit;
}

.notice.inline.small {
    font-size: var(--size-caption-mobile);
    background: var(--blue-1);
}.page__header {
    /* background: black; */
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100svh;

    cursor: s-resize;
}

.page__header__text,
.page__header__banner,
.page__header .lang,
.page__header .logo {
    cursor: auto;
}

body:has(.page__header__background) {
    background: black;
}

.page__content {
    background: var(--background);
}

.page__content::after {
    content: "";
    display: block;
    height: 50px;
    margin-bottom: -50px;
}

.logo__wrap {
    min-height: 55svh;
}

.logo__wrap .logo {
    position: sticky;
    top: 62px;
}

.page__header__background {
    z-index: -1;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.page__header__background .image,
.page__header__background.image--background {
    opacity: 0.5;
    width: 100%;
    height: 100%;
}

.page__header__background.glow::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    image-rendering: crisp-edges;
    /* animation: turn 10ms linear infinite; */

    -webkit-mask-image: url(/glow.png);

            mask-image: url(/glow.png);
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center;
            mask-position: center;
    -webkit-mask-size: contain;
            mask-size: contain;
}


.page__header__background.glow--green::after { background: var(--green); }
.page__header__background.glow--red::after { background: var(--orange); }

.page__header__background.glow .image,
.page__header__background.glow.image--background {
    opacity: 0.2;
}

@keyframes turn {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
/* @supports (animation-timeline: scroll()) {
    .page__header__background {
        contain: strict;
    }

    .page__header__background .image--background {
        animation: header-fade linear;
        animation-timeline: scroll();
        animation-range: 0 100svh;
        background-attachment: scroll !important;
    }
    
    @keyframes header-fade {
        from {
            opacity: 0.5;
            transform: translateY(0);
        }
    
        to {
            opacity: 0;
            transform: translateY(100vh);
        }
    }
} */

.page__header__background .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page__header__content {
    position: relative;
    padding: 20px 20px 0;

    display: flex;
    flex-direction: column;
    flex-grow: 1;
    transform: translate3d(0, 0, 0);
}

.page__header__bottom__content {
    display: flex;
    flex-direction: column;
    position: sticky;
    bottom: 0;
}

.page__header .lang + * {
    padding-top: 43px;
}

.page__header__banner {
    --color: var(--blue);
    --mid-color: var(--blue-3);
    color: var(--color);
    background: var(--blue-2);
    --btn-color-active: var(--blue-3);

    --space: 20px;
    --icon: 48px;
    --radius: calc(var(--space) + var(--icon) / 2 - 2px);

    border-top-left-radius: var(--radius);
    border-top-right-radius: var(--radius);

    background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='1' y='1' width='46' height='46' rx='23' stroke='%230066FF' stroke-width='2'/%3E%3Crect x='25' y='37' width='2' height='17' rx='1' transform='rotate(-180 25 37)' fill='%230066FF'/%3E%3Ccircle cx='24' cy='14' r='2' fill='%230066FF'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: var(--space) var(--space);
    background-size: var(--icon);

    padding: var(--space);
    margin: 0 -20px;

    padding-left: calc(var(--space) + var(--icon) + var(--space) * 0.7);
    padding-bottom: calc(var(--space) + var(--rad-content));
    min-height: calc(var(--icon) + var(--space) * 2 + var(--rad-content));

    line-height: 1.35;
    text-wrap: balance;
}

.page__header__banner[aria-haspopup="dialog"] {
    cursor: pointer;
}

@media (min-width: 1000px) {
    .page__header__banner > * {
        max-width: 60%;
    }
}

@media (max-width: 767px) {
    .page__header__banner {
        --icon: 34px;
        --space: 16px;
        text-wrap: pretty;
    }
}

@media (max-width: 500px) {
    .page__header .logo {
        margin: -17px -17px 0;
    }
}

.page__header__banner + * {
    margin-top: calc(-1 * var(--rad-content)) !important;
}

.page__header__banner > :first-child { margin-top: 0; }
.page__header__banner > :last-child { margin-bottom: 0; }

.page__header__text {
    display: flex;
    flex-direction: column;

    background: var(--background);
    border-top-left-radius: var(--rad-content);
    border-top-right-radius: var(--rad-content);

    margin: 0 -20px;

    padding-left: 34px;
    padding-right: 34px;
    padding-bottom: 116px;

    position: sticky;
    bottom: 0;
}

.page__header__banner + .page__header__text {
    position: relative;
}

.page__header__text > :empty {
    display: contents;
}

.page__header__text > * {
    padding-top: 15px;
}

.page__header__text > :first-child {
    padding-top: 30px;
}

.page__header__text > .text {
    padding-bottom: 13px;
}

.page__header__text > .title__bar {
    padding-top: 25px;
}

.page__header__text {
    position: relative;
}

.page__header__text::before {
    position: absolute;
    content: " ";
    left: 50%;
    top: -17px;
    width: 115px;
    height: 7px;
    border-radius: 7px;
    background: #D3D3D3;
    transform: translateX(-50%);
}

.page__header__text:has(> .text:first-child)::before,
.page__header__text:empty::before {
    top: 10px;
}

.page__header__banner + .page__header__text:has(> .text:first-child)::before,
.page__header__banner + .page__header__text:empty::before {
    display: none;
}

@media (max-width: 767px) {
    .page__header__text {
        padding: 0 var(--pad-content) 86px;
    }

    .page__header__text > .text {
        padding-top: 10px;
        padding-bottom: 0;
    }

    .page__header__text > .text:first-child {
        padding-top: 23px;
    }

    .page__header__text::before {
        width: 80px;
        height: 5px;
        top: -15px;
    }
}

@media (min-width: 768px) {
    .page__header__text > .text {
        padding-right: 10%;
        max-width: 100%;
    }
}






.title__bar {
    padding: 18px 0;
    border-bottom: 2px solid #D9D9D9;
    display: flex;
    align-items: center;

    --pad-total: calc((var(--title-bar-height) - var(--line-height-h5)));
 
    padding: calc(var(--pad-total) * 0.55) 0 calc(var(--pad-total) * 0.45) !important;
}

.title__bar > * {
    flex-basis: 20%;
    min-width: 5em;
}

@media (min-width: 768px) {
    .title__bar > * {
        flex-basis: 25%;
    }
}

.title__bar__title {
    font-weight: 550;
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
    text-align: center;
    margin: 0;
    flex-grow: 1;
}

.title__bar__count,
.title__bar__backlink {
    text-decoration: none;
    color: var(--dim-color);
    font-size: var(--size-caption);
    line-height: var(--line-height-caption);
}

.title__bar__count {
    text-align: right;
}

.title__bar__backlink {
    display: inline-flex;
    gap: 11px;
    align-items: center;
}

.title__bar__backlink svg {
    flex-shrink: 0;
    height: calc(var(--line-height-h5) - 2px);
}

.title__bar__backlink svg [stroke] {
    stroke: currentColor;
}

@media (hover: hover) {
    .title__bar__backlink:hover {
        color: var(--color);
    }
}.logo {
    display: flex;
    -webkit-user-select: none;
            user-select: none;
    position: relative;
}

.logo__segment {
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: 100%;
}
.page__footer {
    min-height: 30vh;
    background: var(--inverse-background);
    color: var(--inverse-color);
    border-top-left-radius: var(--rad-content);
    border-top-right-radius: var(--rad-content);

    position: relative;
}

.page__footer .row {
    flex-grow: 1;
    gap: 20px;
}

.footer__content {
    padding: 100px 20px 150px;
}

.footer__content .dim {
    color: rgba(255, 255, 255, 0.5);
}

.footer__content ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    gap: 12px;
    justify-content: space-between;
}

.footer__content ul.short {
    justify-content: flex-start;
}

.footer__content .small {
    gap: 12px;
    font-size: var(--size-text);
    line-height: 1.45;
}

.footer__content .small.er {
    font-size: var(--size-caption);
    opacity: 0.5;
}

.footer__content .large {
    margin-top: -0.15em;
    margin-bottom: -0.15em;
    gap: 19px;
    font-size: var(--size-h4);
    line-height: var(--line-height-h4);
}

.footer__content .larger {
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
}

.footer__content a {
    text-decoration: none;
}

.footer__content .column {
    flex-basis: 50%;
    display: flex;
    flex-direction: column;
}

.footer__content .narrower.column {
    flex-basis: 40%;
}

.footer__content .wider.column {
    flex-basis: 60%;
}

.footer__content li.small {
    max-width: 19.5rem;
}


@media (max-width: 767px) {
    .footer__content .larger {
        font-size: var(--size-h4);
        line-height: var(--line-height-h4);
    }

    .footer__content li.small {
        max-width: none;
    }

    .footer__content li.small.er br {
        display: none;
    }

    .page__footer .lang {
        padding: var(--pad-content);
    }

    .footer__content ul {
        gap: 10px !important;
    }

    .page__footer .row {
        gap: 50px;
    }

    .footer__content .spacer {
        flex-basis: 30px;
    }
}

@media (min-width: 768px) and (max-width: 1200px) {
    .page__footer .row {
        gap: 10px;
    }

    .footer__content {
        flex-direction: column;
        gap: 40px !important;
    }
}.strike {
    pointer-events: none;
    display: inline-block;
    position: relative;
}

.strike__overlay {
    position: absolute;
    inset: 0;
}

.strike__through {
    border-radius: 100px;
    -webkit-box-decoration-break: clone;
            box-decoration-break: clone;
    
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='5 0 157 16' preserveAspectRatio='none'%3E%3Cpath fill='%23ff5a00' d='M145.59 2.18a12.2 12.2 0 0 1 8.7-2.04l.31.06 1.99.36c1.6.3 3.13.65 4.33 1.07l.48.17.06.02.05.02.97.37A6 6 0 0 1 161 14.02h-1.2l-2.45-.92-.43-.15c-.29-.1-1.06-.31-2.52-.59l-1-.18-.87-.17q-.1.03-.34.19l-1.97 1.3a10.3 10.3 0 0 1-10.65.7l-1.98-1.01c-.48-.25-.67-.21-.77-.2l-1.98.39c-2.59.5-5.18.3-7.66-.54l-1.6-.53-1.9 1.18a10.3 10.3 0 0 1-5.5 1.62c-2.08 0-3.94-.67-5.48-1.65l-1.98-1.24-.26-.14-1.86.41q-2.6.58-5.23.88l-1.98.23-4.6.53-1.99.23c-2.67.31-5.27-.14-7.7-1.19l-1.98-.86c-.44-.19-.66-.17-.87-.12l-1.98.46q-3.53.82-7.09.15l-1-.18-.98-.19h-.04q-.04-.02-.44.2l-1.98 1.16a11 11 0 0 1-9.98.72l-1.98-.83a10 10 0 0 0-2.89-.76l-1.98-.2a7 7 0 0 0-2.54.2l-1.98.5q-3.05.79-6.17.75l-1.98-.02a24 24 0 0 1-6.15-.89L34.1 13l-.99-.27a5 5 0 0 0-2.17-.15l-1.98.28a19 19 0 0 0-3.51.86l-1.98.68c-2.87 1-5.85.94-8.68-.12l-1.98-.74c.04.02-.21-.08-.93-.1q-1.03-.04-2.94.23l-1.95.3-.44.06H6a6 6 0 0 1-.49-11.98l1.65-.24c3.31-.5 6.85-.63 9.85.5l1.98.74c.25.09.35.08.56.01l1.98-.68a31 31 0 0 1 5.73-1.4L29.24.7a17 17 0 0 1 7.07.46l1.98.55q1.59.44 3.1.45l1.97.02q1.5.03 3.07-.37l1.98-.5q3.3-.86 6.7-.52l1.98.2q3.27.33 6.35 1.64l1.52.64 1.7-1C69.26.76 72.26.05 75.42.65L77.4 1q1.05.2 2.15-.05L81.53.5c2.87-.67 5.73-.34 8.37.8l1.98.86a3 3 0 0 0 1.54.28l1.97-.23 4.64-.54 1.98-.22q2-.24 4-.67L108 .34a12 12 0 0 1 9.1 1.72l1 .62.11.08.11-.07 1-.62A11.2 11.2 0 0 1 128.68.7l.33.1 1.98.67c.6.2 1.09.22 1.58.12l1.98-.38c2.98-.57 5.87-.04 8.47 1.28l1.18.6z'/%3E%3C/svg%3E");
    background-repeat: repeat-x;
    background-size: 170px 16px;
    background-position-x: 69%;
    background-position-y: 60%;
}

.strike__through, .strike__through * {
    color: transparent !important;
}

.strike__through *,
.strike__through *::after {
    background: none !important;
    display: inline;
}.process ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.process__phase { margin: var(--pad-content) 0; }
.process:first-child .process__phase:first-child { margin-top: 0; }

.process__title { font-size: var(--size-text); }
.process__step { font-size: var(--size-caption); }

.process__title, .process__step {
    position: relative;
    line-height: 1em;
    padding: 0.5rem 3.25rem;
    margin: 0;
    border-bottom: 1px solid var(--surface-5);
}

.process__title::before,
.process__step::before {
    color: var(--surface-5);
    content: '⬤';
    font-size: var(--size-caption);
    position: absolute;
    left: 0;
}

.process__step[data-label]::before { content: attr(data-label); }
.process__step:not([data-label])::before { color: var(--surface-2); }

@media (max-width: 414px) {
    .process__title, .process__step {
        padding-left: 1.75rem;
        padding-right: 0;
    }
}.project .text__content {
    line-height: var(--line-height-article);
}.mapboxgl-map{-webkit-tap-highlight-color:rgb(0 0 0/0);font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid transparent;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid transparent;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:rgba(0,0,0,.7);color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.sheet__container {
    line-height: var(--line-height-text);
}

.sheet__container.modal {
    --ease: ease-in;
    --duration: 210ms;

    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;

    height: 100%;
    z-index: 10;
    background-color: rgb(0 0 0 / 65%);
    padding-top: 80px;

    visibility: hidden;
    opacity: 0;
    transition: opacity var(--duration) var(--ease), visibility 0s var(--ease) var(--duration);
}

.sheet__container.modal.visible {
    --ease: ease-out;
    --duration: 300ms;

    visibility: visible;
    opacity: 1;
    transition: opacity calc(var(--duration) * 1) var(--ease), visibility 0s var(--ease) 0s;
}

.sheet__container.modal .sheet {
    transform: translateY(69%);
    transition: transform var(--duration) var(--ease);
}

.sheet__container.modal.visible .sheet {
    transform: translateY(0);
}

.sheet__container:not(.modal) {
    margin-top: -10px;
    max-height: 69%;
}



.sheet {
    height: 100%;
    position: relative;
    background: var(--background);
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;

    display: flex;
    flex-direction: column;
    
    --padding: 10px;
    --padding-vertical: 10px;
    --padding-short: 3px;
}

.sheet--handle {
    padding-top: calc(var(--padding-vertical) + 7px);
}

.sheet--handle::before {
    content: "";
    display: block;

    position: absolute;
    content: " ";
    left: 50%;
    top: 10px;
    width: 115px;
    height: 7px;
    border-radius: 7px;
    background: #d3d3d3;
    transform: translate(-50%);
}

.sheet__header {
    padding: var(--padding-vertical) var(--padding) var(--padding-short);
}

.sheet__footer {
    color: var(--dim-color);
    padding: 10px var(--padding);

    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.sheet__footer:empty {
    box-sizing: content-box;
    height: var(--btn-height);
}

.sheet__footer .left,
.sheet__footer .right {
    flex: 1 1 100%;
}

.sheet__footer .right { text-align: right; }
.sheet__footer .right > :first-child { margin-left: auto; }

.sheet__content {
    color: var(--dim-color);
    padding: var(--padding-short) var(--padding) 0;

    flex-grow: 1;
    overflow-y: auto;
}

.sheet__content > .list__box:first-child {
    min-height: 234px;
}

@media (max-width: 500px) {
    .sheet__footer .optional {
        display: none;
    }
}

@media (max-height: 700px) {
    .sheet__container.modal {
        padding-top: 44px !important;
    }
}

@media (max-height: 500px) {
    .sheet__container:not(.modal) {
        max-height: calc(100vh - 44px);
    }
}



input[type="checkbox"] {
    -webkit-appearance: none;
            appearance: none;
    border: none;

    margin: 0;
    margin-right: 10px;
    margin-bottom: calc(22px - var(--line-height-text));
    
    border-radius: 6px;
    width: 22px;
    height: 22px;
    background: var(--checkbox-bg);

    --checkbox-bg: var(--surface-1);
    --checkbox-bg-hover: #d3d3d3;

    --checkbox-active: #0066FF;
    --checkbox-active-hover: #0055e6;

    --checkbox-mark: white;

    transition: background-color 0.1s ease;
}

input[type="checkbox"]:focus-visible {
    outline: none;
    box-shadow: 0 0 0 4px var(--focus-color);
}

input[type="checkbox"]::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 6px;
    background: var(--checkbox-mark);
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.75 11.25L9.25 14.75L16.25 8.25' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
            mask-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.75 11.25L9.25 14.75L16.25 8.25' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");

    opacity: 0;
    transition: background-color 0.1s ease, opacity 0.1s ease;
}

input[type="checkbox"]:checked::before {
    opacity: 1;
}

input[type="checkbox"]:checked {
    background: var(--checkbox-active);
}

@media (hover: hover) {
    input[type="checkbox"]:hover {
        background: var(--checkbox-bg-hover);
    }

    input[type="checkbox"]:checked:hover {
        background: var(--checkbox-active-hover);
    }
}

.select {
    position: relative;
}

.select select {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    font-size: 1rem;
    padding: 0.5em;

    appearance: none;
    -webkit-appearance: none;
    border: none;
    outline: none;

    cursor: pointer;
}
.filter .sheet {
    --padding: 20px;
    --padding-vertical: 20px;
    --padding-short: 10px;
}

@media (max-height: 500px) {
    .filter .sheet {
        --padding-vertical: 10px;
        --padding-short: 5px;
    }
}

.filter__row {
    display: flex;
}

.filter__row > * {
    flex-shrink: 0;
}

.filter__row .tag {
    cursor: pointer;
    scroll-margin: var(--padding);
    scroll-padding: var(--padding);
}

.filter__row.tag__list {
    gap: 4px;
    flex-wrap: nowrap;
    overflow-x: auto;
    overscroll-behavior: contain;

    margin: var(--padding-vertical) calc(var(--padding) * -1) 0;
    padding: 0 var(--padding);
}

.filter__group {
    margin: 0 0 30px;
    scroll-margin: var(--padding);
    
    display: flex;
    flex-wrap: wrap;
}

.filter__group__header {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;

    --line-height-text: 22px;
    line-height: 22px;
    min-height: 22px;

    display: flex;
    align-items: center;
    -webkit-user-select: none;
            user-select: none;
    position: relative;
}

.filter__group__header input[type="checkbox"] {
    margin-right: 5px;
}

.filter__group__heading {
    background: var(--surface-1);
    flex-grow: 1;
    height: 2px;
    line-height: 2px;
    border-radius: 2px;
    text-align: center;
}

.filter__group__heading h2 {
    background: var(--surface-1);
    font-size: var(--size-small);
    border-radius: 6px;
    height: 22px;
    line-height: 22px;
    padding: 0 8px;
    margin: 0;
    display: inline-block;
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
}

.filter__group {
    display: block;
    column-width: 17.5em;
    column-gap: 0;
    margin-bottom: 25px;
}

.filter__group__header {
    column-span: all;
}

.filter__column {
    display: contents;
}

.filter__item {
    --focus-width-small: 4px;

    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    padding: var(--focus-width-small);
    margin: calc(-1 * var(--focus-width-small));
    margin-bottom: 5px;
}

.filter__item input[type="checkbox"] {
    margin-right: 6px;
}

.filter .select:not(.icon).btn {
    --select-icon-size: 16px;

    --btn-size: 14px;
    --btn-height: 44px;
    --btn-line-height: 18px;
    --btn-radius: 10px;

    background-position-x: 12px;
    padding: 13px 18px 15px 38px;

    background-color: var(--gray-background);
}

.filter .btn {
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
}

.filter .sheet__footer .left,
.filter .sheet__footer .right {
    font-size: 14px;
}

.filter .sheet__footer .left input[type="checkbox"] {
    margin-bottom: -6px;
}

.filter a.active {
    color: var(--color);
    text-decoration: none;
}

.filter__group.all-selected .filter__item input[type="checkbox"],
.filter__group:not(.all-selected) .filter__group__header input[type="checkbox"],
.filter:not(.all-selected) .sheet__footer input[type="checkbox"] {
    --checkbox-active: var(--checkbox-bg);
    --checkbox-active-hover: var(--checkbox-bg-hover);
    --checkbox-mark: var(--dim-color);
}
.page__nav .search__box {
    width: calc(var(--viewport-width) - 20px);
}

.page__nav .search__box .icon { flex-shrink: 0; }

.page__nav .search__input {
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
    flex-grow: 1;
    width: auto;
    min-width: 0;
    height: 100%;
    padding: 0;
    margin-left: -5px;
}

.map[data-style="dark"] .page__nav .search__input {
    --dim-color: rgb(0 0 0 / 0.69);
}

.page__nav .search__box .viewport__close {
    --halfspace: calc((var(--btn-height) - 21px) / 4);
    padding: var(--halfspace);
    margin: var(--halfspace);
    margin-left: 0;
    box-sizing: content-box;
    opacity: 0.5;
}

@media (hover: hover) {
    .page__nav .search__box .viewport__close:hover {
        opacity: 1;
    }
}.main-menu.viewport__view {
    color: var(--inverse-dim-color);
}

.main-menu .viewport__content a {
    color: var(--inverse-dim-color);
    text-decoration: none;
}

.main-menu .viewport__content a.active,
.main-menu .viewport__content a:focus-visible {
    color: var(--inverse-color);
}

@media (hover: hover) {
    .main-menu .viewport__content a:hover {
        color: var(--inverse-color);
    }
}

.main-menu nav ul {
    font-size: var(--size-h3);
    line-height: var(--line-height-h3);
}

.main-menu nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.main-menu nav ul li {
    padding: 0.25em 0;
}






.site-search .viewport__content > * {
    margin-bottom: 30px;
}

.site-search .feed {
    margin-left: -10px;
    margin-right: -10px;
}

.site-search .search__box {
    border-bottom: 2px solid var(--btn-color);
    margin-bottom: 20px !important;
}






#menu .viewport__content {
    padding: 20px 30px;
}

@media (min-width: 1150px) {
    #menu .main-menu .viewport__content {
        padding: 20px 56px 56px;
    }
}

#menu .menu__button,
.menu__button.single {
    position: fixed;
    bottom: 20px;
    right: 20px;
}

.menu__button.single {
    z-index: 9;
}

#menu a .lang__heading { display: none; }
#menu a .lang__label { display: inline !important; }

@media (hover: hover) {
    #menu a .lang__label {
        color: var(--inverse-dim-color);
    }

    #menu a:hover .lang__label {
        color: inherit;
    }
}

@media (max-width: 767px) {
    #menu {
        overflow-x: hidden;
    }

    #menu .lang__item.active { display: none; }
    #menu .lang__item .tag { margin-right: 0.5rem; }

    #menu .menu__button,
    .menu__button.single {
        bottom: 10px;
        right: 10px;
    }

    #menu {
        padding: var(--pad-content);
        padding-top: 65px;
        background: var(--inverse-gray-background);
    }

    #menu .row {
        gap: 20px;
        font-size: var(--size-caption);
        line-height: 1.25;
    }

    #menu nav ul {
        font-size: var(--size-h2);
        line-height: var(--line-height-h2);
    }

    .main-menu nav ul li {
        padding: 0.2em 0;
    }

    #menu .search__input {
        font-size: var(--size-h2);
        line-height: var(--line-height-h2);
        height: calc(var(--line-height-h2) + 20px);
    }


    #menu .viewport .tag--inline {
        font-size: 9px;
        line-height: 10px;
    }

    #menu nav { display: contents; }

    #menu .main-menu ul             { order: 1; margin-bottom: 30px; }
    #menu .site-search .search__box { order: 2; }
    #menu .site-search .tag__list   { order: 3; margin-bottom: 50px; }
    #menu .site-search .feed        { order: 4; margin-bottom: 40px; }
    #menu .site-search .feed__load  { order: 5; margin-bottom: 40px; }
    #menu .main-menu .row           { order: 6; }
}

@media (min-width: 768px) {
    #menu .lang__item:nth-child(2) {
        margin-left: 0;
    }

    #menu .row {
        gap: 10px;
    }

    .main-menu nav {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        min-height: 100%;
        gap: var(--pad-content);
    }
}


/*
#menu {
    padding: 74px 5% 20px;
}



#menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#menu nav {
    flex-grow: 1;
    color: #E6E6E68C;
    margin-bottom: 20px;
}

#menu .row {
    color: #E6E6E68C;
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
}

#menu a {
    color: inherit;
    text-decoration: none;
}

#menu a.active,
#menu a:active,
#menu a:focus-visible {
    color: white;
    outline: none;
}

#menu nav a {
    font-size: var(--size-h1);
}

@media (hover: hover) {
    #menu a:hover {
        color: white;
    }
}



@media (min-width: 1000px) {
    #menu {
        flex-direction: row;
    }

    #menu .row {
        flex-direction: column;
        flex-basis: 50%;
        padding-left: 5px;
        padding-top: 28px;
        gap: 45px;
    }

    #menu .column {
        flex-grow: 0;
    }
}

@media (max-width: 1300px) {
    #menu nav a {
        font-size: var(--size-h2);
    }

    #menu .row {
        padding-top: 18px;
        gap: var(--pad-content);
    }
}

@media (max-width: 768px) {
    #menu .lang__item.active,
    .lang.menu .lang__item.active { display: none; }

    #menu .lang__item .tag,
    .lang.menu .lang__item .tag {
        margin-right: 0.5rem;
    }
    #menu {
        padding: var(--pad-content);
        padding-top: 65px;
    }

    #menu nav a {
        font-size: var(--size-h1);
    }

    #menu .row { color: inherit }

    #menu .menu__button,
    .menu__button.single {
        bottom: 16px;
        right: 10px;
    }
}
*/.search__box {
    display: flex;
    align-items: center;
}

.search__input {
    background: transparent;
    border: none;
    outline: none;
    color: inherit;

    width: 100%;
    padding: 10px 0;
    display: inline-block;

    font-size: var(--size-h3);
    line-height: var(--line-height-h3);
    height: calc(var(--line-height-h3) + 20px);
}

.search__input::-webkit-input-placeholder {
    color: var(--dim-color);
}

.search__input::-webkit-search-decoration,
.search__input::-webkit-search-cancel-button,
.search__input::-webkit-search-results-button,
.search__input::-webkit-search-results-decoration {
    display: none;
}

.search__button {
    -webkit-appearance: none;
            appearance: none;
    border: none;
    outline: none;
    background: transparent;
    color: inherit;
    padding: 0;
    margin: 0;
    display: block;
}

.search__button svg {
    display: block;
}.viewport {
    background: black;
    display: flex;

    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;

    --gap: 10px;
    padding: var(--gap);

    --left-width: 100%;
    --right-width: 100%;
    --drag-overflow: 0px;

    --viewport-width: calc((100vw - var(--gap) * 3) / 2);
}

.viewport .page__nav__inner {
    background: transparent;
}

.viewport .page__nav > .fixed {
    transform: none !important;
}



.viewport__separator {
    --size: 4px;

    position: relative;
    flex-basis: calc(var(--gap) + var(--size) / 2);
    flex-shrink: 0;

    -webkit-user-select: none;

            user-select: none;
}

.viewport__separator[data-resizable="true"] {
    cursor: col-resize;
}

.viewport__separator::before {
    position: absolute;
    content: " ";
    left: calc(var(--gap) / 2 - var(--size) / 4);
    top: 50%;
    height: 115px;
    width: var(--size);
    border-radius: var(--size);
    background: rgb(211, 211, 211);
    transform: translateY(-50%);
    
    opacity: 0.75;
    transition: opacity 150ms ease-in-out;
}

.viewport__separator[data-resizable="false"]:before {
    opacity: 0;
}

.viewport__separator[data-resizable="true"]:active:before {
    opacity: 1;
}


.viewport__view {
    position: relative;
    background: var(--background);
    color: var(--color);
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    /*flex-basis: 50%;*/
    contain: size;
    width: var(--left-width);
    border-radius: 10px;
    overflow: hidden;
}

.viewport__separator + .viewport__view {
    width: var(--right-width);
}

.viewport__view, .viewport__separator {
    left: var(--drag-overflow);
}

.viewport:not(.viewport--dragging) > * {
    transition: left 200ms cubic-bezier(.11,0,.07,1.61);
}

.viewport--dark {
    --gray-0: hsl(0, 0%, 9.5%);
    --gray-1: hsl(0, 0%, 13.5%);
    --gray-2: hsl(0, 0%, 17.5%);
    --gray-3: hsl(0, 0%, 21.5%);
    --gray-4: hsl(0, 0%, 25.5%);
    --gray:   hsl(0, 0%, 65%);

    --red-0: hsl(14, 100%, 9.5%);
    --red-1: hsl(14, 100%, 13.5%);
    --red-2: hsl(14, 100%, 17.5%);
    --red-3: hsl(14, 100%, 21.5%);
    --red-4: hsl(14, 100%, 25.5%);

    --green-0: hsl(120, 95%, 9.5%);
    --green-1: hsl(120, 95%, 13.5%);
    --green-2: hsl(120, 95%, 17.5%);
    --green-3: hsl(120, 95%, 21.5%);
    --green-4: hsl(120, 100%, 25.5%);

    --blue-0: hsl(216, 100%, 9.5%);
    --blue-1: hsl(216, 100%, 13.5%); /* blue-lightest */
    --blue-2: hsl(216, 100%, 17.5%); /* blue-light */
    --blue-3: hsl(216, 100%, 21.5%); /* blue-mid */
    --blue-4: hsl(216, 100%, 25.5%);

    --surface-0: var(--gray-0);
    --surface-1: var(--gray-1);
    --surface-2: var(--gray-2);
    --surface-3: var(--gray-3);
    --surface-4: var(--gray-4);
    --surface:   var(--gray);

    --accent-0: var(--blue-0);
    --accent-1: var(--blue-1);
    --accent-2: var(--blue-2);
    --accent-3: var(--blue-3);
    --accent-4: var(--blue-4);
    --accent:   var(--blue);

    --color: var(--inverse-color);
    --background: var(--gray-0);
    --gray-background: #222222;
    --dim-color: var(--inverse-dim-color);

    --tag-light-color: var(--gray);
    --tag-dark-color: var(--gray-2);
    --btn-color: #2D2D2D;
    
    --scroll-color: var(--inverse-dim-color);
    --scroll-hover: var(--inverse-color);
}


.viewport__header {
    padding: 10px;
    display: flex;
    min-height: 42px;
}

.viewport__content {
    width: 100%;
    height: 100%;
    padding: 0 30px;

    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    container: content / inline-size;
}

.viewport__spacer {
    flex-grow: 1;
    flex-basis: 10px;
}

.viewport__close {
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19.3848 1L0.99999 19.3848' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M1 1L19.3848 19.3848' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: center;
    
    -webkit-appearance: none;
    
            appearance: none;
    border: none;
    outline: none;
    font-size: inherit;
    margin: 0;

    min-width: 21px;
    height: 21px;
}



@media (max-width: 767px) {
    .viewport--hide {
        padding: 0 !important;
    }

    .viewport--hide .viewport__separator {
        display: none;
    }

    .viewport--hide .viewport__view {
        border-radius: 0;
    }

    .viewport--hide .viewport__view:not(.primary) {
        display: none;
    }

    .viewport__close {
        background-size: 17px;
    }


    .viewport--collapse,
    .viewport--collapse .viewport__view,
    .viewport--collapse .viewport__header,
    .viewport--collapse .viewport__content {
        display: contents;
    }
}

@media (min-width: 768px) {
    .viewport__view + .viewport__view {
        margin-left: 12px;
    }
}



.layout--content {
    --content-gap: 40px;
}

.layout--content .section > h2 {
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
    margin-bottom: var(--content-gap);
    margin-left: -0.12ex;
}

.layout--content h4 {
    margin: var(--content-gap) 0;
    margin-left: -0.12ex;
}

.layout--content .viewport__content {
    padding-bottom: calc(var(--btn-height) + 20px);
}

.layout--content .viewport__content > * {
    margin: var(--content-gap) 0;
}

.layout--content .viewport__content > :first-child {
    margin-top: calc(var(--content-gap) - 0.3em);
}

@media (min-width: 451px) {
    .layout--content .viewport__content > .text {
        padding-right: 10%;
    }
}

.layout--content .viewport__content .slideshow,
.layout--content .viewport__content .grid--1-col .grid__item > .image img,
.layout--content .viewport__content .grid--1-col .grid__item > .video,
.layout--content .viewport__content .section__content > .image img,
.layout--content .viewport__content .section__content > .video,
.layout--content .viewport__content > .image img,
.layout--content .viewport__content > .video {
    margin-left: -10px;
    margin-right: -10px;
    border-radius: var(--rad-media);
    background: var(--inverse-background);
    min-width: calc(100% + 20px);
}

.layout--content .feed,
.layout--content .grid__item .card,
.layout--content .viewport__content > .disclosure,
.layout--content .section__content > .notice,
.layout--content .section__content > .tabs__list {
    margin-left: -10px;
    margin-right: -10px;
}

.layout--content .splide {
    aspect-ratio: 5 / 3;
}





/*

.viewport__view .viewport__content::-webkit-scrollbar {
    background: var(--scrollbar-track-color);
    
    height: var(--scroll-gutter);
    width: var(--scroll-gutter);
}

.viewport__view .viewport__content::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb-color);
    background-clip: padding-box;
    border: calc((var(--scroll-gutter) - var(--scroll-size)) / 2) solid transparent;
    border-radius: 100px;
}

.viewport__view .viewport__content::-webkit-scrollbar-thumb:hover {
    background-color: var(--scroll-hover);
}

*/.form {
    container: form / inline-size;
    --gap: var(--form-gap);

    --mod-color-solid: #000;
    --mod-color-trans: #717171;

    --del-color-solid: #FF3D00;
    --del-color-trans: #f19071; /* #FF3D0080; */

    --add-color-solid: #00DE00;
    --add-color-trans: #71e071; /* #00DE0080; */

    
}

.form__field {
    container: form-field / inline-size;
}

.form--inline {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
}

.card .form--inline {
    flex-basis: 100%;
    flex-direction: row;
    gap: var(--gap);
}

.card .form--inline .btn {
    height: 43px;
}

/*
.form--inline:invalid button[type="submit"] {
    filter: saturate(0);
}
*/

.form__field,
.form__card,
.form__stack {
    display: flex;
    gap: var(--gap);
    flex-grow: 1;
}

.form__field,
.form__review,
.form__card {
    background: var(--gray-background);
    border-radius: var(--form-radius);
    padding: var(--form-pad);
    
}

.form__field,
.form__stack {
    flex-direction: column;
}

.form__input[data-state="added"]    { border-color: var(--add-color-trans); }
.form__input[data-state="removed"]  { border-color: var(--del-color-trans); }
.form__input[data-state="modified"] { border-color: var(--mod-color-trans); }

.form__input[data-state="added"]:focus    { border-color: var(--add-color-solid); }
.form__input[data-state="removed"]:focus  { border-color: var(--del-color-solid); }
.form__input[data-state="modified"]:focus { border-color: var(--mod-color-solid); }

.form__label[data-state="added"]::before    { background: var(--add-color-solid); }
.form__label[data-state="removed"]::before  { background: var(--del-color-solid); }
.form__label[data-state="modified"]::before { background: var(--mod-color-solid); }

.form__checkmarked {
    display: flex;
    align-items: flex-end;
    gap: var(--form-pad);
    flex-grow: 1;
}

.form__checkmarked > * { flex-grow: 1;}

.form__checkmark {
    flex-grow: 0;
    flex-shrink: 0;
    border-radius: var(--form-input-height) !important;
    --btn-height: var(--form-input-height);
}

.form__checkmark:disabled [stroke] { stroke: var(--dim-color); }
.form__checkmark:disabled {
    --bg-active: var(--bg);
}

.form__checkmark:enabled[aria-checked="false"] [stroke] { stroke: white; }
.form__checkmark:enabled[aria-checked="false"] {
    --bg: black;
    --bg-active: black;
}

.form__checkmark:enabled[aria-checked="true"] [stroke] { stroke: white; }
.form__checkmark:enabled[aria-checked="true"] {
    --bg: var(--blue);
    --bg-active: var(--blue);
}

.form__card {
    flex-direction: row;
    gap: var(--form-pad);
    position: relative;
}

.form__card .form__label.dim {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-shrink: 1;
    contain: inline-size;
    margin-right: 5em;
}

.form__card__btn {
    position: absolute;
    top: 0;
    right: 0;
    padding: var(--form-pad);
    margin: 0;
    -webkit-appearance: none;
            appearance: none;
    border: none;
    outline: none;
    background: none;
    font-size: var(--form-label);
    line-height: 1em;
    color: #ff3c0088;
}

.form__card__btn:focus {
    color: #ff3c00;
}

@media (hover: hover) {
    .form__card__btn:hover {
        color: #ff3c00;
    }
}

.form__icon {
    background: var(--tag-light-color);
    border-radius: var(--form-btn-radius);
    overflow: hidden;
    
    display: flex;
    align-items: center;
    justify-content: center;
}

.form__icon--blue { background: var(--blue-2); }

.form .card__text .btn,
.form__card .btn.icon,
.card .form--inline .btn {
    --btn-size: 1em;
    --btn-line-height: 1.2em;
    --btn-height: var(--form-input-height);
    --btn-radius: var(--form-input-radius);
    border-radius: var(--btn-radius);
}

.form__slides .form__icon {
    width: 161px;
    height: 161px;
}

.form__slides .form__icon--maintain {
    height: 100%;
}

.form__slides .form__icon .image {
    background: var(--inverse-gray-background);
}

.form__slides .form__icon .image,
.form__slides .form__icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (hover: hover) {
    .form__slides .form__icon:hover img {
        object-fit: contain;
    }
}

.form__slides .form__icon svg {
    width: 90px;
    height: 90px;
    opacity: 0.5;
}

.form__slides .form__label {
    contain: inline-size;
    margin-right: 5em;
}

.form__slides .form__label__inner {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 4px 0;
    margin: -4px 0;
}

.form__slides .form__label__inner.dim {
    flex-shrink: 0;
}

.form__slides .form__label__inner:not(:empty) + .form__label__inner {
    margin-left: 0.25em;
}

.form__droparea {
    border: 2px solid var(--tag-light-color);
    border-radius: var(--form-input-radius);
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    font-size: var(--tag-size-small);
}

.form__droparea[data-dragging="true"] {
    border-style: dashed;
}

.form__droparea[data-over="true"] {
    border-color: var(--blue-2);
}

.form__label {
    font-size: var(--form-label);
    line-height: 1em;
    display: flex;
}

.form__label::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background: var(--tag-light-color);
    border-radius: 1em;
    margin-right: 0.35em;
    flex-shrink: 0;
}

/*
.form__field[data-state="valid"] .form__label::before {
    background: var(--color);
}
*/

.form__field[data-state="error"] .form__label::before {
    background: var(--red);
}

.form__field[data-state="error"] .form__input:focus {
    border-color: var(--light-red);
}

.form__inline__label {
    position: relative;
}


.form__input__info {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.form__input__info .dim {
    font-size: var(--size-caption-mobile);
}

.form__inline__label .form__input {
    overflow: hidden;
    text-overflow: ellipsis;
}

.form__inline__label input[type="file"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.form__floating__label {
    position: relative;
}

.form__floating__label span {
    will-change: top, font-size, line-height;
    transition: top 0.1s ease-in-out, font-size 0.1s ease-in-out, line-height 0.1s ease-in-out;

    position: absolute;
    top: 9px;
    left: 14px;
    line-height: var(--form-input-line-height);
}

.form__floating__label .form__input {
    will-change: padding-top, background-color;
    transition: padding-top 0.1s ease-in-out, background-color 0.1s ease-in-out;
}

.form__floating__label.state--open .form__input {
    padding-top: calc(7px + var(--form-label) * 1.5);
}

.form__floating__label.state--open textarea.form__input {
    min-height: calc(var(--form-label) * 1.5 + var(--form-input-height));
}

.form__floating__label.state--open span {
    top: 7px;
    font-size: var(--form-label);
    line-height: 1.5em;
}

.form__floating__label.state--open textarea + span {
    padding: 5px 12px 4px;
    left: 2px;
    top: 2px;
    right: 19px;
    background: var(--gray-background);
    border-top-left-radius: calc(var(--form-input-radius) + 1px);
}

.form__inline__label.state--invalid .form__input,
.form__floating__label.state--invalid .form__input {
    border-color: var(--light-red);
}

.form__value {
    position: relative;
}

.form__value__btn {
    --width: 1px;
    --color: #A0A0A0;

    position: absolute;
    z-index: 1;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    padding: 0;
    border-radius: 100px;
    box-shadow: inset 0 0 0 var(--width) var(--color);
}

@media (hover: hover) {
    .form__value__btn:hover {
        --color: var(--dim-color);
    }

    .form__value__btn:hover:focus-visible {
        --color: var(--focus-color-hover);
    }
}

.form__value__btn:focus-visible {
    outline: none;
    --width: 2.5px;
    --color: var(--focus-color);
}

.form__value__btn svg { display: block; }
.form__value__btn svg .f { fill: var(--color); }
.form__value__btn svg .s { stroke: var(--color); }

.form__input {
    color: var(--color);
    font-size: var(--form-input);

    width: 100%;
    background: transparent;
    line-height: normal;
    outline: none;
    border: 2px solid var(--tag-light-color);
    border-radius: var(--form-input-radius);
    margin: 0;
    padding: var(--form-input-pad);
    line-height: var(--form-input-line-height);

    --border-width: 2px;
}

textarea.form__input {
    --rows: 3;
    --initial-height: calc(var(--form-input-line-height) * var(--rows, 3) + 14px + var(--border-width) * 2);
    
    resize: vertical;
    display: block;
    min-height: var(--initial-height);
    field-sizing: content;
}

.form__input:disabled {
    color: var(--dim-color);
}

.form__input::placeholder {
    color: var(--dim-color);
}

.form__input:focus,
.form__input:focus-within {
    border-color: var(--blue-2);
}

@media (hover: hover) {
    .form__input,
    .form__droparea {
        transition: background-color 0.1s ease-in-out;
    }

    .form__input:not(:focus):not([data-disabled]):not([disabled]):hover,
    .form__droparea:hover,
    .form__value:hover .form__input:not(:focus):not([data-disabled]):not([disabled]) {
        background-color: var(--tag-light-color);
    }


    .form__floating__label textarea + span {
        transition: background-color 0.1s ease-in-out;
    }

    .form__floating__label.state--open textarea.form__input:not(:focus):not([data-disabled]):not([disabled]):hover + span {
        background: var(--tag-light-color);
    }

}

.form__value__btn + .form__input {
    padding-right: var(--form-input-height);
}

.form .btn--small {
    border-radius: var(--form-btn-radius);
    white-space: normal;
    text-wrap: balance;
    text-align: center;
    font-weight: normal;
}

.form__button {
    background: #DAE9FF;
    display: flex;
    flex-direction: column;
    border-radius: var(--form-btn-radius);
}

.form__button__info {
    font-size: var(--size-caption-mobile);
    line-height: 1.3;
    text-wrap: pretty;
    padding: var(--gap);
    color: var(--blue);
}

.form__button__info ul {
    margin: 0;
    padding: 0.1em 0.4em;
    display: flex;
    flex-direction: column;
    gap: 0.5em;
}

.form__button__info li {
    list-style: none;
    display: flex;
    align-items: center;
}

.form__button__info li.warn::before { background: var(--del-color-trans) }
.form__button__info li::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background: var(--blue);
    border-radius: 1em;
    margin-right: 0.5em;
}

.form__row {
    display: flex;
    gap: var(--gap);
    align-items: flex-start;
}

.form__row > * {
    flex-basis: 100%;
}

@container form (max-width: 420px) {
    .form__row {
        flex-direction: column;
        align-items: stretch;
    }

    .form__slides .form__card {
        flex-direction: column;
        gap: var(--gap);
    }

    .form__slides .form__icon {
        margin: 2px 0;
        width: 100%;
        height: auto;
    }

    .form__slides .form__icon .image,
    .form__slides .form__icon img {
        height: auto;
    }

    .form__slides .form__card > .form__stack {
        display: contents;
    }

    .form__slides .form__label {
        order: -1;
    }

    .form__icon--optional {
        display: none;
    }

    .form__droparea {
        aspect-ratio: 5 / 3;
    }

    .form__checkmarked {
        flex-direction: column;
        align-items: stretch;
    }

    .form__checkmark {
        align-self: flex-end;
    }
}



fieldset:first-child {
    margin-top: 0;
}

fieldset {
    margin: var(--pad-content) calc(var(--form-pad) * -1);
    padding: 0;
    border: none;

    display: flex;
    flex-direction: column;
    gap: var(--gap);
}

fieldset legend {
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
    margin: var(--pad-content) var(--form-pad);
    padding: 0;
}






.form__grid {
    --bg: var(--gray-background);
    --border: var(--tag-light-color);
    --outline: var(--border);
    --focus: var(--blue-2);
    --prefix-width: calc(var(--form-input-height) - 4px);
    
    display: grid;
    grid-template-columns: var(--prefix-width) 1fr 50%;
}

.form__grid .form__label { grid-column: 1 / span 2; }
.form__grid .form__label + .form__label { grid-column: 3; }
.form__grid .form__label + .form__label::before { display: none; }

.form__grid.grid--values {
    position: relative;
    background: var(--border);
    outline: 2px solid var(--outline);
    border-radius: var(--form-input-radius);
    gap: 2px;
}

.form__grid.grid--input {
    position: relative;
    grid-template-columns: var(--prefix-width) calc(50% - var(--prefix-width) - 4px) var(--prefix-width) 1fr;
    background: var(--border);
    outline: 2px solid var(--outline);
    border-radius: var(--form-input-radius);
    gap: 2px;
}

.grid--input .form__input:nth-last-child(1 of .form__input) { padding-right: var(--form-input-height); }
.grid--input .form__input:last-child { padding-right: var(--form-input-pad-horizontal) !important; }

.form__grid.grid--values,
.form__grid.grid--input {
    margin: 2px !important;
}

.form__grid:first-child { margin-top: 0; }
.form__grid:last-child { margin-bottom: 0; }

.form__grid__prefix {
    width: var(--prefix-width);
    line-height: var(--prefix-width);
    color: var(--dim-color);
    font-weight: 550;
    font-size: var(--form-label);
    text-transform: uppercase;
    text-align: center;
    background: var(--bg);
}

.form__grid .form__input {
    border: none;
    border-radius: 0;
    background: var(--bg);
    --border-width: 0px;
}

@supports (field-sizing: content) {
    .grid--values textarea {
        min-height: auto;
    }
}

.form__grid .form__value__btn {
    transform: none;
    top: auto;
    bottom: calc(var(--form-input-pad-vertical) - 2px);
    right: 6px;
}

.form__grid .form__input:focus {
    outline: 2px solid var(--focus);
    outline-offset: 0px;
    position: relative;
}

.grid--values .form__input:nth-child(3n) {
    border-top-right-radius: var(--form-input-radius);
}

.grid--values .form__input:first-child {
    grid-column: 1 / span 2;
    border-top-left-radius: var(--form-input-radius);
    border-bottom-left-radius: var(--form-input-radius);
}

.grid--values .form__input:nth-last-child(1 of .form__input) {
    border-top-right-radius: 0;
    border-bottom-right-radius: var(--form-input-radius);
}

.grid--input .form__input:nth-last-child(1 of .form__input) {
    border-top-right-radius: var(--form-input-radius);
    border-bottom-right-radius: var(--form-input-radius);
}

.grid--values[data-state="modified"] { --outline: var(--mod-color-trans) }
.grid--values[data-state="removed"]  { --outline: var(--del-color-trans) }
.grid--values[data-state="added"]    { --outline: var(--add-color-trans) }


.grid--values[data-state="added"] .form__input { grid-column: 2 / span 2; }
.grid--values[data-state="added"] .form__input:disabled { display: none; }
.grid--values[data-state="added"] .form__input:nth-child(2n) { border-top-right-radius: var(--form-input-radius); }
.grid--values[data-state="added"] .form__input:nth-last-child(1 of .form__input:enabled) { border-bottom-right-radius: var(--form-input-radius); }



.form__card[data-state="added"] {
    outline: 2px solid var(--add-color-trans);
    outline-offset: -2px;
}

.form__card[data-state="removed"] {
    outline: 2px solid var(--del-color-trans);
    outline-offset: -2px;
}

.form__card[data-approved="true"],
.form__field[data-approved="true"] {
    outline: 2px solid var(--blue-3);
    outline-offset: -2px;
}

.form__field[data-approved="true"] .form__label[data-state="modified"]::before {
    background: var(--blue);
}

@container form-field (max-width: 420px) {
    .form__grid.grid--input {
        grid-template-columns: var(--prefix-width) 1fr;
    }

    .grid--input .form__input:nth-last-child(1 of .form__input) {
        border-top-right-radius: 0;
    }
}.block {
    padding: 12px;
    color: var(--color);
    background: var(--surface-1);
    border-radius: 20px;
    --rad-image: 10px;

    display: flex;
    gap: var(--gap-v);
    flex: 1;

    --gap-h: 12px;
    --gap-v: 12px;

    --pad-h: 0;
    --pad-v: 0;
}

.grid__item > .block:only-child {
    min-height: 100%;
}

.block__wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--gap-v);
    flex-grow: 1;
}

.block[data-variant="card"] {
    flex-direction: column;

    --pad-h: 10px;
    --pad-v: 10px;
}

.block[data-variant="banner"] .block__media {
    aspect-ratio: 1;
    width: 108px;
    flex-shrink: 0;
}

.block[data-variant="card"] .block__media {
    aspect-ratio: 1;
    max-height: 420px;
    width: 100%;
    contain: strict;
    border-radius: var(--rad-image);
}

.block__media img,
.block__media svg {
    border-radius: var(--rad-image);
}

.block__media .image {
    height: 100%;
}

.block__media .image img {
    height: 100%;
    object-fit: cover;
}

.block__media:empty {
    display: none;
}

.block__content {
    display: flex;
    flex-direction: column;
    gap: var(--gap-v);
}

.block__content > * { margin: 0; }
.block__content > .text { padding: 0 var(--pad-h);}
.block__content > .text:first-child { padding-top: var(--pad-v); }
.block__content > .text:last-child { padding-bottom: var(--pad-v); }
.block__content > .text + :not(.text) { margin-top: var(--pad-v); }
.block__content > :not(.text) + .text { margin-top: var(--pad-v); }

.block[aria-haspopup] {
    cursor: pointer;
}

.block__action {
    display: flex;
    gap: var(--gap-v);
    margin-top: auto;
}

.block__action .btn,
.block__content > .btn {
    text-align: center;
    border-radius: var(--rad-image);
    white-space: normal;
}

.block__action .btn {
    flex: 1;
}

.block[data-variant="banner"] > .block__wrapper > .block__content {
    gap: 0;
}

.block[data-variant="banner"] > .block__wrapper > .block__content > p {
    text-wrap-style: balance;
}

.block[data-variant="banner"] > .block__wrapper > .block__content h4 {
    font-size: inherit;
    line-height: inherit;
    font-weight: inherit;
    margin: 0;
}

.block[data-variant="card"] {
    --content-padding: 10px;
}

.block[data-variant="card"] .card { border-radius: var(--rad-image); }
.block[data-variant="card"] .card--compact .card__media { border-radius: 6px; }

@container content (min-width: 40em) {
    .block[data-variant="card"] {
        flex-direction: row;
        padding: 15px;
        gap: var(--gap-h);

        --gap-h: 20px;
        --gap-v: 14px;

        --pad-h: 12px;
        --pad-v: 12px;

        --rad-image: 10px;
        min-height: 45cqw !important;
    }

    .block[data-variant="card"] > .block__media {
        flex-basis: 50%;
        max-height: 100%;
        aspect-ratio: unset;
    }

    .block[data-variant="card"] > .block__wrapper {
        flex-basis: 50%;
    }

    .block[data-variant="card"] > .block__wrapper > .block__content {
        flex-basis: 100%;
    }

    .block[data-variant="card"] > .block__wrapper > .block__content > .text:has(+ :not(.text)) {
        flex-grow: 1;
    }
}

@media (max-width: 767px) {
    .block[data-variant="banner"] > .block__media {
        width: 88px;
    }
}.grid {
    display: grid;
    gap: var(--content-gap) var(--grid-gap);
    grid-template-columns: repeat(min(var(--grid-columns), var(--max-columns)), 1fr);
    grid-auto-flow: dense;
    align-items: stretch;
    justify-items: center;

    --max-columns: 10;
}

#sections.grid {
    gap: var(--grid-gap);
}

@media (max-width: 920px) {
    #sections.grid {
        --grid-columns: 1 !important;
    }
}

@media (min-width: 640px) and (max-width: 767px) {
    #sections.grid {
        grid-template-columns: 1fr 1fr;
    }
}

.grid.align--center {
    align-items: center;
}

.grid.align--bottom {
    align-items: flex-end;
}

@media (max-width: 767px) {
    .grid {
        grid-template-columns: 1fr;
    }

    .grid__item, .grid__caption {
        width: 100% !important;
    }
}

.grid__item {
    width: 100%;
    container: content / inline-size;
}

.limit .section__content .grid--1-col .grid__item:not(.span),
.limit .section__content .grid--1-col .grid__caption {
    width: 65%;
}

.grid__item.span {
    grid-column: 1 / -1;
}

.grid__item.align--left {
    justify-self: start;
}

.grid__item.align--right {
    justify-self: end;
}

.grid__item .video {
    width: 100% !important;
}

/*
@media (min-width: 768px) {
    .grid--1-col .card__title {
        font-size: var(--size-h1);
    }

    .grid--2-col .card__title {
        font-size: var(--size-h2);
    }

    .grid--3-col .card__title {
        font-size: var(--size-h3);
    }
}
*/

.grid__caption {
    grid-column: 1 / -1;
    font-size: var(--size-caption);
    line-height: var(--line-height-caption);
    margin-top: calc(var(--content-gap) * -1 + 15px);
    opacity: 0.5;
    width: 100%;
}

.grid__caption * {
    margin: 0;
}

@media (max-width: 1650px) {
    .grid--4-col:not(.grid--full) {
        --max-columns: 3;
    }
}

@media (max-width: 1250px) {
    .grid--4-col:not(.grid--full) {
        --max-columns: 2;
    }
}

@media (max-width: 900px) {
    .grid--4-col:not(.grid--full) {
        --max-columns: 1;
    }
}



@media (max-width: 1450px) {
    .grid--4-col.grid--full {
        --max-columns: 2;
    }
}



@media (max-width: 1150px) {
    .grid--3-col {
        --max-columns: 2;
    }
}
.group {
    display: flex;
    gap: var(--grid-gap);
    flex-direction: column;
}

.group[data-layout="horizontal"] {
    flex-direction: row;
    flex-wrap: wrap;
}

.group[data-layout="horizontal"] > * {
    flex: 1;
}

.group__item {
    display: flex;
    flex-direction: column;
    container: content / inline-size;
    margin: auto;
}

.group__item[data-full="true"] {
    flex-basis: 100%;
}

.section__content > .group[data-layout="vertical"] {
    gap: var(--content-gap);
}.notification__list {
    --columns: 3;
    --lines: 2;
    --gap: 14px;
}

.notification__list__inner {
    display: flex;
    align-items: stretch;
    margin: calc(-1 * var(--gap)) 0 0 calc(-1 * var(--gap));
}

.notification {
    color: var(--notification-color);
    background: var(--notification-bg);
    -webkit-backdrop-filter: blur(80px);
            backdrop-filter: blur(80px);

    flex-shrink: 0;
    flex-basis: calc(100% / var(--columns) - var(--gap));
    
    border: none;
    outline: none;
    -webkit-appearance: none;
            appearance: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    text-decoration: none;
    text-align: left;

    margin: var(--gap) 0 0 var(--gap);
}

.notification__tags {
    margin-bottom: 0.5em;
}

.notification__text {
    font-size: var(--size-caption);
    line-height: 1.45em;
    padding: 2.5px 0;
    margin-bottom: 0.5em;
    color: rgba(255, 255, 255, 0.5);
}

.notification__title {
    font-size: var(--size-text);
    margin-top: 0.65em;
    flex-basis: 100%;
    line-height: 1.45em;
    height: calc(var(--lines) * 1.45em);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-self: flex-end;
}

.notification__title__trim {
    max-height: calc(var(--lines) * 1.45em);
    overflow: hidden;
}

.live {
    color: white;
}

.live::before {
    content: " ";
    width: 0.777em;
    height: 0.777em;
    border-radius: 1em;
    display: inline-block;
    background: #f00;
    margin-bottom: -1.5px;
    margin-right: 5px;

    animation: 1s ease-in-out infinite alternate pulse;
}

@keyframes pulse {
    from {
      opacity: 1;
    }
  
    to {
      opacity: 0.5;
    }
  }

.page-dots {
    display: flex;
    justify-content: center;
    margin-top: 5px;
}

.page-dot {
    width: 12px;
    height: 12px;
    border-radius: 12px;
    margin: 5px;
    background: var(--btn-color);
    -webkit-backdrop-filter: blur(9px);
            backdrop-filter: blur(9px);
}

.page-dot[aria-current] {
    background: var(--green);
}

.page-dot:only-child {
    display: none;
}

@media (max-width: 767px) {
    .notification__list {
        --columns: 1;
    }

    .notification__list__inner {
        margin-left: -20px;
        margin-right: -20px;

        overflow: auto;
        scroll-snap-type: x mandatory;
    }

    .notification__list__inner::after {
        content: "";
        display: block;
        width: 10px;
        height: 10px;
        flex-shrink: 0;
    }

    .notification {
        scroll-snap-align: center;
        scroll-snap-stop: always;
        border-radius: 18px;
        padding: 14px;
        padding-bottom: 12px;
        flex-basis: calc(100% - 20px);
    }

    .notification:first-child {
        margin-left: 10px;
    }

    .notification__title {
        margin-top: 0.75em;
    }
}

@media (min-width: 768px) {
    .page-dots {
        display: none;
    }

    .notification__list__inner {
        flex-wrap: wrap;
    }

    .notification {
        border-radius: 20px;
        padding: 14px;
        padding-bottom: 12px;
    }
}

@media (min-width: 768px) and (max-width: 1279px) {
    .notification__list {
        --columns: 2;
    }
}

@media (hover: hover) {
    .notification:hover {
        box-shadow: 0 0 0 var(--focus-width-small) var(--notification-outline);
    }
}

.notification:focus-visible {
    outline: none;
    box-shadow: 0 0 0 var(--focus-width-small) var(--focus-color);
}.section {
    margin: calc(var(--pad-content) * 4.5) 0;
    position: relative;
    scroll-margin-top: var(--pad-content);
}

.outline + .section {
    margin-top: var(--pad-content);
}

.section__content {
    display: flex;
    flex-direction: column;
    gap: var(--content-gap);
}

.section:first-child {
    margin-top: 0;
}

.section.description {
    margin-bottom: var(--content-gap);
}

.style--perex + .section {
    margin-top: var(--content-gap);
}

.section h2 {
    margin-top: 0;
}

.section h2 a:focus-visible {
    text-decoration-thickness: var(--focus-width-large);
}


.section__link, .section__select {
    position: absolute !important;
    line-height: 22px;
    top: 30px;
    top: calc((var(--line-height-h2) - 54px) / 2);
    right: var(--pad-content);

    padding: 16px 22px;
    color: inherit;
    text-decoration: none;
    border-radius: 100px;
}

.section__select {
    background: #D9D9D9;
}

.section__link::after {
    content: " ";
    display: inline-block;
    margin-left: 7px;
    width: 21px;
    height: 12px;
    background-image: url("data:image/svg+xml,%3Csvg width='21' height='12' viewBox='0 0 21 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.0647 12L14.0803 11.0156L18.1329 6.97585H0.682617V5.5696H18.1329L14.0803 1.51705L15.0647 0.545455L20.792 6.27273L15.0647 12Z' fill='black'/%3E%3C/svg%3E%0A");
}

.section__select::after {
    content: " ";
    display: inline-block;
    margin-left: 10px;
    width: 15px;
    height: 18px;
    background-image: url("data:image/svg+xml,%3Csvg width='15' height='20' viewBox='0 0 15 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.27246 8L7.63642 14.364L14.0004 8' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}

.section__link:focus-visible {
    border: none;
    outline: none;
    background: var(--focus-color);
}

@media (hover: hover) {
    .section__link:hover {
        background: #D9D9D9;
    }

    .section__link:hover:focus-visible {
        background: var(--focus-color-hover);
    }
}

@media (max-width: 400px) {
    .section__select {
        width: var(--btn-height);
        height: var(--btn-height);
    }

    .section__select .select__label {
        display: none;
    }

    .section__select::after {
        margin-left: 0;
    }

    .section__select::after {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
}.slider__content {
    margin: -10px var(--pad-content-inv);
    padding: 10px 0;
    scroll-padding: var(--pad-content);
    display: flex;
    gap: var(--grid-gap);
    overflow-x: auto;
    overflow-y: hidden;
}

@media (hover: hover) {
    .slider__content { overscroll-behavior-inline: contain; }
}

.slider__content > * {
    flex-shrink: 0;
}

.slider__content::before,
.slider__content::after {
    content: "";
    display: block;
    width: calc(var(--pad-content) - var(--grid-gap));
    flex-shrink: 0;
}

.slider__scrollbar {
    margin-top: calc(var(--pad-content-half) + 5px);
    margin-bottom: -20px;
}



.scrollbar {
    contain: strict;
    height: 44px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    -webkit-user-select: none;
            user-select: none;
    touch-action: none;
}

.scrollbar__track {
    height: var(--scrollbar-size);
    border-radius: var(--scrollbar-size-hover);
    background: var(--scrollbar-track-color);

    position: relative;
}

.scrollbar__thumb::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    min-width: 44px;
    min-height: 44px;
}

.scrollbar__thumb {
    border-radius: var(--scrollbar-size-hover);
    background: var(--scrollbar-thumb-color);

    height: 100%;
}

@media(hover: hover) {
    .scrollbar__track {
        transition: height ease-in-out 0.15s;
        transition-delay: 0.25s;    
    }

    .scrollbar:hover .scrollbar__track {
        height: var(--scrollbar-size-hover);
    }
}



.scrollbar-hidden {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.scrollbar-hidden::-webkit-scrollbar {
    display: none;
    height: 0;
    background: rgba(255, 255, 255, 0);
}



/*
::-webkit-scrollbar {
    height: 30px;
	background-color: rgba(255,255,255,0);
}

::-webkit-scrollbar-track,
::-webkit-scrollbar-thumb {
	border: 16px solid rgba(255,255,255,0);
	background-clip: padding-box;
}
*/

/*
.scrollbar-hidden::-webkit-scrollbar {
    height: 46px;
    background-color: transparent;
}

.scrollbar-hidden::-webkit-scrollbar-track {
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 40px solid transparent;
    border-right: 40px solid transparent;
    background: var(--scrollbar-track-color);
    background-clip: padding-box;
    border-radius: 100px;
}

.scrollbar-hidden::-webkit-scrollbar-thumb {
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 40px solid transparent;
    border-right: 40px solid transparent;
    background: var(--scrollbar-thumb-color);
    background-clip: padding-box;
    border-radius: 100px;
}
*/.splide:focus { outline: none; }
.splide__track,
.splide__list,
.splide__slide { height: calc(100%); max-height: 100%; }
.splide__slide {
    contain: strict;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.splide__track {
    position: absolute !important;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}



.slideshow {
    --zoom: 100%;
}

.slideshow * {
    touch-action: auto !important;
}

.splide {
    overflow: hidden;
    border-radius: var(--rad-media);
    min-width: 100%;
    max-height: calc(100vh - var(--nav-margin) - var(--pad-content));

    scroll-margin-top: var(--pad-content);
    scroll-margin-bottom: var(--nav-margin);
}

.splide:focus-visible {
    box-shadow: 0 0 0 var(--focus-width-small) var(--focus-color);
}

.splide__slide {
    background: var(--inverse-background);
}

@supports (contain: strict) {
    .splide {
        overflow: visible;
        contain: strict;
    }
}

@media (orientation: portrait) {
    .splide {
        aspect-ratio: 9 / 16;
    }
}

@media (orientation: landscape) {
    .splide {
        aspect-ratio: 16 / 9;
    }

    .slideshow .video {
        max-height: 100%;
        padding: 3.3rem 0
    }
}

@media (orientation: landscape) and (max-height: 500px) {
    .slideshow {
        --nav-margin: var(--pad-content);
    }
}

.splide:not(.pointer-down).dir--left {
    cursor: w-resize !important;
}

.splide:not(.pointer-down).dir--right {
    cursor: e-resize !important;
}



.slideshow__item {
    width: 100%;
    height: 100%;
    max-width: var(--zoom);
    max-height: var(--zoom);

    display: flex;
    align-items: center;
    justify-content: center;
}

.slideshow__item.align--left { align-self: start; }
.slideshow__item.align--right { align-self: end; }



.slideshow__overlay {
    position: absolute;
    left: var(--pad-media);
    right: var(--pad-media);
    top: var(--pad-media);
    bottom: var(--pad-media);

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    pointer-events: none;
    z-index: 1;

    container-type: size;
    container-name: slideshow;
}

.slideshow__row {
    display: flex;
    align-items: flex-start;
}

.slideshow__row:last-child { align-items: end; }

.slideshow__row > * {
    pointer-events: all;
    margin-right: 6px;
    cursor: auto;
}
.slideshow__row > *:last-child { margin-right: 0; }

.slideshow .tag {
    line-height: var(--line-height-caption);
}

.slideshow__counter.tag {
    flex-shrink: 0;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.2em;
}

.slideshow__text.tag {
    letter-spacing: 0;
    text-transform: none;
    padding-right: 11px;
    white-space: inherit;
}

@media (max-width: 767px) {
    .slideshow__text.tag {
        padding-right: 7px;
        white-space: nowrap;
    }
    
    .slideshow__collapse {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .slideshow__collapse.expand {
        white-space: normal;
    }
}

@container slideshow (max-height: 500px) {
    .slideshow__collapse.expand {
        max-height: 100cqh;
        overflow: auto;
    }
}

.slideshow__collapse.tag * {
    margin: 0;
    display: contents;
}

.slideshow__item .image {
    width: 100%;
    height: 100%;
}

.slideshow__item img {
    height: 100%;
    object-fit: contain;
}



.slideshow__item .text {
    color: var(--inverse-color);
    width: 100%;
    max-height: 100%;
    overflow: auto;
}

.slideshow__item .text__content {
    padding: 3.3rem var(--pad-media) !important;
}



.slideshow__caption {
    font-size: var(--size-caption);
    line-height: var(--line-height-caption);
    margin-top: 15px;
    opacity: 0.5;
}

.slideshow__caption * {
    margin: 0;
}



@media (max-width: 767px) {
    .slideshow {
        --zoom: 100% !important;
    }

    .slideshow__item {
        max-width: var(--zoom) !important;
        max-height: var(--zoom) !important;
    }
}



/*


.slideshow.dim .slideshow__caption {
    font-size: var(--size-h2);
    font-weight: bold;
    transform: translateY(var(--h2-baseline-offset));
}

@media (max-width: 767px) {
    .slideshow {
        --zoom: 100% !important;
    }

    .slideshow__item {
        max-width: var(--zoom) !important;
        max-height: var(--zoom) !important;
    }

    .slideshow__overlay {
        flex-direction: row;
    }

    .slideshow__row:last-child {
        flex-direction: column;
        flex-grow: 1;
        max-width: 100%;
    }

    .slideshow__caption {
        max-width: 100% !important;
        align-self: flex-start;
    }

    .slideshow:not(.dim) .slideshow__caption {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .slideshow:not(.dim) .slideshow__caption:hover {
        white-space: normal;
    }

    .slideshow.dim .slideshow__caption a {
        border-bottom: 2px solid white;
        text-decoration: none;
        padding-bottom: 1px;
        line-height: 1.4;
    }

    .slideshow .card {
        max-width: 100vmin;
        max-height: 75%;
        margin: var(--horizontal-margin);
    }

    .slideshow__row:last-child > *:last-child {
        position: sticky;
        bottom: var(--vertical-margin);
    }
}

@media (min-width: 768px) {
    .slideshow:hover .card__image {
        opacity: var(--dim-opacity-hover);
    }

    .slideshow.dim .slideshow__caption a {
        border-bottom: 3px solid white;
        text-decoration: none;
        padding-bottom: 2px;
        line-height: 1.4;
    }
}

@media (min-width: 768px) and (hover: hover) {
    .slideshow.dim .slideshow__caption a:hover {
        border-bottom: none;
    }
}

.slideshow:not(.dim) .slideshow__caption {
    padding: 8px 10px;
    line-height: 24px;
    max-width: 60%;

    border-radius: 8px;
    background: var(--control-solid-background-active);
    color: var(--inverse-color);
}

@supports (backdrop-filter: blur()) or (-webkit-backdrop-filter: blur()) {
    .slideshow:not(.dim) .slideshow__caption {
        background: var(--control-background-active);
        -webkit-backdrop-filter: blur(80px);
        backdrop-filter: blur(7px);
    }
}




.splide:focus {
    outline: none;
}

*/.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{align-items:center;display:flex;flex-wrap:wrap;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.splide__track--fade>.splide__list{display:block}.splide__track--fade>.splide__list>.splide__slide{left:0;opacity:0;position:absolute;top:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;position:relative;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__arrow{align-items:center;background:#ccc;border:0;border-radius:50%;cursor:pointer;display:flex;height:2em;justify-content:center;opacity:.7;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2em;z-index:1}.splide__arrow svg{fill:#000;height:1.2em;width:1.2em}.splide__arrow:hover:not(:disabled){opacity:.9}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #0bf;outline-offset:3px}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;position:relative;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#fff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #0bf;outline-offset:3px}.splide__progress__bar{background:#ccc;height:3px}.splide__slide{-webkit-tap-highlight-color:transparent}.splide__slide:focus{outline:0}@supports(outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #0bf}}@supports(outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide.is-focus-in .splide__slide:focus{border:3px solid #0bf}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#0bf}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #0bf;outline-offset:3px}.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide__arrows--rtl .splide__arrow--prev{left:auto;right:1em}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{left:1em;right:auto}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{bottom:1em;top:auto}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{bottom:0;display:flex;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}a[target="_blank"]::after {
    content: "";
    display: inline;
    background-image: url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cstyle%3Epath%7Bfill: black;%7D%3C/style%3E%3Cpath d='M19 2.75C19 2.05964 18.4404 1.5 17.75 1.5H6.75C6.05964 1.5 5.5 2.05964 5.5 2.75V13.75C5.5 14.4404 6.05964 15 6.75 15H17.75C18.4404 15 19 14.4404 19 13.75V2.75ZM20.5 13.75C20.5 15.2688 19.2688 16.5 17.75 16.5H6.75C5.23122 16.5 4 15.2688 4 13.75V2.75C4 1.23122 5.23122 0 6.75 0H17.75C19.2688 0 20.5 1.23122 20.5 2.75V13.75Z' /%3E%3Cpath d='M2.75 5.5C2.05964 5.5 1.5 6.05964 1.5 6.75V17.75C1.5 18.4404 2.05964 19 2.75 19H13.75C14.4404 19 15 18.4404 15 17.75H16.5C16.5 19.2688 15.2688 20.5 13.75 20.5H2.75C1.23122 20.5 0 19.2688 0 17.75V6.75C0 5.23122 1.23122 4 2.75 4V5.5Z' /%3E%3Cpath d='M16.25 3C16.9404 3 17.5 3.55964 17.5 4.25V9.75H16V4.5H10.75V3H16.25Z' /%3E%3Cpath d='M17.2793 4.28027L8.2793 13.2803L7.21875 12.2197L16.2188 3.21973L17.2793 4.28027Z' /%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center right;
    background-size: 0.6em;
    padding-left: 0.9em;
}

a.block[target="_blank"] { position: relative; }
a.block[target="_blank"]::after {
    position: absolute;
    top: 12px;
    right: 12px;
    display: block;
    width: 1lh;
    height: 1lh;
    background-position: center;
    padding-left: 0;
    margin-right: 0;
}

a.card--compact[target="_blank"]::after, .mapboxgl-ctrl-logo[target="_blank"]::after { display: none; }

.btn[target="_blank"]::after               { background-image: url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cstyle%3Epath%7Bfill: hsl(216, 100%25, 50%25);%7D%3C/style%3E%3Cpath d='M19 2.75C19 2.05964 18.4404 1.5 17.75 1.5H6.75C6.05964 1.5 5.5 2.05964 5.5 2.75V13.75C5.5 14.4404 6.05964 15 6.75 15H17.75C18.4404 15 19 14.4404 19 13.75V2.75ZM20.5 13.75C20.5 15.2688 19.2688 16.5 17.75 16.5H6.75C5.23122 16.5 4 15.2688 4 13.75V2.75C4 1.23122 5.23122 0 6.75 0H17.75C19.2688 0 20.5 1.23122 20.5 2.75V13.75Z' /%3E%3Cpath d='M2.75 5.5C2.05964 5.5 1.5 6.05964 1.5 6.75V17.75C1.5 18.4404 2.05964 19 2.75 19H13.75C14.4404 19 15 18.4404 15 17.75H16.5C16.5 19.2688 15.2688 20.5 13.75 20.5H2.75C1.23122 20.5 0 19.2688 0 17.75V6.75C0 5.23122 1.23122 4 2.75 4V5.5Z' /%3E%3Cpath d='M16.25 3C16.9404 3 17.5 3.55964 17.5 4.25V9.75H16V4.5H10.75V3H16.25Z' /%3E%3Cpath d='M17.2793 4.28027L8.2793 13.2803L7.21875 12.2197L16.2188 3.21973L17.2793 4.28027Z' /%3E%3C/svg%3E"); }
.viewport--dark a[target="_blank"]::after,
.footer__content a[target="_blank"]::after { background-image: url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cstyle%3Epath%7Bfill: rgb(255 255 255 / 55%25);%7D%3C/style%3E%3Cpath d='M19 2.75C19 2.05964 18.4404 1.5 17.75 1.5H6.75C6.05964 1.5 5.5 2.05964 5.5 2.75V13.75C5.5 14.4404 6.05964 15 6.75 15H17.75C18.4404 15 19 14.4404 19 13.75V2.75ZM20.5 13.75C20.5 15.2688 19.2688 16.5 17.75 16.5H6.75C5.23122 16.5 4 15.2688 4 13.75V2.75C4 1.23122 5.23122 0 6.75 0H17.75C19.2688 0 20.5 1.23122 20.5 2.75V13.75Z' /%3E%3Cpath d='M2.75 5.5C2.05964 5.5 1.5 6.05964 1.5 6.75V17.75C1.5 18.4404 2.05964 19 2.75 19H13.75C14.4404 19 15 18.4404 15 17.75H16.5C16.5 19.2688 15.2688 20.5 13.75 20.5H2.75C1.23122 20.5 0 19.2688 0 17.75V6.75C0 5.23122 1.23122 4 2.75 4V5.5Z' /%3E%3Cpath d='M16.25 3C16.9404 3 17.5 3.55964 17.5 4.25V9.75H16V4.5H10.75V3H16.25Z' /%3E%3Cpath d='M17.2793 4.28027L8.2793 13.2803L7.21875 12.2197L16.2188 3.21973L17.2793 4.28027Z' /%3E%3C/svg%3E"); }
.tag--dark a[target="_blank"]::after       { background-image: url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cstyle%3Epath%7Bfill: white;%7D%3C/style%3E%3Cpath d='M19 2.75C19 2.05964 18.4404 1.5 17.75 1.5H6.75C6.05964 1.5 5.5 2.05964 5.5 2.75V13.75C5.5 14.4404 6.05964 15 6.75 15H17.75C18.4404 15 19 14.4404 19 13.75V2.75ZM20.5 13.75C20.5 15.2688 19.2688 16.5 17.75 16.5H6.75C5.23122 16.5 4 15.2688 4 13.75V2.75C4 1.23122 5.23122 0 6.75 0H17.75C19.2688 0 20.5 1.23122 20.5 2.75V13.75Z' /%3E%3Cpath d='M2.75 5.5C2.05964 5.5 1.5 6.05964 1.5 6.75V17.75C1.5 18.4404 2.05964 19 2.75 19H13.75C14.4404 19 15 18.4404 15 17.75H16.5C16.5 19.2688 15.2688 20.5 13.75 20.5H2.75C1.23122 20.5 0 19.2688 0 17.75V6.75C0 5.23122 1.23122 4 2.75 4V5.5Z' /%3E%3Cpath d='M16.25 3C16.9404 3 17.5 3.55964 17.5 4.25V9.75H16V4.5H10.75V3H16.25Z' /%3E%3Cpath d='M17.2793 4.28027L8.2793 13.2803L7.21875 12.2197L16.2188 3.21973L17.2793 4.28027Z' /%3E%3C/svg%3E"); }

:is(.theme--blue, .bg--blue, .theme--red, .bg--red, .theme--green, .bg--green) .btn[target="_blank"]::after               { background-image: url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cstyle%3Epath%7Bfill: black;%7D%3C/style%3E%3Cpath d='M19 2.75C19 2.05964 18.4404 1.5 17.75 1.5H6.75C6.05964 1.5 5.5 2.05964 5.5 2.75V13.75C5.5 14.4404 6.05964 15 6.75 15H17.75C18.4404 15 19 14.4404 19 13.75V2.75ZM20.5 13.75C20.5 15.2688 19.2688 16.5 17.75 16.5H6.75C5.23122 16.5 4 15.2688 4 13.75V2.75C4 1.23122 5.23122 0 6.75 0H17.75C19.2688 0 20.5 1.23122 20.5 2.75V13.75Z' /%3E%3Cpath d='M2.75 5.5C2.05964 5.5 1.5 6.05964 1.5 6.75V17.75C1.5 18.4404 2.05964 19 2.75 19H13.75C14.4404 19 15 18.4404 15 17.75H16.5C16.5 19.2688 15.2688 20.5 13.75 20.5H2.75C1.23122 20.5 0 19.2688 0 17.75V6.75C0 5.23122 1.23122 4 2.75 4V5.5Z' /%3E%3Cpath d='M16.25 3C16.9404 3 17.5 3.55964 17.5 4.25V9.75H16V4.5H10.75V3H16.25Z' /%3E%3Cpath d='M17.2793 4.28027L8.2793 13.2803L7.21875 12.2197L16.2188 3.21973L17.2793 4.28027Z' /%3E%3C/svg%3E"); }

.text__content > *:first-child {
    margin-top: 0;
}

.text__content > *:last-child {
    margin-bottom: 0;
}

.text__caption {
    color: var(--dim-color);
    font-size: var(--size-caption);
    line-height: var(--line-height-caption);
    margin-top: 15px;
}

.text__caption * {
    margin: 0;
}

@media (min-width: 768px) {
    .text.columns .text__content {
        margin: 0;
        columns: var(--columns);
        column-gap: var(--grid-gap);
        orphans: 2;
        widows: 2;
    }
    .text.columns .text__content > * { margin-right: var(--text-right-margin); }
}

.style--h1 {
    font-size: var(--size-h1);
    line-height: var(--line-height-h1);
}

.style--h2 {
    font-size: var(--size-h2);
    line-height: var(--line-height-h2);
}

.style--h3 {
    font-size: var(--size-h3);
    line-height: var(--line-height-h3);
}

.style--h4 {
    font-size: var(--size-h4);
    line-height: var(--line-height-h4);
}

.style--h5 {
    font-size: var(--size-h5);
    line-height: var(--line-height-h5);
}

.style--perex {
    --line-height-article: var(--line-height-content);
    font-size: var(--size-perex);
    line-height: var(--line-height-content);
}

.style--title {
    font-size: var(--size-h2);
}

.style--text {
    font-size: var(--size-text);
}

.style--small {
    font-size: var(--size-small);
}

@media (min-width: 768px) {
    .style--perex {
        max-width: 80%;
    }
    
    .style--title {
        max-width: 80%;
    }
}

.serif .style--perex .text__content,
.serif .style--title .text__content {
    font-family: var(--serif);
}

.serif .style--perex .text__content em,
.serif .style--perex .text__content strong,
.serif .style--title .text__content em,
.serif .style--title .text__content strong,
.style--quote.align--center .text__content em,
.style--quote.align--center .text__content strong {
    font-family: var(--sans);
    font-weight: bold;
    font-style: normal;
    letter-spacing: 0;
}

.align--left { text-align: left; }
.align--center { text-align: center; }
.align--right { text-align: right; }

.style--quote:not(.align--center) .text__content {
    position: relative;
    padding-left: 30px;
}

.style--quote:not(.align--center) .text__content::before {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    border-radius: 2px;
    width: 4px;
    background: rgba(60, 60, 60, 0.6);
}

.style--quote.align--center .text__content {
    font-size: var(--size-h4);
    font-family: var(--serif);
}

.serif .style--perex .text__content a,
.serif .style--title .text__content a,
.style--quote.align--center .text__content a {
    text-decoration-thickness: 0.05em;
    text-underline-offset: 0.135em;
}

.page.serif {
    font-size: var(--size-article);
}

.page.serif .page__content {
    padding-top: var(--pad-content)
}

.page.serif .page__content .text__content {
    line-height: var(--line-height-article);
}
.select__dropdown {
    color: var(--inverse-color);
    background: var(--inverse-gray-background);
    border-radius: var(--form-radius);
}

.select__listbox {
    width: calc(var(--kb-popper-anchor-width) + 2 * var(--form-pad));
    max-height: calc(var(--kb-popper-content-available-height) - 9px);
    overflow-y: auto;
    overflow-x: hidden;
    margin: 0;
    padding: var(--form-pad);
    min-height: 50px;
}

.select__listbox.virtualized::before,
.select__listbox.virtualized::after {
    content: '';
    display: block;
    
    
    position: absolute;
    left: 0;
    right: 16px;
    height: 10px;
    z-index: 1;
}

.select__listbox.virtualized::before { top: 0; }
.select__listbox.virtualized::after { bottom: 0; }

.select__item {
    display: flex;
    align-items: center;
    justify-content: space-between;

    font-size: var(--form-label);
    padding: var(--form-input-pad);
    line-height: 16px;
}

.select__item[data-highlighted] {
    background: var(--focus-color);
    border-radius: var(--form-input-radius);
}

.select__listbox.virtualized .select__item div {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.select__dropdown:has(.select__listbox.virtualized > div:empty):before,
.select__dropdown:has(.select__listbox:not(.virtualized):empty):before {
    content: attr(data-empty-message);
    margin: var(--form-pad);
    font-size: var(--form-label);
    padding: var(--form-input-pad);
    line-height: 16px;
    position: absolute;
    inset: 0;
    display: block;
    opacity: 0.72;
}