#shared-site-footer { --paper-white:#fffdf8; --paper-cream:#f4e8d0; --hibiscus:#de6243; --pool-aqua:#73b2ae; --font-barlow-condensed:"Barlow Condensed",sans-serif; --font-source-sans:"Source Sans 3",sans-serif; --spacing:.25rem; --text-sm:.875rem; --text-sm--line-height:1.25rem; --text-4xl:2.25rem; --text-4xl--line-height:2.5rem; --font-weight-semibold:600; --font-weight-bold:700; font-size:16px; line-height:1.5; }
#shared-site-footer .site-footer { display:block; width:100%; font-size:16px; padding:0; margin:0; border:0; }
#shared-site-footer p { margin:0; font-size:inherit; text-align:left; }
#shared-site-footer a { text-decoration:none; font-size:inherit; font-family:inherit; letter-spacing:inherit; min-height:44px; display:inline-flex; align-items:center; }
#shared-site-footer a:hover { text-decoration:underline; }
#shared-site-footer .colored-waves {
    display: block;
    width: 100%;
    overflow: hidden;
}
#shared-site-footer .colored-waves__motion {
    animation-duration: var(--wave-duration, 32s);
    animation-iteration-count: infinite;
    animation-play-state: running;
    animation-timing-function: linear;
    transform-box: view-box;
    transform-origin: 0 0;
}
#shared-site-footer .colored-waves[data-direction='left'] .colored-waves__motion {
    animation-name: colored-waves-left;
}
#shared-site-footer .colored-waves[data-direction='right'] .colored-waves__motion {
    animation-name: colored-waves-right;
}
#shared-site-footer .colored-waves[data-paused='true'] .colored-waves__motion,#shared-site-footer .colored-waves[data-visible='false'] .colored-waves__motion {
    animation-play-state: paused;
}
#shared-site-footer .colored-waves[data-visible='true'] .colored-waves__motion {
    will-change: transform;
}
#shared-site-footer .colored-waves__grain {
    pointer-events: none;
}
@keyframes colored-waves-left {
    from {
        transform: translate3d(0, 0, 0);
    }
    to {
        transform: translate3d(var(--wave-shift), 0, 0);
    }
}
@keyframes colored-waves-right {
    from {
        transform: translate3d(var(--wave-shift), 0, 0);
    }
    to {
        transform: translate3d(0, 0, 0);
    }
}
#shared-site-footer .waves-lab__sample .colored-waves {
    margin-left: auto;
}
#shared-site-footer .waves-lab__sample--hero .colored-waves {
    margin-top: calc(var(--spacing) * -14);
}
#shared-site-footer .waves-lab__divider-preview .colored-waves {
    width: 100%;
}
#shared-site-footer .waves-lab__sample--accent .colored-waves {
    margin-top: calc(var(--spacing) * -5);
    margin-right: 0px;
}
#shared-site-footer .site-footer {
    position: relative;
    z-index: 10;
    background-color: var(--paper-white);
}
#shared-site-footer .site-footer__band {
    position: relative;
    z-index: 10;
    display: grid;
    gap: calc(var(--spacing) * 10);
    background-color: var(--pacific-deep);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 14);
    color: var(--paper-white);
    @media (width >= 48rem) {
        grid-template-columns: 1fr auto;
    }
    @media (width >= 48rem) {
        padding-inline: calc(var(--spacing) * 12);
    }
    @media (width >= 64rem) {
        padding-inline: calc(var(--spacing) * 16);
    }
}
#shared-site-footer .site-footer__name {
    font-family: var(--font-barlow-condensed);
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;
}
#shared-site-footer .site-footer__band nav {
    display: flex;
    flex-wrap: wrap;
    column-gap: calc(var(--spacing) * 7);
    row-gap: calc(var(--spacing) * 3);
    font-family: var(--font-barlow-condensed);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: 0.12em;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}
#shared-site-footer .site-footer__note {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--paper-white);
    @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--paper-white) 70%, transparent);
    }
    @media (width >= 48rem) {
        grid-column: span 2 / span 2;
    }
}
#shared-site-footer .double-wave-band {
    position: relative;
    width: 100%;
    overflow: hidden;
    contain: layout paint;
    height: 400px;
    isolation: isolate;
}
#shared-site-footer .double-wave-band .colored-waves {
    overflow: visible;
}
#shared-site-footer .double-wave-band__layer {
    bottom: 0;
    left: 50%;
    pointer-events: none;
    position: absolute;
    transform: translate3d(calc(-50% + var(--double-wave-x, 0px)), var(--double-wave-y, 0px), 0)
    rotate(var(--double-wave-rotation, 0deg));
    transform-origin: center;
    width: var(--double-wave-width, 5760px);
}
#shared-site-footer .double-wave-band__layer--back {
    z-index: 0;
}
#shared-site-footer .double-wave-band__layer--front {
    z-index: 1;
}
#shared-site-footer .double-wave-band__controls {
    position: fixed;
    top: calc(var(--spacing) * 20);
    right: calc(var(--spacing) * 3);
    display: grid;
    gap: calc(var(--spacing) * 2);
    overflow-y: auto;
    max-height: calc(100dvh - 5.75rem);
    width: min(310px, calc(100vw - 1.5rem));
    z-index: 120;
}
#shared-site-footer .double-wave-band__preset-controls {
    display: grid;
    gap: calc(var(--spacing) * 3);
    border-radius: var(--radius-md);
    background-color: #292d39;
    padding: calc(var(--spacing) * 3);
    color: #f1f1f1;
    box-shadow: 0 5px 18px var(--ink);
    @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 5px 18px color-mix(in oklch, var(--ink) 24%, transparent);
    }
}
#shared-site-footer .double-wave-band__preset-controls > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 3);
}
#shared-site-footer .double-wave-band__preset-controls strong,#shared-site-footer .double-wave-band__preset-controls span {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
}
#shared-site-footer .double-wave-band__preset-controls span {
    color: #aeb3c4;
}
#shared-site-footer .double-wave-band__preset-controls button {
    min-height: calc(var(--spacing) * 9);
    flex: 1;
    border-radius: 0.25rem;
    background-color: #414655;
    padding-inline: calc(var(--spacing) * 3);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: #f1f1f1;
}
#shared-site-footer .double-wave-band__preset-controls button:last-child {
    background-color: #3478d4;
}
#shared-site-footer .double-wave-band__preset-controls button:disabled {
    cursor: wait;
    opacity: 60%;
}
/* Bio-only transition: keep the shared footer unchanged on other routes. */
#shared-site-footer .site-footer { background:var(--cream); }
#shared-site-footer .double-wave-band { height:300px; }
@media screen {
  #theswell.swell-value { padding-bottom:56px; }
  .source-notes { padding-block:24px; }
}

@media (prefers-reduced-motion:reduce) { #shared-site-footer .colored-waves__motion { animation:none!important; transform:none!important; } }
