/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */


@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@100..700&family=IBM+Plex+Mono:wght@100..700&display=swap');

:root {
  --font-plex-sans: 'IBM Plex Sans', sans-serif;
  --font-plex-mono: 'IBM Plex Mono', monospace;
}

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
    scroll-padding-top: 160px
}

main {
    display: block
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

a {
    background-color: transparent
}

img {
    border-style: none
}

button, input {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
    overflow: visible
}

button {
    text-transform: none;
    -webkit-appearance: button
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

template {
    display: none
}

*, :after, :before {
    box-sizing: border-box;
    padding: 0;
    margin: 0
}

body {
    margin: 0;
    background-color: #ccc
}

body :link {
    color: #0048ff;
    text-decoration: underline
}

body :visited {
    color: #551a8b
}

body, html {
    max-width: 100vw;
    overscroll-behavior-y: none
}

:root {
    --swiper-theme-color: #007aff
}

:host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: visible !important;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: border-box;
    transform: translateZ(0)
}

.swiper-horizontal {
    touch-action: pan-y
}

.swiper-slide {
    flex-shrink: 0;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block
}

/* Ensure hero slides fill the viewport width so background videos stay centered as the screen shrinks */
.hero-swiper .swiper-slide {
    width: 100% !important;
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    backface-visibility: hidden
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

.button {
    font-size: clamp(14px, 1.5625vw, 16px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    height: 48px;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none !important;
    background: transparent;
    cursor: pointer;
    transition: color .3s, background-color .3s, border .3s, box-shadow .3s;
    padding: 0 1rem;
    width: 230px;
    border: 0;
    border-bottom-width: 3px;
    border-bottom-style: solid
}

.button.button-size-xlarge {
    font-size: clamp(24px, 3.0729166667vw, 35px);
    font-family: var(--font-plex-mono);
    line-height: 1.5;
    font-weight: 400;
    height: auto;
    width: 100%;
    max-width: 710px;
    padding: .7em .5em;
    border-bottom-width: 8px
}

.button.button-size-xlarge .button-arrow {
    width: 1em;
    height: 1em
}

.button.button-size-fullwidth {
    font-size: clamp(20px, 2.34375vw, 25px);
    line-height: 1.5;
    font-family: var(--font-plex-mono);
    font-weight: 400;
    height: auto;
    width: 100%;
    padding: .3em;
    border-bottom-width: 8px
}

.button.button-theme-primary {
    background-color: #f4f4f4;
    border-bottom-color: #8d8d8d;
    color: #000 !important
}

.button.button-theme-primary:hover {
    background-color: red;
    box-shadow: inset 1px 1px #ff7c7c, inset -1px 0#ff7c7c;
    border-bottom-color: #ac0000;
    color: #f4f4f4 !important;
    text-decoration: underline
}

.button.button-theme-secondary {
    background-color: #ccc;
    border-bottom-color: #706f6f;
    box-shadow: inset 1px 1px #e3e3e3, inset -1px 0#706f6f;
    color: #000 !important
}

.button.button-theme-secondary:hover {
    background-color: #979797;
    box-shadow: inset 1px 1px #e3e3e3, inset -1px 0#706f6f;
    border-bottom-color: #706f6f;
    color: #000 !important;
    text-decoration: underline
}

.button.button-theme-money {
    background-color: red;
    box-shadow: inset 4px 4px #ff8080, inset -4px 0 #ff8080;
    border-bottom-color: maroon;
    color: #f4f4f4 !important
}

.button.button-theme-money .button-arrow {
    filter: brightness(0) invert(1);
    transition: filter .3s
}

.button.button-theme-money:hover {
    background-color: #f4f4f4;
    border-bottom-color: #d7d7d7;
    box-shadow: inset 4px 4px #d7d7d7, inset -4px 0 #d7d7d7;
    color: #000 !important;
    text-decoration: underline
}

.button.button-theme-money:hover .button-arrow {
    filter: brightness(0) invert(0)
}

.button.button-theme-money-secondary {
    background-color: #f4f4f4;
    border-bottom-color: #8d8d8d;
    color: #000 !important
}

.button.button-theme-money-secondary .button-arrow {
    filter: brightness(0) invert(0);
    transition: filter .3s
}

.button.button-theme-money-secondary:hover {
    background-color: red;
    box-shadow: inset 4px 4px #ff8080, inset -4px 0 #ff8080;
    border-bottom-color: maroon;
    color: #f4f4f4 !important;
    text-decoration: underline
}

.button.button-theme-money-secondary:hover .button-arrow {
    filter: brightness(0) invert(1)
}

.button-arrow {
    width: 18px;
    height: 18px
}

.container {
    color: #000;
    position: relative;
    padding-left: clamp(12px, 3.75vw, 60px);
    padding-right: clamp(12px, 3.75vw, 60px)
}

.container-content {
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
    padding-top: clamp(32px, 4.1666666667vw, 48px);
    padding-bottom: clamp(32px, 4.1666666667vw, 48px)
}

.container-no-bottom-padding .container-content {
    padding-bottom: 0
}

.container-no-top-padding .container-content {
    padding-top: 0
}

.container-half-top-padding .container-content {
    padding-top: clamp(16px, 2.0833333333vw, 24px)
}

.container-half-bottom-padding .container-content {
    padding-bottom: clamp(16px, 2.0833333333vw, 24px)
}

.container-double-top-padding .container-content {
    padding-top: clamp(64px, 8.3333333333vw, 96px)
}

.container-double-bottom-padding .container-content {
    padding-bottom: clamp(64px, 8.3333333333vw, 96px)
}

.container-theme-red {
    background-color: red;
    color: #f4f4f4
}

.container-theme-content .container-content {
    background-color: #ccc
}

.container-theme-manila {
    background-color: #f4e9da
}

.font-plex-variables {
  --font-plex-sans: 'IBM Plex Sans', sans-serif;
  --font-plex-mono: 'IBM Plex Mono', monospace;
}

.cookie-banner p {
    font-size: clamp(14px, 1.5625vw, 16px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono)
}

.cookie-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #f4e9da;
    padding: 1em;
    z-index: 2
}

.cookie-banner>*+* {
    margin-top: 8px
}

.cookie-banner .cookie-banner-buttons {
    display: flex;
    gap: 16px
}

.footer-links, .footer-privacy-policy {
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono)
}

.footer-privacy-policy {
    font-size: clamp(12px, 1.25vw, 12px);
    display: inline-block;
    text-decoration: underline;
    text-transform: uppercase
}

.footer-container {
    background-color: #000;
    color: #f4f4f4;
    padding-left: clamp(12px, 3.75vw, 60px);
    padding-right: clamp(12px, 3.75vw, 60px)
}

.footer-content {
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
    padding-top: clamp(32px, 4.1666666667vw, 48px);
    padding-bottom: clamp(32px, 4.1666666667vw, 48px)
}

.footer-content a:link, .footer-content a:visited {
    color: #f4f4f4 !important
}

.footer-columns {
    display: flex;
    gap: 70px
}

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

.footer-links {
    font-size: clamp(16px, 1.875vw, 20px);
    display: flex;
    flex-direction: column;
    text-transform: uppercase;
    gap: 1rem
}

.footer-icons {
    display: flex;
    gap: 1em;
    justify-content: flex-end;
    align-items: center
}

@media (max-width:767px) {
    .footer-icons {
        justify-content: flex-start
    }
}

.footer-icons svg {
    height: 32px;
    vertical-align: middle
}

svg.footer-youtube {
    width: 44px;
    height: 44px
}


.footer-title {
    flex-grow: 99
}

.main-nav-header {
    padding-left: clamp(12px, 3.75vw, 60px);
    padding-right: clamp(12px, 3.75vw, 60px);
    border-bottom: 10px solid red;
    background-color: #ccc;
    position: sticky;
    top: 0;
    z-index: 10
}

.main-nav {
    width: 100%;
    max-width: 1440px;
    height: 90px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #000;
    gap: 2em
}

.main-nav-items {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1em;
    flex-grow: 1
}

.main-nav-items>* {
    flex-shrink: 1;
    max-width: 230px;
    width: 100%;
    flex-grow: 1
}

@media (max-width:767px) {
    .main-nav-items {
        display: none
    }
}

/* Mobile overflow/menu behavior */
@media (max-width:767px) {
    .main-nav-overflow-button { display: block; }
    .main-nav-mobile-menu { display: flex; flex-direction: column; gap: 1em; padding: 1em 3.75vw; }
}
@media (min-width:768px) {
    .main-nav-overflow-button { display: none; }
}
.button-no-content { width: 48px; padding: 0 8px; }
.button-arrow.button-down { transform: rotate(90deg); }

/* Center the down arrow within the overflow button */
.main-nav-overflow-button .button {
    justify-content: center;
    align-items: center;
}
.main-nav-overflow-button .button .button-arrow {
    display: block;
    margin: 0 auto;
}

/* Dropdown menu typography */
.main-nav-mobile-menu a {
    font-size: 24px;
    line-height: 1.25;
}

.main-nav-mobile-wrapper {
    position: relative;
    z-index: 3
}

.main-nav-logo-link {
    color: #000 !important
}

.newsletter-banner-container {
    padding-top: clamp(16px, 2.0833333333vw, 24px);
    padding-bottom: clamp(16px, 2.0833333333vw, 24px)
}

.newsletter-banner-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2rem;
    flex-wrap: wrap;
    border: 4px solid #ff7c7c;
    padding-left: clamp(12px, 3.75vw, 60px);
    padding-right: clamp(12px, 3.75vw, 60px)
}

.newsletter-banner-content form {
    display: flex;
    gap: 1em
}

@media (max-width:767px) {
    .newsletter-banner-content form {
        flex-direction: column;
        width: 100%
    }

    .newsletter-banner-content form button {
        width: 100%
    }
}

.newsletter-banner-input {
    border: 0;
    background-color: #f4f4f4;
    padding: 1em;
    height: 48px;
    width: clamp(200px, 24.7395833333vw, 275px)
}

.newsletter-banner-input:focus {
    box-shadow: none;
    outline: 0;
    border-bottom-width: 2px;
    border-color: #000
}

.newsletter-banner-input::placeholder {
    color: #000
}

@media (max-width:767px) {
    .newsletter-banner-input {
        width: 100%
    }
}

.page-body h2 {
    font-size: clamp(30px, 3.90625vw, 45px)
}

.page-body h3 {
    font-size: clamp(24px, 3.0729166667vw, 35px)
}

.page-body h3, .page-body h4 {
    font-family: var(--font-plex-mono);
    line-height: 1.5;
    font-weight: 400
}

.page-body h4 {
    font-size: clamp(20px, 2.34375vw, 25px)
}

.page-body {
    background-color: #ccc
}

.page-body hr {
    border-color: #f4f4f4
}

.page-body :link {
    color: #0048ff;
    text-decoration: underline
}

.page-body :visited {
    color: #551a8b
}

.page-substack-link {
    font-size: clamp(24px, 3.0729166667vw, 35px);
    font-family: var(--font-plex-mono);
    line-height: 1.5;
    font-weight: 400;
    margin: 1em 0
}

.page-substack-leader {
    font-weight: 700
}

.hero-swiper-title-container {
    font-size: clamp(36px, 5.2604166667vw, 65px);
    font-family: var(--font-plex-mono);
    line-height: 1.05;
    font-weight: 400;
    flex-grow: 999;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: space-between;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    gap: 1em
}

.hero-swiper-description {
    font-size: clamp(16px, 1.875vw, 20px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.hero-swiper {
    position: relative
}

.hero-swiper-slide {
    min-height: 400px;
    height: 70vh;
    color: #f4f4f4;
    background-color: #979797;
    padding-left: clamp(12px, 3.75vw, 60px);
    padding-right: clamp(12px, 3.75vw, 60px);
    position: relative;
    overflow: hidden
}

.hero-swiper-background-video {
    inset: 0;
    position: absolute;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
    -o-object-position: center;
    object-position: center
}

.hero-swiper-scrim {
    inset: 0;
    position: absolute;
    background-color: rgba(0, 0, 0, .3)
}

.hero-swiper-content {
    position: relative;
    display: flex;
    height: 100%;
    flex-direction: column;
    max-width: 1440px;
    margin: 0 auto;
    padding-top: clamp(16px, 2.0833333333vw, 24px);
    padding-bottom: clamp(16px, 2.0833333333vw, 24px)
}

.hero-swiper-footer {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: flex-end;
    gap: 1em
}

@media (max-width:767px) {
    .hero-swiper-footer {
        flex-direction: column;
        align-items: flex-start
    }
}

@media (min-width:768px) {
    .hero-swiper-description {
        max-width: 60%
    }
}

@media (max-width:767px) {
    .hero-swiper-button {
        width: 100%
    }
}

.hero-swiper-button-spacer {
    width: 40px
}


.playlist-swiper-collection {
    width: clamp(300px, 36.4583333333vw, 524px);
    max-width: 524px;
    min-width: 300px;
    /* Preserve responsive gap even after Swiper initializes (it sets inline margins) */
    margin-right: clamp(12px, 1.5625vw, 20px) !important
}

.playlist-swiper-collection .playlist-swiper-title {
    font-size: clamp(16px, 1.875vw, 20px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono)
}

.playlist-swiper-container {
    position: relative
}

.playlist-swiper {
    margin: 0 clamp(34px, 5.2083333333vw, 50px);
    overflow: hidden
}

.playlist-swiper-collection img {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    margin-bottom: 1em;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, .45);
    transition: box-shadow .3s
}

.playlist-swiper-collection .playlist-swiper-link:link, .playlist-swiper-collection .playlist-swiper-link:visited {
    font-family: var(--font-plex-mono);
    text-decoration: none;
    color: inherit
}

.playlist-swiper-collection .playlist-swiper-link:hover img {
    box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, .45)
}

.playlist-swiper-arrow-button {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    border: none;
    background: #f4e9da;
    color: red;
    cursor: pointer;
    transition: color .3s, opacity .3s
}

.playlist-swiper-arrow-button:disabled {
    opacity: 0;
    cursor: default;
    pointer-events: none
}

.playlist-swiper-arrow-button:hover {
    color: #f4f4f4
}

.playlist-swiper-arrow-button.playlist-swiper-prev {
    left: 0;
    transform: rotate(180deg)
}

.playlist-swiper-arrow-button.playlist-swiper-next {
    right: 0
}

.playlist-swiper-arrow-button svg, .playlist-swiper-arrow-button img {
    display: block
}

@media (max-width:767px) {
    .playlist-swiper-arrow-button svg, .playlist-swiper-arrow-button img {
        width: 24px;
        height: 24px
    }
}


.playlist-folders-active-tab, .playlist-folders-tab {
    font-size: clamp(30px, 3.90625vw, 45px);
    font-family: var(--font-plex-mono);
    line-height: 1.05;
    font-weight: 400;
    display: inline-block
}

.playlist-folders-manila-section {
    box-shadow: 12px 12px 18px 0 rgba(50, 50, 0, .2);
    z-index: 1
}

@media (max-width:767px) {
    .playlist-folders-active-tab, .playlist-folders-tab {
        font-size: clamp(24px, 3.0729166667vw, 35px)
    }
}

.playlist-folders-tab {
    clip-path: polygon(1em 0, calc(100% - 1em)0, 100% 100%, 0 100%);
    background-color: hsla(35, 54%, 91%, .65);
    padding: 0 1em;
    font-family: var(--font-plex-mono);
    line-height: 1.5;
    cursor: pointer
}

.playlist-folders-active-tab {
    filter: drop-shadow(21px 21px 25px rgba(50, 50, 0, .5))
}

.playlist-folders-active-tab .playlist-folders-tab {
    background-color: #f4e9da
}

.playlist-folders-active-tab+.playlist-folders-tab {
    margin-left: -.5em
}

.shorts-swiper-container {
    overflow-x: hidden;
    overflow-y: hidden
}

.shorts-swiper-short {
    width: 30%;
    max-width: 200px;
    /* Preserve responsive gap even after Swiper initializes (it sets inline margins) */
    margin-right: clamp(12px, 1.5625vw, 20px) !important
}

.shorts-swiper-short img {
    width: 100%;
    height: auto;
    aspect-ratio: 9/16;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    margin-bottom: 1em;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, .45);
    transition: box-shadow .3s
}

.shorts-swiper-short .shorts-swiper-link:link, .shorts-swiper-short .shorts-swiper-link:visited {
    font-family: var(--font-plex-mono);
    text-decoration: none;
    color: inherit
}

.shorts-swiper-short .shorts-swiper-link:hover img {
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, .45)
}

.shorts-swiper-arrow-button {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    background: linear-gradient(90deg, hsla(0, 0%, 80%, 0), #ccc);
    border: none;
    color: red;
    cursor: pointer;
    transition: color .3s, opacity .3s;
    padding-left: 1em
}

.shorts-swiper-arrow-button:disabled {
    opacity: 0;
    cursor: default;
    pointer-events: none
}

.shorts-swiper-arrow-button:hover {
    color: #f4f4f4
}

.shorts-swiper-arrow-button.shorts-swiper-prev {
    left: 0;
    transform: rotate(180deg)
}

.shorts-swiper-arrow-button.shorts-swiper-next {
    right: 0
}

.shorts-swiper-arrow-button svg, .shorts-swiper-arrow-button img {
    display: block;
    padding-left: 40%
}


.sf-hidden {
    display: none !important
}

.about-approach {
    font-size: clamp(16px, 1.875vw, 20px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono)
}

.about-approach p {
    line-height: 1.5;
    margin: 1em 0
}

.about-approach ul {
    list-style-position: inside;
    list-style-type: square;
    font-weight: 700
}

.about-approach ul li {
    margin: 2em 0
}

.about-approach ul li:last-of-type {
    margin-bottom: 0
}

.about-approach ul li::marker {
    color: red
}

.about-team-title {
    margin-bottom: 1em
}

.container-theme-black {
    background-color: #000;
    color: #f4f4f4
}

.team-grid-name {
    font-size: clamp(24px, 3.0729166667vw, 35px);
    font-family: var(--font-plex-mono);
    line-height: 1.5;
    font-weight: 400;
    flex-grow: 999
}

.team-grid-title {
    font-size: clamp(14px, 1.5625vw, 16px);
    line-height: 1.25;
    font-family: var(--font-plex-mono);
    font-weight: 700
}

.team-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(8px, 1.6666666667vw, 24px)
}

@media (max-width:767px) {
    .team-grid {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (max-width:575px) {
    .team-grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

.team-grid-member {
    display: flex;
    flex-direction: column;
    gap: clamp(12px, 2.1875vw, 30px);
    height: 100%;
    background-color: #f4e9da;
    border: 1px solid #000;
    padding: clamp(6px, 1.875vw, 30px);
    cursor: pointer;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, .45);
    transition: box-shadow .3s
}

.team-grid-member:hover {
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, .45)
}

.team-grid-image {
    aspect-ratio: 4/5;
    width: 100%;
    background-color: #979797;
    position: relative
}

.team-grid-background-image {
    inset: 0;
    position: absolute;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
    -o-object-position: center;
    object-position: center
}


.hero-swiper-background-image {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-scrollbar {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    touch-action: none;
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, .1))
}

.swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2*var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-scrollbar-drag {
    height: 100%;
    position: relative;
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, .5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    left: 0;
    top: 0
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide-active {
    pointer-events: auto
}

.article-grid-title {
    font-size: clamp(20px, 2.34375vw, 25px);
    line-height: 1.5;
    font-family: var(--font-plex-mono);
    font-weight: 400
}

.article-grid-description {
    font-size: clamp(16px, 1.875vw, 20px)
}

.article-grid-description, .article-grid-pretitle {
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono)
}

.article-grid-pretitle {
    font-size: clamp(14px, 1.5625vw, 16px)
}

.article-grid-author {
    font-size: clamp(12px, 1.25vw, 12px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    color: #979797
}

.article-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6em 3em
}

@media (max-width:767px) {
    .article-grid {
        grid-template-columns: repeat(1, 1fr)
    }
}

.article-grid-thumbnail {
    aspect-ratio: 7/4;
    position: relative;
    background-color: #979797;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, .45);
    transition: box-shadow .3s
}

.article-grid-thumbnail:hover {
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, .45)
}

.article-grid-card {
    display: flex;
    flex-direction: column;
    gap: 1em
}

.article-grid-background-image {
    position: absolute;
    height: 100%;
    width: 100%;
    inset: 0px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.article-swiper-title {
    font-size: clamp(30px, 3.90625vw, 45px);
    font-family: var(--font-plex-mono);
    line-height: 1.05;
    font-weight: 400
}

.article-swiper-description, .article-swiper-pretitle {
    font-size: clamp(16px, 1.875vw, 20px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono)
}

.article-swiper-container {
    overflow-x: hidden
}

.article-swiper {
    overflow: visible !important
}

.article-swiper-slide {
    width: 100%;
    height: 50vh;
    max-height: 40vw;
    color: #f4f4f4;
    background-color: #979797;
    padding-left: clamp(12px, 3.75vw, 60px);
    padding-right: clamp(12px, 3.75vw, 60px);
    position: relative;
    overflow: hidden
}

.article-swiper-background-image {
    position: absolute;
    height: 100%;
    width: 100%;
    inset: 0px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.article-swiper-nav {
    display: flex;
    gap: clamp(12px, 2.1875vw, 30px);
    padding-top: clamp(12px, 2.1875vw, 30px);
    padding-bottom: clamp(12px, 2.1875vw, 30px);
    align-items: center
}

.article-swiper-scrollbar {
    position: relative;
    flex-grow: 999;
    height: 10px;
    --swiper-scrollbar-border-radius: 10px;
    --swiper-scrollbar-top: auto;
    --swiper-scrollbar-bottom: 0px;
    --swiper-scrollbar-left: auto;
    --swiper-scrollbar-right: 0px;
    --swiper-scrollbar-sides-offset: 0px;
    --swiper-scrollbar-bg-color: #f4f4f4;
    --swiper-scrollbar-drag-bg-color: red;
    --swiper-scrollbar-size: 10px
}

.article-swiper-arrow-button {
    background-color: transparent;
    border: none;
    color: #f4f4f4;
    cursor: pointer;
    transition: color .3s, opacity .3s
}

.article-swiper-arrow-button:disabled {
    opacity: 0;
    cursor: default
}

.article-swiper-arrow-button:hover {
    color: red
}

.article-swiper-arrow-button.article-swiper-prev {
    left: clamp(12px, 3.75vw, 60px);
    transform: rotate(180deg)
}

.article-swiper-arrow-button.article-swiper-next {
    right: clamp(12px, 3.75vw, 60px)
}

.article-swiper-arrow-button svg, .article-swiper-arrow-button img {
    display: block
}

.article-swiper-content {
    display: flex;
    flex-direction: column;
    gap: 1em;
    padding-bottom: clamp(32px, 4.1666666667vw, 48px)
}

.poster-articles-title {
    font-size: clamp(20px, 2.34375vw, 25px);
    line-height: 1.5;
    font-family: var(--font-plex-mono);
    font-weight: 400
}

.poster-articles-description {
    font-size: clamp(16px, 1.875vw, 20px)
}

.poster-articles-author, .poster-articles-description {
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono)
}

.poster-articles-author {
    font-size: clamp(12px, 1.25vw, 12px);
    color: #979797
}

.poster-articles-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3em
}

@media (max-width:767px) {
    .poster-articles-grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width:575px) {
    .poster-articles-grid {
        grid-template-columns: repeat(1, 1fr)
    }
}

.poster-articles-poster {
    width: 100%;
    height: auto;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, .45);
    transition: box-shadow .3s
}

.poster-articles-poster:hover {
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, .45)
}

.poster-articles-article {
    display: flex;
    flex-direction: column;
    gap: 1em
}


.articles-reg-link {
    font-size: clamp(24px, 3.0729166667vw, 35px);
    font-family: var(--font-plex-mono);
    line-height: 1.5;
    font-weight: 400;
    margin: 1em 0
}

.articles-reg-leader {
    font-weight: 700
}

.regulatory-comments-filters {
    display: flex;
    flex-direction: column;
    gap: 1em;
    margin-bottom: 2em;
    padding-bottom: 1em;
    border-bottom: 1px solid #979797
}

.regulatory-comments-filter-group {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5em;
    align-items: flex-end
}

.regulatory-comments-filter {
    display: flex;
    flex-direction: column;
    gap: 0.5em;
    min-width: 200px;
    flex: 1 1 auto
}

@media (max-width:767px) {
    .regulatory-comments-filter {
        min-width: 100%
    }
}

.regulatory-comments-filter-label {
    font-size: clamp(14px, 1.5625vw, 16px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    color: #000;
    text-transform: uppercase
}

.regulatory-comments-filter-select {
    font-size: clamp(14px, 1.5625vw, 16px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    background-color: #f4f4f4;
    border: 0;
    border-bottom: 3px solid #8d8d8d;
    padding: 0.5em 1rem;
    height: 48px;
    color: #000;
    cursor: pointer;
    transition: background-color .3s, border-bottom-color .3s
}

.regulatory-comments-filter-select:hover {
    background-color: #e3e3e3
}

.regulatory-comments-filter-select:focus {
    outline: 0;
    background-color: #f4f4f4;
    border-bottom-color: red
}

.regulatory-comments-filter-select option {
    background-color: #f4f4f4;
    color: #000
}

.regulatory-comments-clear-filters {
    align-self: flex-start;
    width: auto;
    min-width: 200px
}

.regulatory-comments-no-results {
    font-size: clamp(16px, 1.875vw, 20px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    color: #979797;
    padding: 2em 0;
    text-align: center
}

.articles-secondary-nav {
    background-color: #ccc;
    position: fixed;
    left: 0;
    right: 0;
    z-index: 10;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, .15), 0 4px 20px 5px rgba(0, 0, 0, .25);
    clip-path: rect(auto auto 200%auto);
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    padding: 8px;
    border-bottom: 1px solid #eee
}

@media (min-width:576px) {
    .articles-secondary-nav {
        gap: 24px
    }
}

.articles-divider {
    border: 1px inset #f4f4f4;
    width: 0;
    height: 2em
}

h1 {
    margin: .67em 0
}

.page-body h1 {
    font-size: clamp(36px, 5.2604166667vw, 65px)
}


.network-content {
    font-size: clamp(16px, 1.875vw, 20px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    max-width: 65ch
}

.network-content h1 {
    margin-bottom: .5em
}

.network-content p {
    line-height: 1.5;
    margin: 1em 0
}

strong {
    font-weight: bolder
}

.remirror-renderer p {
    font-size: clamp(14px, 1.5625vw, 16px);
    font-weight: 400;
    font-family: var(--font-plex-mono);
    max-width: 85ch;
    margin: 1.5em 0;
    line-height: 1.5
}

.remirror-renderer {
    word-break: break-word;
    counter-reset: prosemirror-footnote
}

.remirror-renderer h2 {
    margin: .6em 0
}

.remirror-renderer h3 {
    margin: 1em 0 .3em;
    color: red
}

.remirror-renderer h3+p {
    margin-top: .8em
}

.remirror-renderer h4 {
    margin: 1em 0 .3em
}

.remirror-renderer h4+p {
    margin-top: .5em
}


.remirror-renderer ul {
    margin-left: 3em;
    list-style: disc outside
}

.remirror-renderer ul ul {
    list-style-type: circle
}

.remirror-renderer :link {
    text-decoration: underline
}


.remirror-renderer-container {
    display: flex;
    gap: clamp(16px, 2.5vw, 32px)
}

.page-body h1, .page-body h2 {
    font-family: var(--font-plex-mono);
    line-height: 1.05;
    font-weight: 400
}

@keyframes ProseMirror-cursor-blink {
    to {
        visibility: hidden
    }
}

@keyframes spin {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

.donate_content__qpJtD,
.donate_folders__jWWnB,
.donate_modalesque__oDrPA {
    font-size: clamp(16px, 1.875vw, 20px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono)
}

.donate_subscript__2tsBO {
    font-size: clamp(12px, 1.25vw, 12px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono)
}

.donate_donateContainer__pNHuV {
    text-align: center;
    display: flex;
    justify-content: space-evenly;
    flex-wrap: wrap
}

.donate_donateContainer__pNHuV a {
    max-width: 40% !important;
    min-width: 300px;
    margin-bottom: 1em
}

.donate_content__qpJtD h1 {
    margin-top: 0
}

.donate_content__qpJtD h2 {
    margin-bottom: 1em
}

.donate_content__qpJtD p {
    max-width: 85ch
}

.donate_content__qpJtD ul {
    margin-left: 0;
    list-style-type: none;
    list-style-position: outside;
    padding-left: 0
}

.donate_content__qpJtD ul li {
    position: relative;
    padding-left: 1.5em
}

.donate_content__qpJtD ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.2em;
    width: 0.8em;
    height: 0.8em;
    background-color: #0048ff;
    display: inline-block
}

.donate_content__qpJtD li {
    margin: 1em 0
}

/* Enhanced donate list styling with larger blue square bullets */
.donate-feature-list {
    list-style-position: inside !important;
    margin-left: 0 !important;
    padding-left: 0;
}

.donate-feature-list li {
    margin: clamp(24px, 3.125vw, 32px) 0;
    font-weight: 700;
    padding-left: 0.5em;
}

.donate-feature-list li::marker {
    color: #0048ff;
    font-size: 1.2em;
}

/* Other Ways to Give list styling */
.donate-ways-list {
    list-style-position: inside !important;
    margin-left: 0 !important;
    padding-left: 0;
    margin-top: clamp(32px, 4.1666666667vw, 48px) !important;
    margin-bottom: clamp(32px, 4.1666666667vw, 48px) !important;
}

.donate-ways-list li {
    margin: clamp(20px, 2.6041666667vw, 30px) 0;
    font-weight: 400;
    padding-left: 0.5em;
    line-height: 1.5;
}

.donate-ways-list li::marker {
    color: #0048ff;
    font-size: 1.1em;
}

.donate-ways-list li a {
    font-weight: 700;
    color: #0048ff;
    text-decoration: underline;
}

.donate-ways-list li a:hover {
    color: #0033cc;
}

/* Other Ways to Give card grid styling */
.donate-ways-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(24px, 3.125vw, 32px);
    margin-top: clamp(32px, 4.1666666667vw, 48px);
    margin-bottom: clamp(32px, 4.1666666667vw, 48px);
}

@media (max-width: 1024px) {
    .donate-ways-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .donate-ways-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

.donate-way-card {
    display: flex;
    flex-direction: column;
    gap: clamp(12px, 1.5625vw, 16px);
    padding: clamp(24px, 3.125vw, 32px);
    background-color: #f4e9da;
    border: 1px solid #000;
    text-decoration: none;
    color: inherit;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, .45);
    transition: box-shadow .3s;
    cursor: pointer;
    height: 100%;
}

.donate-way-card:hover {
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, .45);
    text-decoration: none;
    color: inherit;
}

.donate-way-card h3 {
    font-size: clamp(20px, 2.6041666667vw, 24px);
    font-family: var(--font-plex-mono);
    line-height: 1.25;
    font-weight: 700;
    margin: 0;
    color: #000;
}

.donate-way-card p {
    font-size: clamp(14px, 1.5625vw, 16px);
    font-family: var(--font-plex-mono);
    line-height: 1.5;
    font-weight: 400;
    margin: 0;
    color: #000;
}

.donate_subscript__2tsBO p {
    margin: 0 4em;
    font-style: italic
}

.donate_folders__jWWnB {
    display: flex;
    padding-bottom: 2em;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2em
}

.donate_folder__SEq8a {
    max-width: 31%;
    min-width: 400px;
    margin-bottom: 3em;
    position: relative
}

@media screen and (max-width:1350px) {
    .donate_folder__SEq8a {
        min-width: 450px
    }
}

@media screen and (max-width:600px) {
    .donate_folder__SEq8a {
        max-width: 48%
    }
}

.donate_folder__SEq8a h3 {
    background-color: #f4e9da;
    width: 275px;
    clip-path: polygon(0 100%, 10%0, 90%0, 100% 100%);
    text-align: center;
    margin-left: 20px;
    font-size: 24px !important
}

.donate_folderBody__GTEXJ {
    display: flex;
    flex-direction: column;
    padding: 2em;
    background-color: #f4e9da;
    min-height: 400px;
    height: 100%;
    justify-content: space-between;
    box-shadow: .5em .5em 12px #979797
}

.donate_folderBody__GTEXJ ul {
    margin-left: 2em
}

.donate_coinDescription__AoVId {
    display: flex;
    align-items: center;
    gap: 10px
}

.donate_coin__QXvsI {
    height: 40px;
    width: auto;
    margin-right: 10px
}

.donate_coinDescription__AoVId img {
    margin-right: 10px
}

.donate_coinDescription__AoVId > div {
    display: flex;
    flex-direction: column;
    gap: 0
}

.donate_coinDescription__AoVId h4 {
    font-size: clamp(20px, 2.34375vw, 25px);
    font-family: var(--font-plex-mono);
    line-height: 1.5;
    font-weight: 700;
    margin: 0;
    padding: 0
}

.donate_coinDescription__AoVId p {
    font-size: clamp(16px, 1.875vw, 20px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    margin: 0;
    padding: 0
}

.donate_modalesque__oDrPA {
    background-color: #f4f4f4;
    padding-top: 0 !important;
    margin-top: 1em !important;
    margin-bottom: 1em;
    box-shadow: .5em .5em #979797
}

.donate_modalesque__oDrPA h3 {
    background-color: #0048ff;
    color: #f4f4f4;
    padding: .5em
}

.donate_modalesque__oDrPA h2 {
    margin-top: 0;
    margin-bottom: 1em
}

.donate_modalesque__oDrPA p {
    max-width: 85ch;
    margin-bottom: 2em
}

.donate_modalesque__oDrPA>div {
    margin: 2em 2em 0
}

.donate_modalesque__oDrPA>div a {
    margin-bottom: .5em;
    background-color: #ccc !important
}

.donate_modalesque__oDrPA>div a:hover {
    background-color: red !important;
    box-shadow: inset 4px 4px #ff8080, inset -4px 0#ff8080;
    border-bottom-color: maroon;
    color: #f4f4f4 !important;
    text-decoration: underline
}

.donate_modalesque__oDrPA ul {
    margin-left: 0;
    list-style-type: none;
    list-style-position: outside;
    padding-left: 0
}

.donate_modalesque__oDrPA ul li {
    position: relative;
    padding-left: 1.5em
}

.donate_modalesque__oDrPA ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.2em;
    width: 0.8em;
    height: 0.8em;
    background-color: #0048ff;
    display: inline-block
}

.donate_modalesque__oDrPA li {
    margin: 1em 0
}

.donate_memberContainer__merdC {
    text-align: center
}

.breadcrumb {
    padding-top: clamp(16px, 2.0833333333vw, 24px);
    padding-bottom: 0;
}

.article-author-arrow {
    display: inline-block;
    width: 1.1em;
    height: 1.1em;
    margin-right: 1em;
}

.article-title {
    margin: .4em 0;
}

.article-download {
    margin: .5em 0;
    margin-top: 2em;
}

.iframe-iframe {
    width: 100%;
    min-height: 100vh;
    height: 200vw;
    max-height: 200vh;
    border: 0;
    background-color: transparent;
}

.TeamGrid_name__jrYu9,
.TeamGrid_selName__ZgL0U {
    font-size: clamp(24px, 3.0729166667vw, 35px);
    font-family: var(--font-plex-mono);
    line-height: 1.5;
    font-weight: 400
}

.TeamGrid_selTitle__M9v3N {
    font-size: clamp(16px, 1.875vw, 20px);
    line-height: 1.25;
    font-family: var(--font-plex-mono)
}

.TeamGrid_title__ei8gK {
    font-size: clamp(14px, 1.5625vw, 16px);
    line-height: 1.25;
    font-family: var(--font-plex-mono)
}

.TeamGrid_grid__CXudI {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(8px, 1.6666666667vw, 24px)
}

@media (max-width:767px) {
    .TeamGrid_grid__CXudI {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (max-width:575px) {
    .TeamGrid_grid__CXudI {
        grid-template-columns: repeat(2, 1fr)
    }
}

.TeamGrid_member__LbyR7 {
    display: flex;
    flex-direction: column;
    gap: clamp(12px, 2.1875vw, 30px);
    height: 100%;
    background-color: #f4e9da;
    border: 1px solid #000;
    padding: clamp(6px, 1.875vw, 30px);
    cursor: pointer;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, .45);
    transition: box-shadow .3s
}

.TeamGrid_member__LbyR7:hover {
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, .45)
}

.TeamGrid_image__8WfEs {
    aspect-ratio: 4/5;
    width: 100%;
    background-color: #979797;
    position: relative
}

.TeamGrid_backgroundImg__g8zBx {
    inset: 0;
    position: absolute;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
    -o-object-position: center;
    object-position: center
}

.TeamGrid_name__jrYu9 {
    flex-grow: 999
}

.TeamGrid_title__ei8gK {
    font-weight: 700
}

.TeamGrid_dialog__jpMFj {
    position: relative;
    z-index: 50;
    font-family: var(--font-plex-mono)
}

.TeamGrid_background__lOx6G {
    position: fixed;
    inset: 0;
    background-color: rgba(0, 0, 0, .7);
    opacity: 0;
    transition: opacity 0.3s ease-out
}

.TeamGrid_background--open {
    opacity: 1
}

.TeamGrid_content__nO_NK {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    top: 100%;
    display: grid;
    width: 100vw;
    align-items: center;
    justify-content: flex-end;
    padding: 2em;
    background: #f4f4f4;
    grid-template-rows: min-content auto;
    grid-template-columns: 100%;
    transition: top 0.3s ease-out;
}

.TeamGrid_content--open {
    top: 0;
}

.TeamGrid_close__Fy2JG {
    align-self: flex-start;
    justify-self: flex-end;
    width: 40px;
    background: transparent;
    border: 0;
    color: #000;
    cursor: pointer
}

.TeamGrid_panel__XUU3w {
    width: 100%;
    color: #000;
    display: grid;
    grid-template-columns: 40%auto;
    align-items: center;
    gap: clamp(12px, 2.5vw, 36px);
    align-self: stretch;
    justify-self: stretch;
    max-height: 100%;
    overflow: auto
}

@media (max-width:767px) {
    .TeamGrid_panel__XUU3w {
        grid-template-columns: 1fr
    }
}

.TeamGrid_selImg__Fvvf8 {
    background-color: #979797;
    aspect-ratio: 4/5;
    position: relative
}

@media (max-width:767px) {
    .TeamGrid_selImg__Fvvf8 {
        margin: 0 auto 1em;
        width: 80%
    }
}

.TeamGrid_selContent__3PtLq {
    justify-self: stretch;
    display: grid;
    grid-template-columns: 1fr;
    flex-direction: column;
    gap: clamp(12px, 2.5vw, 36px)
}

.TeamGrid_selTitle__M9v3N {
    font-weight: 700
}

.TeamGrid_selBio__5uBv0 {
    font-size: clamp(14px, 1.5625vw, 16px);
    line-height: 1.5;
    font-weight: 400;
    font-family: var(--font-plex-mono);
}

.TeamGrid_selBio__5uBv0 a {
    color: #0048ff;
    text-decoration: underline;
}

.TeamGrid_selPublications__jP9Kx {
    margin-top: clamp(12px, 2.5vw, 36px);
}

.TeamGrid_selPublicationsTitle__hR2vF {
    font-size: clamp(14px, 1.5625vw, 16px);
    line-height: 1.25;
    font-weight: 700;
    font-family: var(--font-plex-mono);
    margin-bottom: clamp(8px, 1.25vw, 16px);
}

.TeamGrid_selPublicationsList__mN8qL {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: clamp(8px, 1.25vw, 12px);
}

.TeamGrid_selPublicationsList__mN8qL li {
    margin: 0;
}

.TeamGrid_selPublicationsLink__kL3wX {
    font-size: clamp(14px, 1.5625vw, 16px);
    line-height: 1.5;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    color: #0048ff;
    text-decoration: underline;
    transition: color 0.3s;
}

.TeamGrid_selPublicationsLink__kL3wX:hover {
    color: #0033cc;
}

.TeamGrid_selPublicationsLink__kL3wX:visited {
    color: #551a8b;
}

/* Video Dialog Styles */
.VideoDialog_dialog__lYDaW {
    position: relative;
    z-index: 50;
    font-family: var(--font-plex-mono)
}

.VideoDialog_background__OlM4_ {
    position: fixed;
    inset: 0;
    background-color: rgba(0, 0, 0, .7)
}

.VideoDialog_content__ghFDP {
    position: fixed;
    inset: 0;
    top: 100%;
    display: flex;
    flex-direction: column;
    width: 100vw;
    justify-content: space-between;
    padding: 2em;
    background: #000;
    transition: top 0.3s ease-out
}

.VideoDialog_content--open {
    top: 0
}

@media (max-width: 575px) {
    .VideoDialog_content__ghFDP {
        padding: 8px
    }
}

.VideoDialog_close__cTVN6 {
    align-self: flex-end;
    width: 40px;
    background: transparent;
    border: 0;
    color: #f4f4f4;
    cursor: pointer
}

.VideoDialog_panel__KW9n4 {
    width: 100%;
    color: #f4f4f4
}

.VideoDialog_player___LUxG {
    aspect-ratio: 16/9;
    width: 100%;
    height: auto;
    max-height: 80vh
}

.VideoDialog_title__GBwLX {
    font-size: clamp(16px, 1.875vw, 20px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    text-align: center;
    margin: 1em
}

.VideoDialog_spacer__jgowg {
    height: 40px
}

/* Donate Footer Styles */
.donate-footer-container {
    background-color: #000;
    color: #f4f4f4;
    padding-left: clamp(12px, 3.75vw, 60px);
    padding-right: clamp(12px, 3.75vw, 60px);
    margin-top: clamp(64px, 8.3333333333vw, 96px);
}

.donate-footer-content {
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
    padding-top: clamp(32px, 4.1666666667vw, 48px);
    padding-bottom: clamp(32px, 4.1666666667vw, 48px);
}

.donate-footer-columns {
    display: flex;
    gap: 70px;
    margin-bottom: 2em;
}

@media (max-width:767px) {
    .donate-footer-columns {
        flex-direction: column;
        gap: 2em;
    }
}

.donate-footer-info {
    flex-grow: 1;
}

.donate-footer-text {
    font-size: clamp(14px, 1.5625vw, 16px);
    line-height: 1.5;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    margin: 0.5em 0;
    color: #f4f4f4;
}

.donate-footer-links {
    display: flex;
    flex-direction: column;
    gap: 1em;
    align-items: flex-end;
}

@media (max-width:767px) {
    .donate-footer-links {
        align-items: flex-start;
    }
}

.donate-footer-icons {
    display: flex;
    gap: 1em;
    justify-content: flex-end;
    align-items: center;
}

@media (max-width:767px) {
    .donate-footer-icons {
        justify-content: flex-start;
    }
}

.donate-footer-privacy-policy,
.donate-footer-link {
    font-size: clamp(12px, 1.25vw, 12px);
    line-height: 1.25;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    display: inline-block;
    text-decoration: underline;
    text-transform: uppercase;
    color: #f4f4f4 !important;
}

.donate-footer-disclaimer {
    margin-top: 2em;
    padding-top: 2em;
    border-top: 1px solid #333;
}

.donate-footer-disclaimer p {
    font-size: clamp(12px, 1.25vw, 12px);
    line-height: 1.5;
    font-weight: 400;
    font-family: var(--font-plex-mono);
    color: #ccc;
    text-align: center;
}

/* Donate Page Layout Styles */
.donate-hero-swiper .hero-swiper-slide {
    min-height: 200px;
    height: 35vh;
}

.donate-main-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(32px, 4.1666666667vw, 60px);
    align-items: start;
    min-height: 60vh;
}

@media (max-width: 1024px) {
    .donate-main-layout {
        grid-template-columns: 1fr;
        gap: clamp(32px, 4.1666666667vw, 48px);
    }
}

.donate-logo-section {
    display: flex;
    flex-direction: column;
    gap: clamp(16px, 2.0833333333vw, 24px);
}

.donate-logo-section h1 {
    margin-top: 0;
    margin-bottom: clamp(16px, 2.0833333333vw, 24px);
}

.donate-logo-section h2 {
    margin-top: clamp(32px, 4.1666666667vw, 48px);
    margin-bottom: clamp(16px, 2.0833333333vw, 24px);
}

.donate-form-section {
    position: sticky;
    top: clamp(20px, 2.0833333333vw, 24px);
}

@media (max-width: 1024px) {
    .donate-form-section {
        position: static;
    }
}

.donate-stripe-embed {
    width: 100%;
    min-height: 600px;
    border: 3px solid #8d8d8d;
    background-color: #f4f4f4;
}

.donate-why-section {
    max-width: 85ch;
}

