@import url("https://fonts.googleapis.com/css2?family=Lavishly+Yours&display=swap");
:root {
    /*
     * Jeannie Meows color palette
     *
     * Yellow:     #fff9ad
     * Light blue: #7bb7db
     */

    --yellow: #fff9ad;
    --light-blue: #7bb7db;

    /*
     * Darker blues are used for buttons, links, and text
     * so they remain easy to read.
     */

    --accent: #2f6f96;
    --accent-dark: #20516f;

    --background: #fffdf2;
    --surface: #ffffff;
    --surface-blue: #f2f9fd;

    --text: #263238;
    --muted: #5f6b72;
    --border: #d9e5ec;

    --shadow:
        0 12px 32px rgba(38, 50, 56, 0.09);
}


/* Basic page setup */

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--background);
    color: var(--text);
    font-family:
        Arial,
        Helvetica,
        sans-serif;
    line-height: 1.6;
}

img {
    max-width: 100%;
}

a {
    color: var(--accent-dark);
}

a:hover,
a:focus {
    color: var(--accent);
}


/* Header and navigation */

.site-header {
    background: var(--light-blue);
    border-bottom: 1px solid var(--accent-dark);
}

.site-header__inner {
    width: min(1120px, calc(100% - 32px));
    margin: 0 auto;
    padding: 18px 0;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.site-name {
    color: var(--text);
    font-size: 1.1rem;
    font-weight: 700;
    text-decoration: none;
}

.site-name:hover,
.site-name:focus {
    color: var(--accent-dark);
}

nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
}

nav a {
    padding: 6px 2px;
    color: var(--text);
    font-weight: 600;
    text-decoration: none;
}

nav a:hover,
nav a:focus {
    color: var(--accent-dark);
    text-decoration: underline;
    text-decoration-color: var(--yellow);
    text-underline-offset: 5px;
}


/* Homepage hero section */

.hero {
    min-height: 520px;
    padding: 80px 24px;

    display: grid;
    place-items: center;

    text-align: center;

    background:
        radial-gradient(
            circle at top left,
            var(--yellow),
            transparent 45%
        ),
        radial-gradient(
            circle at bottom right,
            var(--light-blue),
            transparent 45%
        ),
        #f9fcfe;
}

.hero__content {
    width: min(760px, 100%);
}

.hero h1 {
    margin: 10px 0 18px;

    font-size: clamp(
        2.4rem,
        7vw,
        4.8rem
    );

    line-height: 1.08;
}

.hero__text {
    max-width: 620px;
    margin: 0 auto 28px;

    color: var(--muted);
    font-size: 1.2rem;
}


/* Small heading above titles */

.eyebrow {
    margin: 0;

    color: var(--accent-dark);
    font-size: 0.85rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}


/* Main buttons */

.primary-button {
    display: inline-block;

    padding: 13px 22px;

    border: 2px solid var(--accent-dark);
    border-radius: 999px;

    background: var(--accent-dark);
    color: #ffffff;

    font-weight: 700;
    text-decoration: none;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

.primary-button:hover,
.primary-button:focus {
    border-color: var(--accent);
    background: var(--accent);
    color: #ffffff;
    transform: translateY(-1px);
}


/* General page sections */

.content-section,
.page-heading {
    width: min(1120px, calc(100% - 32px));
    margin: 0 auto;
}

.content-section {
    padding: 64px 0;
}

.page-heading {
    padding: 70px 0 20px;
    text-align: center;
}

.page-heading h1 {
    margin: 8px 0 10px;

    font-size: clamp(
        2rem,
        5vw,
        3.6rem
    );

    line-height: 1.15;
}

.page-heading > p:not(.eyebrow) {
    max-width: 680px;
    margin: 0 auto;
    color: var(--muted);
}

.page-heading__actions {
    margin-top: 24px;
}


/* Section headings */

.section-heading {
    margin-bottom: 26px;

    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
}

.section-heading h2 {
    margin: 4px 0 0;
    font-size: 2rem;
}

.section-heading > a {
    font-weight: 700;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
}


/* Animal card grid */

.animal-grid {
    display: grid;

    grid-template-columns:
        repeat(
            auto-fit,
            minmax(240px, 1fr)
        );

    gap: 24px;
}

.animal-card {
    overflow: hidden;

    border: 1px solid var(--border);
    border-radius: 18px;

    background: var(--surface);
    box-shadow: var(--shadow);

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.animal-card:hover {
    transform: translateY(-3px);

    box-shadow:
        0 16px 38px
        rgba(38, 50, 56, 0.13);
}


/* Animal card pictures */

.animal-card__image {
    aspect-ratio: 4 / 3;
    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            var(--yellow),
            var(--light-blue)
        );
}

.animal-card__image img {
    width: 100%;
    height: 100%;

    display: block;
    object-fit: cover;

    transition: transform 0.3s ease;
}

.animal-card:hover .animal-card__image img {
    transform: scale(1.025);
}


/* Placeholder when an animal has no photo */

.image-placeholder {
    width: 100%;
    height: 100%;
    padding: 20px;

    display: grid;
    place-items: center;

    color: var(--accent-dark);
    font-weight: 700;
    text-align: center;
}


/* Animal card text */

.animal-card__body {
    padding: 20px;
}

.animal-card h2,
.animal-card h3 {
    margin: 0 0 6px;
    color: var(--text);
}

.animal-card p {
    margin-top: 10px;
    margin-bottom: 0;
}

.animal-details {
    color: var(--accent-dark);
    font-weight: 700;
}


/* Empty results message */

.empty-state {
    padding: 50px 24px;

    border: 2px dashed var(--light-blue);
    border-radius: 18px;

    background: var(--surface-blue);
    text-align: center;
}

.empty-state h2,
.empty-state h3 {
    margin-top: 0;
}

.empty-state p {
    margin-bottom: 0;
    color: var(--muted);
}


/* Public litter directory */

.litter-directory {
    padding-top: 28px;
}

.litter-search {
    margin-bottom: 34px;
    padding: 22px;

    border: 1px solid var(--border);
    border-radius: 18px;

    background: var(--surface-blue);
}

.litter-search label {
    display: block;
    margin-bottom: 8px;
    font-weight: 800;
}

.litter-search__controls {
    display: flex;
    align-items: center;
    gap: 12px;
}

.litter-search input {
    min-width: 0;
    flex: 1;
    padding: 13px 15px;

    border: 2px solid var(--border);
    border-radius: 12px;

    background: var(--surface);
    color: var(--text);
    font: inherit;
}

.litter-search input:focus {
    border-color: var(--accent);
    outline: 3px solid rgba(123, 183, 219, 0.3);
}

.litter-list {
    display: grid;
    gap: 34px;
}

.litter-card {
    padding: 26px;

    border: 1px solid var(--border);
    border-radius: 22px;

    background: var(--surface);
    box-shadow: var(--shadow);
}

.litter-card__heading {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 20px;
}

.litter-card__heading h2 {
    margin: 4px 0 0;
}

.litter-card__heading > p {
    margin: 0;
    color: var(--muted);
    font-weight: 700;
}

.litter-member-grid {
    margin-top: 24px;
    grid-template-columns:
        repeat(
            auto-fit,
            minmax(210px, 1fr)
        );
}


/* Footer */

.site-footer {
    padding: 32px 20px;

    border-top: 1px solid var(--border);

    background: var(--light-blue);
    color: var(--text);

    text-align: center;
}

.site-footer p {
    margin: 0;
    font-weight: 600;
}


/* Keyboard accessibility */

a:focus-visible,
button:focus-visible,
.primary-button:focus-visible {
    outline: 3px solid var(--yellow);
    outline-offset: 4px;
}


/* Mobile layout */

@media (max-width: 700px) {
    .site-header__inner {
        align-items: flex-start;
        flex-direction: column;
    }

    nav {
        width: 100%;
        gap: 14px;
    }

    .hero {
        min-height: 440px;
        padding: 60px 20px;
    }

    .hero__text {
        font-size: 1.05rem;
    }

    .content-section {
        padding: 48px 0;
    }

    .page-heading {
        padding-top: 50px;
    }

    .section-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .litter-search__controls,
    .litter-card__heading {
        align-items: stretch;
        flex-direction: column;
    }
}


/* Reduced-motion accessibility */

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    .primary-button,
    .animal-card,
    .animal-card__image img {
        transition: none;
    }

    .primary-button:hover,
    .primary-button:focus,
    .animal-card:hover {
        transform: none;
    }

    .animal-card:hover .animal-card__image img {
        transform: none;
    }
}

/* Sun navigation buttons */

.sun-shape-library {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}

.sun-navigation {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.sun-nav-link {
    position: relative;

    width: 120px;
    height: 120px;
    padding: 0;

    display: grid;
    place-items: center;

    color: var(--text);
    font-size: 0.92rem;
    font-weight: 800;
    line-height: 1.05;
    text-align: center;
    text-decoration: none;

    isolation: isolate;
}

.sun-nav-link__shape {
    position: absolute;
    inset: 0;
    z-index: 0;

    width: 100%;
    height: 100%;

    color: var(--yellow);

    overflow: visible;
    pointer-events: none;

    transition:
        transform 0.2s ease,
        filter 0.2s ease;
}

.sun-nav-link span {
    position: relative;
    z-index: 1;

    width: 65px;

    color: var(--text);
    text-align: center;
}

.sun-nav-link:hover,
.sun-nav-link:focus {
    color: var(--text);
    text-decoration: none;
}

.sun-nav-link:hover .sun-nav-link__shape,
.sun-nav-link:focus-visible .sun-nav-link__shape {
    transform: scale(1.05);

    filter:
        brightness(0.98)
        drop-shadow(
            0 5px 5px
            rgba(38, 50, 56, 0.18)
        );
}

.sun-nav-link:active .sun-nav-link__shape {
    transform: scale(0.97);
}

.sun-nav-link:focus-visible {
    outline: none;
}

@media (max-width: 700px) {
    .sun-navigation {
        width: 100%;
        justify-content: center;
        gap: 4px;
    }

    .sun-nav-link {
        width: 102px;
        height: 102px;
        font-size: 0.8rem;
    }

    .sun-nav-link span {
        width: 55px;
    }
}

/* End sun navigation buttons */

/* Public animal profile pages */

.animal-card__link {
    min-height: 100%;

    display: block;

    color: inherit;
    text-decoration: none;
}

.animal-card__link:hover,
.animal-card__link:focus {
    color: inherit;
    text-decoration: none;
}

.animal-card__link:focus-visible {
    outline: 4px solid var(--yellow);
    outline-offset: 4px;
}

.card-action {
    display: inline-block;
    margin-top: 18px;

    color: var(--accent-dark);
    font-weight: 800;
    text-decoration: underline;
    text-decoration-color: var(--yellow);
    text-decoration-thickness: 3px;
    text-underline-offset: 5px;
}

.animal-status-badge {
    width: fit-content;
    margin: 0 0 10px;
    padding: 5px 10px;

    border-radius: 999px;

    background: var(--yellow);
    color: var(--text);
    font-size: 0.78rem;
    font-weight: 800;
}

.animal-profile {
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto;
    padding: 38px 0 76px;
}

.back-link {
    display: inline-block;
    margin-bottom: 28px;

    color: var(--accent-dark);
    font-weight: 700;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
}

.animal-profile__layout {
    display: grid;
    grid-template-columns:
        minmax(0, 1.12fr)
        minmax(320px, 0.88fr);
    align-items: start;
    gap: 46px;
}

.profile-gallery {
    min-width: 0;
}

.profile-main-image {
    aspect-ratio: 4 / 3;
    overflow: hidden;

    display: block;

    border-radius: 24px;

    background:
        linear-gradient(
            135deg,
            var(--yellow),
            var(--light-blue)
        );

    box-shadow: var(--shadow);
}

.profile-main-image img {
    width: 100%;
    height: 100%;

    display: block;
    object-fit: cover;
}

.profile-thumbnail-grid {
    margin-top: 16px;

    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.profile-thumbnail {
    aspect-ratio: 1 / 1;
    overflow: hidden;

    display: block;

    border-radius: 14px;
    background: var(--surface-blue);
}

.profile-thumbnail img {
    width: 100%;
    height: 100%;

    display: block;
    object-fit: cover;

    transition: transform 0.2s ease;
}

.profile-thumbnail:hover img,
.profile-thumbnail:focus img {
    transform: scale(1.04);
}

.profile-thumbnail:focus-visible {
    outline: 4px solid var(--yellow);
    outline-offset: 3px;
}

.profile-photo-placeholder {
    min-height: 430px;
    padding: 30px;

    display: grid;
    place-items: center;

    border-radius: 24px;

    background:
        linear-gradient(
            135deg,
            var(--yellow),
            var(--light-blue)
        );

    color: var(--accent-dark);
    font-size: 1.2rem;
    font-weight: 800;
    text-align: center;
}

.animal-profile__content {
    padding: 8px 0;
}

.animal-profile__content h1 {
    margin: 8px 0 14px;

    font-size: clamp(
        2.5rem,
        6vw,
        4.6rem
    );

    line-height: 1;
}

.profile-introduction {
    margin: 0 0 28px;

    color: var(--muted);
    font-size: 1.12rem;
}

.animal-facts {
    margin: 0;

    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.animal-facts > div {
    padding: 15px;

    border-radius: 14px;
    background: var(--surface-blue);
}

.animal-facts dt,
.compatibility-list dt {
    color: var(--muted);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.animal-facts dd,
.compatibility-list dd {
    margin: 3px 0 0;
    font-weight: 700;
}

.profile-information {
    margin-top: 30px;
}

.profile-information h2 {
    margin-bottom: 8px;
}

.sibling-animal-list {
    margin: 12px 0 0;
    padding-left: 22px;
}

.sibling-animal-list li + li {
    margin-top: 7px;
}

.sibling-animal-list a {
    color: var(--accent-dark);
    font-weight: 800;
}

.compatibility-list {
    margin: 0;

    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.compatibility-list > div {
    padding: 14px;

    border-radius: 14px;
    background: var(--yellow);
    text-align: center;
}

.profile-next-step {
    margin-top: 32px;
    padding: 18px;

    border-left: 6px solid var(--light-blue);
    border-radius: 8px;

    background: var(--surface-blue);
    font-weight: 700;
}

@media (max-width: 850px) {
    .animal-profile__layout {
        grid-template-columns: 1fr;
    }

    .profile-photo-placeholder {
        min-height: 340px;
    }
}

@media (max-width: 520px) {
    .animal-facts {
        grid-template-columns: 1fr;
    }

    .compatibility-list {
        grid-template-columns: 1fr;
    }

    .profile-thumbnail-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }
}

/* End public animal profile pages */


/* Public applicant accounts */

.account-page {
    width: min(680px, calc(100% - 32px));
    min-height: 620px;
    margin: 0 auto;
    padding: 64px 0;

    display: grid;
    align-items: start;
}

.account-card {
    padding: clamp(26px, 6vw, 48px);

    border: 1px solid var(--border);
    border-radius: 24px;

    background: var(--surface);
    box-shadow: var(--shadow);
}

.account-card h1 {
    margin: 8px 0 12px;

    font-size: clamp(
        2rem,
        7vw,
        3.5rem
    );

    line-height: 1.1;
}

.account-form {
    margin-top: 28px;
}

.account-form p {
    margin: 0 0 20px;
}

.account-form label {
    display: block;
    margin-bottom: 6px;

    font-weight: 800;
}

.account-form input,
.account-form select {
    width: 100%;
    min-height: 46px;
    padding: 10px 12px;

    border: 2px solid var(--border);
    border-radius: 10px;

    background: #ffffff;
    color: var(--text);

    font: inherit;
}

.account-form input:focus,
.account-form select:focus {
    border-color: var(--accent-dark);
    outline: 3px solid var(--yellow);
    outline-offset: 2px;
}

.account-form .helptext {
    display: block;
    margin-top: 7px;

    color: var(--muted);
    font-size: 0.9rem;
}

.account-form .helptext ul {
    padding-left: 20px;
}

.errorlist {
    margin: 0 0 8px;
    padding: 12px 14px;

    border-left: 5px solid #a52a2a;
    border-radius: 8px;

    background: #fff1f1;
    color: #741d1d;

    list-style-position: inside;
}

.account-secondary-link {
    margin-top: 26px;
}

.development-notice {
    margin: 26px 0;
    padding: 18px;

    border-left: 6px solid var(--light-blue);
    border-radius: 10px;

    background: var(--surface-blue);
}

.secondary-button {
    display: inline-block;
    min-height: 44px;
    padding: 10px 20px;

    border: 2px solid var(--accent-dark);
    border-radius: 999px;

    background: transparent;
    color: var(--accent-dark);

    font: inherit;
    font-weight: 800;
    cursor: pointer;
}

.secondary-button:hover,
.secondary-button:focus {
    background: var(--yellow);
}

.account-details {
    margin: 28px 0;

    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.account-details > div {
    padding: 16px;

    border-radius: 14px;
    background: var(--surface-blue);
}

.account-details dt {
    color: var(--muted);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.account-details dd {
    margin: 4px 0 0;
    overflow-wrap: anywhere;
    font-weight: 700;
}

@media (max-width: 520px) {
    .account-details {
        grid-template-columns: 1fr;
    }
}

.account-card h2 {
    margin: 34px 0 8px;

    font-size: 1.5rem;
}

.profile-saved-message {
    margin: 24px 0;
    padding: 16px 18px;

    border-left: 6px solid var(--accent-dark);
    border-radius: 10px;

    background: var(--yellow);
    color: var(--text);

    font-weight: 800;
}

.account-profile-actions {
    margin-top: 30px;
    padding-top: 24px;

    border-top: 1px solid var(--border);
}

.account-profile-actions form {
    margin: 0;
}

/* End public applicant accounts */

/* Public account navigation buttons */

/*
 * Account buttons use the same label width and inherit
 * the exact same font size as every other sun button.
 */

.sun-nav-link--account span {
    width: 65px;
    font-size: inherit;
    line-height: 1.05;
}

@media (max-width: 700px) {
    .sun-nav-link--account span {
        width: 55px;
        font-size: inherit;
    }
}

/* End public account navigation buttons */

/* Public adoption drafts */

.application-account-actions {
    margin-top: 18px;

    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.application-page {
    width: min(760px, calc(100% - 32px));
    min-height: 620px;
    margin: 0 auto;
    padding: 64px 0;
}

.application-card {
    padding: clamp(26px, 6vw, 48px);

    border: 1px solid var(--border);
    border-radius: 24px;

    background: var(--surface);
    box-shadow: var(--shadow);
}

.application-card h1 {
    margin: 8px 0 14px;

    font-size: clamp(
        2rem,
        7vw,
        3.6rem
    );

    line-height: 1.1;
}

.application-status {
    display: inline-block;
    margin: 0 0 24px;
    padding: 7px 14px;

    border-radius: 999px;

    background: var(--yellow);
    color: var(--text);

    font-weight: 800;
}

.application-summary {
    margin: 0 0 28px;

    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.application-summary > div {
    padding: 16px;

    border-radius: 14px;
    background: var(--surface-blue);
}

.application-summary dt {
    color: var(--muted);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.application-summary dd {
    margin: 4px 0 0;
    overflow-wrap: anywhere;
    font-weight: 700;
}

.application-notice {
    margin: 28px 0;
    padding: 20px;

    border-left: 6px solid var(--light-blue);
    border-radius: 10px;

    background: var(--surface-blue);
}

.application-notice h2 {
    margin-top: 0;
}

.application-notice p {
    margin-bottom: 0;
}

.profile-next-step h2 {
    margin-top: 0;
}

.profile-next-step p {
    margin-top: 8px;
}

@media (max-width: 560px) {
    .application-summary {
        grid-template-columns: 1fr;
    }

    .application-account-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .application-account-actions a {
        width: 100%;
        text-align: center;
    }
}

/* Applicant application dashboard */

.application-list {
    margin-top: 34px;

    display: grid;
    gap: 22px;
}

.application-list-card {
    padding: clamp(20px, 4vw, 30px);

    border: 2px solid var(--border);
    border-radius: 20px;

    background: var(--surface-blue);
}

.application-list-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.application-list-card h2 {
    margin: 4px 0 0;
    font-size: clamp(1.45rem, 4vw, 2rem);
}

.application-list-number {
    margin: 0;

    color: var(--muted);
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.application-list-status {
    display: inline-block;
    flex: 0 0 auto;

    padding: 7px 13px;

    border-radius: 999px;

    background: #eeeeee;
    color: #333333;

    font-size: 0.88rem;
    font-weight: 800;
    text-align: center;
}

.application-list-status--draft {
    background: var(--yellow);
    color: var(--text);
}

.application-list-status--submitted {
    background: #e7f1ff;
    color: #084298;
}

.application-list-status--under-review {
    background: #fff3cd;
    color: #664d03;
}

.application-list-status--needs-more-information {
    background: #ffe5d0;
    color: #7a3200;
}

.application-list-status--approved {
    background: #d1e7dd;
    color: #0f5132;
}

.application-list-status--denied {
    background: #f8d7da;
    color: #842029;
}

.application-list-card__summary {
    margin: 22px 0;

    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.application-list-card__summary > div {
    padding: 14px;

    border-radius: 12px;
    background: var(--surface);
}

.application-list-card__summary dt {
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.application-list-card__summary dd {
    margin: 4px 0 0;
    overflow-wrap: anywhere;
    font-weight: 700;
}

.application-list-card__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.application-list-empty {
    margin-top: 34px;
    padding: clamp(22px, 5vw, 34px);

    border: 2px dashed var(--border);
    border-radius: 20px;

    background: var(--surface-blue);
    text-align: center;
}

.application-list-empty h2 {
    margin-top: 0;
}

.application-list-empty p {
    margin-bottom: 24px;
}

@media (max-width: 620px) {
    .application-list-card__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .application-list-card__summary {
        grid-template-columns: 1fr;
    }

    .application-list-card__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .application-list-card__actions a {
        width: 100%;
        text-align: center;
    }
}

/* End applicant application dashboard */

/* End public adoption drafts */

/* Adoption questionnaire */

.application-page--wide {
    width: min(980px, calc(100% - 32px));
}

.questionnaire-saved-message {
    margin: 22px 0;
    padding: 16px 18px;

    border-left: 6px solid var(--accent-dark);
    border-radius: 10px;

    background: var(--yellow);
    color: var(--text);

    font-weight: 800;
}

.questionnaire-form {
    margin-top: 34px;
}

.questionnaire-section {
    margin: 0 0 34px;
    padding: 0;

    border: 0;
}

.questionnaire-section legend {
    width: 100%;
    margin-bottom: 18px;
    padding-bottom: 9px;

    border-bottom: 3px solid var(--light-blue);

    color: var(--text);
    font-size: 1.45rem;
    font-weight: 800;
}

.questionnaire-fields {
    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.question-field {
    min-width: 0;
}

.question-field[hidden] {
    display: none;
}

.question-field label {
    display: block;
    margin-bottom: 7px;

    color: var(--text);
    font-weight: 800;
}

.question-field > input:not([type="checkbox"]),
.question-field > select,
.question-field > textarea {
    width: 100%;
    min-height: 46px;
    padding: 10px 12px;

    border: 2px solid var(--border);
    border-radius: 10px;

    background: #ffffff;
    color: var(--text);

    font: inherit;
}

.question-field > textarea {
    min-height: 90px;
    resize: vertical;
}

.question-field > input:focus,
.question-field > select:focus,
.question-field > textarea:focus {
    border-color: var(--accent-dark);
    outline: 3px solid var(--yellow);
    outline-offset: 2px;
}

.question-field > ul {
    margin: 0;
    padding: 14px;

    border: 1px solid var(--border);
    border-radius: 12px;

    background: var(--surface-blue);
    list-style: none;
}

.question-field > ul li + li {
    margin-top: 8px;
}

.question-field > ul label {
    margin: 0;

    display: flex;
    align-items: flex-start;
    gap: 9px;

    font-weight: 600;
}

.question-field input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 2px 0 0;

    flex: 0 0 auto;
}

.question-field--error
    > input:not([type="checkbox"]),
.question-field--error > select,
.question-field--error > textarea {
    border-color: #a52a2a;
}

.question-help {
    margin-top: 6px;

    color: var(--muted);
    font-size: 0.9rem;
}

.questionnaire-actions {
    margin-top: 34px;

    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}

@media (max-width: 720px) {
    .questionnaire-fields {
        grid-template-columns: 1fr;
    }

    .questionnaire-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .questionnaire-actions button,
    .questionnaire-actions a {
        width: 100%;
        text-align: center;
    }
}

/* End adoption questionnaire */

/* Repeatable application charts */

.checkbox-line {
    display: flex !important;
    align-items: flex-start;
    gap: 10px;
}

.checkbox-line input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 2px 0 0;

    flex: 0 0 auto;
}

.checkbox-line span {
    flex: 1 1 auto;
}

.repeatable-section {
    margin-top: 40px;
    scroll-margin-top: 24px;
}

.repeatable-table-wrapper {
    width: 100%;
    margin: 18px 0;

    overflow-x: auto;

    border: 1px solid var(--border);
    border-radius: 14px;
}

.repeatable-table {
    width: 100%;
    min-width: 1050px;

    border-collapse: collapse;
    background: #ffffff;
}

.repeatable-table th,
.repeatable-table td {
    min-width: 145px;
    padding: 12px;

    border-bottom: 1px solid var(--border);
    border-right: 1px solid var(--border);

    text-align: left;
    vertical-align: top;
}

.repeatable-table th {
    background: var(--surface-blue);
    font-size: 0.85rem;
    font-weight: 800;
}

.repeatable-table td:last-child,
.repeatable-table th:last-child {
    min-width: 90px;
    border-right: 0;
}

.repeatable-table tbody tr:last-child td {
    border-bottom: 0;
}

.repeatable-table input,
.repeatable-table select,
.repeatable-table textarea {
    width: 100%;
    min-width: 130px;
    padding: 9px;

    border: 1px solid var(--border);
    border-radius: 8px;

    background: #ffffff;
    color: var(--text);
    font: inherit;
}

.repeatable-table textarea {
    min-height: 76px;
    resize: vertical;
}

.repeatable-table input:focus,
.repeatable-table select:focus,
.repeatable-table textarea:focus {
    border-color: var(--accent-dark);
    outline: 3px solid var(--yellow);
    outline-offset: 1px;
}

.calculated-age {
    display: inline-block;
    min-width: 45px;
    padding: 10px;

    border-radius: 8px;

    background: var(--surface-blue);
    font-weight: 800;
    text-align: center;
}

.repeatable-add-button {
    margin-top: 4px;
}

.repeatable-remove-button {
    padding: 8px 10px;

    border: 1px solid var(--border);
    border-radius: 8px;

    background: #ffffff;
    color: var(--text);

    cursor: pointer;
    font: inherit;
    font-weight: 700;
}

.repeatable-remove-button:hover,
.repeatable-remove-button:focus {
    background: var(--yellow);
}

/* End repeatable application charts */

/* Application chart overflow fix */

.application-page--wide,
.application-card,
.questionnaire-form,
.questionnaire-section,
.repeatable-section {
    min-width: 0;
    max-width: 100%;
}

.application-card {
    overflow: hidden;
}

.repeatable-section {
    display: block;
    width: 100%;
}

.repeatable-gateway {
    max-width: 720px;
    margin: 0 0 20px;
}

.repeatable-gateway > select {
    width: 100%;
    min-height: 46px;
    padding: 10px 12px;

    border: 2px solid var(--border);
    border-radius: 10px;

    background: #ffffff;
    color: var(--text);
    font: inherit;
}

[data-repeatable-content][hidden] {
    display: none;
}

.repeatable-cell--inactive {
    background: #f5f5f5;
}

.repeatable-table-wrapper {
    display: block;

    width: 100%;
    max-width: 100%;

    overflow-x: scroll !important;
    overflow-y: hidden;

    -webkit-overflow-scrolling: touch;
    overscroll-behavior-inline: contain;
    scrollbar-gutter: stable;

    border: 2px solid var(--border);
    border-radius: 14px;
}

.repeatable-table {
    width: max-content;
    min-width: 1100px;
    max-width: none;
}

.repeatable-table-wrapper::-webkit-scrollbar {
    height: 14px;
}

.repeatable-table-wrapper::-webkit-scrollbar-track {
    border-radius: 999px;
    background: #eeeeee;
}

.repeatable-table-wrapper::-webkit-scrollbar-thumb {
    border: 3px solid #eeeeee;
    border-radius: 999px;
    background: #777777;
}

.repeatable-table-wrapper::-webkit-scrollbar-thumb:hover {
    background: #555555;
}

.dependent-choice,
.directory-choice {
    display: grid;
    gap: 7px;

    min-width: 150px;
}

.dependent-select,
.dependent-manual-input {
    width: 100%;
    min-width: 145px;
    padding: 9px;

    border: 1px solid var(--border);
    border-radius: 8px;

    background: #ffffff;
    color: var(--text);

    font: inherit;
}

.dependent-manual-input[hidden] {
    display: none;
}

/* End application chart overflow fix */

/* Adoption validation and layout refinements */

.question-field--full-width {
    grid-column: 1 / -1;
}

.signature-introduction {
    max-width: 760px;
    margin: 0 0 20px;
}

.signature-method-label,
.signature-panel-title {
    display: block;
    margin-bottom: 8px;

    color: var(--text);
    font-weight: 800;
}

.signature-method-options > div {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.signature-method-options > div > div {
    min-width: min(100%, 230px);
    padding: 12px 14px;

    border: 2px solid var(--border);
    border-radius: 10px;

    background: #ffffff;
}

.signature-method-options label {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0;

    cursor: pointer;
}

.signature-method-options input {
    width: 20px;
    height: 20px;
    margin: 0;
}

.signature-panel {
    width: 100%;
    margin-top: 20px;
    padding: 18px;

    border: 2px solid var(--border);
    border-radius: 14px;

    background: var(--surface-blue);
}

.signature-panel[hidden] {
    display: none;
}

.typed-signature-preview {
    min-height: 110px;
    padding: 24px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 2px solid #6d8798;
    border-radius: 10px;

    background: #ffffff;
    color: #102f44;

    font-family:
        "Snell Roundhand",
        "Segoe Script",
        "Brush Script MT",
        cursive;
    font-size: clamp(2rem, 7vw, 4rem);
    line-height: 1.15;
    text-align: center;
    overflow-wrap: anywhere;
}

.typed-signature-preview--empty {
    color: var(--muted);
    font-family: inherit;
    font-size: 1rem;
}

.signature-pad {
    display: block;

    width: 100%;
    height: 220px;

    border: 3px solid #6d8798;
    border-radius: 10px;

    background: #ffffff;
    cursor: crosshair;
    touch-action: none;
}

.signature-pad:focus {
    border-color: var(--accent-dark);
    outline: 3px solid var(--yellow);
    outline-offset: 2px;
}

.signature-clear-button {
    margin-top: 14px;
}

.signature-certification {
    margin-top: 22px;
}

.reference-status-section {
    margin-top: 28px;
    padding: 22px;

    border: 1px solid var(--border);
    border-radius: 14px;

    background: var(--surface-blue);
}

.reference-status-section h2 {
    margin-top: 0;
}

.reference-status-list {
    display: grid;
    gap: 10px;

    margin: 18px 0 0;
    padding: 0;

    list-style: none;
}

.reference-status-list li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;

    padding: 14px 16px;

    border: 1px solid var(--border);
    border-radius: 10px;

    background: #ffffff;
}

.reference-status-list small {
    display: block;
    margin-top: 3px;
    color: var(--muted);
}

.reference-status {
    flex: 0 0 auto;
    padding: 5px 11px;

    border-radius: 999px;

    font-weight: 800;
}

.reference-status--pending {
    background: #fff3cd;
    color: #664d03;
}

.reference-status--completed {
    background: #d1e7dd;
    color: #0f5132;
}

.reference-response-form .questionnaire-section:first-of-type {
    margin-top: 24px;
}

.reference-state-card .primary-button {
    display: inline-flex;
    margin-top: 18px;
}

.caretaker-snapshot {
    margin: 18px 0 24px;
}

.caretaker-address-snapshot {
    margin: 18px 0 24px;
    padding: 18px 20px;

    border: 1px solid var(--border);
    border-radius: 12px;

    background: var(--surface-blue);
    color: var(--text);
    font-style: normal;
    font-weight: 700;
    line-height: 1.7;
}

.caretaker-history-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 14px;

    margin: 18px 0;
}

.caretaker-history-card {
    padding: 16px;

    border: 1px solid var(--border);
    border-radius: 12px;

    background: #ffffff;
}

.caretaker-history-card h3 {
    margin: 0 0 8px;
    color: var(--accent-dark);
}

.caretaker-history-card p {
    margin: 6px 0 0;
}

@media (max-width: 620px) {
    .reference-status-list li {
        align-items: flex-start;
        flex-direction: column;
    }
}

.stacked-checkbox-options {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;

    width: 100%;
    margin-top: 10px;
    padding: 16px;

    border: 1px solid var(--border);
    border-radius: 12px;

    background: var(--surface-blue);
}

.stacked-checkbox-options > div {
    display: block;
    width: 100%;
}

.stacked-checkbox-options > div > label {
    display: flex;
    align-items: flex-start;
    gap: 10px;

    width: 100%;
    margin: 0;

    font-weight: 600;
}

.stacked-checkbox-options input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 2px 0 0;

    flex: 0 0 auto;
}

.calculated-age {
    min-width: 150px;
    white-space: nowrap;
}

.applicant-calculated-age {
    display: block;
    min-height: 24px;
    margin-top: 7px;

    color: var(--muted);
    font-size: 0.95rem;
    font-weight: 700;
}

.repeatable-validation-summary {
    margin: 0 0 28px;
    padding: 18px;

    border: 2px solid #a52a2a;
    border-radius: 12px;

    background: #fff5f5;
    color: #7a1f1f;
}

.repeatable-validation-summary h2 {
    margin: 0 0 12px;
    font-size: 1.15rem;
}

.repeatable-validation-summary p {
    margin: 8px 0;
}

.repeatable-validation-summary ul {
    margin: 5px 0 0;
}

/* End adoption validation and layout refinements */

/* Animal catalog dependent fields */

.animal-catalog-choice {
    display: grid;
    gap: 8px;

    min-width: 210px;
    width: 100%;
}

.animal-catalog-choice select,
.animal-catalog-choice input {
    width: 100%;
    min-width: 200px;
}

.animal-catalog-manual[hidden] {
    display: none;
}

/* End animal catalog dependent fields */

/* Bright application validation errors */

.application-error-summary {
    margin: 0 0 32px;
    padding: 22px 24px;

    border: 4px solid #d40000;
    border-radius: 14px;

    background: #fff200;
    color: #750000;

    box-shadow: 0 5px 0 rgba(140, 0, 0, 0.18);
}

.application-error-summary:focus {
    outline: 4px solid #111111;
    outline-offset: 4px;
}

.application-error-summary h2 {
    margin: 0 0 10px;

    color: #b00000;
    font-size: 1.45rem;
    font-weight: 900;
}

.application-error-summary p {
    margin: 0 0 14px;

    color: #630000;
    font-weight: 700;
}

.application-error-summary ul {
    margin: 0;
    padding-left: 24px;
}

.application-error-summary li + li {
    margin-top: 8px;
}

.application-error-summary a {
    color: #8b0000;
    font-weight: 800;
    text-decoration: underline;
    text-decoration-thickness: 2px;
}

.application-error-summary a:hover,
.application-error-summary a:focus {
    color: #000000;
    background: #ffffff;
}

.question-field--error {
    padding: 14px;

    border: 3px solid #e00000;
    border-radius: 12px;

    background: #fff1f1;
    scroll-margin-top: 24px;
}

.question-field--error > label,
.question-field--error .checkbox-line {
    color: #c00000;
    font-weight: 900;
}

.question-field--error
    > input:not([type="checkbox"]),
.question-field--error > select,
.question-field--error > textarea,
.question-field--error
    .dependent-choice select,
.question-field--error
    .dependent-choice input,
.question-field--error
    .directory-choice select,
.question-field--error
    .directory-choice input {
    border: 3px solid #e00000;
    background: #ffffff;
}

.question-field--error
    input[type="checkbox"] {
    outline: 3px solid #e00000;
    outline-offset: 3px;
}

.question-field--error
    input[type="radio"] {
    outline: 3px solid #e00000;
    outline-offset: 3px;
}

.question-field--error
    .signature-method-options > div > div {
    border-color: #e00000;
    background: #fff8f8;
}

.question-field--error > ul.errorlist {
    margin: 10px 0 0;
    padding: 10px 12px;

    border: 2px solid #e00000;
    border-radius: 8px;

    background: #fff200;
    color: #a00000;

    font-weight: 900;
    list-style-position: inside;
}

.question-field--error
    > ul.errorlist li + li {
    margin-top: 6px;
}

.repeatable-section--error {
    padding: 18px;

    border: 3px solid #e00000;
    border-radius: 14px;

    background: #fff1f1;
    scroll-margin-top: 24px;
}

.repeatable-section--error:focus {
    outline: 4px solid #111111;
    outline-offset: 4px;
}

.repeatable-section--error legend {
    color: #c00000;
}

.repeatable-section-errors {
    margin: 14px 0 18px;
    padding: 12px 14px;

    border: 2px solid #e00000;
    border-radius: 10px;

    background: #fff200;
    color: #a00000;

    font-weight: 900;
}

.repeatable-section-errors > ul.errorlist {
    margin: 0;
    padding-left: 22px;
}

.repeatable-error-scroll-help {
    margin: -6px 0 16px;

    color: #750000;
    font-weight: 800;
}

.repeatable-row--error td {
    background: #fff7f7;
}

.repeatable-table
    .repeatable-control--error {
    border: 3px solid #e00000;
    background: #fffde0;
}

/* End bright application validation errors */

/* Adopter-style staff preview */

.questionnaire-form--preview
    input:disabled,
.questionnaire-form--preview
    select:disabled,
.questionnaire-form--preview
    textarea:disabled {
    opacity: 1;

    background: #f8fbff;
    color: #222222;

    cursor: default;
    -webkit-text-fill-color: #222222;
}

.questionnaire-form--preview
    input[type="checkbox"]:disabled {
    opacity: 1;
}

.questionnaire-form--preview
    .repeatable-add-button,
.questionnaire-form--preview
    .repeatable-remove-button {
    display: none !important;
}

.staff-signature-preview {
    display: block;

    width: 100%;
    max-width: 600px;
    height: auto;
    min-height: 180px;
    margin-top: 12px;

    border: 1px solid var(--border);
    border-radius: 12px;

    background: #ffffff;
}

/* End adopter-style staff preview */

/* Ranked adoption home */

.visually-hidden {
    position: absolute;

    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;

    border: 0;

    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

.interest-home-link {
    position: relative;

    width: 104px;
    height: 108px;
    padding: 4px 6px 0;

    display: grid;
    place-items: center;
    flex: 0 0 auto;

    color: var(--accent-dark);
    text-decoration: none;

    isolation: isolate;
}

.interest-home-link:hover,
.interest-home-link:focus {
    color: var(--accent-dark);
    text-decoration: none;
}

.interest-home-link__house {
    position: absolute;
    inset: 4px 16px 22px;
    z-index: 0;

    width: 72px;
    height: 72px;

    fill: var(--yellow);
    stroke: var(--accent-dark);
    stroke-linejoin: round;
    stroke-width: 2.5px;

    transition:
        transform 0.2s ease,
        fill 0.2s ease;
}

.interest-home-link:hover
    .interest-home-link__house,
.interest-home-link:focus
    .interest-home-link__house {
    fill: #ffffff;
    transform: translateY(-2px);
}

.interest-home-link__pets {
    position: absolute;
    left: 10px;
    bottom: 23px;
    z-index: 1;

    width: 84px;
    height: 44px;

    pointer-events: none;
}

.interest-home-pet {
    position: absolute;
    bottom: 0;

    width: 27px;
    height: 38px;

    fill: var(--accent-dark);
    filter:
        drop-shadow(
            0 2px 1px rgba(255, 255, 255, 0.8)
        );
}

.interest-home-pet--1 {
    left: 0;
    z-index: 4;
}

.interest-home-pet--2 {
    left: 19px;
    z-index: 3;
}

.interest-home-pet--3 {
    left: 38px;
    z-index: 2;
}

.interest-home-pet--4 {
    left: 57px;
    z-index: 1;
}

.interest-home-link__count {
    position: absolute;
    top: 2px;
    right: 5px;
    z-index: 2;

    min-width: 28px;
    height: 28px;
    padding: 0 7px;

    display: grid;
    place-items: center;

    border: 2px solid #ffffff;
    border-radius: 999px;

    background: var(--accent-dark);
    color: #ffffff;

    font-size: 0.82rem;
    font-weight: 900;
    line-height: 1;
}

.interest-home-link__label {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;

    color: var(--text);
    font-size: 0.86rem;
    font-weight: 900;
    line-height: 1;
    text-align: center;
}

.animal-interest-action {
    padding: 0 20px 20px;

    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
}

.animal-interest-action form {
    margin: 0;
}

.animal-interest-button {
    min-height: 42px;
    padding: 9px 17px;
}

.animal-interest-button--selected {
    background: var(--yellow);
}

.animal-interest-list-link {
    font-size: 0.9rem;
    font-weight: 800;
}

.interest-basket-card {
    overflow: visible;
}

.interest-basket-introduction {
    max-width: 760px;
    color: var(--muted);
    font-size: 1.08rem;
}

.interest-basket-list {
    margin: 30px 0;
    padding: 0;

    display: grid;
    gap: 18px;

    list-style: none;
}

.interest-drag-instructions {
    margin: 24px 0 -14px;
    color: var(--muted);
    font-size: 0.94rem;
}

.interest-basket-item {
    padding: 18px;

    display: grid;
    grid-template-columns:
        72px minmax(120px, 190px)
        minmax(220px, 1fr) auto;
    align-items: center;
    gap: 18px;

    border: 2px solid var(--border);
    border-radius: 18px;

    background: var(--surface-blue);
    cursor: grab;

    transition:
        border-color 0.18s ease,
        box-shadow 0.18s ease,
        opacity 0.18s ease,
        transform 0.18s ease;
}

.interest-basket-item--dragging {
    cursor: grabbing;
    opacity: 0.45;
}

.interest-basket-item a,
.interest-basket-item button {
    cursor: pointer;
}

.interest-basket-item--drop-before {
    border-top-color: var(--accent-dark);
    box-shadow: 0 -7px 0 -3px var(--yellow);
    transform: translateY(3px);
}

.interest-basket-item--drop-after {
    border-bottom-color: var(--accent-dark);
    box-shadow: 0 7px 0 -3px var(--yellow);
    transform: translateY(-3px);
}

.interest-rank,
.application-animal-rank {
    width: 56px;
    height: 56px;

    display: grid;
    place-items: center;
    align-content: center;

    border-radius: 50%;

    background: var(--yellow);
    color: var(--accent-dark);

    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1;
}

.interest-rank small {
    font-size: 0.62rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.interest-basket-photo {
    aspect-ratio: 4 / 3;
    overflow: hidden;

    display: grid;
    place-items: center;

    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            var(--yellow),
            var(--light-blue)
        );
    color: var(--accent-dark);
    font-size: 0.85rem;
    font-weight: 800;
    text-align: center;
    text-decoration: none;
}

.interest-basket-photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.interest-basket-information h2 {
    margin: 0 0 5px;
}

.interest-basket-information p {
    margin: 6px 0 0;
}

.interest-basket-controls {
    display: grid;
    justify-items: stretch;
    gap: 8px;
}

.interest-basket-controls form,
.interest-basket-controls button {
    width: 100%;
}

.interest-reorder-form {
    display: none;
}

.secondary-button:disabled {
    border-color: var(--border);
    background: #f3f3f3;
    color: var(--muted);
    cursor: not-allowed;
    opacity: 0.62;
}

.secondary-button:disabled:hover,
.secondary-button:disabled:focus {
    background: #f3f3f3;
}

.text-button {
    padding: 6px;

    border: 0;
    background: transparent;
    color: #8b2525;

    cursor: pointer;
    font: inherit;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.text-button:hover,
.text-button:focus {
    color: #b00000;
}

.interest-basket-next-step {
    margin-top: 30px;
    padding: 24px;

    border: 3px solid var(--light-blue);
    border-radius: 18px;

    background: var(--yellow);
}

.interest-basket-next-step h2 {
    margin-top: 0;
}

.application-animal-selection {
    margin: 28px 0;
    padding: 22px;

    border: 2px solid var(--border);
    border-radius: 18px;

    background: var(--surface-blue);
}

.application-animal-selection__heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.application-animal-selection h2 {
    margin: 4px 0 0;
}

.application-animal-ranks {
    margin: 20px 0 0;
    padding: 0;

    display: grid;
    gap: 12px;

    list-style: none;
}

.application-animal-ranks li {
    padding: 12px 14px;

    display: flex;
    align-items: center;
    gap: 14px;

    border-radius: 14px;
    background: #ffffff;
}

.application-animal-rank {
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    font-size: 1.08rem;
}

.application-animal-ranks a {
    font-size: 1.05rem;
    font-weight: 900;
}

.application-animal-ranks small {
    display: block;
    color: var(--muted);
}

.application-card-ranks {
    margin: 0;
    padding: 0;
    list-style: none;
}

.application-card-ranks li + li {
    margin-top: 4px;
}

.application-card-ranks span {
    color: var(--accent-dark);
    font-weight: 900;
}

@media (max-width: 900px) {
    .interest-basket-item {
        grid-template-columns:
            62px minmax(110px, 160px) 1fr;
    }

    .interest-basket-controls {
        grid-column: 2 / -1;
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 620px) {
    .interest-home-link {
        width: 94px;
        height: 100px;
    }

    .interest-basket-item {
        grid-template-columns: 54px 1fr;
        align-items: start;
    }

    .interest-basket-photo {
        grid-column: 2;
    }

    .interest-basket-information,
    .interest-basket-controls {
        grid-column: 1 / -1;
    }

    .interest-basket-controls {
        grid-template-columns: 1fr;
    }

    .application-animal-selection__heading {
        align-items: stretch;
        flex-direction: column;
    }

    .application-animal-selection__heading
        .secondary-button {
        width: 100%;
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .interest-basket-item {
        transition: none;
    }

    .interest-home-link__house {
        transition: none;
    }

    .interest-home-link:hover
        .interest-home-link__house,
    .interest-home-link:focus
        .interest-home-link__house {
        transform: none;
    }
}

/* End ranked adoption home */

/* START uploaded navigation artwork */
.site-header {
    position: relative;
    overflow: hidden;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background:
        radial-gradient(
            ellipse at 18% 100%,
            rgba(255, 210, 139, 0.18) 0%,
            rgba(255, 210, 139, 0.08) 20%,
            rgba(255, 210, 139, 0) 48%
        ),
        radial-gradient(
            ellipse at 52% 100%,
            rgba(244, 163, 157, 0.16) 0%,
            rgba(244, 163, 157, 0.07) 24%,
            rgba(244, 163, 157, 0) 54%
        ),
        radial-gradient(
            ellipse at 84% 100%,
            rgba(235, 171, 198, 0.14) 0%,
            rgba(235, 171, 198, 0.06) 22%,
            rgba(235, 171, 198, 0) 50%
        ),
        linear-gradient(
            180deg,
            #4f87b5 0%,
            #5f99c2 24%,
            #74acd1 48%,
            #8bb9d4 66%,
            #b6b7ca 80%,
            #d7a8b5 90%,
            #efc08e 100%
        );
}

.site-header::after {
    content: none !important;
    display: none !important;
}

.site-header__inner {
    width: min(100%, 1540px);
    margin: 0 auto;
    padding: 20px 22px 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.site-name,
.sun-nav-link > span,
.interest-home-link__label {
    font-family:
        "Marker Felt",
        "Chalkboard SE",
        "Avenir Next Rounded",
        "Arial Rounded MT Bold",
        ui-rounded,
        sans-serif;
}

.site-name {
    max-width: 100%;
    margin: 0;
    color: #203548;
    font-size: clamp(1.8rem, 4.4vw, 4rem);
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: 0.01em;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
}

.sun-navigation {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    gap: 14px 20px;
}

.sun-nav-link {
    position: relative;
    width: 132px;
    height: 132px;
    min-height: 132px;
    display: grid;
    place-items: center;
    color: #203548;
    text-decoration: none;
    isolation: isolate;
}

.sun-nav-link::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background:
        url("/static/animals/images/nav/trimmed/sun-swirl.934b47341ec3.png")
        center / contain
        no-repeat;
    filter:
        drop-shadow(
            0 4px 8px rgba(32, 53, 72, 0.16)
        );
}

.sun-nav-link__shape {
    display: none !important;
}

.sun-nav-link > span {
    position: absolute;
    top: 50%;
    left: 44%;
    z-index: 1;
    width: 54px;
    min-height: 48px;
    padding: 0;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #203548;
    font-size: 0.64rem;
    font-weight: 900;
    line-height: 0.98;
    text-align: center;
    text-wrap: balance;
    pointer-events: none;
}

.interest-home-link {
    position: relative;
    width: 194px;
    height: 180px;
    min-height: 180px;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #203548;
    text-decoration: none;
}

.interest-home-visual {
    position: relative;
    width: 194px;
    height: 154px;
    display: block;
}

.interest-home-link__house {
    position: absolute;
    top: 6px;
    left: 50%;
    z-index: 4;
    width: 178px;
    height: 140px;
    transform: translateX(-50%);
    display: block !important;
    object-fit: contain;
    filter:
        drop-shadow(
            0 5px 9px rgba(32, 53, 72, 0.18)
        );
}

.interest-home-link__pets {
    position: absolute;
    inset: 0;
    z-index: 5;
    display: block !important;
    pointer-events: none;
}

.interest-home-pet {
    position: absolute;
    display: block;
    height: auto;
    object-fit: contain;
    transform-origin: center bottom;
    filter:
        drop-shadow(
            0 2px 3px rgba(0, 0, 0, 0.22)
        );
}

.interest-home-pet--cat-1 {
    left: 5px;
    top: 103px;
    width: 28px;
    z-index: 8;
    transform: rotate(-6deg);
}

.interest-home-pet--cat-2 {
    left: 27px;
    top: 112px;
    width: 29px;
    z-index: 9;
    transform: rotate(4deg);
}

.interest-home-pet--cat-3 {
    left: 52px;
    top: 101px;
    width: 30px;
    z-index: 10;
    transform: rotate(-3deg);
}

.interest-home-pet--cat-4 {
    left: 78px;
    top: 112px;
    width: 29px;
    z-index: 11;
    transform: rotate(4deg);
}

.interest-home-pet--cat-5 {
    left: 104px;
    top: 101px;
    width: 30px;
    z-index: 10;
    transform: rotate(-4deg);
}

.interest-home-pet--cat-6 {
    left: 131px;
    top: 112px;
    width: 29px;
    z-index: 9;
    transform: rotate(3deg);
}

.interest-home-pet--cat-7 {
    left: 157px;
    top: 103px;
    width: 28px;
    z-index: 8;
    transform: rotate(-5deg);
}

.interest-home-pet--cat-8 {
    left: 37px;
    top: 47px;
    width: 24px;
    z-index: 7;
    transform: rotate(-8deg);
}

.interest-home-pet--cat-9 {
    left: 84px;
    top: 28px;
    width: 24px;
    z-index: 7;
    transform: rotate(3deg);
}
.interest-home-pet--dog-1 {
    left: 5px;
    top: 113px;
    width: 37px;
    z-index: 13;
    transform: rotate(-6deg);
}

.interest-home-pet--dog-2 {
    left: 37px;
    top: 120px;
    width: 38px;
    z-index: 14;
    transform: rotate(4deg);
}

.interest-home-pet--dog-3 {
    left: 70px;
    top: 108px;
    width: 41px;
    z-index: 15;
    transform: rotate(-2deg);
}

.interest-home-pet--dog-4 {
    left: 104px;
    top: 120px;
    width: 38px;
    z-index: 14;
    transform: rotate(3deg);
}

.interest-home-pet--dog-5 {
    left: 137px;
    top: 113px;
    width: 37px;
    z-index: 13;
    transform: rotate(-4deg);
}

.interest-home-pet--dog-6 {
    left: 77px;
    top: 94px;
    width: 44px;
    z-index: 16;
}

.interest-home-link__count {
    position: absolute;
    top: 1px;
    right: 7px;
    z-index: 20;
}

.interest-home-link__label {
    margin-top: -2px;
    color: #203548;
    font-size: 0.80rem;
    font-weight: 900;
    line-height: 1;
    text-align: center;
}

@media (max-width: 900px) {
    .site-name {
        white-space: normal;
    }

    .sun-nav-link {
        width: 116px;
        height: 116px;
        min-height: 116px;
    }

    .sun-nav-link > span {
        left: 43.5%;
        width: 49px;
        min-height: 44px;
        font-size: 0.58rem;
    }

    .interest-home-link {
        width: 168px;
        height: 158px;
        min-height: 158px;
    }

    .interest-home-visual {
        transform: scale(0.86);
        transform-origin: top center;
    }

    .interest-home-link__label {
        margin-top: -22px;
        font-size: 0.74rem;
    }
}

@media (max-width: 640px) {
    .sun-nav-link {
        width: 102px;
        height: 102px;
        min-height: 102px;
    }

    .sun-nav-link > span {
        left: 43%;
        width: 44px;
        min-height: 39px;
        font-size: 0.53rem;
    }

    .interest-home-link {
        width: 144px;
        height: 144px;
        min-height: 144px;
    }

    .interest-home-visual {
        transform: scale(0.74);
    }

    .interest-home-link__label {
        margin-top: -42px;
        font-size: 0.68rem;
    }
}
/* END uploaded navigation artwork */

/* START final nav polish */
.sun-nav-link {
    position: relative;
}

.sun-nav-link > span {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-54%, -50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 72% !important;
    max-width: 72% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    line-height: 1.05 !important;
    font-size: clamp(1.02rem, 1.18vw, 1.24rem) !important;
    font-weight: 800 !important;
    color: #18324d !important;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.35) !important;
    letter-spacing: -0.01em !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

.interest-home-link {
    transform: none !important;
    transition: none !important;
}

.interest-home-link:hover,
.interest-home-link:focus,
.interest-home-link:focus-visible {
    transform: none !important;
}

.interest-home-link__house,
.interest-home-link__house--illustrated {
    transform-origin: center bottom !important;
    transition:
        transform 180ms ease,
        filter 180ms ease !important;
}

.interest-home-link:hover .interest-home-link__house,
.interest-home-link:hover .interest-home-link__house--illustrated,
.interest-home-link:focus-visible .interest-home-link__house,
.interest-home-link:focus-visible .interest-home-link__house--illustrated {
    transform: scale(1.07) !important;
    filter:
        drop-shadow(0 0 10px rgba(255, 224, 130, 0.90))
        drop-shadow(0 0 22px rgba(255, 179, 71, 0.55)) !important;
}

.interest-home-link__pets {
    position: absolute !important;
    left: 50% !important;
    bottom: 0.2rem !important;
    width: 82% !important;
    height: 84% !important;
    transform: translateX(-50%) !important;
    pointer-events: none !important;
    z-index: 3 !important;
}

.interest-home-pet {
    position: absolute !important;
    width: clamp(1.2rem, 1.9vw, 1.8rem) !important;
    height: auto !important;
    transform: none !important;
    rotate: 0deg !important;
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.18)) !important;
}

/* front row: close to the house */
.interest-home-pet--1  { left: 16% !important; bottom: 4% !important; }
.interest-home-pet--2  { left: 28% !important; bottom: 1% !important; }
.interest-home-pet--3  { left: 40% !important; bottom: 5% !important; }
.interest-home-pet--4  { left: 52% !important; bottom: 1% !important; }
.interest-home-pet--5  { left: 64% !important; bottom: 4% !important; }
.interest-home-pet--6  { left: 75% !important; bottom: 2% !important; }

/* porch / near the doorway */
.interest-home-pet--7  { left: 24% !important; bottom: 13% !important; }
.interest-home-pet--8  { left: 38% !important; bottom: 15% !important; }
.interest-home-pet--9  { left: 56% !important; bottom: 15% !important; }
.interest-home-pet--10 { left: 70% !important; bottom: 12% !important; }

/* roof row */
.interest-home-pet--11 { left: 24% !important; top: 24% !important; }
.interest-home-pet--12 { left: 37% !important; top: 17% !important; }
.interest-home-pet--13 { left: 50% !important; top: 14% !important; }
.interest-home-pet--14 { left: 62% !important; top: 17% !important; }
.interest-home-pet--15 { left: 74% !important; top: 24% !important; }

/* little extra pet near the upper roof */
.interest-home-pet--16 { left: 50% !important; top: 6% !important; }

@media (max-width: 1100px) {
    .sun-nav-link > span {
        width: 70% !important;
        max-width: 70% !important;
        font-size: clamp(0.98rem, 1.9vw, 1.12rem) !important;
    }

    .interest-home-pet {
        width: clamp(1rem, 2.2vw, 1.45rem) !important;
    }
}

@media (max-width: 760px) {
    .sun-nav-link > span {
        width: 68% !important;
        max-width: 68% !important;
        font-size: 0.96rem !important;
        line-height: 1.02 !important;
    }

    .interest-home-pet {
        width: 0.95rem !important;
    }
}
/* END final nav polish */

/* START fixed home hover and pet layout */

/*
Keep the link and its visual container completely stationary.
Only the house image scales during hover.
*/
.interest-home-link,
.interest-home-link:hover,
.interest-home-link:focus,
.interest-home-link:focus-visible,
.interest-home-visual,
.interest-home-link:hover .interest-home-visual,
.interest-home-link:focus-visible .interest-home-visual {
    translate: none !important;
    transform: none !important;
}

/*
Make the My Home area and house larger.
*/
.interest-home-link {
    width: 224px !important;
    height: 208px !important;
    min-height: 208px !important;
}

.interest-home-visual {
    position: relative !important;
    width: 224px !important;
    height: 178px !important;
    overflow: visible !important;
}

.interest-home-link__house,
.interest-home-link__house--illustrated {
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    z-index: 2 !important;
    width: 212px !important;
    height: 166px !important;
    margin: 0 !important;
    translate: none !important;
    transform: translateX(-50%) scale(1) !important;
    transform-origin: center center !important;
    object-fit: contain !important;
    transition:
        transform 180ms ease,
        filter 180ms ease !important;
}

/*
Preserve translateX while zooming so the house cannot jump right.
*/
.interest-home-link:hover .interest-home-link__house,
.interest-home-link:hover .interest-home-link__house--illustrated,
.interest-home-link:focus-visible .interest-home-link__house,
.interest-home-link:focus-visible .interest-home-link__house--illustrated {
    translate: none !important;
    transform: translateX(-50%) scale(1.07) !important;
    filter:
        drop-shadow(0 0 10px rgba(255, 235, 151, 0.95))
        drop-shadow(0 0 22px rgba(255, 184, 77, 0.62))
        drop-shadow(0 6px 10px rgba(32, 53, 72, 0.20))
        !important;
}

/*
Animals must always render in front of the house.
*/
.interest-home-link__pets {
    position: absolute !important;
    inset: 0 !important;
    z-index: 20 !important;
    display: block !important;
    transform: none !important;
    pointer-events: none !important;
}

.interest-home-pet {
    position: absolute !important;
    z-index: 21 !important;
    height: auto !important;
    object-fit: contain !important;
    rotate: 0deg !important;
    transform: none !important;
    transform-origin: center bottom !important;
    filter:
        drop-shadow(0 2px 3px rgba(0, 0, 0, 0.24))
        !important;
}

/*
Cats: closer to the center, closer to the house, and slightly higher.
The first seven form the front row.
*/
.interest-home-pet--cat-1 {
    left: 34px !important;
    top: 116px !important;
    width: 29px !important;
}

.interest-home-pet--cat-2 {
    left: 57px !important;
    top: 124px !important;
    width: 30px !important;
}

.interest-home-pet--cat-3 {
    left: 80px !important;
    top: 113px !important;
    width: 31px !important;
}

.interest-home-pet--cat-4 {
    left: 104px !important;
    top: 121px !important;
    width: 30px !important;
}

.interest-home-pet--cat-5 {
    left: 128px !important;
    top: 113px !important;
    width: 31px !important;
}

.interest-home-pet--cat-6 {
    left: 151px !important;
    top: 124px !important;
    width: 30px !important;
}

.interest-home-pet--cat-7 {
    left: 174px !important;
    top: 116px !important;
    width: 29px !important;
}

/*
Three cats sit closer to the porch and center of the home.
*/
.interest-home-pet--cat-8 {
    left: 73px !important;
    top: 91px !important;
    width: 27px !important;
}

.interest-home-pet--cat-9 {
    left: 101px !important;
    top: 84px !important;
    width: 28px !important;
}
/*
Keep dogs in front and closer to the center too.
*/
.interest-home-pet--dog-1 {
    left: 30px !important;
    top: 120px !important;
    width: 38px !important;
}

.interest-home-pet--dog-2 {
    left: 61px !important;
    top: 126px !important;
    width: 39px !important;
}

.interest-home-pet--dog-3 {
    left: 91px !important;
    top: 113px !important;
    width: 42px !important;
}

.interest-home-pet--dog-4 {
    left: 124px !important;
    top: 126px !important;
    width: 39px !important;
}

.interest-home-pet--dog-5 {
    left: 155px !important;
    top: 120px !important;
    width: 38px !important;
}

.interest-home-pet--dog-6 {
    left: 91px !important;
    top: 99px !important;
    width: 45px !important;
}

.interest-home-link__count {
    z-index: 30 !important;
}

.interest-home-link__label {
    margin-top: 0 !important;
}

/*
Responsive scaling without reintroducing sideways movement.
*/
@media (max-width: 900px) {
    .interest-home-link {
        width: 190px !important;
        height: 181px !important;
        min-height: 181px !important;
    }

    .interest-home-visual {
        width: 224px !important;
        height: 178px !important;
        transform: scale(0.84) !important;
        transform-origin: top center !important;
    }

    .interest-home-link:hover .interest-home-visual,
    .interest-home-link:focus-visible .interest-home-visual {
        transform: scale(0.84) !important;
    }

    .interest-home-link__label {
        margin-top: -28px !important;
    }
}

@media (max-width: 640px) {
    .interest-home-link {
        width: 164px !important;
        height: 160px !important;
        min-height: 160px !important;
    }

    .interest-home-visual {
        transform: scale(0.72) !important;
    }

    .interest-home-link:hover .interest-home-visual,
    .interest-home-link:focus-visible .interest-home-visual {
        transform: scale(0.72) !important;
    }

    .interest-home-link__label {
        margin-top: -50px !important;
    }
}
/* END fixed home hover and pet layout */

/* START sun aura and centered cats */

/*
Move each sun label slightly to the right while keeping
it vertically centered.
*/
.sun-nav-link > span {
    top: 50% !important;
    left: calc(50% + 5px) !important;
    transform: translate(-50%, -50%) !important;
}

/*
Keep the whole navigation link stationary.
*/
.sun-nav-link,
.sun-nav-link:hover,
.sun-nav-link:focus,
.sun-nav-link:focus-visible {
    transform: none !important;
}

/*
Zoom only the sun artwork and add a warm aura.
*/
.sun-nav-link::before {
    transform: scale(1) !important;
    transform-origin: center center !important;
    transition:
        transform 180ms ease,
        filter 180ms ease !important;
}

.sun-nav-link:hover::before,
.sun-nav-link:focus-visible::before {
    transform: scale(1.07) !important;
    filter:
        drop-shadow(0 0 9px rgba(255, 242, 157, 0.95))
        drop-shadow(0 0 19px rgba(255, 190, 68, 0.70))
        drop-shadow(0 5px 9px rgba(32, 53, 72, 0.18))
        !important;
}

/*
Keep the label from moving when the sun zooms.
*/
.sun-nav-link:hover > span,
.sun-nav-link:focus-visible > span {
    top: 50% !important;
    left: calc(50% + 5px) !important;
    transform: translate(-50%, -50%) !important;
}

/*
Move the cats higher and pull the outside cats toward
the center of the house.
*/

/* Main front row */
.interest-home-pet--cat-1,
.interest-home-pet--1 {
    left: 47px !important;
    top: 103px !important;
}

.interest-home-pet--cat-2,
.interest-home-pet--2 {
    left: 66px !important;
    top: 110px !important;
}

.interest-home-pet--cat-3,
.interest-home-pet--3 {
    left: 85px !important;
    top: 100px !important;
}

.interest-home-pet--cat-4,
.interest-home-pet--4 {
    left: 105px !important;
    top: 107px !important;
}

.interest-home-pet--cat-5,
.interest-home-pet--5 {
    left: 125px !important;
    top: 100px !important;
}

.interest-home-pet--cat-6,
.interest-home-pet--6 {
    left: 144px !important;
    top: 110px !important;
}

.interest-home-pet--cat-7,
.interest-home-pet--7 {
    left: 163px !important;
    top: 103px !important;
}

/* Cats closer to the porch and doorway */
.interest-home-pet--cat-8,
.interest-home-pet--8 {
    left: 78px !important;
    top: 78px !important;
}

.interest-home-pet--cat-9,
.interest-home-pet--9 {
    left: 104px !important;
    top: 69px !important;
}

.interest-home-pet--10 {
    left: 130px !important;
    top: 78px !important;
}

/*
Make sure the cats remain upright and in front.
*/
.interest-home-pet--cat-1,
.interest-home-pet--cat-2,
.interest-home-pet--cat-3,
.interest-home-pet--cat-4,
.interest-home-pet--cat-5,
.interest-home-pet--cat-6,
.interest-home-pet--cat-7,
.interest-home-pet--cat-8,
.interest-home-pet--cat-9,
.interest-home-pet--1,
.interest-home-pet--2,
.interest-home-pet--3,
.interest-home-pet--4,
.interest-home-pet--5,
.interest-home-pet--6,
.interest-home-pet--7,
.interest-home-pet--8,
.interest-home-pet--9,
.interest-home-pet--10 {
    z-index: 25 !important;
    rotate: 0deg !important;
    transform: none !important;
}

/*
Slightly smaller label adjustment on compact screens.
*/
@media (max-width: 900px) {
    .sun-nav-link > span,
    .sun-nav-link:hover > span,
    .sun-nav-link:focus-visible > span {
        left: calc(50% + 4px) !important;
    }
}

@media (max-width: 640px) {
    .sun-nav-link > span,
    .sun-nav-link:hover > span,
    .sun-nav-link:focus-visible > span {
        left: calc(50% + 3px) !important;
    }
}

/*
Respect reduced-motion preferences.
*/
@media (prefers-reduced-motion: reduce) {
    .sun-nav-link::before {
        transition: none !important;
    }

    .sun-nav-link:hover::before,
    .sun-nav-link:focus-visible::before {
        transform: scale(1) !important;
    }
}
/* END sun aura and centered cats */

/* START seamless header and label polish */

/*
Blend the sunset into the yellow-to-blue section below it.
*/
.site-header {
    position: relative !important;
    overflow: hidden !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.site-header::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -1px !important;
    z-index: 0 !important;
    height: 105px !important;
    background:
        linear-gradient(
            90deg,
            #f6df8b 0%,
            #f3d69b 24%,
            #edc4b2 49%,
            #c8cbd7 70%,
            #a7d5ec 100%
        ) !important;
    opacity: 0.94 !important;
    -webkit-mask-image:
        linear-gradient(
            180deg,
            transparent 0%,
            rgba(0, 0, 0, 0.12) 22%,
            rgba(0, 0, 0, 0.52) 58%,
            #000000 100%
        ) !important;
    mask-image:
        linear-gradient(
            180deg,
            transparent 0%,
            rgba(0, 0, 0, 0.12) 22%,
            rgba(0, 0, 0, 0.52) 58%,
            #000000 100%
        ) !important;
    pointer-events: none !important;
}

.site-header__inner {
    position: relative !important;
    z-index: 1 !important;
}

/*
Add a permanent soft aura around the rescue name.
*/
.site-name {
    position: relative !important;
    z-index: 2 !important;
    text-shadow:
        0 0 3px rgba(255, 255, 255, 0.92),
        0 0 10px rgba(255, 244, 185, 0.80),
        0 0 22px rgba(255, 193, 115, 0.46)
        !important;
    transition:
        text-shadow 180ms ease,
        filter 180ms ease
        !important;
}

.site-name:hover,
.site-name:focus-visible {
    text-shadow:
        0 0 4px rgba(255, 255, 255, 1),
        0 0 13px rgba(255, 242, 157, 0.96),
        0 0 28px rgba(255, 173, 82, 0.68)
        !important;
}

/*
Move the text slightly right and allow it to zoom
together with the sun.
*/
.sun-nav-link > span {
    top: 50% !important;
    left: calc(50% + 8px) !important;
    transform:
        translate(-50%, -50%)
        scale(1)
        !important;
    transform-origin: center !important;
    transition:
        transform 180ms ease,
        color 180ms ease,
        text-shadow 180ms ease
        !important;
}

.sun-nav-link:hover > span,
.sun-nav-link:focus-visible > span {
    top: 50% !important;
    left: calc(50% + 8px) !important;
    transform:
        translate(-50%, -50%)
        scale(1.07)
        !important;
    color: #112d47 !important;
    text-shadow:
        0 0 3px rgba(255, 255, 255, 0.90),
        0 0 9px rgba(255, 238, 150, 0.82)
        !important;
}

/*
Move My home upward so it sits closer to the house.
Support both class names used during the redesign.
*/
.interest-home-link__label,
.interest-home-label {
    position: relative !important;
    z-index: 25 !important;
    margin-top: -22px !important;
    transform: translateY(-7px) !important;
    line-height: 1 !important;
}

/*
Move the pet-count badge down and left so it sits
near the upper-right area of the house.
*/
.interest-home-link__count {
    position: absolute !important;
    top: 18px !important;
    right: 20px !important;
    z-index: 35 !important;
    transform: none !important;
}

/*
Prevent hover effects from moving the label or badge.
*/
.interest-home-link:hover
    .interest-home-link__label,
.interest-home-link:focus-visible
    .interest-home-link__label,
.interest-home-link:hover
    .interest-home-label,
.interest-home-link:focus-visible
    .interest-home-label {
    transform: translateY(-7px) !important;
}

.interest-home-link:hover
    .interest-home-link__count,
.interest-home-link:focus-visible
    .interest-home-link__count {
    top: 18px !important;
    right: 20px !important;
    transform: none !important;
}

@media (max-width: 900px) {
    .site-header::after {
        height: 88px !important;
    }

    .sun-nav-link > span,
    .sun-nav-link:hover > span,
    .sun-nav-link:focus-visible > span {
        left: calc(50% + 6px) !important;
    }

    .interest-home-link__label,
    .interest-home-label {
        margin-top: -28px !important;
        transform: translateY(-5px) !important;
    }

    .interest-home-link__count {
        top: 14px !important;
        right: 17px !important;
    }
}

@media (max-width: 640px) {
    .site-header::after {
        height: 72px !important;
    }

    .sun-nav-link > span,
    .sun-nav-link:hover > span,
    .sun-nav-link:focus-visible > span {
        left: calc(50% + 4px) !important;
    }

    .interest-home-link__label,
    .interest-home-label {
        margin-top: -38px !important;
        transform: translateY(-3px) !important;
    }

    .interest-home-link__count {
        top: 10px !important;
        right: 13px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-name,
    .sun-nav-link > span {
        transition: none !important;
    }

    .sun-nav-link:hover > span,
    .sun-nav-link:focus-visible > span {
        transform:
            translate(-50%, -50%)
            scale(1)
            !important;
    }
}
/* END seamless header and label polish */

/* START white cat cache and position fix */

/* Move My home closer to the house. */
.interest-home-link__label,
.interest-home-label {
    position: relative !important;
    z-index: 50 !important;
    margin-top: -48px !important;
    transform: translateY(-12px) !important;
}

.interest-home-link:hover .interest-home-link__label,
.interest-home-link:focus-visible .interest-home-link__label,
.interest-home-link:hover .interest-home-label,
.interest-home-link:focus-visible .interest-home-label {
    transform: translateY(-12px) !important;
}

/* Move the pet-count badge down and left. */
.interest-home-link__count {
    position: absolute !important;
    top: 40px !important;
    right: 45px !important;
    z-index: 60 !important;
    transform: none !important;
}

.interest-home-link:hover .interest-home-link__count,
.interest-home-link:focus-visible .interest-home-link__count {
    top: 40px !important;
    right: 45px !important;
    transform: none !important;
}

/* Cats 8 and 9 move downward. */
.interest-home-pet--cat-8 {
    left: 82px !important;
    top: 116px !important;
    width: 27px !important;
    z-index: 27 !important;
    transform: none !important;
    rotate: 0deg !important;
}

.interest-home-pet--cat-9 {
    left: 106px !important;
    top: 109px !important;
    width: 28px !important;
    z-index: 28 !important;
    transform: none !important;
    rotate: 0deg !important;
}

/* White cat 10 moves upward. */
@media (max-width: 900px) {
    .interest-home-link__label,
    .interest-home-label {
        margin-top: -50px !important;
        transform: translateY(-10px) !important;
    }

    .interest-home-link__count {
        top: 34px !important;
        right: 38px !important;
    }
}

@media (max-width: 640px) {
    .interest-home-link__label,
    .interest-home-label {
        margin-top: -53px !important;
        transform: translateY(-8px) !important;
    }

    .interest-home-link__count {
        top: 29px !important;
        right: 32px !important;
    }
}
/* END white cat cache and position fix */

/* START final My home label position */
.interest-home-link__label,
.interest-home-label {
    position: relative !important;
    z-index: 50 !important;
    margin-top: -38px !important;
    transform: translateY(-4px) !important;
}

.interest-home-link:hover
    .interest-home-link__label,
.interest-home-link:focus-visible
    .interest-home-link__label,
.interest-home-link:hover
    .interest-home-label,
.interest-home-link:focus-visible
    .interest-home-label {
    transform: translateY(-4px) !important;
}
/* END final My home label position */

/* START latest header position adjustments */

/*
Move cats 8 and 9 slightly left.
*/
.interest-home-pet--cat-8 {
    left: 74px !important;
}

.interest-home-pet--cat-9 {
    left: 98px !important;
}

/*
Move cat 10 upward.
*/
/*
Make the rescue name slightly larger without
changing the layout around it.
*/
.site-name {
    display: inline-block !important;
    font-size: clamp(
        2.35rem,
        5.5vw,
        5rem
    ) !important;
    transform: scale(1) !important;
    transform-origin: center !important;
    transition:
        transform 180ms ease,
        text-shadow 180ms ease,
        filter 180ms ease
        !important;
}

/*
Make the rescue name grow gently on hover.
The transform does not affect surrounding layout.
*/
.site-name:hover,
.site-name:focus-visible {
    transform: scale(1.035) !important;
    text-shadow:
        0 0 4px rgba(255, 255, 255, 1),
        0 0 14px rgba(255, 242, 157, 0.98),
        0 0 30px rgba(255, 173, 82, 0.72)
        !important;
}

/*
Move My home downward by only a few pixels.
*/
.interest-home-link__label,
.interest-home-label {
    margin-top: -35px !important;
    transform: translateY(-1px) !important;
}

.interest-home-link:hover
    .interest-home-link__label,
.interest-home-link:focus-visible
    .interest-home-link__label,
.interest-home-link:hover
    .interest-home-label,
.interest-home-link:focus-visible
    .interest-home-label {
    transform: translateY(-1px) !important;
}

@media (max-width: 900px) {
    .site-name {
        font-size: clamp(
            1.55rem,
            4.8vw,
            2.8rem
        ) !important;
    }

    .interest-home-link__label,
    .interest-home-label {
        margin-top: -38px !important;
        transform: translateY(0) !important;
    }
}

@media (max-width: 640px) {
    .site-name {
        font-size: clamp(
            1.1rem,
            5vw,
            1.65rem
        ) !important;
    }

    .interest-home-link__label,
    .interest-home-label {
        margin-top: -43px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-name {
        transition: none !important;
    }

    .site-name:hover,
    .site-name:focus-visible {
        transform: scale(1) !important;
    }
}
/* END latest header position adjustments */



/* START nine-cat final positions */
.interest-home-pet--cat-8 {
    left: 66px !important;
    top: 116px !important;
    width: 27px !important;
    z-index: 27 !important;
    transform: none !important;
    rotate: 0deg !important;
}

.interest-home-pet--cat-9 {
    left: 90px !important;
    top: 109px !important;
    width: 28px !important;
    z-index: 28 !important;
    transform: none !important;
    rotate: 0deg !important;
}
/* END nine-cat final positions */

/* START final ninth-cat placement */
.interest-home-pet--final-ninth-cat {
    left: 78px !important;
    top: 114px !important;
    transform: none !important;
    rotate: 0deg !important;
}
/* END final ninth-cat placement */

/* START authoritative nine-cat layout */

/*
Never display a tenth cat, even if stale markup
is loaded by an older browser tab.
*/
.interest-home-pet--cat-10,
.interest-home-link img[src*="cat-10.png"] {
    display: none !important;
}

/*
Make sure all pets display above the house.
*/
.interest-home-link__pets {
    position: absolute !important;
    inset: 0 !important;
    z-index: 20 !important;
    display: block !important;
    pointer-events: none !important;
}

.interest-home-pet {
    position: absolute !important;
    z-index: 25 !important;
    height: auto !important;
    transform: none !important;
    rotate: 0deg !important;
}

/*
Make the third cat slightly larger.
*/
.interest-home-pet--cat-3 {
    width: 35px !important;
}

/*
Move cat 8 farther left.
*/
.interest-home-pet--cat-8 {
    left: 58px !important;
    top: 116px !important;
    width: 27px !important;
}

/*
Move cat 9 left and keep it slightly lower.
*/
.interest-home-pet--cat-9 {
    left: 80px !important;
    top: 114px !important;
    width: 28px !important;
}
/* END authoritative nine-cat layout */\n\n/* START second cat size adjustment */
.interest-home-pet--cat-2 {
    width: 34px !important;
    height: auto !important;
    transform: none !important;
    rotate: 0deg !important;
}
/* END second cat size adjustment */\n\n\n/* START stable ranked pet refinements */

/* Never show a tenth cat. */
.interest-home-pet--cat-10,
.interest-home-link img[src*="cat-10.png"] {
    display: none !important;
}

/* Make cat 2 a little bigger. */
.interest-home-pet--cat-2 {
    width: 34px !important;
    height: auto !important;
    transform: none !important;
    rotate: 0deg !important;
}

/* Keep cat 8 a little more to the left. */
.interest-home-pet--cat-8 {
    left: 58px !important;
}

/* Keep cat 9 more to the left and a tiny bit lower. */
.interest-home-pet--cat-9 {
    left: 80px !important;
    top: 114px !important;
}

/* Pets should always sit above the house. */
.interest-home-link__pets {
    z-index: 20 !important;
}

.interest-home-pet {
    z-index: 25 !important;
}
/* END stable ranked pet refinements */\n

/* START final ranked nine-cat display */

/*
My Home is now a nine-rank cat display.
These selectors are a defensive fallback against
old markup or stale browser content.
*/
.interest-home-link__pets .interest-home-pet--dog,
.interest-home-link__pets img[src*="/dog-"],
.interest-home-link__pets .interest-home-pet--cat-10,
.interest-home-link__pets img[src*="/cat-10.png"] {
    display: none !important;
}

/* Make the second cat bigger. */
.interest-home-pet--cat-2 {
    width: 58px !important;
    height: auto !important;
    transform: translateY(-5px) !important;
    rotate: 0deg !important;
}
/* END final ranked nine-cat display */

/* START authoritative cat 2 placement */
.interest-home-pet--cat-2 {
    width: 58px !important;
    height: auto !important;
    top: 98px !important;
    transform: none !important;
    rotate: 0deg !important;
}
/* END authoritative cat 2 placement */


/* START final cat 2 and cat 8 horizontal placement */
.interest-home-pet--cat-2 {
    width: 58px !important;
    height: auto !important;
    top: 98px !important;
    transform: translateX(-7px) !important;
    rotate: 0deg !important;
}

.interest-home-pet--cat-8 {
    left: 52px !important;
    top: 116px !important;
    width: 27px !important;
    transform: none !important;
    rotate: 0deg !important;
}
/* END final cat 2 and cat 8 horizontal placement */

/* START final cat 2, 8, and 9 placement */
.interest-home-pet--cat-2 {
    width: 58px !important;
    height: auto !important;
    top: 98px !important;
    transform: translateX(-16px) !important;
    rotate: 0deg !important;
}

.interest-home-pet--cat-8 {
    left: 58px !important;
    top: 116px !important;
    width: 27px !important;
    transform: none !important;
    rotate: 0deg !important;
}

.interest-home-pet--cat-9 {
    left: 72px !important;
    top: 114px !important;
    width: 27px !important;
    transform: none !important;
    rotate: 0deg !important;
}
/* END final cat 2, 8, and 9 placement */

/* START tiny cat 2 and cat 9 adjustment */
.interest-home-pet--cat-2 {
    width: 58px !important;
    height: auto !important;
    top: 98px !important;
    transform: translateX(-13px) !important;
    rotate: 0deg !important;
}

.interest-home-pet--cat-9 {
    left: 75px !important;
    top: 114px !important;
    width: 27px !important;
    transform: none !important;
    rotate: 0deg !important;
}
/* END tiny cat 2 and cat 9 adjustment */

/* START tenth cat front-center placement */

/*
Cat 10 sits between cats 4 and 6 and lower than
the middle row so it appears in front of the house.
*/
.interest-home-link__pets .interest-home-pet--cat-10,
.interest-home-link__pets img[src*="/cat-10.png"] {
    display: block !important;
    position: absolute !important;
    left: 115px !important;
    top: 116px !important;
    width: 32px !important;
    height: auto !important;
    z-index: 40 !important;
    transform: none !important;
    rotate: 0deg !important;
    object-fit: contain !important;
}
/* END tenth cat front-center placement */

/* START tiny cat 4 adjustment */
.interest-home-pet--cat-4 {
    transform: translateX(-3px) !important;
    rotate: 0deg !important;
}
/* END tiny cat 4 adjustment */

/* START authoritative centered sun labels */
.sun-nav-link > span {
    position: absolute !important;
    top: 50% !important;
    left: calc(50% + 2px) !important;
    width: 72% !important;
    max-width: 72% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    text-align: center !important;
    line-height: 1.05 !important;
    white-space: normal !important;
    translate: none !important;
    transform: translate(-50%, -50%) scale(1) !important;
    transform-origin: center !important;
}

.sun-nav-link:hover > span,
.sun-nav-link:focus-visible > span {
    left: calc(50% + 2px) !important;
    transform: translate(-50%, -50%) scale(1.06) !important;
}
/* END authoritative centered sun labels */

/* START slow counterclockwise sun rotation */
.sun-nav-link::before {
    rotate: 0deg;
    transform-origin: center !important;
    animation: none !important;
}

.sun-nav-link:hover::before,
.sun-nav-link:focus-visible::before {
    animation: sun-spin-counterclockwise-once 2.2s linear 1 forwards !important;
}

@keyframes sun-spin-counterclockwise-once {
    from {
        rotate: 0deg;
    }

    to {
        rotate: -360deg;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sun-nav-link:hover::before,
    .sun-nav-link:focus-visible::before {
        animation: none !important;
    }
}
/* END slow counterclockwise sun rotation */

/* START yellow rescue title */
.site-name,
.site-name:visited,
.site-name:hover,
.site-name:focus-visible {
    color: #ffd84d !important;
    text-shadow:
        0 2px 2px rgba(32, 53, 72, 0.75),
        0 0 8px rgba(255, 216, 77, 0.75),
        0 0 18px rgba(255, 179, 71, 0.45)
        !important;
}
/* END yellow rescue title */

/* START animated transparent home message */
.home-message {
    position: relative !important;
    width: 100% !important;
    margin: 0 !important;
    padding: clamp(1.5rem, 4vw, 3.5rem) 0.5rem !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

.home-message__inner {
    position: relative !important;
    width: 100% !important;
    min-height: clamp(105px, 13vw, 185px) !important;
    margin: 0 auto !important;
    display: grid !important;
    place-items: center !important;
}

.home-message__title {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #203548 !important;
    font-family: "Marker Felt", "Chalkboard SE", "Avenir Next Rounded", "Arial Rounded MT Bold", ui-rounded, sans-serif !important;
    font-size: clamp(0.68rem, 3.35vw, 3.45rem) !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: 0.01em !important;
    text-align: center !important;
    white-space: nowrap !important;
    filter: drop-shadow(0 2px 1px rgba(255,255,255,0.9)) drop-shadow(0 5px 7px rgba(32,53,72,0.17)) !important;
}

.home-message__sparkles {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    pointer-events: none !important;
}

.home-message__sparkle {
    position: absolute !important;
    color: #ffd84d !important;
    font-size: clamp(0.8rem, 1.8vw, 1.65rem) !important;
    line-height: 1 !important;
    opacity: 0;
    text-shadow: 0 0 5px rgba(255,255,255,0.95), 0 0 12px rgba(255,216,77,0.95), 0 0 22px rgba(255,154,61,0.7) !important;
    animation: home-message-star-pop 3.4s ease-in-out infinite;
}

.home-message__sparkle:nth-child(1) { left: 3%; top: 18%; animation-delay: -0.2s; }
.home-message__sparkle:nth-child(2) { left: 13%; top: 72%; animation-delay: -1.7s; }
.home-message__sparkle:nth-child(3) { left: 26%; top: 11%; animation-delay: -2.6s; }
.home-message__sparkle:nth-child(4) { left: 39%; top: 76%; animation-delay: -0.8s; }
.home-message__sparkle:nth-child(5) { left: 61%; top: 12%; animation-delay: -2.1s; }
.home-message__sparkle:nth-child(6) { left: 73%; top: 74%; animation-delay: -3s; }
.home-message__sparkle:nth-child(7) { left: 86%; top: 17%; animation-delay: -1.2s; }
.home-message__sparkle:nth-child(8) { left: 96%; top: 68%; animation-delay: -2.4s; }

@keyframes home-message-star-pop {
    0%, 16%, 100% {
        opacity: 0;
        transform: scale(0.1) rotate(0deg);
    }

    34% {
        opacity: 1;
        transform: scale(1.5) rotate(-20deg);
    }

    52% {
        opacity: 0.9;
        transform: scale(0.9) rotate(10deg);
    }

    70% {
        opacity: 0;
        transform: scale(1.9) rotate(25deg);
    }
}

@media (max-width: 700px) {
    .home-message {
        padding-inline: 0.15rem !important;
    }

    .home-message__inner {
        min-height: 100px !important;
    }

    .home-message__title {
        font-size: clamp(0.62rem, 4vw, 1.35rem) !important;
        letter-spacing: 0 !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-message__sparkle {
        opacity: 0.75;
        animation: none !important;
        transform: none !important;
    }
}
/* END animated transparent home message */

/* START compact header and home message */
.site-header {
    min-height: 0 !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}

.site-header__inner,
.site-header__content,
.site-branding {
    min-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.site-name {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    line-height: 0.95 !important;
}

.site-nav {
    margin-top: 2px !important;
    margin-bottom: 0 !important;
}

.site-corner-logo {
    top: 7px !important;
    left: 10px !important;
    width: clamp(72px, 7.5vw, 105px) !important;
}

.home-message {
    min-height: 0 !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}

.home-message__inner {
    min-height: 88px !important;
}

@media (max-width: 700px) {
    .site-header {
        padding-top: 4px !important;
        padding-bottom: 4px !important;
    }

    .site-corner-logo {
        top: 5px !important;
        left: 6px !important;
        width: 60px !important;
    }

    .home-message {
        padding-top: 3px !important;
        padding-bottom: 3px !important;
    }

    .home-message__inner {
        min-height: 72px !important;
    }
}
/* END compact header and home message */

/* START larger yellow star message */
.home-message {
    min-height: 0 !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    background: #fff2a8 !important;
    background-color: #fff2a8 !important;
    background-image: none !important;
}

.home-message__inner {
    min-height: 104px !important;
}

@media (max-width: 700px) {
    .home-message {
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }

    .home-message__inner {
        min-height: 84px !important;
    }
}
/* END larger yellow star message */

/* START detached rescue header background */
.site-header {
    position: relative !important;
    isolation: isolate !important;
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
}

.site-header__background {
    position: absolute !important;
    inset: 0 !important;
    z-index: -1 !important;
    pointer-events: none !important;
    background: radial-gradient(
            ellipse at 18% 100%,
            rgba(255, 210, 139, 0.18) 0%,
            rgba(255, 210, 139, 0.08) 20%,
            rgba(255, 210, 139, 0) 48%
        ),
        radial-gradient(
            ellipse at 52% 100%,
            rgba(244, 163, 157, 0.16) 0%,
            rgba(244, 163, 157, 0.07) 24%,
            rgba(244, 163, 157, 0) 54%
        ),
        radial-gradient(
            ellipse at 84% 100%,
            rgba(235, 171, 198, 0.14) 0%,
            rgba(235, 171, 198, 0.06) 22%,
            rgba(235, 171, 198, 0) 50%
        ),
        linear-gradient(
            180deg,
            #4f87b5 0%,
            #5f99c2 24%,
            #74acd1 48%,
            #8bb9d4 66%,
            #b6b7ca 80%,
            #d7a8b5 90%,
            #efc08e 100%
        ) !important;
}
/* END detached rescue header background */

/* START header title and background adjustment */
.site-name {
    transform: translateY(6px) !important;
}

.site-header__background {
    top: 0 !important;
    right: 0 !important;
    bottom: 16px !important;
    left: 0 !important;
}

@media (max-width: 700px) {
    .site-name {
        transform: translateY(4px) !important;
    }

    .site-header__background {
        bottom: 12px !important;
    }
}
/* END header title and background adjustment */

/* START independent header height adjustment */
.site-header {
    margin-bottom: -20px !important;
}

.site-header__background {
    inset: 0 !important;
}

.site-name {
    transform: translateY(18px) !important;
}

@media (max-width: 700px) {
    .site-header {
        margin-bottom: -14px !important;
    }

    .site-name {
        transform: translateY(13px) !important;
    }
}
/* END independent header height adjustment */

/* START shorter sunset gradient header */
.site-header {
    margin-bottom: -44px !important;
    overflow: hidden !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.site-header__background {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
    border: 0 !important;
    box-shadow: none !important;
    background-color: #fff2a8 !important;
    background-image: linear-gradient(
        to bottom,
        #2477b5 0%,
        #fff2a8 100%
    ) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 100% !important;
}

.site-header__background::before,
.site-header__background::after {
    content: none !important;
    display: none !important;
}

@media (max-width: 700px) {
    .site-header {
        margin-bottom: -33px !important;
    }
}
/* END shorter sunset gradient header */

/* START blue glass rescue header */
.site-header {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.site-header__background {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
    border: 0 !important;
    border-bottom: 0 !important;
    background-color: #fff2a8 !important;
    background-image: linear-gradient(
        to bottom,
        #59c9ee 0%,
        #fff2a8 100%
    ) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 100% !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

.site-header__background::before,
.site-header__background::after {
    content: none !important;
    display: none !important;
}
/* END blue glass rescue header */

/* START rescue title glow and stationary hover */
.site-name,
.site-name:visited {
    transform: translateY(18px) scale(1) !important;
    transform-origin: center center !important;
    color: #ffd84d !important;
    text-shadow: 0 3px 3px rgba(32, 53, 72, 0.55) !important;
    transition:
        transform 220ms ease,
        text-shadow 220ms ease
        !important;
}

.site-name:hover,
.site-name:focus-visible {
    transform: translateY(18px) scale(1.09) !important;
    text-shadow:
        0 0 4px rgba(255, 255, 255, 1),
        0 0 11px rgba(255, 242, 168, 1),
        0 0 21px rgba(255, 216, 77, 1),
        0 0 36px rgba(255, 184, 55, 0.95),
        0 3px 3px rgba(32, 53, 72, 0.55)
        !important;
}

@media (max-width: 700px) {
    .site-name,
    .site-name:visited {
        transform: translateY(13px) scale(1) !important;
    }

    .site-name:hover,
    .site-name:focus-visible {
        transform: translateY(13px) scale(1.07) !important;
    }
}
/* END rescue title glow and stationary hover */

/* START cursive rescue home message */
.home-message__title {
    font-family:
        "Lavishly Yours",
        cursive
        !important;
    font-weight: 400 !important;
    text-shadow:
        0 0 3px rgba(255, 250, 218, 0.95),
        0 0 10px rgba(255, 235, 145, 0.92),
        0 0 22px rgba(245, 204, 88, 0.82),
        0 0 38px rgba(225, 174, 47, 0.66),
        0 0 58px rgba(190, 127, 24, 0.42)
        !important;
    filter: none !important;
}
/* END cursive rescue home message */

/* START compact contained star message */
.home-message {
    position: relative !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 4px 8px !important;
    overflow: hidden !important;
}

.home-message__inner {
    position: relative !important;
    width: 100% !important;
    min-height: 82px !important;
    height: 82px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

.home-message__title {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 8px !important;
    line-height: 1 !important;
    text-align: center !important;
    align-self: center !important;
}

.home-message__sparkles {
    position: absolute !important;
    inset: 5px 8px !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

.home-message__sparkle {
    max-width: 28px !important;
    max-height: 28px !important;
}

@media (max-width: 700px) {
    .home-message {
        padding: 3px 4px !important;
    }

    .home-message__inner {
        min-height: 68px !important;
        height: 68px !important;
    }

    .home-message__title {
        padding-inline: 3px !important;
    }

    .home-message__sparkles {
        inset: 3px 5px !important;
    }
}
/* END compact contained star message */

/* START transparent star message background */
.home-message {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.home-message::before,
.home-message::after {
    content: none !important;
    display: none !important;
}
/* END transparent star message background */

/* START home message text vertical position */
.home-message__title {
    transform: translateY(-30px) !important;
}

@media (max-width: 700px) {
    .home-message__title {
        transform: translateY(-30px) !important;
    }
}
/* END home message text vertical position */

/* START thinner home message aura */
.home-message__title {
    text-shadow:
        0 0 2px rgba(255, 255, 255, 0.9),
        0 0 5px rgba(255, 242, 168, 0.75),
        0 0 9px rgba(255, 216, 77, 0.55),
        0 2px 2px rgba(32, 53, 72, 0.4)
        !important;
}
/* END thinner home message aura */

/* START raised message with centered stars */
.home-message {
    margin-top: -32px !important;
}

.home-message__sparkles {
    position: absolute !important;
    top: 5px !important;
    right: 15% !important;
    bottom: 5px !important;
    left: 15% !important;
    overflow: hidden !important;
}

.home-message__sparkle:nth-child(1) {
    left: 5% !important;
    top: 18% !important;
}

.home-message__sparkle:nth-child(2) {
    left: 18% !important;
    top: 65% !important;
}

.home-message__sparkle:nth-child(3) {
    left: 31% !important;
    top: 12% !important;
}

.home-message__sparkle:nth-child(4) {
    left: 44% !important;
    top: 68% !important;
}

.home-message__sparkle:nth-child(5) {
    left: 56% !important;
    top: 14% !important;
}

.home-message__sparkle:nth-child(6) {
    left: 69% !important;
    top: 66% !important;
}

.home-message__sparkle:nth-child(7) {
    left: 82% !important;
    top: 16% !important;
}

.home-message__sparkle:nth-child(8) {
    left: 95% !important;
    top: 63% !important;
}

@media (max-width: 700px) {
    .home-message {
        margin-top: -28px !important;
    }

    .home-message__sparkles {
        right: 8% !important;
        left: 8% !important;
    }
}
/* END raised message with centered stars */

/* START forced home message position */
.home-message {
    margin-top: 0 !important;
    transform: translateY(-20px) !important;
}

@media (max-width: 700px) {
    .home-message {
        margin-top: 0 !important;
        transform: translateY(-20px) !important;
    }
}
/* END forced home message position */

/* START thicker aura and tighter centered stars */
.home-message__title {
    text-shadow:
        0 0 3px rgba(255, 255, 255, 0.95),
        0 0 7px rgba(255, 242, 168, 0.85),
        0 0 13px rgba(255, 216, 77, 0.7),
        0 2px 2px rgba(32, 53, 72, 0.4)
        !important;
}

.home-message__sparkles {
    left: 31% !important;
    right: 31% !important;
}

.home-message__sparkle:nth-child(1) { left: 10% !important; }
.home-message__sparkle:nth-child(2) { left: 22% !important; }
.home-message__sparkle:nth-child(3) { left: 34% !important; }
.home-message__sparkle:nth-child(4) { left: 46% !important; }
.home-message__sparkle:nth-child(5) { left: 58% !important; }
.home-message__sparkle:nth-child(6) { left: 70% !important; }
.home-message__sparkle:nth-child(7) { left: 82% !important; }
.home-message__sparkle:nth-child(8) { left: 94% !important; }

@media (max-width: 700px) {
    .home-message__sparkles {
        left: 22% !important;
        right: 22% !important;
    }
}
/* END thicker aura and tighter centered stars */

/* START safe tightly centered stars */
.home-message__sparkles {
    position: absolute !important;
    top: 8px !important;
    bottom: 8px !important;
    left: 50% !important;
    right: auto !important;
    width: 34% !important;
    max-width: 500px !important;
    transform: translateX(-50%) !important;
    overflow: visible !important;
}

.home-message__sparkle:nth-child(1) { left: 12% !important; top: 30% !important; }
.home-message__sparkle:nth-child(2) { left: 23% !important; top: 70% !important; }
.home-message__sparkle:nth-child(3) { left: 34% !important; top: 30% !important; }
.home-message__sparkle:nth-child(4) { left: 45% !important; top: 70% !important; }
.home-message__sparkle:nth-child(5) { left: 55% !important; top: 30% !important; }
.home-message__sparkle:nth-child(6) { left: 66% !important; top: 70% !important; }
.home-message__sparkle:nth-child(7) { left: 77% !important; top: 30% !important; }
.home-message__sparkle:nth-child(8) { left: 88% !important; top: 70% !important; }

@media (max-width: 700px) {
    .home-message__sparkles {
        width: 62% !important;
        max-width: none !important;
    }
}
/* END safe tightly centered stars */

/* START expanded message section without moving contents */
.home-message {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    transform: translateY(-30px) !important;
    overflow: hidden !important;
}

@media (max-width: 700px) {
    .home-message {
        padding-top: 13px !important;
        padding-bottom: 13px !important;
        transform: translateY(-30px) !important;
    }
}
/* END expanded message section without moving contents */

/* START taller message section with more stars */
.home-message {
    transform: translateY(-45px) !important;
}

.home-message__inner {
    min-height: 112px !important;
    height: 112px !important;
}

.home-message__sparkles {
    top: 50% !important;
    bottom: auto !important;
    height: 66px !important;
    transform: translate(-50%, -50%) !important;
}

.home-message__sparkle:nth-child(9)  { left: 17% !important; top: 18% !important; animation-delay: -0.4s !important; }
.home-message__sparkle:nth-child(10) { left: 28% !important; top: 50% !important; animation-delay: -0.9s !important; }
.home-message__sparkle:nth-child(11) { left: 39% !important; top: 76% !important; animation-delay: -1.4s !important; }
.home-message__sparkle:nth-child(12) { left: 50% !important; top: 18% !important; animation-delay: -1.9s !important; }
.home-message__sparkle:nth-child(13) { left: 61% !important; top: 76% !important; animation-delay: -2.4s !important; }
.home-message__sparkle:nth-child(14) { left: 72% !important; top: 50% !important; animation-delay: -2.9s !important; }
.home-message__sparkle:nth-child(15) { left: 83% !important; top: 18% !important; animation-delay: -3.4s !important; }
.home-message__sparkle:nth-child(16) { left: 50% !important; top: 76% !important; animation-delay: -3.9s !important; }

@media (max-width: 700px) {
    .home-message {
        transform: translateY(-45px) !important;
    }

    .home-message__inner {
        min-height: 98px !important;
        height: 98px !important;
    }
}
/* END taller message section with more stars */

/* START horizontally spread centered stars */
.home-message__sparkles {
    position: absolute !important;
    top: 50% !important;
    bottom: auto !important;
    left: 50% !important;
    right: auto !important;
    width: 56% !important;
    max-width: 780px !important;
    height: 74px !important;
    transform: translate(-50%, -50%) !important;
    overflow: visible !important;
}

.home-message__sparkle {
    right: auto !important;
}

.home-message__sparkle:nth-child(1)  { left: 4% !important;  top: 25% !important; }
.home-message__sparkle:nth-child(2)  { left: 17% !important; top: 72% !important; }
.home-message__sparkle:nth-child(3)  { left: 30% !important; top: 22% !important; }
.home-message__sparkle:nth-child(4)  { left: 43% !important; top: 75% !important; }
.home-message__sparkle:nth-child(5)  { left: 57% !important; top: 22% !important; }
.home-message__sparkle:nth-child(6)  { left: 70% !important; top: 75% !important; }
.home-message__sparkle:nth-child(7)  { left: 83% !important; top: 25% !important; }
.home-message__sparkle:nth-child(8)  { left: 96% !important; top: 72% !important; }

.home-message__sparkle:nth-child(9)  { left: 10% !important; top: 50% !important; }
.home-message__sparkle:nth-child(10) { left: 23% !important; top: 12% !important; }
.home-message__sparkle:nth-child(11) { left: 36% !important; top: 88% !important; }
.home-message__sparkle:nth-child(12) { left: 49% !important; top: 12% !important; }
.home-message__sparkle:nth-child(13) { left: 51% !important; top: 88% !important; }
.home-message__sparkle:nth-child(14) { left: 64% !important; top: 12% !important; }
.home-message__sparkle:nth-child(15) { left: 77% !important; top: 88% !important; }
.home-message__sparkle:nth-child(16) { left: 90% !important; top: 50% !important; }

@media (max-width: 700px) {
    .home-message__sparkles {
        width: 82% !important;
        max-width: none !important;
        height: 66px !important;
    }
}
/* END horizontally spread centered stars */

/* START balanced stars on both sides of message */
.home-message__sparkles {
    position: absolute !important;
    top: 50% !important;
    bottom: auto !important;
    left: 50% !important;
    right: auto !important;
    width: 94% !important;
    max-width: 1200px !important;
    height: 78px !important;
    transform: translate(-50%, -50%) !important;
    overflow: visible !important;
    z-index: 1 !important;
}

.home-message__title {
    position: relative !important;
    z-index: 2 !important;
}

.home-message__sparkle {
    right: auto !important;
}

.home-message__sparkle:nth-child(1)  { left: 5% !important;  top: 22% !important; }
.home-message__sparkle:nth-child(2)  { left: 11% !important; top: 70% !important; }
.home-message__sparkle:nth-child(3)  { left: 17% !important; top: 38% !important; }
.home-message__sparkle:nth-child(4)  { left: 23% !important; top: 82% !important; }
.home-message__sparkle:nth-child(5)  { left: 29% !important; top: 18% !important; }
.home-message__sparkle:nth-child(6)  { left: 34% !important; top: 64% !important; }
.home-message__sparkle:nth-child(7)  { left: 39% !important; top: 28% !important; }
.home-message__sparkle:nth-child(8)  { left: 43% !important; top: 76% !important; }

.home-message__sparkle:nth-child(9)  { left: 57% !important; top: 76% !important; }
.home-message__sparkle:nth-child(10) { left: 61% !important; top: 28% !important; }
.home-message__sparkle:nth-child(11) { left: 66% !important; top: 64% !important; }
.home-message__sparkle:nth-child(12) { left: 71% !important; top: 18% !important; }
.home-message__sparkle:nth-child(13) { left: 77% !important; top: 82% !important; }
.home-message__sparkle:nth-child(14) { left: 83% !important; top: 38% !important; }
.home-message__sparkle:nth-child(15) { left: 89% !important; top: 70% !important; }
.home-message__sparkle:nth-child(16) { left: 95% !important; top: 22% !important; }

@media (max-width: 700px) {
    .home-message__sparkles {
        width: 90% !important;
        height: 70px !important;
    }
}
/* END balanced stars on both sides of message */

/* START shorter header background only */
.site-header__background {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 40px !important;
    left: 0 !important;
    height: auto !important;
}

.site-header::after {
    content: none !important;
    display: none !important;
}

@media (max-width: 700px) {
    .site-header__background {
        bottom: 30px !important;
    }
}
/* END shorter header background only */

/* START homepage featured cats */
.featured-showcase {
    padding-top: 28px;
    padding-bottom: 54px;
}

.featured-showcase__grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 20px;
    align-items: start;
}

.featured-showcase__card {
    min-width: 0;
    text-align: center;
}

.featured-showcase__link,
.featured-showcase__link:visited {
    min-height: 100%;
    padding: 18px 10px 16px;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
    color: inherit;
    text-decoration: none;
    box-shadow: var(--shadow);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.featured-showcase__link:hover,
.featured-showcase__link:focus {
    color: inherit;
    text-decoration: none;
    transform: translateY(-3px);
    box-shadow:
        0 16px 38px
        rgba(38, 50, 56, 0.13);
}

.featured-showcase__link:focus-visible {
    outline: 4px solid var(--yellow);
    outline-offset: 4px;
}

.featured-showcase__introduction {
    min-height: 106px;
}

.featured-showcase__headline {
    margin: 0;
    color: var(--accent-dark);
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.25;
}

.featured-showcase__portrait {
    position: relative;
    width: min(100%, 205px);
    margin: 8px auto 10px;
    aspect-ratio: 548 / 659;
}

.featured-showcase__photo {
    position: absolute;
    z-index: 1;
    top: 17%;
    left: 21%;
    width: 58%;
    height: 66%;
    overflow: hidden;
    border-radius: 50%;
    background:
        linear-gradient(
            135deg,
            var(--yellow),
            var(--light-blue)
        );
}

.featured-showcase__photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease;
}

.featured-showcase__link:hover
.featured-showcase__photo img {
    transform: scale(1.035);
}

.featured-showcase__frame {
    position: absolute;
    z-index: 2;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    pointer-events: none;
}

.featured-showcase__placeholder {
    width: 100%;
    height: 100%;
    padding: 12px;
    display: grid;
    place-items: center;
    color: var(--accent-dark);
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.2;
}

.featured-showcase__details {
    margin-top: auto;
}

.featured-showcase__details h3 {
    margin: 0 0 7px;
    color: var(--text);
    font-size: 1.28rem;
}

.featured-showcase__facts,
.featured-showcase__breed {
    margin: 0;
    color: var(--accent-dark);
    font-size: 0.88rem;
    font-weight: 750;
    line-height: 1.4;
}

.featured-showcase__facts span {
    padding-inline: 3px;
}

.featured-showcase__breed {
    margin-top: 2px;
    color: var(--muted);
    font-weight: 700;
}

@media (max-width: 1000px) {
    .featured-showcase__grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .featured-showcase__grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .featured-showcase__introduction {
        min-height: 96px;
    }
}

@media (max-width: 470px) {
    .featured-showcase__grid {
        grid-template-columns: 1fr;
    }

    .featured-showcase__portrait {
        width: min(100%, 235px);
    }

    .featured-showcase__introduction {
        min-height: 0;
        margin-bottom: 8px;
    }
}
/* END homepage featured cats */

/* START transparent public featured-cat cards */
.featured-showcase__card {
    background: transparent !important;
}

.featured-showcase__link,
.featured-showcase__link:visited {
    padding: 18px 10px 16px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.featured-showcase__link:hover,
.featured-showcase__link:focus {
    background: transparent !important;
    box-shadow: none !important;
}
/* END transparent public featured-cat cards */

/* START featured showcase vertical position */
.featured-showcase {
    margin-top: -70px !important;
}

.featured-showcase .section-heading {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
}

.featured-showcase .section-heading > div {
    width: 100% !important;
    text-align: center !important;
}

.featured-showcase .section-heading .eyebrow {
    width: 100% !important;
    font-size: 2rem !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

.featured-showcase .section-heading h2 {
    width: 100% !important;
    font-size: 0.85rem !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

@media (max-width: 700px) {
    .featured-showcase {
        margin-top: -70px !important;
    }
}
/* END featured showcase vertical position */

/* START featured headline frame spacing */
.featured-showcase__introduction {
    min-height: 0 !important;
    margin: 0 0 30px !important;
}

.featured-showcase__headline {
    margin: 0 !important;
}

.featured-showcase__portrait {
    margin-top: 0 !important;
}

@media (max-width: 700px) {
    .featured-showcase__introduction {
        min-height: 0 !important;
        margin-bottom: 30px !important;
    }
}
/* END featured headline frame spacing */

/* START aligned featured picture frames */
.featured-showcase__link {
    display: grid !important;
    grid-template-rows: 72px auto 1fr !important;
}

.featured-showcase__introduction {
    width: 100% !important;
    height: 72px !important;
    min-height: 72px !important;
    margin: 0 0 30px !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
}

.featured-showcase__headline {
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
}

.featured-showcase__portrait {
    margin-top: 0 !important;
}

@media (max-width: 700px) {
    .featured-showcase__link {
        grid-template-rows: 72px auto 1fr !important;
    }

    .featured-showcase__introduction {
        height: 72px !important;
        min-height: 72px !important;
        margin-bottom: 30px !important;
    }
}
/* END aligned featured picture frames */

/* START larger featured frames with hover */
.featured-showcase__card,
.featured-showcase__link {
    overflow: visible !important;
}

.featured-showcase__portrait {
    width: min(calc(100% + 18px), 225px) !important;
    transition: transform 240ms ease !important;
    transform: scale(1) !important;
    transform-origin: center center !important;
}

.featured-showcase__portrait:hover,
.featured-showcase__link:focus-visible .featured-showcase__portrait {
    z-index: 4 !important;
    transform: scale(1.07) !important;
}

@media (max-width: 700px) {
    .featured-showcase__portrait {
        width: min(calc(100% + 14px), 250px) !important;
    }
}
/* END larger featured frames with hover */

/* START larger evenly aligned featured cats */
.featured-showcase {
    width: min(1320px, calc(100% - 24px)) !important;
}

.featured-showcase__grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 12px !important;
    align-items: start !important;
}

.featured-showcase__card {
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    justify-content: center !important;
    text-align: center !important;
}

.featured-showcase__link,
.featured-showcase__link:visited {
    width: 100% !important;
    padding-inline: 0 !important;
    display: grid !important;
    grid-template-rows: 72px auto auto !important;
    justify-items: center !important;
    align-items: start !important;
    text-align: center !important;
}

.featured-showcase__introduction {
    width: 235px !important;
    max-width: 100% !important;
    height: 72px !important;
    min-height: 72px !important;
    margin: 0 0 30px !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    text-align: center !important;
}

.featured-showcase__headline {
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
}

.featured-showcase__portrait {
    width: 235px !important;
    max-width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    transform: scale(1) !important;
    transform-origin: center center !important;
    transition: transform 240ms ease !important;
}

.featured-showcase__portrait:hover,
.featured-showcase__link:focus-visible .featured-showcase__portrait {
    transform: scale(1.1) !important;
}

.featured-showcase__details {
    width: 235px !important;
    max-width: 100% !important;
    margin: 12px auto 0 !important;
    text-align: center !important;
}

.featured-showcase__details h3,
.featured-showcase__facts,
.featured-showcase__breed {
    width: 100% !important;
    text-align: center !important;
}

@media (max-width: 1000px) {
    .featured-showcase__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }

    .featured-showcase__portrait,
    .featured-showcase__introduction,
    .featured-showcase__details {
        width: 245px !important;
    }
}

@media (max-width: 700px) {
    .featured-showcase__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .featured-showcase__portrait,
    .featured-showcase__introduction,
    .featured-showcase__details {
        width: 235px !important;
    }
}

@media (max-width: 470px) {
    .featured-showcase__grid {
        grid-template-columns: 1fr !important;
    }

    .featured-showcase__portrait,
    .featured-showcase__introduction,
    .featured-showcase__details {
        width: 260px !important;
    }
}
/* END larger evenly aligned featured cats */

/* START stationary featured text on frame hover */
.featured-showcase__link,
.featured-showcase__link:hover,
.featured-showcase__link:focus,
.featured-showcase__card,
.featured-showcase__card:hover {
    transform: none !important;
}

.featured-showcase__introduction,
.featured-showcase__headline,
.featured-showcase__details,
.featured-showcase__details h3,
.featured-showcase__facts,
.featured-showcase__breed {
    transform: none !important;
}

.featured-showcase__portrait:hover,
.featured-showcase__link:focus-visible .featured-showcase__portrait {
    transform: scale(1.1) !important;
}
/* END stationary featured text on frame hover */

/* START featured frame heavenly aura */
.featured-showcase__frame {
    filter: none !important;
    transition: filter 260ms ease !important;
}

.featured-showcase__portrait:hover .featured-showcase__frame,
.featured-showcase__link:focus-visible .featured-showcase__frame {
    filter:
        drop-shadow(0 0 4px rgba(255, 255, 255, 1))
        drop-shadow(0 0 9px rgba(255, 244, 183, 0.95))
        drop-shadow(0 0 16px rgba(255, 215, 92, 0.9))
        drop-shadow(0 0 25px rgba(255, 180, 55, 0.72))
        !important;
}
/* END featured frame heavenly aura */

/* START featured video thin aura and twinkles */
.featured-showcase__sound-toggle {
    margin: -8px auto 28px !important;
    padding: 8px 15px !important;
    display: block !important;
    border: 1px solid rgba(36, 119, 181, 0.35) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.56) !important;
    color: var(--accent-dark) !important;
    font: inherit !important;
    font-size: 0.85rem !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

.featured-showcase__sound-toggle:hover,
.featured-showcase__sound-toggle:focus-visible,
.featured-showcase__sound-toggle[aria-pressed="true"] {
    background: var(--yellow) !important;
}

.featured-showcase__photo {
    isolation: isolate !important;
}

.featured-showcase__photo img,
.featured-showcase__video {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
}

.featured-showcase__photo img {
    z-index: 1 !important;
}

.featured-showcase__video {
    z-index: 2 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 180ms ease !important;
}

.featured-showcase__portrait:hover
.featured-showcase__video,
.featured-showcase__portrait.is-playing
.featured-showcase__video,
.featured-showcase__link:focus-visible
.featured-showcase__video {
    opacity: 1 !important;
}

.featured-showcase__inner-aura {
    position: absolute !important;
    z-index: 3 !important;
    inset: 3px !important;
    border-radius: 50% !important;
    opacity: 0 !important;
    pointer-events: none !important;
    box-shadow:
        inset 0 0 2px rgba(255, 255, 255, 0.95),
        inset 0 0 5px rgba(255, 235, 145, 0.72),
        inset 0 0 8px rgba(255, 203, 72, 0.42)
        !important;
    transition: opacity 200ms ease !important;
}

.featured-showcase__portrait:hover
.featured-showcase__inner-aura,
.featured-showcase__link:focus-visible
.featured-showcase__inner-aura {
    opacity: 1 !important;
}

.featured-showcase__portrait:hover
.featured-showcase__frame,
.featured-showcase__link:focus-visible
.featured-showcase__frame {
    filter:
        drop-shadow(0 0 2px rgba(255, 255, 255, 0.95))
        drop-shadow(0 0 6px rgba(255, 236, 148, 0.8))
        drop-shadow(0 0 11px rgba(255, 205, 75, 0.6))
        !important;
}

.featured-showcase__twinkles {
    position: absolute !important;
    z-index: 5 !important;
    inset: -3% !important;
    pointer-events: none !important;
}

.featured-showcase__twinkles span {
    position: absolute !important;
    opacity: 0 !important;
    color: #ffd84d !important;
    font-size: 1.15rem !important;
    line-height: 1 !important;
    text-shadow:
        0 0 3px rgba(255, 255, 255, 1),
        0 0 8px rgba(255, 216, 77, 0.95)
        !important;
}

.featured-showcase__twinkles span:nth-child(1) {
    top: 8% !important;
    left: 18% !important;
}

.featured-showcase__twinkles span:nth-child(2) {
    top: 2% !important;
    left: 48% !important;
}

.featured-showcase__twinkles span:nth-child(3) {
    top: 12% !important;
    right: 16% !important;
}

.featured-showcase__twinkles span:nth-child(4) {
    top: 45% !important;
    right: 3% !important;
}

.featured-showcase__twinkles span:nth-child(5) {
    right: 17% !important;
    bottom: 8% !important;
}

.featured-showcase__twinkles span:nth-child(6) {
    bottom: 2% !important;
    left: 48% !important;
}

.featured-showcase__twinkles span:nth-child(7) {
    bottom: 10% !important;
    left: 16% !important;
}

.featured-showcase__twinkles span:nth-child(8) {
    top: 46% !important;
    left: 3% !important;
}

.featured-showcase__portrait:hover
.featured-showcase__twinkles span,
.featured-showcase__link:focus-visible
.featured-showcase__twinkles span {
    animation:
        featured-frame-twinkle 1.15s ease-in-out infinite
        !important;
}

.featured-showcase__twinkles span:nth-child(2),
.featured-showcase__twinkles span:nth-child(6) {
    animation-delay: -0.2s !important;
}

.featured-showcase__twinkles span:nth-child(3),
.featured-showcase__twinkles span:nth-child(7) {
    animation-delay: -0.45s !important;
}

.featured-showcase__twinkles span:nth-child(4),
.featured-showcase__twinkles span:nth-child(8) {
    animation-delay: -0.7s !important;
}

@keyframes featured-frame-twinkle {
    0%,
    100% {
        opacity: 0;
        transform: scale(0.55) rotate(0deg);
    }

    45% {
        opacity: 1;
        transform: scale(1.18) rotate(18deg);
    }

    70% {
        opacity: 0.35;
        transform: scale(0.82) rotate(30deg);
    }
}

@media (prefers-reduced-motion: reduce) {
    .featured-showcase__twinkles span {
        animation: none !important;
    }

    .featured-showcase__video {
        display: none !important;
    }
}
/* END featured video thin aura and twinkles */

/* START compact featured sound icon */
.featured-showcase__sound-toggle {
    width: 36px !important;
    height: 36px !important;
    margin: -8px auto 28px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    font-size: 1.05rem !important;
    line-height: 1 !important;
}

.featured-showcase__sound-toggle:hover,
.featured-showcase__sound-toggle:focus-visible {
    transform: scale(1.08) !important;
}

.featured-showcase__sound-toggle[aria-pressed="false"] {
    opacity: 0.7 !important;
}
/* END compact featured sound icon */

/* START top-right featured sound icon */
.featured-showcase__sound-toggle {
    position: fixed !important;
    z-index: 1200 !important;
    top: max(14px, env(safe-area-inset-top)) !important;
    right: max(14px, env(safe-area-inset-right)) !important;
    width: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(36, 119, 181, 0.35) !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.9) !important;
    color: var(--accent-dark) !important;
    box-shadow: 0 4px 14px rgba(25, 54, 78, 0.2) !important;
    font: inherit !important;
    font-size: 1.05rem !important;
    line-height: 1 !important;
    cursor: pointer !important;
    backdrop-filter: blur(5px) !important;
    transition:
        transform 160ms ease,
        opacity 160ms ease,
        background 160ms ease !important;
}

.featured-showcase__sound-toggle:hover,
.featured-showcase__sound-toggle:focus-visible {
    transform: scale(1.08) !important;
    background: var(--yellow) !important;
}

.featured-showcase__sound-toggle[aria-pressed="false"] {
    opacity: 0.72 !important;
}

@media (max-width: 700px) {
    .featured-showcase__sound-toggle {
        top: max(10px, env(safe-area-inset-top)) !important;
        right: max(10px, env(safe-area-inset-right)) !important;
        width: 34px !important;
        height: 34px !important;
        font-size: 0.95rem !important;
    }
}
/* END top-right featured sound icon */

/* START larger featured hover aura and staggered stars */
.featured-showcase__portrait {
    overflow: visible !important;
}

.featured-showcase__portrait:hover,
.featured-showcase__link:focus-visible
.featured-showcase__portrait {
    z-index: 8 !important;
    transform: scale(1.18) !important;
}

.featured-showcase__portrait:hover
.featured-showcase__frame,
.featured-showcase__link:focus-visible
.featured-showcase__frame {
    filter:
        drop-shadow(0 0 3px rgba(255, 255, 255, 1))
        drop-shadow(0 0 9px rgba(255, 246, 191, 0.95))
        drop-shadow(0 0 18px rgba(255, 220, 105, 0.9))
        drop-shadow(0 0 30px rgba(255, 192, 57, 0.72))
        drop-shadow(0 0 42px rgba(255, 174, 34, 0.42))
        !important;
}

.featured-showcase__twinkles {
    z-index: 10 !important;
    inset: -12% !important;
    overflow: visible !important;
}

.featured-showcase__twinkles span {
    opacity: 0 !important;
    font-size: 1.1rem !important;
    text-shadow:
        0 0 4px rgba(255, 255, 255, 1),
        0 0 10px rgba(255, 225, 104, 1),
        0 0 17px rgba(255, 190, 44, 0.78)
        !important;
}

.featured-showcase__portrait:hover
.featured-showcase__twinkles span,
.featured-showcase__link:focus-visible
.featured-showcase__twinkles span {
    animation:
        featured-frame-staggered-twinkle
        var(--twinkle-duration, 1.7s)
        ease-in-out
        infinite
        !important;
    animation-delay:
        var(--twinkle-delay, 0s)
        !important;
}

.featured-showcase__twinkles span:nth-child(1) {
    top: 1% !important;
    left: 19% !important;
    --twinkle-duration: 1.35s;
    --twinkle-delay: -0.15s;
}

.featured-showcase__twinkles span:nth-child(2) {
    top: -5% !important;
    left: 43% !important;
    --twinkle-duration: 1.9s;
    --twinkle-delay: -1.1s;
}

.featured-showcase__twinkles span:nth-child(3) {
    top: 1% !important;
    right: 18% !important;
    --twinkle-duration: 1.55s;
    --twinkle-delay: -0.65s;
}

.featured-showcase__twinkles span:nth-child(4) {
    top: 13% !important;
    right: 4% !important;
    --twinkle-duration: 2.05s;
    --twinkle-delay: -1.55s;
}

.featured-showcase__twinkles span:nth-child(5) {
    top: 31% !important;
    right: -3% !important;
    --twinkle-duration: 1.45s;
    --twinkle-delay: -0.4s;
}

.featured-showcase__twinkles span:nth-child(6) {
    top: 50% !important;
    right: -6% !important;
    --twinkle-duration: 1.8s;
    --twinkle-delay: -1.25s;
}

.featured-showcase__twinkles span:nth-child(7) {
    right: -3% !important;
    bottom: 30% !important;
    --twinkle-duration: 2.15s;
    --twinkle-delay: -0.85s;
}

.featured-showcase__twinkles span:nth-child(8) {
    right: 5% !important;
    bottom: 12% !important;
    --twinkle-duration: 1.5s;
    --twinkle-delay: -1.4s;
}

.featured-showcase__twinkles span:nth-child(9) {
    right: 21% !important;
    bottom: 1% !important;
    --twinkle-duration: 1.95s;
    --twinkle-delay: -0.3s;
}

.featured-showcase__twinkles span:nth-child(10) {
    bottom: -5% !important;
    left: 44% !important;
    --twinkle-duration: 1.4s;
    --twinkle-delay: -1s;
}

.featured-showcase__twinkles span:nth-child(11) {
    bottom: 1% !important;
    left: 20% !important;
    --twinkle-duration: 2.1s;
    --twinkle-delay: -1.7s;
}

.featured-showcase__twinkles span:nth-child(12) {
    bottom: 14% !important;
    left: 4% !important;
    --twinkle-duration: 1.65s;
    --twinkle-delay: -0.55s;
}

.featured-showcase__twinkles span:nth-child(13) {
    bottom: 32% !important;
    left: -3% !important;
    --twinkle-duration: 1.85s;
    --twinkle-delay: -1.35s;
}

.featured-showcase__twinkles span:nth-child(14) {
    top: 50% !important;
    left: -6% !important;
    --twinkle-duration: 1.3s;
    --twinkle-delay: -0.75s;
}

.featured-showcase__twinkles span:nth-child(15) {
    top: 30% !important;
    left: -3% !important;
    --twinkle-duration: 2s;
    --twinkle-delay: -1.85s;
}

.featured-showcase__twinkles span:nth-child(16) {
    top: 13% !important;
    left: 5% !important;
    --twinkle-duration: 1.6s;
    --twinkle-delay: -0.2s;
}

.featured-showcase__twinkles span:nth-child(3n) {
    font-size: 0.9rem !important;
}

.featured-showcase__twinkles span:nth-child(4n) {
    font-size: 1.3rem !important;
}

@keyframes featured-frame-staggered-twinkle {
    0%,
    100% {
        opacity: 0;
        transform: scale(0.35) rotate(0deg);
    }

    18% {
        opacity: 0.18;
    }

    42% {
        opacity: 1;
        transform: scale(1.28) rotate(18deg);
    }

    62% {
        opacity: 0.35;
        transform: scale(0.78) rotate(32deg);
    }

    78% {
        opacity: 0;
        transform: scale(0.45) rotate(42deg);
    }
}
/* END larger featured hover aura and staggered stars */

/* START outer-only aura larger hover and perimeter stars */
.featured-showcase__inner-aura {
    display: none !important;
    opacity: 0 !important;
    box-shadow: none !important;
}

.featured-showcase__portrait {
    overflow: visible !important;
    isolation: visible !important;
    transition: transform 260ms ease !important;
}

.featured-showcase__portrait:hover,
.featured-showcase__link:focus-visible
.featured-showcase__portrait {
    z-index: 20 !important;
    transform: scale(1.35) !important;
}

.featured-showcase__portrait:hover
.featured-showcase__frame,
.featured-showcase__link:focus-visible
.featured-showcase__frame {
    filter: none !important;
}

.featured-showcase__portrait::before {
    content: "";
    position: absolute !important;
    z-index: 0 !important;
    inset: 3% 7% !important;
    border-radius: 50% !important;
    opacity: 0 !important;
    pointer-events: none !important;
    box-shadow: none !important;
    transition:
        opacity 240ms ease,
        box-shadow 240ms ease
        !important;
}

.featured-showcase__portrait:hover::before,
.featured-showcase__link:focus-visible
.featured-showcase__portrait::before {
    opacity: 1 !important;
    box-shadow:
        0 0 9px 5px rgba(255, 255, 255, 0.96),
        0 0 20px 11px rgba(255, 239, 160, 0.88),
        0 0 36px 19px rgba(255, 207, 73, 0.72),
        0 0 55px 28px rgba(255, 179, 35, 0.42)
        !important;
}

.featured-showcase__twinkles {
    z-index: 30 !important;
    inset: -20% -18% !important;
    overflow: visible !important;
    pointer-events: none !important;
}

.featured-showcase__twinkles span {
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    opacity: 0 !important;
}

.featured-showcase__portrait:hover
.featured-showcase__twinkles span,
.featured-showcase__link:focus-visible
.featured-showcase__twinkles span {
    animation-name:
        featured-perimeter-twinkle
        !important;
    animation-duration:
        var(--perimeter-duration, 1.8s)
        !important;
    animation-timing-function:
        ease-in-out
        !important;
    animation-delay:
        var(--perimeter-delay, 0s)
        !important;
    animation-iteration-count:
        infinite
        !important;
}

.featured-showcase__twinkles span:nth-child(1) {
    top: 0 !important;
    left: 18% !important;
    --perimeter-delay: 0s;
    --perimeter-duration: 1.45s;
}

.featured-showcase__twinkles span:nth-child(2) {
    top: 0 !important;
    left: 39% !important;
    --perimeter-delay: 0.42s;
    --perimeter-duration: 2.05s;
}

.featured-showcase__twinkles span:nth-child(3) {
    top: 0 !important;
    left: 60% !important;
    --perimeter-delay: 0.84s;
    --perimeter-duration: 1.62s;
}

.featured-showcase__twinkles span:nth-child(4) {
    top: 0 !important;
    left: 80% !important;
    --perimeter-delay: 1.26s;
    --perimeter-duration: 2.22s;
}

.featured-showcase__twinkles span:nth-child(5) {
    top: 18% !important;
    right: 0 !important;
    --perimeter-delay: 0.18s;
    --perimeter-duration: 1.72s;
}

.featured-showcase__twinkles span:nth-child(6) {
    top: 39% !important;
    right: 0 !important;
    --perimeter-delay: 0.6s;
    --perimeter-duration: 2.28s;
}

.featured-showcase__twinkles span:nth-child(7) {
    top: 60% !important;
    right: 0 !important;
    --perimeter-delay: 1.02s;
    --perimeter-duration: 1.52s;
}

.featured-showcase__twinkles span:nth-child(8) {
    top: 80% !important;
    right: 0 !important;
    --perimeter-delay: 1.44s;
    --perimeter-duration: 1.94s;
}

.featured-showcase__twinkles span:nth-child(9) {
    right: 18% !important;
    bottom: 0 !important;
    --perimeter-delay: 0.3s;
    --perimeter-duration: 2.12s;
}

.featured-showcase__twinkles span:nth-child(10) {
    right: 39% !important;
    bottom: 0 !important;
    --perimeter-delay: 0.72s;
    --perimeter-duration: 1.42s;
}

.featured-showcase__twinkles span:nth-child(11) {
    right: 60% !important;
    bottom: 0 !important;
    --perimeter-delay: 1.14s;
    --perimeter-duration: 1.86s;
}

.featured-showcase__twinkles span:nth-child(12) {
    right: 80% !important;
    bottom: 0 !important;
    --perimeter-delay: 1.56s;
    --perimeter-duration: 2.35s;
}

.featured-showcase__twinkles span:nth-child(13) {
    bottom: 18% !important;
    left: 0 !important;
    --perimeter-delay: 0.12s;
    --perimeter-duration: 1.58s;
}

.featured-showcase__twinkles span:nth-child(14) {
    bottom: 39% !important;
    left: 0 !important;
    --perimeter-delay: 0.54s;
    --perimeter-duration: 2.18s;
}

.featured-showcase__twinkles span:nth-child(15) {
    bottom: 60% !important;
    left: 0 !important;
    --perimeter-delay: 0.96s;
    --perimeter-duration: 1.76s;
}

.featured-showcase__twinkles span:nth-child(16) {
    bottom: 80% !important;
    left: 0 !important;
    --perimeter-delay: 1.38s;
    --perimeter-duration: 2.46s;
}

@keyframes featured-perimeter-twinkle {
    0%,
    68%,
    100% {
        opacity: 0;
        transform: scale(0.35) rotate(0deg);
    }

    78% {
        opacity: 0.4;
        transform: scale(0.72) rotate(12deg);
    }

    88% {
        opacity: 1;
        transform: scale(1.35) rotate(25deg);
    }

    94% {
        opacity: 0.3;
        transform: scale(0.72) rotate(38deg);
    }
}

@media (max-width: 700px) {
    .featured-showcase__portrait:hover,
    .featured-showcase__link:focus-visible
    .featured-showcase__portrait {
        transform: scale(1.28) !important;
    }
}
/* END outer-only aura larger hover and perimeter stars */

/* START corrected touching aura and visible perimeter stars */
.featured-showcase__inner-aura {
    display: none !important;
}

.featured-showcase__portrait {
    position: relative !important;
    overflow: visible !important;
    isolation: isolate !important;
    transition: transform 260ms ease !important;
}

.featured-showcase__portrait:hover,
.featured-showcase__link:focus-visible
.featured-showcase__portrait {
    z-index: 40 !important;
    transform: scale(1.48) !important;
}

.featured-showcase__portrait::before {
    content: "" !important;
    position: absolute !important;
    z-index: 0 !important;
    inset: 0 !important;
    background:
        url("images/homepage-featured/featured-frame.a7d9ec292d41.png")
        center / contain no-repeat
        !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: scale(1.06) !important;
    filter:
        brightness(1.25)
        drop-shadow(0 0 5px rgba(255, 255, 255, 0.95))
        drop-shadow(0 0 12px rgba(255, 236, 150, 0.95))
        drop-shadow(0 0 20px rgba(255, 210, 90, 0.88))
        drop-shadow(0 0 32px rgba(255, 186, 48, 0.78))
        drop-shadow(0 0 46px rgba(255, 170, 32, 0.64))
        !important;
    transition:
        opacity 260ms ease,
        transform 260ms ease,
        filter 260ms ease
        !important;
}

.featured-showcase__portrait:hover::before,
.featured-showcase__link:focus-visible
.featured-showcase__portrait::before {
    opacity: 1 !important;
    transform: scale(1.12) !important;
}

.featured-showcase__photo {
    z-index: 1 !important;
}

.featured-showcase__frame {
    z-index: 3 !important;
}

.featured-showcase__portrait:hover
.featured-showcase__frame,
.featured-showcase__link:focus-visible
.featured-showcase__frame {
    filter: none !important;
}

.featured-showcase__twinkles {
    position: absolute !important;
    z-index: 60 !important;
    inset: -8% !important;
    overflow: visible !important;
    pointer-events: none !important;
}

.featured-showcase__twinkles span {
    position: absolute !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    opacity: 0 !important;
    color: #ffd84d !important;
    font-size: 1.1rem !important;
    line-height: 1 !important;
    text-shadow:
        0 0 3px rgba(255, 255, 255, 1),
        0 0 8px rgba(255, 231, 126, 1),
        0 0 15px rgba(255, 187, 37, 0.9)
        !important;
}

.featured-showcase__portrait:hover
.featured-showcase__twinkles span,
.featured-showcase__link:focus-visible
.featured-showcase__twinkles span {
    animation:
        corrected-featured-twinkle
        var(--star-duration, 1.8s)
        ease-in-out
        infinite
        !important;
    animation-delay:
        var(--star-delay, 0s)
        !important;
}

.featured-showcase__twinkles span:nth-child(1) {
    top: -2% !important;
    left: 13% !important;
    --star-delay: -0.15s;
    --star-duration: 1.35s;
}

.featured-showcase__twinkles span:nth-child(2) {
    top: -5% !important;
    left: 35% !important;
    --star-delay: -1.05s;
    --star-duration: 2.1s;
}

.featured-showcase__twinkles span:nth-child(3) {
    top: -5% !important;
    right: 35% !important;
    --star-delay: -0.55s;
    --star-duration: 1.55s;
}

.featured-showcase__twinkles span:nth-child(4) {
    top: -2% !important;
    right: 13% !important;
    --star-delay: -1.55s;
    --star-duration: 2.25s;
}

.featured-showcase__twinkles span:nth-child(5) {
    top: 16% !important;
    right: -3% !important;
    --star-delay: -0.3s;
    --star-duration: 1.7s;
}

.featured-showcase__twinkles span:nth-child(6) {
    top: 37% !important;
    right: -6% !important;
    --star-delay: -1.35s;
    --star-duration: 2.35s;
}

.featured-showcase__twinkles span:nth-child(7) {
    top: 59% !important;
    right: -6% !important;
    --star-delay: -0.75s;
    --star-duration: 1.45s;
}

.featured-showcase__twinkles span:nth-child(8) {
    right: -3% !important;
    bottom: 16% !important;
    --star-delay: -1.75s;
    --star-duration: 1.95s;
}

.featured-showcase__twinkles span:nth-child(9) {
    right: 13% !important;
    bottom: -2% !important;
    --star-delay: -0.45s;
    --star-duration: 2.15s;
}

.featured-showcase__twinkles span:nth-child(10) {
    right: 35% !important;
    bottom: -5% !important;
    --star-delay: -1.2s;
    --star-duration: 1.4s;
}

.featured-showcase__twinkles span:nth-child(11) {
    bottom: -5% !important;
    left: 35% !important;
    --star-delay: -0.9s;
    --star-duration: 1.85s;
}

.featured-showcase__twinkles span:nth-child(12) {
    bottom: -2% !important;
    left: 13% !important;
    --star-delay: -1.95s;
    --star-duration: 2.45s;
}

.featured-showcase__twinkles span:nth-child(13) {
    bottom: 16% !important;
    left: -3% !important;
    --star-delay: -0.2s;
    --star-duration: 1.6s;
}

.featured-showcase__twinkles span:nth-child(14) {
    bottom: 37% !important;
    left: -6% !important;
    --star-delay: -1.45s;
    --star-duration: 2.2s;
}

.featured-showcase__twinkles span:nth-child(15) {
    top: 37% !important;
    left: -6% !important;
    --star-delay: -0.65s;
    --star-duration: 1.75s;
}

.featured-showcase__twinkles span:nth-child(16) {
    top: 16% !important;
    left: -3% !important;
    --star-delay: -1.65s;
    --star-duration: 2.05s;
}

.featured-showcase__twinkles span:nth-child(3n) {
    font-size: 0.85rem !important;
}

.featured-showcase__twinkles span:nth-child(4n) {
    font-size: 1.3rem !important;
}

@keyframes corrected-featured-twinkle {
    0%,
    62%,
    100% {
        opacity: 0;
        transform: scale(0.3) rotate(0deg);
    }

    72% {
        opacity: 0.25;
        transform: scale(0.65) rotate(10deg);
    }

    82% {
        opacity: 1;
        transform: scale(1.3) rotate(22deg);
    }

    91% {
        opacity: 0.35;
        transform: scale(0.72) rotate(36deg);
    }
}

@media (max-width: 700px) {
    .featured-showcase__portrait:hover,
    .featured-showcase__link:focus-visible
    .featured-showcase__portrait {
        transform: scale(1.32) !important;
    }
}
/* END corrected touching aura and visible perimeter stars */

/* START aura matches featured frame size */
.featured-showcase__portrait::before,
.featured-showcase__portrait:hover::before,
.featured-showcase__link:focus-visible
.featured-showcase__portrait::before {
    inset: 0 !important;
    transform: scale(0.88) !important;
}
/* END aura matches featured frame size */

/* START larger frame with fixed-size aura */
.featured-showcase__portrait:hover,
.featured-showcase__link:focus-visible
.featured-showcase__portrait {
    transform: scale(1.8) !important;
}

.featured-showcase__portrait:hover::before,
.featured-showcase__link:focus-visible
.featured-showcase__portrait::before {
    transform: scale(0.724) !important;
}

@media (max-width: 700px) {
    .featured-showcase__portrait:hover,
    .featured-showcase__link:focus-visible
    .featured-showcase__portrait {
        transform: scale(1.5) !important;
    }

    .featured-showcase__portrait:hover::before,
    .featured-showcase__link:focus-visible
    .featured-showcase__portrait::before {
        transform: scale(0.773) !important;
    }
}
/* END larger frame with fixed-size aura */

/* START permanent golden rescue-title glow */
.site-name,
.site-name:visited,
.site-name:hover,
.site-name:focus,
.site-name:focus-visible {
    color: var(--yellow) !important;
    text-shadow:
        0 0 3px rgba(255, 235, 145, 0.95),
        0 0 8px rgba(235, 183, 52, 0.78),
        0 0 15px rgba(220, 157, 31, 0.62),
        0 0 24px rgba(207, 136, 19, 0.44),
        0 0 36px rgba(192, 114, 11, 0.28)
        !important;
    filter: none !important;
}
/* END permanent golden rescue-title glow */

/* START featured cats floral background */
.featured-showcase {
    padding-right: 24px !important;
    padding-left: 24px !important;
    border-radius: 24px !important;
    background-image:
        url("images/homepage-featured/featured-cats-floral-background.edf7a89fc3d5.png")
        !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
}

.featured-showcase .section-heading,
.featured-showcase__grid,
.featured-showcase__sound-toggle {
    position: relative !important;
    z-index: 1 !important;
}

@media (max-width: 700px) {
    .featured-showcase {
        padding-right: 14px !important;
        padding-left: 14px !important;
        border-radius: 16px !important;
        background-position: center top !important;
    }
}
/* END featured cats floral background */

/* START exact floral featured showcase */
.featured-showcase {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-top: 0 !important;
    margin-right: calc(50% - 50vw) !important;
    margin-left: calc(50% - 50vw) !important;
    padding-top: 28px !important;
    padding-right: 28px !important;
    padding-bottom: 54px !important;
    padding-left: 28px !important;
    background-color: #f5efdf !important;
    background-image: url("../animals/images/homepage-featured/vintage-floral-featured-background.043255160c3c.png") !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-size: cover !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

.featured-showcase .section-heading {
    display: none !important;
}

.featured-showcase__hero {
    width: 100% !important;
    max-width: 1100px !important;
    margin: 0 auto 26px !important;
    text-align: center !important;
}

.featured-showcase__hero-kicker {
    margin: 0 0 4px !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(1.8rem, 2vw, 2.35rem) !important;
    font-style: italic !important;
    font-weight: 500 !important;
    line-height: 1.15 !important;
    letter-spacing: 0.01em !important;
}

.featured-showcase__hero-kicker::before,
.featured-showcase__hero-kicker::after {
    content: "❦" !important;
    display: inline-block !important;
    margin: 0 12px !important;
    color: #214f97 !important;
    font-size: 0.85em !important;
    vertical-align: middle !important;
}

.featured-showcase__hero-title {
    margin: 0 !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(4rem, 7vw, 6.75rem) !important;
    font-weight: 700 !important;
    line-height: 0.95 !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase !important;
}

.featured-showcase__hero-divider {
    margin: 14px auto 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 14px !important;
    width: min(100%, 430px) !important;
}

.featured-showcase__hero-line {
    flex: 1 1 auto !important;
    height: 2px !important;
    background: rgba(33, 79, 151, 0.7) !important;
}

.featured-showcase__hero-ornament {
    color: #214f97 !important;
    font-size: 1.6rem !important;
    line-height: 1 !important;
}

.featured-showcase__grid {
    width: min(1600px, 100%) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 18px !important;
    align-items: start !important;
}

.featured-showcase__card {
    min-width: 0 !important;
    background: transparent !important;
    text-align: center !important;
}

.featured-showcase__link,
.featured-showcase__link:visited,
.featured-showcase__link:hover,
.featured-showcase__link:focus {
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    color: inherit !important;
    text-decoration: none !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

.featured-showcase__portrait {
    position: relative !important;
    width: min(100%, 268px) !important;
    margin: 0 auto !important;
    aspect-ratio: 548 / 659 !important;
    overflow: visible !important;
}

.featured-showcase__photo {
    position: absolute !important;
    z-index: 1 !important;
    top: 17% !important;
    left: 21% !important;
    width: 58% !important;
    height: 66% !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    background:
        radial-gradient(circle at 40% 28%, rgba(255,255,255,0.75), rgba(255,255,255,0.18) 50%, rgba(255,255,255,0) 72%),
        linear-gradient(135deg, #efe3c3, #d8c7a5) !important;
}

.featured-showcase__photo img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
}

.featured-showcase__frame {
    position: absolute !important;
    z-index: 2 !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: contain !important;
    pointer-events: none !important;
}

.featured-showcase__placeholder {
    width: 100% !important;
    height: 100% !important;
    padding: 12px !important;
    display: grid !important;
    place-items: center !important;
    color: #214f97 !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

.featured-showcase__details {
    width: min(100%, 280px) !important;
    margin: 16px auto 0 !important;
    text-align: center !important;
    transform: none !important;
}

.featured-showcase__headline {
    margin: 0 0 6px !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(1.05rem, 1.1vw, 1.35rem) !important;
    font-style: italic !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

.featured-showcase__details h3 {
    margin: 0 0 6px !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(2.15rem, 2vw, 2.85rem) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.01em !important;
    text-transform: uppercase !important;
}

.featured-showcase__facts,
.featured-showcase__breed {
    margin: 0 !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(0.95rem, 1vw, 1.25rem) !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
}

.featured-showcase__facts {
    margin-bottom: 2px !important;
}

.featured-showcase__facts span {
    padding-inline: 8px !important;
}

.featured-showcase__breed {
    max-width: 16ch !important;
    margin-inline: auto !important;
}

@media (max-width: 1250px) {
    .featured-showcase__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 780px) {
    .featured-showcase {
        padding-top: 24px !important;
        padding-right: 18px !important;
        padding-bottom: 42px !important;
        padding-left: 18px !important;
    }

    .featured-showcase__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }

    .featured-showcase__hero-kicker::before,
    .featured-showcase__hero-kicker::after {
        margin: 0 8px !important;
    }
}

@media (max-width: 520px) {
    .featured-showcase__grid {
        grid-template-columns: 1fr !important;
    }

    .featured-showcase__portrait {
        width: min(100%, 290px) !important;
    }
}
/* END exact floral featured showcase */

/* START final featured cats background */
.featured-showcase {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-right: calc(50% - 50vw) !important;
    margin-left: calc(50% - 50vw) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background-color: #f3ecdc !important;
    background-image:
        url("images/homepage-featured/featured-cats-background-final.6895176df9e0.png")
        !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
}

.featured-showcase .section-heading,
.featured-showcase__hero,
.featured-showcase__grid,
.featured-showcase__sound-toggle {
    position: relative !important;
    z-index: 2 !important;
}

@media (max-width: 900px) {
    .featured-showcase {
        background-position: center top !important;
        background-size: cover !important;
    }
}
/* END final featured cats background */

/* START closer featured frame and text */
.featured-showcase__details {
    margin-top: 5px !important;
}

.featured-showcase__headline {
    margin-top: 0 !important;
    margin-bottom: 3px !important;
}
/* END closer featured frame and text */

/* START closer and lower featured cats */
.featured-showcase__grid {
    position: relative !important;
    top: 18px !important;
}

.featured-showcase__details {
    margin-top: -44px !important;
}

.featured-showcase__headline {
    margin: 0 0 2px !important;
    font-size: 0.88rem !important;
    line-height: 1.15 !important;
}

.featured-showcase__details h3 {
    margin: 0 0 4px !important;
    font-size: clamp(1.45rem, 1.6vw, 1.85rem) !important;
    line-height: 1 !important;
}

.featured-showcase__facts,
.featured-showcase__breed {
    font-size: 0.8rem !important;
    line-height: 1.25 !important;
}

@media (max-width: 700px) {
    .featured-showcase__details {
        margin-top: -38px !important;
    }

    .featured-showcase__details h3 {
        font-size: 1.55rem !important;
    }
}
/* END closer and lower featured cats */

/* START featured layout correction */
.featured-showcase {
    background-size: cover !important;
    background-position: center center !important;
}

.featured-showcase__grid {
    width: min(1300px, calc(100% - 20px)) !important;
    margin: 18px auto 0 !important;
    position: relative !important;
    top: auto !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 260px)) !important;
    column-gap: 0 !important;
    row-gap: 24px !important;
    justify-content: center !important;
    align-items: start !important;
}

.featured-showcase__card {
    width: 260px !important;
    max-width: 100% !important;
    margin: 0 !important;
}

.featured-showcase__portrait {
    width: 260px !important;
    max-width: 100% !important;
}

.featured-showcase__details {
    width: 260px !important;
    max-width: 100% !important;
    margin: -8px auto -30px !important;
    position: relative !important;
    top: auto !important;
    transform: translateY(-30px) !important;
    text-align: center !important;
}

.featured-showcase__headline {
    margin: 0 0 2px !important;
    font-size: 0.82rem !important;
    line-height: 1.1 !important;
}

.featured-showcase__details h3 {
    margin: 0 0 3px !important;
    font-size: 1.55rem !important;
    line-height: 1 !important;
}

.featured-showcase__facts,
.featured-showcase__breed {
    margin-top: 0 !important;
    font-size: 0.76rem !important;
    line-height: 1.2 !important;
}

@media (max-width: 1100px) {
    .featured-showcase__grid {
        grid-template-columns: repeat(3, minmax(0, 260px)) !important;
        column-gap: 4px !important;
    }
}

@media (max-width: 700px) {
    .featured-showcase {
        background-size: cover !important;
        background-position: center top !important;
    }

    .featured-showcase__grid {
        grid-template-columns: repeat(2, minmax(0, 245px)) !important;
        column-gap: 2px !important;
    }

    .featured-showcase__card,
    .featured-showcase__portrait,
    .featured-showcase__details {
        width: 245px !important;
    }
}

@media (max-width: 510px) {
    .featured-showcase__grid {
        grid-template-columns: minmax(0, 270px) !important;
    }

    .featured-showcase__card,
    .featured-showcase__portrait,
    .featured-showcase__details {
        width: 270px !important;
    }
}
/* END featured layout correction */

/* START featured spacing 15px and up 20px */
.featured-showcase__grid {
    top: auto !important;
    transform: translateY(-20px) !important;
}

.featured-showcase__details {
    margin: 15px auto 0 !important;
    top: auto !important;
    transform: none !important;
}

@media (max-width: 700px) {
    .featured-showcase__grid {
        transform: translateY(-20px) !important;
    }

    .featured-showcase__details {
        margin-top: 15px !important;
        transform: none !important;
    }
}
/* END featured spacing 15px and up 20px */

/* START separate featured frame and text spacing */
.featured-showcase__grid {
    transform: translateY(-20px) !important;
}

.featured-showcase__details {
    position: relative !important;
    top: 15px !important;
    margin: 0 auto 15px !important;
    transform: none !important;
}

@media (max-width: 700px) {
    .featured-showcase__grid {
        transform: translateY(-20px) !important;
    }

    .featured-showcase__details {
        top: 15px !important;
        margin: 0 auto 15px !important;
        transform: none !important;
    }
}
/* END separate featured frame and text spacing */

/* START featured horizontal frame spacing */
.featured-showcase__grid {
    width: min(1360px, calc(100% - 24px)) !important;
    grid-template-columns: repeat(5, minmax(0, 260px)) !important;
    column-gap: 15px !important;
    row-gap: 28px !important;
    justify-content: center !important;
}

@media (max-width: 1100px) {
    .featured-showcase__grid {
        grid-template-columns: repeat(3, minmax(0, 260px)) !important;
        column-gap: 15px !important;
    }
}

@media (max-width: 700px) {
    .featured-showcase__grid {
        grid-template-columns: repeat(2, minmax(0, 245px)) !important;
        column-gap: 15px !important;
    }
}

@media (max-width: 510px) {
    .featured-showcase__grid {
        grid-template-columns: minmax(0, 270px) !important;
    }
}
/* END featured horizontal frame spacing */

/* START featured frames five pixels farther and slightly higher */
.featured-showcase__grid {
    width: min(1380px, calc(100% - 24px)) !important;
    column-gap: 25px !important;
    transform: translateY(-29px) !important;
}

@media (max-width: 1100px) {
    .featured-showcase__grid {
        column-gap: 25px !important;
        transform: translateY(-29px) !important;
    }
}

@media (max-width: 700px) {
    .featured-showcase__grid {
        column-gap: 25px !important;
        transform: translateY(-29px) !important;
    }
}
/* END featured frames five pixels farther and slightly higher */

/* START guaranteed featured horizontal spacing */
.featured-showcase__grid {
    width: min(1452px, calc(100% - 12px)) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: flex-start !important;
    column-gap: 32px !important;
    row-gap: 28px !important;
    transform: translateY(-30px) !important;
}

.featured-showcase__card {
    flex: 0 0 264px !important;
    width: 264px !important;
    min-width: 264px !important;
    max-width: 264px !important;
    margin: 0 !important;
}

.featured-showcase__portrait,
.featured-showcase__details {
    width: 264px !important;
    max-width: 264px !important;
}

@media (max-width: 1100px) {
    .featured-showcase__grid {
        column-gap: 27px !important;
    }
}

@media (max-width: 700px) {
    .featured-showcase__grid {
        column-gap: 19px !important;
    }

    .featured-showcase__card,
    .featured-showcase__portrait,
    .featured-showcase__details {
        width: 245px !important;
        min-width: 245px !important;
        max-width: 245px !important;
        flex-basis: 245px !important;
    }
}

@media (max-width: 540px) {
    .featured-showcase__grid {
        column-gap: 0 !important;
    }

    .featured-showcase__card,
    .featured-showcase__portrait,
    .featured-showcase__details {
        width: 270px !important;
        min-width: 270px !important;
        max-width: 270px !important;
        flex-basis: 270px !important;
    }
}
/* END guaranteed featured horizontal spacing */

/* START tall fancy featured cats typography */
.featured-showcase__hero-kicker,
.featured-showcase__hero-title,
.featured-showcase__headline,
.featured-showcase__details h3,
.featured-showcase__facts,
.featured-showcase__breed {
    font-family:
        "Bodoni 72",
        Didot,
        "Bodoni MT",
        "Times New Roman",
        serif
        !important;
}

.featured-showcase__hero-kicker {
    font-weight: 400 !important;
    letter-spacing: 0.015em !important;
}

.featured-showcase__hero-title {
    font-weight: 400 !important;
    letter-spacing: 0.02em !important;
}

.featured-showcase__headline {
    font-weight: 400 !important;
    letter-spacing: 0.05em !important;
}

.featured-showcase__details h3 {
    font-weight: 400 !important;
    letter-spacing: 0.025em !important;
}

.featured-showcase__facts,
.featured-showcase__breed {
    font-weight: 400 !important;
    letter-spacing: 0.065em !important;
}
/* END tall fancy featured cats typography */

/* START taller skinnier featured typography */
.featured-showcase__hero-kicker {
    display: inline-block !important;
    font-weight: 300 !important;
    transform: scaleX(0.86) scaleY(1.08) !important;
    transform-origin: center center !important;
}

.featured-showcase__hero-title {
    display: inline-block !important;
    font-weight: 300 !important;
    transform: scaleX(0.56) scaleY(1.42) !important;
    transform-origin: center center !important;
}

.featured-showcase__headline {
    display: inline-block !important;
    font-weight: 300 !important;
    transform: scaleX(0.86) scaleY(1.07) !important;
    transform-origin: center center !important;
}

.featured-showcase__details h3 {
    display: inline-block !important;
    font-weight: 300 !important;
    transform: scaleX(0.82) scaleY(1.10) !important;
    transform-origin: center center !important;
}

.featured-showcase__facts,
.featured-showcase__breed {
    display: inline-block !important;
    font-weight: 300 !important;
    transform: scaleX(0.90) scaleY(1.05) !important;
    transform-origin: center center !important;
}
/* END taller skinnier featured typography */

/* START featured frames up five pixels */
.featured-showcase__portrait {
    position: relative !important;
    top: -12px !important;
}
/* END featured frames up five pixels */

/* START featured section up thirty pixels */
.featured-showcase {
    margin-top: -80px !important;
}
/* END featured section up thirty pixels */

/* START darker blue and golden header background */
.site-header__background {
    background-color: #ebd9b2 !important;
    background-image: none !important;
}
/* END darker blue and golden header background */

/* START preserve removed featured kicker space */
.featured-showcase__hero-kicker--empty {
    display: none !important;
}

.featured-showcase__hero-kicker-space {
    width: 100% !important;
    height: clamp(38px, 3.2vw, 46px) !important;
    min-height: clamp(38px, 3.2vw, 46px) !important;
    margin: 0 0 4px !important;
    display: block !important;
    flex: 0 0 auto !important;
    pointer-events: none !important;
}

@media (max-width: 700px) {
    .featured-showcase__hero-kicker-space {
        height: 38px !important;
        min-height: 38px !important;
    }
}
/* END preserve removed featured kicker space */

/* START restored featured hover video */
.featured-showcase__photo {
    isolation: isolate !important;
}

.featured-showcase__photo img,
.featured-showcase__video {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
}

.featured-showcase__photo img {
    z-index: 1 !important;
}

.featured-showcase__video {
    z-index: 2 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 180ms ease !important;
}

.featured-showcase__portrait:hover .featured-showcase__video,
.featured-showcase__portrait.is-playing .featured-showcase__video,
.featured-showcase__link:focus-visible .featured-showcase__video {
    opacity: 1 !important;
}
/* END restored featured hover video */

/* START featured speaker top right */
.featured-showcase__sound-toggle {
    position: fixed !important;
    z-index: 10000 !important;
    top: 16px !important;
    right: 18px !important;
    bottom: auto !important;
    left: auto !important;
    width: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(33, 79, 151, 0.38) !important;
    border-radius: 50% !important;
    background: rgba(255, 250, 231, 0.92) !important;
    box-shadow: 0 3px 12px rgba(30, 61, 89, 0.2) !important;
    font-size: 1.05rem !important;
    line-height: 1 !important;
    transform: none !important;
}

.featured-showcase__sound-toggle:hover,
.featured-showcase__sound-toggle:focus-visible {
    transform: scale(1.08) !important;
}

@media (max-width: 700px) {
    .featured-showcase__sound-toggle {
        top: 10px !important;
        right: 10px !important;
        width: 36px !important;
        height: 36px !important;
    }
}
/* END featured speaker top right */

/* START show entire featured background */
.featured-showcase {
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
}
/* END show entire featured background */

/* START featured floral background and section position */
.featured-showcase {
    margin-top: -136px !important;
    background-color: #f6efe2 !important;
    background-image: url("images/homepage-featured/featured-cats-background-2.e0c22d02f82a.png") !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
}

.featured-showcase::before,
.featured-showcase::after {
    content: none !important;
    display: none !important;
}

.featured-showcase__inner,
.featured-showcase__header,
.featured-showcase__grid {
    background: transparent !important;
    box-shadow: none !important;
}

@media (max-width: 900px) {
    .featured-showcase {
        margin-top: -118px !important;
        background-position: center center !important;
        background-size: 100% 100% !important;
    }
}
/* END featured floral background and section position */

/* START rescue title letter color */
.site-name,
.site-name:visited,
.site-name:hover,
.site-name:focus-visible {
    color: #eab80d !important;
    -webkit-text-fill-color: #eab80d !important;
}
/* END rescue title letter color */

/* START force rescue yellow title letters */
.site-name,
.site-name:link,
.site-name:visited,
.site-name:hover,
.site-name:focus,
.site-name:focus-visible,
.site-name *,
.site-name:hover *,
.site-name:focus-visible * {
    color: #eab80d !important;
    -webkit-text-fill-color: #eab80d !important;
    background-color: transparent !important;
    background-image: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
}
/* END force rescue yellow title letters */

/* START final light rescue yellow title */
html body .site-header .site-name,
html body .site-header .site-name:link,
html body .site-header .site-name:visited,
html body .site-header .site-name:hover,
html body .site-header .site-name:focus,
html body .site-header .site-name:focus-visible {
    color: #ffd84d !important;
    -webkit-text-fill-color: #ffd84d !important;
}
/* END final light rescue yellow title */

/* START featured cats gold divider lines */
.featured-showcase {
    position: relative !important;
}

.featured-showcase::before,
.featured-showcase::after {
    content: "" !important;
    position: absolute !important;
    z-index: 20 !important;
    right: 0 !important;
    left: 0 !important;
    height: 3px !important;
    display: block !important;
    pointer-events: none !important;
    background:
        linear-gradient(
            90deg,
            #856a3d 0%,
            #eab80d 25%,
            #fff0a8 50%,
            #eab80d 75%,
            #856a3d 100%
        )
        !important;
    box-shadow:
        0 0 5px rgba(234, 184, 13, 0.75),
        0 0 10px rgba(234, 184, 13, 0.35)
        !important;
}

.featured-showcase::before {
    top: 0 !important;
    bottom: auto !important;
}

.featured-showcase::after {
    top: auto !important;
    bottom: 0 !important;
}
/* END featured cats gold divider lines */

/* START restore home message and brighter stars */
.home-message {
    position: relative !important;
    z-index: 30 !important;
}

.home-message__inner {
    position: relative !important;
    z-index: 31 !important;
    width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

.home-message__title {
    position: relative !important;
    z-index: 32 !important;
    width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
}

.home-message__sparkles {
    position: absolute !important;
    z-index: 31 !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 50% !important;
    right: auto !important;
    width: min(1000px, 100vw) !important;
    margin: 0 !important;
    transform: translate(-50%, -18px) !important;
    pointer-events: none !important;
}

.home-message__sparkle {
    color: #fff36b !important;
    opacity: 1 !important;
    -webkit-text-stroke: 0.35px #fffde8 !important;
    filter:
        brightness(1.3)
        saturate(1.15)
        drop-shadow(0 0 2px rgba(255, 255, 255, 1))
        drop-shadow(0 0 6px rgba(255, 238, 82, 0.95))
        !important;
    text-shadow:
        0 0 2px #ffffff,
        0 0 5px #fff8b0,
        0 0 10px #ffe94f,
        0 0 17px rgba(234, 184, 13, 0.9)
        !important;
}
/* END restore home message and brighter stars */

/* START translucent featured cats background */
.featured-showcase {
    background-image:
        linear-gradient(
            rgba(255, 249, 231, 0.18),
            rgba(255, 249, 231, 0.18)
        ),
        url("images/homepage-featured/featured-cats-background-2.e0c22d02f82a.png")
        !important;
}
/* END translucent featured cats background */

/* START crisp bright home-message stars */
.home-message__sparkle {
    color: #fff078 !important;
    opacity: 0.96 !important;
    font-weight: 500 !important;
    -webkit-text-stroke: 0.15px rgba(188, 139, 18, 0.65) !important;
    filter: drop-shadow(0 0 2px rgba(255, 235, 95, 0.55)) !important;
    text-shadow:
        0 0 2px rgba(255, 255, 230, 0.82),
        0 0 5px rgba(255, 221, 55, 0.48)
        !important;
}
/* END crisp bright home-message stars */

/* START featured cats cream aura */
html body .featured-showcase .featured-showcase__hero-title,
html body .featured-showcase .featured-showcase__headline,
html body .featured-showcase .featured-showcase__details h3,
html body .featured-showcase .featured-showcase__facts,
html body .featured-showcase .featured-showcase__breed,
html body .featured-showcase .featured-showcase__placeholder {
    text-shadow:
        0 0 4px rgba(255, 255, 250, 1),
        0 0 12px rgba(255, 252, 239, 1),
        0 0 26px rgba(252, 243, 220, 1),
        0 0 46px rgba(247, 232, 198, 0.98),
        0 0 70px rgba(239, 217, 174, 0.90),
        0 0 98px rgba(229, 198, 142, 0.74),
        0 0 130px rgba(214, 177, 111, 0.52)
        !important;
}
/* END featured cats cream aura */

/* START slightly larger featured cats card text */
.featured-showcase__headline {
    font-size: 1.24rem !important;
    font-weight: 700 !important;
    line-height: 1.18 !important;
}

.featured-showcase__details h3 {
    font-size: clamp(1.58rem, 1.75vw, 2rem) !important;
}

.featured-showcase__facts {
    font-size: 0.96rem !important;
}

.featured-showcase__breed {
    font-size: 0.92rem !important;
}

.featured-showcase__placeholder {
    font-size: 1.05rem !important;
}
/* END slightly larger featured cats card text */

/* START golden rescue title aura */
html body .site-header .site-name,
html body .site-header .site-name:link,
html body .site-header .site-name:visited,
html body .site-header .site-name:hover,
html body .site-header .site-name:focus,
html body .site-header .site-name:focus-visible {
    text-shadow:
        0 0 2px rgba(255, 253, 226, 0.98),
        0 0 7px rgba(255, 230, 132, 0.88),
        0 0 15px rgba(239, 191, 55, 0.68),
        0 0 28px rgba(207, 151, 24, 0.42),
        0 2px 2px rgba(45, 65, 75, 0.32)
        !important;
    filter: none !important;
}
/* END golden rescue title aura */

/* START cursive gold rescue title */
html body .site-header .site-name,
html body .site-header .site-name:link,
html body .site-header .site-name:visited,
html body .site-header .site-name:hover,
html body .site-header .site-name:focus,
html body .site-header .site-name:focus-visible {
    color: #d4a72c !important;
    -webkit-text-fill-color: #d4a72c !important;
    font-family:
        "Snell Roundhand",
        "Apple Chancery",
        "URW Chancery L",
        cursive
        !important;
    font-weight: 400 !important;
    background-color: transparent !important;
    background-image: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
}
/* END cursive gold rescue title */

/* START rescue title matches featured cats blue */
html body .site-header .site-name,
html body .site-header .site-name:link,
html body .site-header .site-name:visited,
html body .site-header .site-name:hover,
html body .site-header .site-name:focus,
html body .site-header .site-name:focus-visible {
    color: #214f97 !important;
    -webkit-text-fill-color: #214f97 !important;
}
/* END rescue title matches featured cats blue */

/* START smaller alternate cursive rescue title */
html body .site-header,
html body .site-header .site-header__inner,
html body .site-header .site-header__content,
html body .site-header .site-branding {
    overflow: visible !important;
}

html body .site-header .site-header__inner {
    padding-top: 4px !important;
    padding-bottom: 6px !important;
}

html body .site-header .site-name,
html body .site-header .site-name:link,
html body .site-header .site-name:visited,
html body .site-header .site-name:hover,
html body .site-header .site-name:focus,
html body .site-header .site-name:focus-visible {
    display: inline-block !important;
    box-sizing: content-box !important;
    max-width: none !important;
    overflow: visible !important;
    contain: none !important;
    clip-path: none !important;
    white-space: nowrap !important;
    font-family:
        "Pinyon Script",
        "Snell Roundhand",
        cursive
        !important;
    font-size: clamp(2.35rem, 6.5vw, 4.45rem) !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.08 !important;
    letter-spacing: 0.015em !important;
    padding: 0.06em 0.85em 0.08em !important;
    margin-right: -0.85em !important;
    margin-left: -0.85em !important;
    transform: translateY(10px) scale(1) !important;
    transform-origin: center center !important;
    transition:
        transform 220ms ease,
        text-shadow 220ms ease
        !important;
    will-change: transform !important;
    backface-visibility: hidden !important;
    -webkit-font-smoothing: antialiased !important;
}

html body .site-header .site-name:hover,
html body .site-header .site-name:focus-visible {
    transform: translateY(10px) scale(1.055) !important;
}

html body .site-header .sun-navigation {
    margin-top: 7px !important;
}

@media (max-width: 640px) {
    html body .site-header .site-header__inner {
        padding-top: 3px !important;
        padding-bottom: 5px !important;
    }

    html body .site-header .site-name,
    html body .site-header .site-name:link,
    html body .site-header .site-name:visited,
    html body .site-header .site-name:hover,
    html body .site-header .site-name:focus,
    html body .site-header .site-name:focus-visible {
        font-size: clamp(1.75rem, 8.6vw, 2.75rem) !important;
        line-height: 1.1 !important;
        padding: 0.07em 0.9em 0.1em !important;
        margin-right: -0.9em !important;
        margin-left: -0.9em !important;
        transform: translateY(7px) scale(1) !important;
    }

    html body .site-header .site-name:hover,
    html body .site-header .site-name:focus-visible {
        transform: translateY(7px) scale(1.035) !important;
    }

    html body .site-header .sun-navigation {
        margin-top: 5px !important;
    }
}
/* END smaller alternate cursive rescue title */

/* START sunflower navigation icons */
.sun-nav-link::before {
    background-image:
        url("/static/animals/images/nav/trimmed/sunflower-navigation.a8d0fe9fcc67.png")
        !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    filter:
        drop-shadow(0 4px 8px rgba(77, 48, 8, 0.25))
        !important;
}

.sun-nav-link > span,
.sun-nav-link:hover > span,
.sun-nav-link:focus-visible > span {
    left: 50% !important;
}
/* END sunflower navigation icons */

/* START house cats and sunflower text adjustment */
.interest-home-link__house,
.interest-home-house,
.interest-home-icon,
.interest-home-link img[src*="home-house"],
.interest-home-link img[src*="adoption-home"] {
    translate: 0 -19px !important;
}

.interest-home-pet,
[class*="interest-home-pet--cat"] {
    translate: 0 -1px !important;
}

.sun-nav-link::before,
.sun-nav-link:hover::before,
.sun-nav-link:focus-visible::before {
    animation-duration: 30s !important;
}

.sun-nav-link > span,
.sun-nav-link .sun-nav-label,
.sun-nav-link__label {
    text-shadow:
        0 0 2px rgba(255, 254, 238, 0.90),
        0 0 6px rgba(242, 216, 133, 0.66),
        0 0 10px rgba(218, 173, 53, 0.40),
        0 1px 2px rgba(67, 42, 7, 0.84)
        !important;
}

.interest-home-link__label,
.interest-home-label {
    position: relative !important;
    top: -12px !important;
    font-size: 1.13em !important;
    transform: none !important;
    scale: 1 !important;
    transition: none !important;
    text-shadow:
        0 0 2px rgba(255, 254, 238, 0.88),
        0 0 6px rgba(242, 216, 133, 0.55),
        0 1px 2px rgba(67, 42, 7, 0.76)
        !important;
}

.interest-home-link,
.interest-home-link:hover,
.interest-home-link:focus,
.interest-home-link:focus-visible {
    transform: none !important;
    scale: 1 !important;
}

.interest-home-link__house,
.interest-home-house,
.interest-home-icon,
.interest-home-link img[src*="home-house"],
.interest-home-link img[src*="adoption-home"],
.interest-home-link:hover .interest-home-link__house,
.interest-home-link:hover .interest-home-house,
.interest-home-link:hover .interest-home-icon,
.interest-home-link:focus-visible .interest-home-link__house,
.interest-home-link:focus-visible .interest-home-house,
.interest-home-link:focus-visible .interest-home-icon {
    transform: translateX(-50%) !important;
    scale: 1 !important;
    transition: none !important;
}

.interest-home-pet,
[class*="interest-home-pet--cat"],
.interest-home-link:hover .interest-home-pet,
.interest-home-link:hover [class*="interest-home-pet--cat"],
.interest-home-link:focus-visible .interest-home-pet,
.interest-home-link:focus-visible [class*="interest-home-pet--cat"] {
    transform: none !important;
    scale: 1 !important;
    transition: none !important;
}

.interest-home-link__count,
.interest-home-link:hover .interest-home-link__count,
.interest-home-link:focus .interest-home-link__count,
.interest-home-link:focus-visible .interest-home-link__count {
    position: absolute !important;
    z-index: 60 !important;
    top: 13px !important;
    right: 22px !important;
    display: grid !important;
    place-items: center !important;
    padding: 0 !important;
    text-align: center !important;
    line-height: 1 !important;
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    transition: none !important;
}
/* END house cats and sunflower text adjustment */

/* START no house cats hover */
html body .site-header .interest-home-link,
html body .site-header .interest-home-link:hover,
html body .site-header .interest-home-link:focus,
html body .site-header .interest-home-link:focus-visible,
html body .site-header .interest-home-link:active {
    transform: none !important;
    scale: 1 !important;
    filter: none !important;
    box-shadow: none !important;
}

html body .site-header .interest-home-link > .interest-home-visual,
html body .site-header .interest-home-link:hover > .interest-home-visual,
html body .site-header .interest-home-link:focus > .interest-home-visual,
html body .site-header .interest-home-link:focus-visible > .interest-home-visual,
html body .site-header .interest-home-link:active > .interest-home-visual {
    transform: scale(1) !important;
    transform-origin: center center !important;
    filter: none !important;
    box-shadow: none !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header .interest-home-link > .interest-home-visual::before,
html body .site-header .interest-home-link > .interest-home-visual::after,
html body .site-header .interest-home-link:hover > .interest-home-visual::before,
html body .site-header .interest-home-link:hover > .interest-home-visual::after,
html body .site-header .interest-home-link:focus-visible > .interest-home-visual::before,
html body .site-header .interest-home-link:focus-visible > .interest-home-visual::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    filter: none !important;
    box-shadow: none !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header .interest-home-link__house,
html body .site-header .interest-home-link:hover .interest-home-link__house,
html body .site-header .interest-home-link__house,
html body .site-header .interest-home-link__house,
html body .site-header .interest-home-link__house {
    transform: translateX(-50%) !important;
    scale: 1 !important;
    filter: none !important;
    box-shadow: none !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header .interest-home-link__pets,
html body .site-header .interest-home-link:hover .interest-home-link__pets,
html body .site-header .interest-home-link:focus .interest-home-link__pets,
html body .site-header .interest-home-link__pets,
html body .site-header .interest-home-link__pets,
html body .site-header .interest-home-pet,
html body .site-header .interest-home-link:hover .interest-home-pet,
html body .site-header .interest-home-link:focus .interest-home-pet,
html body .site-header .interest-home-link:focus-visible .interest-home-pet,
html body .site-header .interest-home-link:active .interest-home-pet {
    transform: none !important;
    scale: 1 !important;
    filter: none !important;
    box-shadow: none !important;
    animation: none !important;
    transition: none !important;
}

/* END no house cats hover */

/* START locked house cats position */
html body .site-header a.interest-home-link,
html body .site-header a.interest-home-link:hover,
html body .site-header a.interest-home-link:focus,
html body .site-header a.interest-home-link:focus-visible,
html body .site-header a.interest-home-link:active {
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    filter: none !important;
    box-shadow: none !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header a.interest-home-link > .interest-home-visual,
html body .site-header a.interest-home-link:hover > .interest-home-visual,
html body .site-header a.interest-home-link:focus > .interest-home-visual,
html body .site-header a.interest-home-link:focus-visible > .interest-home-visual,
html body .site-header a.interest-home-link:active > .interest-home-visual {
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    filter: none !important;
    box-shadow: none !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header a.interest-home-link .interest-home-link__house,
html body .site-header a.interest-home-link:hover .interest-home-link__house,
html body .site-header a.interest-home-link:focus .interest-home-link__house,
html body .site-header a.interest-home-link:focus-visible .interest-home-link__house,
html body .site-header a.interest-home-link:active .interest-home-link__house {
    transform: translateX(-50%) !important;
    translate: 0 -19px !important;
    scale: 1 !important;
    filter: none !important;
    box-shadow: none !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header a.interest-home-link .interest-home-link__pets,
html body .site-header a.interest-home-link:hover .interest-home-link__pets,
html body .site-header a.interest-home-link:focus .interest-home-link__pets,
html body .site-header a.interest-home-link:focus-visible .interest-home-link__pets,
html body .site-header a.interest-home-link:active .interest-home-link__pets {
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    filter: none !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header a.interest-home-link .interest-home-pet,
html body .site-header a.interest-home-link:hover .interest-home-pet,
html body .site-header a.interest-home-link:focus .interest-home-pet,
html body .site-header a.interest-home-link:focus-visible .interest-home-pet,
html body .site-header a.interest-home-link:active .interest-home-pet {
    transform: none !important;
    translate: 0 -1px !important;
    scale: 1 !important;
    filter: none !important;
    box-shadow: none !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header a.interest-home-link > .interest-home-visual::before,
html body .site-header a.interest-home-link > .interest-home-visual::after,
html body .site-header a.interest-home-link:hover > .interest-home-visual::before,
html body .site-header a.interest-home-link:hover > .interest-home-visual::after,
html body .site-header a.interest-home-link:focus-visible > .interest-home-visual::before,
html body .site-header a.interest-home-link:focus-visible > .interest-home-visual::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    animation: none !important;
    transition: none !important;
}
/* END locked house cats position */

/* START locked My home label */
html body .site-header a.interest-home-link .interest-home-link__label,
html body .site-header a.interest-home-link:hover .interest-home-link__label,
html body .site-header a.interest-home-link:focus .interest-home-link__label,
html body .site-header a.interest-home-link:focus-visible .interest-home-link__label,
html body .site-header a.interest-home-link:active .interest-home-link__label {
    position: relative !important;
    top: -47px !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    margin: 0 !important;
    font-size: 1.13em !important;
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    animation: none !important;
    transition: none !important;
}
/* END locked My home label */

/* START cat number 2 permanently left */
html body .site-header a.interest-home-link .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:hover .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:focus .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:focus-visible .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:active .interest-home-pet[data-interest-rank="2"] {
    translate: -7px -1px !important;
    transform: none !important;
    scale: 1 !important;
    animation: none !important;
    transition: none !important;
}
/* END cat number 2 permanently left */

/* START final home group positions */
html body .site-header a.interest-home-link .interest-home-link__house,
html body .site-header a.interest-home-link:hover .interest-home-link__house,
html body .site-header a.interest-home-link:focus .interest-home-link__house,
html body .site-header a.interest-home-link:focus-visible .interest-home-link__house,
html body .site-header a.interest-home-link:active .interest-home-link__house {
    transform: translateX(-50%) !important;
    translate: 0 -24px !important;
    scale: 1 !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header a.interest-home-link .interest-home-pet,
html body .site-header a.interest-home-link:hover .interest-home-pet,
html body .site-header a.interest-home-link:focus .interest-home-pet,
html body .site-header a.interest-home-link:focus-visible .interest-home-pet,
html body .site-header a.interest-home-link:active .interest-home-pet {
    transform: none !important;
    translate: 0 -6px !important;
    scale: 1 !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header a.interest-home-link .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:hover .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:focus .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:focus-visible .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:active .interest-home-pet[data-interest-rank="2"] {
    translate: -7px -6px !important;
}

html body .site-header a.interest-home-link .interest-home-link__label,
html body .site-header a.interest-home-link:hover .interest-home-link__label,
html body .site-header a.interest-home-link:focus .interest-home-link__label,
html body .site-header a.interest-home-link:focus-visible .interest-home-link__label,
html body .site-header a.interest-home-link:active .interest-home-link__label {
    position: relative !important;
    top: -52px !important;
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header a.interest-home-link .interest-home-link__count,
html body .site-header a.interest-home-link:hover .interest-home-link__count,
html body .site-header a.interest-home-link:focus .interest-home-link__count,
html body .site-header a.interest-home-link:focus-visible .interest-home-link__count,
html body .site-header a.interest-home-link:active .interest-home-link__count {
    position: absolute !important;
    top: 8px !important;
    right: 27px !important;
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    animation: none !important;
    transition: none !important;
}
/* END final home group positions */

/* START cat pointer dodge */
html body .site-header a.interest-home-link .interest-home-pet,
html body .site-header a.interest-home-link:hover .interest-home-pet,
html body .site-header a.interest-home-link:focus .interest-home-pet,
html body .site-header a.interest-home-link:focus-visible .interest-home-pet,
html body .site-header a.interest-home-link:active .interest-home-pet {
    transform:
        translate3d(
            var(--cat-dodge-x, 0px),
            var(--cat-dodge-y, 0px),
            0
        )
        !important;
    transition: transform 90ms cubic-bezier(0.2, 0.8, 0.2, 1) !important;
    will-change: transform !important;
    pointer-events: none !important;
}
/* END cat pointer dodge */

/* START cat number 2 pointer dodge fix */
html body .site-header a.interest-home-link .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:hover .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:focus .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:focus-visible .interest-home-pet[data-interest-rank="2"],
html body .site-header a.interest-home-link:active .interest-home-pet[data-interest-rank="2"] {
    translate: -7px -6px !important;
    transform:
        translate3d(
            var(--cat-dodge-x, 0px),
            var(--cat-dodge-y, 0px),
            0
        )
        !important;
    scale: 1 !important;
    transition:
        transform 90ms cubic-bezier(0.2, 0.8, 0.2, 1)
        !important;
    will-change: transform !important;
    pointer-events: none !important;
}
/* END cat number 2 pointer dodge fix */

/* START thin house hover aura */
.interest-home-link .interest-home-link__house,
.interest-home-link .interest-home-link__house--illustrated {
    transition: filter 180ms ease !important;
    transform: none !important;
}

.interest-home-link:hover .interest-home-link__house,
.interest-home-link:hover .interest-home-link__house--illustrated,
.interest-home-link:focus .interest-home-link__house,
.interest-home-link:focus .interest-home-link__house--illustrated,
.interest-home-link:focus-visible .interest-home-link__house,
.interest-home-link:focus-visible .interest-home-link__house--illustrated {
    filter:
        drop-shadow(0 0 2px rgba(255, 248, 210, 0.95))
        drop-shadow(0 0 5px rgba(234, 184, 13, 0.55))
        !important;
    transform: none !important;
}

.interest-home-link:hover .interest-home-link__pets,
.interest-home-link:hover .interest-home-link__label,
.interest-home-link:hover .interest-home-link__count,
.interest-home-link:focus .interest-home-link__pets,
.interest-home-link:focus .interest-home-link__label,
.interest-home-link:focus .interest-home-link__count,
.interest-home-link:focus-visible .interest-home-link__pets,
.interest-home-link:focus-visible .interest-home-link__label,
.interest-home-link:focus-visible .interest-home-link__count {
    transform: none !important;
    filter: none !important;
}
/* END thin house hover aura */

/* START visible house and My home aura */
html body .site-header a.interest-home-link .interest-home-link__house {
    filter: none !important;
    transition: filter 220ms ease !important;
}

html body .site-header a.interest-home-link:hover .interest-home-link__house,
html body .site-header a.interest-home-link:focus-visible .interest-home-link__house {
    filter:
        drop-shadow(0 0 3px rgba(255, 255, 240, 1))
        drop-shadow(0 0 8px rgba(255, 236, 160, 0.98))
        drop-shadow(0 0 14px rgba(255, 214, 92, 0.92))
        drop-shadow(0 0 22px rgba(232, 178, 44, 0.75))
        !important;
}

html body .site-header a.interest-home-link .interest-home-link__label {
    transition: text-shadow 220ms ease !important;
}

html body .site-header a.interest-home-link:hover .interest-home-link__label,
html body .site-header a.interest-home-link:focus-visible .interest-home-link__label {
    text-shadow:
        0 0 3px rgba(255, 255, 240, 1),
        0 0 8px rgba(255, 236, 160, 0.98),
        0 0 14px rgba(255, 214, 92, 0.92),
        0 0 22px rgba(232, 178, 44, 0.75),
        0 1px 2px rgba(67, 42, 7, 0.82)
        !important;
}
/* END visible house and My home aura */

/* START available cats framed gallery */
.available-showcase {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: clamp(70px, 8vw, 112px) clamp(18px, 3vw, 48px) clamp(76px, 8vw, 118px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #ebd9b2 !important;
    box-shadow: none !important;
    color: #214f97 !important;
}

.available-showcase,
.available-showcase * {
    color: #214f97;
}

.available-showcase__heading {
    width: min(1100px, 100%) !important;
    margin: 0 auto clamp(48px, 6vw, 78px) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}

.available-showcase__eyebrow {
    margin: 0 0 14px !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(0.82rem, 1.15vw, 1rem) !important;
    font-weight: 600 !important;
    letter-spacing: 0.22em !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
}

.available-showcase__title.featured-showcase__hero-title {
    margin: 0 !important;
    color: #214f97 !important;
    font-size: clamp(2.6rem, 6vw, 4.9rem) !important;
    text-align: center !important;
    transform: scaleX(0.56) scaleY(1.30) !important;
    transform-origin: center center !important;
}

.available-showcase__view-all {
    margin-top: 22px !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 0.92rem !important;
    font-style: italic !important;
    font-weight: 700 !important;
    text-underline-offset: 5px !important;
}

.available-showcase__grid {
    width: min(1500px, 100%) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(240px, 1fr)) !important;
    gap: clamp(52px, 5vw, 82px) clamp(22px, 3vw, 48px) !important;
    align-items: start !important;
}

.available-showcase__card,
.available-showcase__card:hover {
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

.available-showcase__link,
.available-showcase__link:hover,
.available-showcase__link:focus {
    display: block !important;
    color: #214f97 !important;
    text-align: center !important;
    text-decoration: none !important;
}

.available-showcase__link:focus-visible {
    outline: 3px solid rgba(33, 79, 151, 0.65) !important;
    outline-offset: 8px !important;
    border-radius: 8px !important;
}

.available-showcase__portrait-shell {
    width: min(100%, 310px) !important;
    margin: 0 auto !important;
    padding-top: 54px !important;
    position: relative !important;
    overflow: visible !important;
}

.available-showcase__status {
    position: absolute !important;
    z-index: 5 !important;
    top: 0 !important;
    left: 50% !important;
    width: 112% !important;
    height: 92px !important;
    overflow: visible !important;
    transform: translateX(-50%) !important;
    pointer-events: none !important;
}

.available-showcase__status text {
    fill: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 20px !important;
    font-style: italic !important;
    font-weight: 500 !important;
    letter-spacing: 0.015em !important;
}

.available-showcase__portrait {
    width: 100% !important;
    aspect-ratio: 589 / 601 !important;
    position: relative !important;
    isolation: isolate !important;
    overflow: visible !important;
}

.available-showcase__photo {
    position: absolute !important;
    z-index: 1 !important;
    top: 16.2% !important;
    left: 16.8% !important;
    width: 66.4% !important;
    height: 67.6% !important;
    overflow: hidden !important;
    background: #f5ead0 !important;
}

.available-showcase__photo img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
}

.available-showcase__frame {
    position: absolute !important;
    z-index: 2 !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: contain !important;
    pointer-events: none !important;
}

.available-showcase__placeholder {
    width: 100% !important;
    height: 100% !important;
    display: grid !important;
    place-items: center !important;
    padding: 18px !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 0.95rem !important;
    font-style: italic !important;
    text-align: center !important;
}

.available-showcase__details.featured-showcase__details {
    width: min(100%, 320px) !important;
    max-width: 320px !important;
    margin: 16px auto 0 !important;
    position: relative !important;
    top: auto !important;
    transform: none !important;
    text-align: center !important;
}

.available-showcase__details h3,
.available-showcase__details .featured-showcase__facts,
.available-showcase__details .featured-showcase__breed {
    color: #214f97 !important;
}

.available-showcase__summary {
    margin: 14px auto 0 !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 1.24rem !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

.available-showcase__temperament {
    margin: 14px auto 0 !important;
    color: #214f97 !important;
    font-family: "Trebuchet MS", Arial, sans-serif !important;
    font-size: 0.92rem !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    text-align: center !important;
}

.available-showcase__temperament span {
    font-weight: 800 !important;
}

.available-showcase .interest-action,
.available-showcase .interest-action-form {
    margin-top: 16px !important;
    display: flex !important;
    justify-content: center !important;
}

@media (max-width: 1180px) {
    .available-showcase__grid {
        grid-template-columns: repeat(3, minmax(230px, 1fr)) !important;
    }
}

@media (max-width: 860px) {
    .available-showcase__grid {
        grid-template-columns: repeat(2, minmax(220px, 1fr)) !important;
    }
}

@media (max-width: 560px) {
    .available-showcase {
        padding-right: 14px !important;
        padding-left: 14px !important;
    }

    .available-showcase__grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 58px !important;
    }

    .available-showcase__portrait-shell {
        width: min(100%, 300px) !important;
    }

    .available-showcase__title.featured-showcase__hero-title {
        font-size: clamp(2.15rem, 15vw, 3.45rem) !important;
    }
}
/* END available cats framed gallery */

/* START homepage available plus minus controls */
.available-showcase__title {
    display: none !important;
}

.available-showcase__heading {
    display: grid !important;
    justify-items: center !important;
    text-align: center !important;
}

.available-showcase__interest {
    margin-top: 14px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.available-showcase__interest form {
    margin: 0 !important;
}

.available-showcase__interest-button {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border: 2px solid #214f97 !important;
    border-radius: 50% !important;
    background: #f7e9bf !important;
    color: #214f97 !important;
    box-shadow:
        0 0 0 2px rgba(255, 250, 231, 0.92),
        0 3px 9px rgba(33, 79, 151, 0.18)
        !important;
    cursor: pointer !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 2rem !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    text-align: center !important;
    transition:
        transform 160ms ease,
        box-shadow 160ms ease,
        background 160ms ease
        !important;
}

.available-showcase__interest-button span {
    display: block !important;
    line-height: 0.86 !important;
    transform: translateY(-1px) !important;
}

.available-showcase__interest-button--selected {
    background: #214f97 !important;
    color: #fff7dc !important;
}

.available-showcase__interest-button:hover,
.available-showcase__interest-button:focus-visible {
    transform: scale(1.06) !important;
    box-shadow:
        0 0 0 2px rgba(255, 250, 231, 1),
        0 0 9px rgba(239, 191, 55, 0.68),
        0 4px 11px rgba(33, 79, 151, 0.22)
        !important;
}

.available-showcase__interest-button:focus-visible {
    outline: 3px solid rgba(33, 79, 151, 0.38) !important;
    outline-offset: 3px !important;
}

.available-showcase__temperament span {
    display: none !important;
}
/* END homepage available plus minus controls */


/* START available gallery requested refinements */
.available-showcase__heading {
    position: relative !important;
    width: min(1452px, calc(100% - 24px)) !important;
    margin: 0 auto 28px !important;
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    align-items: center !important;
    gap: 18px !important;
    text-align: center !important;
}

.available-showcase__heading
.available-showcase__eyebrow.featured-showcase__hero-title {
    grid-column: 2 !important;
    justify-self: center !important;
    margin: 0 !important;
}

.available-showcase__view-all {
    grid-column: 3 !important;
    justify-self: end !important;
    align-self: center !important;
    margin: 0 !important;
    color: #214f97 !important;
    font-weight: 800 !important;
    text-align: right !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
}

.available-showcase__card {
    position: relative !important;
    overflow: visible !important;
}

.available-showcase__interest {
    position: absolute !important;
    z-index: 50 !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.available-showcase__interest form {
    margin: 0 !important;
    padding: 0 !important;
}

.available-showcase__interest-button {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border: 2px solid #214f97 !important;
    border-radius: 50% !important;
    background: #fff7dc !important;
    color: #214f97 !important;
    box-shadow:
        0 0 0 2px rgba(255, 250, 231, 0.96),
        0 4px 11px rgba(33, 79, 151, 0.24)
        !important;
    cursor: pointer !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 2.05rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: center !important;
}

.available-showcase__interest-button span {
    width: 100% !important;
    height: 100% !important;
    display: grid !important;
    place-items: center !important;
    color: inherit !important;
    font: inherit !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    transform: translateY(-1px) !important;
}

.available-showcase__interest-button--selected {
    border-color: #214f97 !important;
    background: #214f97 !important;
    color: #ffffff !important;
}

.available-showcase__interest-button--selected span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    text-shadow:
        0 0 1px #ffffff,
        0 0 3px rgba(255, 255, 255, 0.94)
        !important;
}

.available-showcase__interest-button:hover,
.available-showcase__interest-button:focus-visible {
    transform: scale(1.06) !important;
    box-shadow:
        0 0 0 2px rgba(255, 250, 231, 1),
        0 0 10px rgba(239, 191, 55, 0.72),
        0 5px 12px rgba(33, 79, 151, 0.26)
        !important;
}

.available-showcase__summary {
    color: #214f97 !important;
    font-weight: 400 !important;
}

.available-showcase__summary strong,
.available-showcase__summary b {
    font-weight: 400 !important;
}

@media (max-width: 760px) {
    .available-showcase__heading {
        grid-template-columns: 1fr auto !important;
    }

    .available-showcase__heading
    .available-showcase__eyebrow.featured-showcase__hero-title {
        grid-column: 1 / -1 !important;
    }

    .available-showcase__view-all {
        grid-column: 2 !important;
        justify-self: end !important;
    }
}
/* END available gallery requested refinements */


/* START smaller available profile summary */
html body .available-showcase .available-showcase__summary {
    font-size: 0.86rem !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
}
/* END smaller available profile summary */

/* START ready heading matches featured cats */
html body .available-showcase .available-showcase__heading
.available-showcase__eyebrow.featured-showcase__hero-title {
    width: max-content !important;
    max-width: none !important;
    margin: 0 !important;
    display: inline-block !important;
    color: #214f97 !important;
    font-family:
        "Bodoni 72",
        Didot,
        "Bodoni MT",
        "Times New Roman",
        serif
        !important;
    font-size: clamp(4rem, 7vw, 6.75rem) !important;
    font-style: normal !important;
    font-weight: 300 !important;
    line-height: 0.95 !important;
    letter-spacing: 0.02em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    transform: scaleX(0.56) scaleY(1.42) !important;
    transform-origin: center center !important;
    text-shadow:
        0 0 4px rgba(255, 255, 250, 1),
        0 0 12px rgba(255, 252, 239, 1),
        0 0 26px rgba(252, 243, 220, 1),
        0 0 46px rgba(247, 232, 198, 0.98),
        0 0 70px rgba(239, 217, 174, 0.90),
        0 0 98px rgba(229, 198, 142, 0.74),
        0 0 130px rgba(214, 177, 111, 0.52)
        !important;
}

@media (max-width: 700px) {
    html body .available-showcase .available-showcase__heading
    .available-showcase__eyebrow.featured-showcase__hero-title {
        font-size: clamp(4rem, 7vw, 6.75rem) !important;
        font-weight: 300 !important;
        line-height: 0.95 !important;
        letter-spacing: 0.02em !important;
        white-space: nowrap !important;
        transform: scaleX(0.56) scaleY(1.42) !important;
    }
}
/* END ready heading matches featured cats */

/* START ready pet text matches featured cats */
html body .available-showcase .available-showcase__details {
    color: #214f97 !important;
    text-align: center !important;
}

/* Curved availability text matches the Featured Cats headline. */
html body .available-showcase .available-showcase__status text,
html body .available-showcase .available-showcase__status textPath {
    fill: #214f97 !important;
    color: #214f97 !important;
    font-family:
        "Bodoni 72",
        Didot,
        "Bodoni MT",
        "Times New Roman",
        serif
        !important;
    font-size: 1.24rem !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.18 !important;
    letter-spacing: 0.05em !important;
    text-shadow:
        0 0 4px rgba(255, 255, 250, 1),
        0 0 12px rgba(255, 252, 239, 1),
        0 0 26px rgba(252, 243, 220, 0.96)
        !important;
}

/* Pet name matches the Featured Cats name. */
html body .available-showcase .available-showcase__details h3 {
    margin: 0 0 3px !important;
    display: inline-block !important;
    color: #214f97 !important;
    font-family:
        "Bodoni 72",
        Didot,
        "Bodoni MT",
        "Times New Roman",
        serif
        !important;
    font-size: clamp(1.58rem, 1.75vw, 2rem) !important;
    font-style: normal !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    letter-spacing: 0.025em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    transform: scaleX(0.82) scaleY(1.10) !important;
    transform-origin: center center !important;
    text-shadow:
        0 0 4px rgba(255, 255, 250, 1),
        0 0 12px rgba(255, 252, 239, 1),
        0 0 26px rgba(252, 243, 220, 1),
        0 0 46px rgba(247, 232, 198, 0.98),
        0 0 70px rgba(239, 217, 174, 0.90),
        0 0 98px rgba(229, 198, 142, 0.74),
        0 0 130px rgba(214, 177, 111, 0.52)
        !important;
}

/* Sex, age, and breed match the Featured Cats facts. */
html body .available-showcase .available-showcase__details
.featured-showcase__facts,
html body .available-showcase .available-showcase__details
.featured-showcase__breed {
    margin-top: 0 !important;
    display: inline-block !important;
    color: #214f97 !important;
    font-family:
        "Bodoni 72",
        Didot,
        "Bodoni MT",
        "Times New Roman",
        serif
        !important;
    font-size: 0.76rem !important;
    font-style: normal !important;
    font-weight: 300 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.065em !important;
    text-align: center !important;
    transform: scaleX(0.90) scaleY(1.05) !important;
    transform-origin: center center !important;
    text-shadow:
        0 0 4px rgba(255, 255, 250, 1),
        0 0 12px rgba(255, 252, 239, 1),
        0 0 26px rgba(252, 243, 220, 1),
        0 0 46px rgba(247, 232, 198, 0.92)
        !important;
}

html body .available-showcase .available-showcase__details
.featured-showcase__facts {
    margin-bottom: 2px !important;
}

html body .available-showcase .available-showcase__details
.featured-showcase__facts span {
    padding-inline: 8px !important;
}

html body .available-showcase .available-showcase__details
.featured-showcase__breed {
    max-width: 16ch !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

/* Profile summary uses the headline font but stays smaller and non-bold. */
html body .available-showcase .available-showcase__summary {
    margin: 10px auto 0 !important;
    color: #214f97 !important;
    font-family:
        "Bodoni 72",
        Didot,
        "Bodoni MT",
        "Times New Roman",
        serif
        !important;
    font-size: 0.82rem !important;
    font-style: italic !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    letter-spacing: 0.03em !important;
    text-align: center !important;
    text-shadow:
        0 0 3px rgba(255, 255, 250, 0.96),
        0 0 10px rgba(255, 252, 239, 0.90)
        !important;
}

/* Temperament keeps its separate, simpler font. */
html body .available-showcase .available-showcase__temperament {
    margin: 8px auto 0 !important;
    color: #214f97 !important;
    font-family: "Trebuchet MS", Arial, sans-serif !important;
    font-size: 0.92rem !important;
    font-style: normal !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    text-align: center !important;
}
/* END ready pet text matches featured cats */

/* START straight available status and eight-cat gallery */
html body .available-showcase .available-showcase__portrait-shell {
    padding-top: 48px !important;
}

html body .available-showcase .available-showcase__status {
    position: absolute !important;
    z-index: 8 !important;
    top: 8px !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    width: max-content !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    overflow: visible !important;
    color: #214f97 !important;
    fill: #214f97 !important;
    font-family:
        "Bodoni 72",
        Didot,
        "Bodoni MT",
        "Times New Roman",
        serif
        !important;
    font-size: 1.24rem !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.18 !important;
    letter-spacing: 0.05em !important;
    text-align: center !important;
    white-space: nowrap !important;
    transform: translateX(-50%) !important;
    pointer-events: none !important;
    text-shadow:
        0 0 4px rgba(255, 255, 250, 1),
        0 0 12px rgba(255, 252, 239, 1),
        0 0 26px rgba(252, 243, 220, 0.96)
        !important;
}

html body .available-showcase .available-showcase__grid {
    grid-template-columns:
        repeat(4, minmax(240px, 1fr))
        !important;
}

@media (max-width: 1180px) {
    html body .available-showcase .available-showcase__grid {
        grid-template-columns:
            repeat(3, minmax(230px, 1fr))
            !important;
    }
}

@media (max-width: 860px) {
    html body .available-showcase .available-showcase__grid {
        grid-template-columns:
            repeat(2, minmax(220px, 1fr))
            !important;
    }
}

@media (max-width: 560px) {
    html body .available-showcase .available-showcase__grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    html body .available-showcase .available-showcase__status {
        font-size: 1.05rem !important;
    }
}
/* END straight available status and eight-cat gallery */

/* START straight available status and eight-cat gallery */
html body .available-showcase .available-showcase__portrait-shell {
    padding-top: 48px !important;
}

html body .available-showcase .available-showcase__status {
    position: absolute !important;
    z-index: 8 !important;
    top: 8px !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    width: max-content !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    overflow: visible !important;
    color: #214f97 !important;
    fill: #214f97 !important;
    font-family:
        "Bodoni 72",
        Didot,
        "Bodoni MT",
        "Times New Roman",
        serif
        !important;
    font-size: 1.24rem !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.18 !important;
    letter-spacing: 0.05em !important;
    text-align: center !important;
    white-space: nowrap !important;
    transform: translateX(-50%) !important;
    pointer-events: none !important;
    text-shadow:
        0 0 4px rgba(255, 255, 250, 1),
        0 0 12px rgba(255, 252, 239, 1),
        0 0 26px rgba(252, 243, 220, 0.96)
        !important;
}

html body .available-showcase .available-showcase__grid {
    grid-template-columns:
        repeat(4, minmax(240px, 1fr))
        !important;
}

@media (max-width: 1180px) {
    html body .available-showcase .available-showcase__grid {
        grid-template-columns:
            repeat(3, minmax(230px, 1fr))
            !important;
    }
}

@media (max-width: 860px) {
    html body .available-showcase .available-showcase__grid {
        grid-template-columns:
            repeat(2, minmax(220px, 1fr))
            !important;
    }
}

@media (max-width: 560px) {
    html body .available-showcase .available-showcase__grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    html body .available-showcase .available-showcase__status {
        font-size: 1.05rem !important;
    }
}
/* END straight available status and eight-cat gallery */

/* START smaller shifted available interest controls */
html body .available-showcase .available-showcase__interest-button {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    font-size: 1.55rem !important;
    border-width: 2px !important;
}

html body .available-showcase .available-showcase__interest-button span {
    transform: translateY(-1px) !important;
}
/* END smaller shifted available interest controls */

/* START available frame aura and hover media */
html body .available-showcase .available-showcase__photo {
    isolation: isolate !important;
}

html body .available-showcase
.available-showcase__media-image,
html body .available-showcase
.available-showcase__video {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
    opacity: 0 !important;
    transform: none !important;
    transition: opacity 420ms ease !important;
}

html body .available-showcase
.available-showcase__media-image.is-active {
    opacity: 1 !important;
}

html body .available-showcase
.available-showcase__video {
    z-index: 4 !important;
    pointer-events: none !important;
}

html body .available-showcase
.available-showcase__portrait.is-video-playing
.available-showcase__video {
    opacity: 1 !important;
}

html body .available-showcase
.available-showcase__portrait.is-video-playing
.available-showcase__media-image {
    opacity: 0 !important;
}

html body .available-showcase
.available-showcase__frame {
    transition:
        filter 280ms ease,
        transform 280ms ease
        !important;
    will-change: filter !important;
}

html body .available-showcase
.available-showcase__portrait:hover
.available-showcase__frame,
html body .available-showcase
.available-showcase__portrait.is-hover-media
.available-showcase__frame,
html body .available-showcase
.available-showcase__link:focus-visible
.available-showcase__frame {
    filter:
        drop-shadow(0 0 4px rgba(255, 255, 245, 1))
        drop-shadow(0 0 10px rgba(255, 239, 166, 1))
        drop-shadow(0 0 18px rgba(241, 195, 67, 0.96))
        drop-shadow(0 0 28px rgba(33, 79, 151, 0.72))
        !important;
}
/* END available frame aura and hover media */

/* START main ready heading up ten pixels */
html body .available-showcase .available-showcase__heading
.available-showcase__eyebrow.featured-showcase__hero-title {
    position: relative !important;
    top: -60px !important;
}
/* END main ready heading up ten pixels */

/* START replicated homepage cat galleries */
html body .available-showcase--foster,
html body .available-showcase--rehoming,
html body .available-showcase--longest {
    margin-top: clamp(120px, 14vw, 210px) !important;
}

html body .available-showcase--foster
.available-showcase__eyebrow,
html body .available-showcase--rehoming
.available-showcase__eyebrow,
html body .available-showcase--longest
.available-showcase__eyebrow {
    white-space: nowrap !important;
}

html body .available-showcase--foster
.available-showcase__status,
html body .available-showcase--rehoming
.available-showcase__status {
    width: 94% !important;
    max-width: 94% !important;
    white-space: normal !important;
    text-wrap: balance !important;
}

html body .available-showcase--longest
.available-showcase__status {
    width: 96% !important;
    max-width: 96% !important;
    font-size: clamp(0.78rem, 1.25vw, 1.05rem) !important;
    line-height: 1.18 !important;
    white-space: normal !important;
    text-wrap: balance !important;
}

@media (max-width: 760px) {
    html body .available-showcase--foster,
    html body .available-showcase--rehoming,
    html body .available-showcase--longest {
        margin-top: 130px !important;
    }

    html body .available-showcase--foster
    .available-showcase__eyebrow,
    html body .available-showcase--rehoming
    .available-showcase__eyebrow,
    html body .available-showcase--longest
    .available-showcase__eyebrow {
        font-size: clamp(2.8rem, 12vw, 4.5rem) !important;
    }
}
/* END replicated homepage cat galleries */

/* START exact edge gold section lines */
html body .available-showcase--ready,
html body .available-showcase--foster,
html body .available-showcase--rehoming,
html body .available-showcase--longest {
    position: relative !important;
    overflow: visible !important;
}

html body .available-showcase--ready::before,
html body .available-showcase--foster::before,
html body .available-showcase--rehoming::before,
html body .available-showcase--longest::before,
html body .available-showcase--ready::after,
html body .available-showcase--foster::after,
html body .available-showcase--rehoming::after,
html body .available-showcase--longest::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    width: 100vw !important;
    height: 3px !important;
    margin: 0 !important;
    display: block !important;
    transform: translateX(-50%) !important;
    pointer-events: none !important;
    z-index: 10 !important;
    background:
        linear-gradient(
            90deg,
            #b77a09 0%,
            #e0ad31 18%,
            #ffe89a 50%,
            #e0ad31 82%,
            #b77a09 100%
        )
        !important;
    box-shadow:
        0 0 4px rgba(255, 244, 190, 1),
        0 0 10px rgba(232, 189, 72, 0.8),
        0 0 18px rgba(190, 137, 20, 0.45)
        !important;
}

html body .available-showcase--ready::before,
html body .available-showcase--foster::before,
html body .available-showcase--rehoming::before,
html body .available-showcase--longest::before {
    top: 0 !important;
    bottom: auto !important;
}

html body .available-showcase--ready::after,
html body .available-showcase--foster::after,
html body .available-showcase--rehoming::after,
html body .available-showcase--longest::after {
    top: auto !important;
    bottom: 0 !important;
}
/* END exact edge gold section lines */

/* START centered independent gallery titles */
html body .available-showcase .available-showcase__heading {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: clamp(90px, 10vw, 145px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

html body .available-showcase
.available-showcase__eyebrow.featured-showcase__hero-title {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    transform-origin: center center !important;
    white-space: nowrap !important;
}

html body .available-showcase .available-showcase__view-all {
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;
    left: auto !important;
    width: auto !important;
    min-width: max-content !important;
    margin: 0 !important;
    transform: translateY(-50%) !important;
    text-align: right !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    z-index: 5 !important;
}

@media (max-width: 760px) {
    html body .available-showcase .available-showcase__heading {
        min-height: 130px !important;
        padding-bottom: 38px !important;
    }

    html body .available-showcase .available-showcase__view-all {
        top: auto !important;
        right: 0 !important;
        bottom: 0 !important;
        transform: none !important;
        font-size: 0.9rem !important;
    }
}
/* END centered independent gallery titles */

/* START contained social links */
html body .social-location-host--header {
    position: relative !important;
}

html body .social-location--header {
    position: absolute !important;
    top: 14px !important;
    left: 14px !important;
    right: auto !important;
    bottom: auto !important;
    z-index: 20 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    width: max-content !important;
}

html body .social-location-host--footer {
    position: relative !important;
}

html body .social-location--footer {
    position: static !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    width: fit-content !important;
    max-width: calc(100% - 28px) !important;
    margin:
        24px 14px 14px
        auto
        !important;
}

html body .social-location__link {
    display: block !important;
    box-sizing: border-box !important;
    min-width: 126px !important;
    padding: 10px 17px !important;
    border: 1px solid rgba(184, 126, 15, 0.88) !important;
    border-radius: 999px !important;
    background: rgba(235, 217, 178, 0.96) !important;
    box-shadow:
        0 0 4px rgba(255, 248, 211, 1),
        0 0 10px rgba(224, 173, 49, 0.48)
        !important;
    color: #214f97 !important;
    font-family:
        "Trebuchet MS",
        Arial,
        sans-serif
        !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.03em !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition:
        transform 160ms ease,
        background-color 160ms ease,
        box-shadow 160ms ease
        !important;
}

html body .social-location__link:hover,
html body .social-location__link:focus-visible {
    background: #fff4cd !important;
    box-shadow:
        0 0 5px rgba(255, 255, 235, 1),
        0 0 13px rgba(232, 189, 72, 0.92),
        0 0 20px rgba(33, 79, 151, 0.38)
        !important;
    transform: scale(1.06) !important;
    outline: none !important;
}

@media (max-width: 760px) {
    html body .social-location--header {
        top: 8px !important;
        left: 8px !important;
        gap: 4px !important;
    }

    html body .social-location--footer {
        justify-content: center !important;
        width: auto !important;
        max-width: none !important;
        margin:
            24px 8px 12px
            !important;
    }

    html body .social-location__link {
        min-width: 100px !important;
        padding: 8px 12px !important;
        font-size: 0.76rem !important;
    }
}
/* END contained social links */

/* START final clean header navigation */

/* ==========================================================
   HEADER STRUCTURE
   ========================================================== */

html body .site-header {
    position: relative !important;
    z-index: 100 !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
}

html body .site-header__inner {
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 14px 210px 22px !important;
    overflow: visible !important;
}

/* Keep the rescue title centered independently. */
html body .site-header .site-name {
    position: relative !important;
    inset: auto !important;
    z-index: 10 !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: 920px !important;
    margin: 0 auto 2px !important;
    padding: 0 !important;
    text-align: center !important;
    transform: none !important;
}


/* ==========================================================
   FLOWER NAVIGATION
   ========================================================== */

/*
The navigation stays in normal document flow beneath the title,
so the following homepage section cannot cover the flowers.
*/
html body .site-header .sun-navigation {
    position: relative !important;
    inset: auto !important;
    z-index: 20 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    float: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 1050px !important;
    min-height: 142px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: 2px 10px !important;
    overflow: visible !important;
    transform: none !important;
}

/* Remove old movement, glow, scaling, and hover effects. */
html body .site-header .sun-nav-link {
    position: relative !important;
    inset: auto !important;
    z-index: 21 !important;
    flex: 0 0 142px !important;
    display: block !important;
    width: 142px !important;
    height: 142px !important;
    min-width: 142px !important;
    min-height: 142px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
    overflow: visible !important;
    text-decoration: none !important;
    transform: none !important;
    transition: none !important;
}

html body .site-header .sun-nav-link:hover,
html body .site-header .sun-nav-link:focus,
html body .site-header .sun-nav-link:focus-visible,
html body .site-header .sun-nav-link:active {
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
    outline: none !important;
    transform: none !important;
}

/*
The flower image is the only rotating element.
The words remain still in the center.
*/
html body .site-header .sun-nav-link__flower {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1 !important;
    display: block !important;
    width: 142px !important;
    height: 142px !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    opacity: 1 !important;
    filter: none !important;
    pointer-events: none !important;
    transform-origin: 50% 50% !important;
    animation:
        jeannie-clean-slow-flower-rotation
        32s linear infinite
        !important;
    transition: none !important;
}

/* Force every navigation word back inside its flower. */
html body .site-header .sun-nav-link__label,
html body .site-header
.sun-nav-link__label--small {
    position: absolute !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 0 2px !important;
    color: #214f97 !important;
    font-family:
        "Trebuchet MS",
        Arial,
        sans-serif
        !important;
    font-size: 0.76rem !important;
    font-weight: 900 !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-shadow:
        0 0 3px #fff9dc,
        0 0 7px #fff9dc,
        0 0 11px rgba(255, 244, 194, 0.96)
        !important;
    white-space: normal !important;
    overflow: visible !important;
    pointer-events: none !important;
    transform: translate(-50%, -50%) !important;
    animation: none !important;
    transition: none !important;
}

html body .site-header
.sun-nav-link__label--small {
    font-size: 0.67rem !important;
}

@keyframes jeannie-clean-slow-flower-rotation {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* ==========================================================
   MY HOME AND ACCOUNT CONTROLS
   ========================================================== */

html body .site-header__utility {
    position: absolute !important;
    top: 8px !important;
    right: 62px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 100 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
    width: 180px !important;
    min-width: 180px !important;
    max-width: 180px !important;
    height: auto !important;
    min-height: 250px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Preserve the house and cats as one centered visual group. */
html body .site-header__utility
.interest-home-link {
    position: relative !important;
    inset: auto !important;
    order: 1 !important;
    display: block !important;
    box-sizing: border-box !important;
    width: 170px !important;
    min-width: 170px !important;
    height: 168px !important;
    min-height: 168px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
}

/* Center the My Home wording directly beneath the house. */
html body .site-header__utility
.interest-home-link__label {
    position: absolute !important;
    top: 138px !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    z-index: 20 !important;
    display: block !important;
    box-sizing: border-box !important;
    width: 170px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #214f97 !important;
    text-align: center !important;
    white-space: nowrap !important;
    transform: translateX(-50%) !important;
}

/* Keep the cart count attached to the house. */
html body .site-header__utility
.interest-home-link__count {
    z-index: 25 !important;
}

/* My Account and Staff Login stay below the My Home group. */
html body .site-header__utility-actions {
    position: static !important;
    inset: auto !important;
    order: 2 !important;
    z-index: 110 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    box-sizing: border-box !important;
    width: 126px !important;
    height: auto !important;
    margin: 2px auto 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
}

html body .site-header__utility-link {
    position: relative !important;
    z-index: 111 !important;
    display: block !important;
    box-sizing: border-box !important;
    width: 126px !important;
    min-width: 126px !important;
    min-height: 34px !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    white-space: nowrap !important;
}


/* ==========================================================
   SPEAKER BUTTON
   ========================================================== */

html body .featured-showcase__sound-toggle {
    position: fixed !important;
    top: 14px !important;
    right: 14px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 5000 !important;
    margin: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
}


/* ==========================================================
   HOMEPAGE MESSAGE
   ========================================================== */

/* Restore the entire message section below the header. */
html body .home-message {
    position: relative !important;
    inset: auto !important;
    z-index: 5 !important;
    display: block !important;
    clear: both !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 160px !important;
    margin: 0 !important;
    padding: 30px 20px !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
}

html body .home-message__inner {
    position: relative !important;
    z-index: 6 !important;
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    min-height: 100px !important;
    margin: 0 auto !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Make the missing sentence visible again. */
html body .home-message__title {
    position: relative !important;
    inset: auto !important;
    z-index: 10 !important;
    display: block !important;
    width: 100% !important;
    max-width: 1100px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    color: #214f97 !important;
    text-align: center !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
    transform: none !important;
    text-shadow:
        0 0 4px rgba(255, 251, 226, 1),
        0 0 10px rgba(255, 236, 156, 0.9)
        !important;
}


/* ==========================================================
   RESPONSIVE LAYOUT
   ========================================================== */

@media (max-width: 1180px) and (min-width: 761px) {
    html body .site-header__inner {
        padding:
            14px 190px 24px
            !important;
    }

    html body .site-header .sun-navigation {
        max-width: 760px !important;
    }

    html body .site-header .sun-nav-link {
        flex-basis: 126px !important;
        width: 126px !important;
        height: 126px !important;
        min-width: 126px !important;
        min-height: 126px !important;
    }

    html body .site-header
    .sun-nav-link__flower {
        width: 126px !important;
        height: 126px !important;
    }

    html body .site-header__utility {
        right: 50px !important;
    }
}

@media (max-width: 760px) {
    html body .site-header__inner {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        padding: 12px 8px 22px !important;
    }

    html body .site-header .site-name {
        order: 1 !important;
        width: 100% !important;
        margin-bottom: 8px !important;
    }

    html body .site-header__utility {
        position: static !important;
        order: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        min-height: 0 !important;
        margin: 0 auto 12px !important;
    }

    html body .site-header .sun-navigation {
        order: 3 !important;
        gap: 2px 4px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
        margin: 0 auto !important;
    }

    html body .site-header .sun-nav-link {
        flex-basis: 104px !important;
        width: 104px !important;
        height: 104px !important;
        min-width: 104px !important;
        min-height: 104px !important;
    }

    html body .site-header
    .sun-nav-link__flower {
        width: 104px !important;
        height: 104px !important;
    }

    html body .site-header
    .sun-nav-link__label,
    html body .site-header
    .sun-nav-link__label--small {
        width: 54px !important;
        min-width: 54px !important;
        max-width: 54px !important;
        min-height: 42px !important;
        font-size: 0.61rem !important;
    }

    html body .site-header
    .sun-nav-link__label--small {
        font-size: 0.54rem !important;
    }

    html body .home-message {
        min-height: 130px !important;
        padding: 24px 14px !important;
    }
}

/* END final clean header navigation */

/* START static eight flower navigation */

/*
All eight flower buttons remain on one horizontal line.
The row is centered on normal desktop screens and scrolls
horizontally on screens that are too narrow.
*/
html body .site-header .primary-flower-nav-v3 {
    position: relative !important;
    inset: auto !important;
    left: 50% !important;
    z-index: 60 !important;

    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;

    box-sizing: border-box !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-height: clamp(110px, 10.8vw, 150px) !important;

    gap: clamp(2px, 0.4vw, 7px) !important;

    margin: 0 !important;
    padding: 0 12px 10px !important;

    overflow-x: auto !important;
    overflow-y: visible !important;

    transform: translateX(-50%) !important;
    transition: none !important;
    animation: none !important;
    scrollbar-width: none !important;
}

html body
.site-header
.primary-flower-nav-v3::-webkit-scrollbar {
    display: none !important;
}

html body
.site-header
.primary-flower-nav-v3__link {
    all: unset !important;

    position: relative !important;
    inset: auto !important;
    z-index: 61 !important;

    flex:
        0 0
        clamp(102px, 11.4vw, 144px)
        !important;

    display: block !important;

    box-sizing: border-box !important;
    width: clamp(102px, 11.4vw, 144px) !important;
    height: clamp(102px, 11.4vw, 144px) !important;
    min-width: clamp(102px, 11.4vw, 144px) !important;
    min-height: clamp(102px, 11.4vw, 144px) !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 50% !important;
    background: transparent !important;

    box-shadow: none !important;
    filter: none !important;

    cursor: pointer !important;
    overflow: visible !important;

    transform: none !important;
    transition: none !important;
    animation: none !important;
}

/* No motion or appearance changes during hover or focus. */
html body
.site-header
.primary-flower-nav-v3__link:hover,
html body
.site-header
.primary-flower-nav-v3__link:focus,
html body
.site-header
.primary-flower-nav-v3__link:focus-visible,
html body
.site-header
.primary-flower-nav-v3__link:active {
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
    outline: none !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
}

/* Every flower remains completely stationary. */
html body
.site-header
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:hover
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:focus
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:focus-visible
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:active
.primary-flower-nav-v3__flower {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;

    display: block !important;

    box-sizing: border-box !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: contain !important;
    opacity: 1 !important;

    box-shadow: none !important;
    filter: none !important;

    pointer-events: none !important;

    transform: none !important;
    transition: none !important;
    animation: none !important;
}

/*
All labels use exactly the same size, including Community Cats
and Rehome a Pet. The words stay centered over the flowers.
*/
html body
.site-header
.primary-flower-nav-v3__label {
    position: absolute !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    z-index: 5 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    box-sizing: border-box !important;
    width: 74% !important;
    min-height: 48px !important;

    margin: 0 !important;
    padding: 0 2px !important;

    color: #111111 !important;

    font-family:
        "Trebuchet MS",
        Arial,
        sans-serif
        !important;

    font-size: clamp(0.62rem, 0.78vw, 0.78rem) !important;
    font-weight: 900 !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;

    text-align: center !important;
    text-decoration: none !important;
    white-space: normal !important;

    text-shadow:
        0 0 2px #fffdf0,
        0 0 4px #fffdf0,
        0 0 7px rgba(255, 245, 192, 1),
        0 0 11px rgba(226, 175, 46, 0.95),
        0 0 16px rgba(226, 175, 46, 0.62)
        !important;

    pointer-events: none !important;

    transform: translate(-50%, -50%) !important;
    transition: none !important;
    animation: none !important;
}

/* Preserve one row on narrow devices through horizontal scrolling. */
@media (max-width: 760px) {
    html body
    .site-header
    .primary-flower-nav-v3 {
        justify-content: flex-start !important;
        min-height: 112px !important;
        padding-right: 8px !important;
        padding-left: 8px !important;
    }

    html body
    .site-header
    .primary-flower-nav-v3__link {
        flex-basis: 104px !important;
        width: 104px !important;
        height: 104px !important;
        min-width: 104px !important;
        min-height: 104px !important;
    }

    html body
    .site-header
    .primary-flower-nav-v3__label {
        font-size: 0.62rem !important;
    }
}

/* END static eight flower navigation */

/* START returning flower rotation */

/* JavaScript controls only the flower's rotation angle. */
html body
.site-header
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:hover
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:focus
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:focus-visible
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:active
.primary-flower-nav-v3__flower {
    animation: none !important;
    transition: none !important;
    transform:
        rotate(var(--flower-angle, 0deg))
        !important;
    transform-origin: center center !important;

    /* Remove the flower-image aura. */
    filter: none !important;
    box-shadow: none !important;
}

/* Remove the aura from the entire button as well. */
html body
.site-header
.primary-flower-nav-v3__link,
html body
.site-header
.primary-flower-nav-v3__link:hover,
html body
.site-header
.primary-flower-nav-v3__link:focus,
html body
.site-header
.primary-flower-nav-v3__link:focus-visible,
html body
.site-header
.primary-flower-nav-v3__link:active {
    animation: none !important;
    transition: none !important;
    transform: none !important;
    filter: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* END returning flower rotation */

/* START flower icon edge glow */

/* Never place a circular glow around the button container. */
html body
.site-header
.primary-flower-nav-v3__link,
html body
.site-header
.primary-flower-nav-v3__link:hover,
html body
.site-header
.primary-flower-nav-v3__link:focus,
html body
.site-header
.primary-flower-nav-v3__link:focus-visible,
html body
.site-header
.primary-flower-nav-v3__link:active {
    box-shadow: none !important;
    filter: none !important;
}

/* No glow while the flower is resting. */
html body
.site-header
.primary-flower-nav-v3__flower {
    filter: none !important;
}

/*
A brighter golden glow follows only the visible edges
of the transparent flower image.
*/
html body
.site-header
.primary-flower-nav-v3__link:hover
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:focus-visible
.primary-flower-nav-v3__flower {
    filter:
        drop-shadow(0 0 3px rgba(255, 255, 224, 1))
        drop-shadow(0 0 7px rgba(255, 225, 70, 0.94))
        drop-shadow(0 0 12px rgba(245, 184, 28, 0.72))
        drop-shadow(0 0 17px rgba(222, 146, 12, 0.42))
        !important;
}

/* END flower icon edge glow */

/* START flower glow clipping fix */

/*
Allow the flower glow to extend naturally beyond every
navigation and header container.
*/
html body .site-header,
html body .site-header__inner,
html body .site-header .primary-flower-nav-v3,
html body .site-header .primary-flower-nav-v3__link {
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    contain: none !important;
    mask: none !important;
    -webkit-mask: none !important;
}

/*
Keep all eight flowers on one centered line without using
a scrolling box that clips filters and drop shadows.
*/
html body
.site-header
.primary-flower-nav-v3 {
    left: 50% !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;

    width: max-content !important;
    max-width: none !important;
    min-height: clamp(130px, 12vw, 170px) !important;

    margin: 0 !important;
    padding: 18px 30px 24px !important;

    overflow-x: visible !important;
    overflow-y: visible !important;

    transform: translateX(-50%) !important;
    scrollbar-width: none !important;
}

/* Give each flower enough paint space for its edge glow. */
html body
.site-header
.primary-flower-nav-v3__link {
    overflow: visible !important;
    isolation: visible !important;
}

/*
Place the active flower above its neighbors so no adjacent
button can cover part of its glow.
*/
html body
.site-header
.primary-flower-nav-v3__link:hover,
html body
.site-header
.primary-flower-nav-v3__link:focus-visible {
    z-index: 1000 !important;
    overflow: visible !important;
}

/* Keep the transparent flower image and its glow unclipped. */
html body
.site-header
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:hover
.primary-flower-nav-v3__flower,
html body
.site-header
.primary-flower-nav-v3__link:focus-visible
.primary-flower-nav-v3__flower {
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    contain: none !important;
    mask: none !important;
    -webkit-mask: none !important;
}

/*
On narrow screens, retain horizontal scrolling but provide
extra interior space so the glow is not cut off vertically.
*/
@media (max-width: 760px) {
    html body
    .site-header
    .primary-flower-nav-v3 {
        left: 0 !important;
        justify-content: flex-start !important;

        width: 100vw !important;
        max-width: 100vw !important;

        padding:
            22px 28px 26px
            !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        transform: none !important;
        scroll-padding:
            0 28px
            !important;
    }
}

/* END flower glow clipping fix */

/* START flower row vertical adjustment */

/* Move the complete flower-button row upward exactly 10 pixels. */
html body
.site-header
.primary-flower-nav-v3 {
    top: -10px !important;
}

/*
Extend the cream header background 30 pixels farther down.
The previous bottom space was 14 pixels.
*/
html body .site-header__inner {
    padding-bottom: 44px !important;
}

/* Keep the same adjustment on narrow screens. */
@media (max-width: 760px) {
    html body
    .site-header
    .primary-flower-nav-v3 {
        top: -10px !important;
    }

    html body .site-header__inner {
        padding-bottom: 44px !important;
    }
}

/* END flower row vertical adjustment */

/* START home message fifty pixels up */

/*
Move the decorative stars and the
“Helping animals find safe and loving homes” text
up together by exactly 50 pixels.
*/
html body .home-message__inner {
    position: relative !important;
    top: -50px !important;
}

/* Keep the same position on smaller screens. */
@media (max-width: 760px) {
    html body .home-message__inner {
        top: -50px !important;
    }
}

/* END home message fifty pixels up */

/* START home message layer priority */

/*
Keep the flower navigation above the homepage message.
*/
html body
.site-header
.primary-flower-nav-v3 {
    position: relative !important;
    z-index: 1000 !important;
}

html body
.site-header
.primary-flower-nav-v3__link {
    position: relative !important;
    z-index: 1001 !important;
}

html body
.site-header
.primary-flower-nav-v3__link:hover,
html body
.site-header
.primary-flower-nav-v3__link:focus-visible {
    z-index: 1002 !important;
}

/*
Place the complete stars-and-message area above all other
homepage section layers, while remaining below the flowers.
*/
html body .home-message {
    position: relative !important;
    z-index: 900 !important;
    isolation: isolate !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Keep decorative background layers behind the wording. */
html body .home-message::before,
html body .home-message::after {
    z-index: 0 !important;
    pointer-events: none !important;
}

/*
Preserve the previous 50-pixel upward position and place
the stars and wording above the section backgrounds.
*/
html body .home-message__inner {
    position: relative !important;
    top: -50px !important;
    z-index: 20 !important;
    isolation: isolate !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Raise every element inside the message, including the stars. */
html body .home-message__inner > *,
html body .home-message__title {
    position: relative !important;
    z-index: 25 !important;
    visibility: visible !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
}

/* Keep any decorative text pseudo-elements visible and on top. */
html body .home-message__inner::before,
html body .home-message__inner::after,
html body .home-message__title::before,
html body .home-message__title::after {
    position: relative !important;
    z-index: 24 !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: none !important;
}

@media (max-width: 760px) {
    html body .home-message__inner {
        top: -50px !important;
        z-index: 20 !important;
    }
}

/* END home message layer priority */


/* START home title additional fifty pixels up */

/*
Move only “Helping animals find safe and loving homes”
up by 50 pixels. The decorative stars remain in place.
*/
html body .home-message__title {
    position: relative !important;
    top: -65px !important;
    z-index: 30 !important;
}

/* END home title additional fifty pixels up */


/* START cream header background extension */

/*
Extend the cream Jeannie Meows header background
15 pixels farther down without moving the flower row.
*/
html body .site-header {
    padding-bottom: 25px !important;
}

/* END cream header background extension */

/* START actual header featured seam fix */

/*
The detached cream header background previously ended
30 pixels before the true bottom of the header.
Extend it completely to the bottom.
*/
html body .site-header__background {
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    height: auto !important;
}

/* Remove spacing from the actual header boundary. */
html body .site-header,
html body .site-header__inner {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

/*
Remove a grid or flex row gap from the homepage content
container when it contains the home-message section.
*/
html body main:has(> .home-message),
html body .site-main:has(> .home-message),
html body .page-content:has(> .home-message) {
    gap: 0 !important;
    row-gap: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/*
The stars and tagline remain overlays and reserve no space
between the header and Featured Cats.
*/
html body .home-message {
    position: relative !important;
    z-index: 900 !important;
    width: 100% !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

html body .home-message__inner {
    position: relative !important;
    top: -50px !important;
    z-index: 901 !important;
    width: 100% !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

/*
Featured Cats begins at the exact bottom edge of the header.
Do not pull or push the section with artificial offsets.
*/
html body .home-message + .featured-showcase,
html body .featured-showcase {
    position: relative !important;
    top: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Keep the section background and top gold line at the seam. */
html body .featured-showcase::before {
    top: 0 !important;
    margin-top: 0 !important;
}

/* END actual header featured seam fix */

/* START bold flower button text */

/* Make every flower-navigation label clearly bold. */
html body
.site-header
.primary-flower-nav-v3__label {
    font-weight: 900 !important;
    -webkit-text-stroke: 0.35px currentColor !important;
    paint-order: stroke fill !important;
}

/* END bold flower button text */

/* START black My Home and left house cats */

/* Make the My Home wording black while preserving its aura. */
html body
.site-header
a.interest-home-link
.interest-home-link__label,
html body
.site-header
a.interest-home-link:hover
.interest-home-link__label,
html body
.site-header
a.interest-home-link:focus-visible
.interest-home-link__label {
    color: #111111 !important;
}

/*
Move the house 15 pixels left while preserving its
existing centered position.
*/
html body
.site-header
a.interest-home-link
.interest-home-link__house,
html body
.site-header
a.interest-home-link:hover
.interest-home-link__house,
html body
.site-header
a.interest-home-link:focus-visible
.interest-home-link__house {
    transform:
        translateX(calc(-50% - 30px))
        !important;
}

/*
Move the complete cats container 15 pixels left.
Individual cat pointer movement remains unchanged.
*/
html body
.site-header
a.interest-home-link
.interest-home-link__pets,
html body
.site-header
a.interest-home-link:hover
.interest-home-link__pets,
html body
.site-header
a.interest-home-link:focus-visible
.interest-home-link__pets {
    transform: translateX(-34px) !important;
}

/* END black My Home and left house cats */

/* START cart right and cats left adjustment */

/*
Move the complete kitty group another 2 pixels left.
The previous position was 34 pixels left.
*/
html body
.site-header
a.interest-home-link
.interest-home-link__pets,
html body
.site-header
a.interest-home-link:hover
.interest-home-link__pets,
html body
.site-header
a.interest-home-link:focus
.interest-home-link__pets,
html body
.site-header
a.interest-home-link:focus-visible
.interest-home-link__pets,
html body
.site-header
a.interest-home-link:active
.interest-home-link__pets {
    transform: translateX(-36px) !important;
}

/*
Move the cart number 5 pixels to the right.
Reducing right from 27px to 22px moves it right.
*/
html body
.site-header
a.interest-home-link
.interest-home-link__count,
html body
.site-header
a.interest-home-link:hover
.interest-home-link__count,
html body
.site-header
a.interest-home-link:focus
.interest-home-link__count,
html body
.site-header
a.interest-home-link:focus-visible
.interest-home-link__count,
html body
.site-header
a.interest-home-link:active
.interest-home-link__count {
    right: 12px !important;
    left: auto !important;
}

/* END cart right and cats left adjustment */

/* START utility buttons match social buttons */

/*
My Account, Staff Login, Create Account, and Sign In
match the social-media button design.
*/
html body
.site-header
.site-header__utility-link,
html body
.site-header
.site-header__utility-link:link,
html body
.site-header
.site-header__utility-link:visited {
    display: block !important;
    box-sizing: border-box !important;

    width: 126px !important;
    min-width: 126px !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 10px 17px !important;

    border:
        1px solid rgba(184, 126, 15, 0.88)
        !important;
    border-radius: 999px !important;

    background:
        rgba(235, 217, 178, 0.96)
        !important;

    box-shadow:
        0 0 4px rgba(255, 248, 211, 1),
        0 0 10px rgba(224, 173, 49, 0.48)
        !important;

    color: #214f97 !important;

    font-family:
        "Trebuchet MS",
        Arial,
        sans-serif
        !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.03em !important;

    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;

    opacity: 1 !important;
    visibility: visible !important;

    transition:
        transform 160ms ease,
        background-color 160ms ease,
        box-shadow 160ms ease
        !important;
}

html body
.site-header
.site-header__utility-link:hover,
html body
.site-header
.site-header__utility-link:focus-visible {
    background: #fff4cd !important;

    box-shadow:
        0 0 5px rgba(255, 255, 235, 1),
        0 0 13px rgba(232, 189, 72, 0.92),
        0 0 20px rgba(33, 79, 151, 0.38)
        !important;

    color: #214f97 !important;
    transform: scale(1.06) !important;
    outline: none !important;
}

html body .site-header__utility-actions {
    gap: 8px !important;
    width: 126px !important;
}

@media (max-width: 760px) {
    html body
    .site-header
    .site-header__utility-link {
        width: 100px !important;
        min-width: 100px !important;
        padding: 8px 12px !important;
        font-size: 0.76rem !important;
    }

    html body .site-header__utility-actions {
        width: 100px !important;
    }
}

/* END utility buttons match social buttons */

/* START remove ready foster gap */

/*
Remove the large margin between Ready for Adoption
and Foster Needed or Ready Soon.
*/
html body .available-showcase--ready {
    margin-bottom: 0 !important;
}

html body .available-showcase--foster {
    margin-top: 0 !important;
}

/*
Keep the gold borders touching the section edges.
*/
html body .available-showcase--ready::after {
    bottom: 0 !important;
}

html body .available-showcase--foster::before {
    top: 0 !important;
}

/* END remove ready foster gap */

/* START remove foster rehoming gap */

/*
Remove the space between Foster Needed or Ready Soon
and Pets Needing Rehoming.
*/
html body .available-showcase--foster {
    margin-bottom: 0 !important;
}

html body .available-showcase--rehoming {
    margin-top: 0 !important;
}

/* Keep both gold section edges aligned at the seam. */
html body .available-showcase--foster::after {
    bottom: 0 !important;
}

html body .available-showcase--rehoming::before {
    top: 0 !important;
}

/* END remove foster rehoming gap */

/* START remove rehoming longest gap */

/*
Remove the space between Pets Needing Rehoming
and Longest With Us.
*/
html body .available-showcase--rehoming {
    margin-bottom: 0 !important;
}

html body .available-showcase--longest {
    margin-top: 0 !important;
}

/* Keep the gold section borders aligned at the seam. */
html body .available-showcase--rehoming::after {
    bottom: 0 !important;
}

html body .available-showcase--longest::before {
    top: 0 !important;
}

/* END remove rehoming longest gap */

/* START Jeannie Meows bottom divider */

html body .site-header {
    position: relative !important;
}

html body .site-header__bottom-divider {
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 200 !important;

    display: block !important;
    width: 100% !important;
    height: 2px !important;
    margin: 0 !important;
    padding: 0 !important;

    background:
        linear-gradient(
            90deg,
            rgba(184, 126, 15, 0.72),
            rgba(232, 189, 72, 1),
            rgba(184, 126, 15, 0.72)
        )
        !important;

    box-shadow:
        0 0 4px rgba(255, 244, 194, 0.95),
        0 0 8px rgba(184, 126, 15, 0.55)
        !important;

    pointer-events: none !important;
}

/* END Jeannie Meows bottom divider */

/* START header events scroll */

/*
The Events parchment sits directly to the right of the
vertical social-media links inside the header.
*/
html body .site-header {
    position: relative !important;
    overflow: visible !important;
}

html body .header-events-scroll {
    position: absolute !important;
    top: 3px !important;
    left: 154px !important;
    z-index: 30 !important;

    display: block !important;
    width: 168px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    color: #214f97 !important;
    text-decoration: none !important;

    transform: scale(1) !important;
    transform-origin: center !important;

    filter:
        drop-shadow(0 3px 4px rgba(73, 48, 18, 0.24))
        !important;

    transition:
        transform 180ms ease,
        filter 180ms ease
        !important;
}

html body .header-events-scroll__image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    pointer-events: none !important;
}

html body .header-events-scroll__content {
    position: absolute !important;
    top: 17% !important;
    right: 13% !important;
    bottom: 15% !important;
    left: 14% !important;
    z-index: 2 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 7px !important;

    color: #214f97 !important;
    text-align: center !important;
    pointer-events: none !important;
}

html body .header-events-scroll__title {
    display: block !important;
    margin: 0 0 3px !important;

    font-family:
        "Bodoni 72",
        Didot,
        "Bodoni MT",
        Georgia,
        serif
        !important;
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;

    text-shadow:
        0 0 3px rgba(255, 253, 235, 1),
        0 0 7px rgba(255, 239, 166, 0.95)
        !important;
}

html body .header-events-scroll__details {
    display: block !important;

    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 0.76rem !important;
    font-weight: 700 !important;
    line-height: 1.22 !important;
}

html body .header-events-scroll__prompt {
    display: block !important;
    margin-top: auto !important;

    color: #6f4e16 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 0.65rem !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
}

html body .header-events-scroll:hover,
html body .header-events-scroll:focus-visible {
    transform: scale(1.045) !important;

    filter:
        brightness(1.06)
        drop-shadow(0 0 3px rgba(255, 255, 240, 1))
        drop-shadow(0 0 9px rgba(255, 229, 122, 0.98))
        drop-shadow(0 0 17px rgba(224, 173, 49, 0.88))
        drop-shadow(0 0 27px rgba(33, 79, 151, 0.44))
        !important;

    outline: none !important;
}

/* Events page */

html body .events-page {
    min-height: 70vh !important;
    padding: clamp(42px, 7vw, 90px) 20px !important;

    background:
        linear-gradient(
            180deg,
            #f5e8cb 0%,
            #ebd9b2 100%
        )
        !important;
}

html body .events-page__panel {
    width: min(760px, 100%) !important;
    margin: 0 auto !important;
    padding: clamp(30px, 6vw, 64px) !important;

    border: 2px solid rgba(184, 126, 15, 0.82) !important;
    border-radius: 24px !important;

    background: rgba(255, 248, 224, 0.88) !important;

    box-shadow:
        0 0 8px rgba(255, 248, 211, 1),
        0 0 22px rgba(224, 173, 49, 0.34)
        !important;

    text-align: center !important;
}

html body .events-page__eyebrow {
    margin: 0 0 8px !important;
    color: #6f4e16 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
}

html body .events-page__title {
    margin: 0 0 34px !important;
    color: #214f97 !important;

    font-family:
        "Bodoni 72",
        Didot,
        "Bodoni MT",
        Georgia,
        serif
        !important;
    font-size: clamp(3.6rem, 8vw, 6.8rem) !important;
    font-weight: 400 !important;
    line-height: 0.95 !important;

    text-shadow:
        0 0 5px rgba(255, 255, 240, 1),
        0 0 14px rgba(255, 236, 158, 0.95)
        !important;
}

html body .events-page__announcement {
    color: #263c54 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 1.05rem !important;
    line-height: 1.65 !important;
}

html body .events-page__announcement h2 {
    margin: 0 0 16px !important;
    color: #214f97 !important;
    font-size: 1.7rem !important;
}

html body .events-page__home-link {
    display: inline-block !important;
    margin-top: 24px !important;
    padding: 10px 20px !important;

    border: 1px solid rgba(184, 126, 15, 0.88) !important;
    border-radius: 999px !important;

    background: #ebd9b2 !important;
    color: #214f97 !important;

    font-weight: 700 !important;
    text-decoration: none !important;

    box-shadow:
        0 0 4px rgba(255, 248, 211, 1),
        0 0 10px rgba(224, 173, 49, 0.48)
        !important;
}

@media (max-width: 760px) {
    html body .header-events-scroll {
        top: 4px !important;
        left: 116px !important;
        width: 112px !important;
    }

    html body .header-events-scroll__content {
        top: 17% !important;
        right: 12% !important;
        bottom: 15% !important;
        left: 13% !important;
        gap: 3px !important;
    }

    html body .header-events-scroll__title {
        font-size: 0.84rem !important;
    }

    html body .header-events-scroll__details {
        font-size: 0.49rem !important;
        line-height: 1.15 !important;
    }

    html body .header-events-scroll__prompt {
        font-size: 0.43rem !important;
    }
}

/* END header events scroll */

/* START final events popup behavior */

/* Prevent the page behind the popup from scrolling. */
html body.events-scroll-modal-open {
    overflow: hidden !important;
}

html body .header-events-widget {
    position: static !important;
    z-index: 3000 !important;
}

/* -------------------------------------------------------
   BACKDROP
   ------------------------------------------------------- */

html body .header-events-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 3000 !important;

    display: none !important;
    width: 100vw !important;
    height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background:
        rgba(20, 27, 38, 0.62)
        !important;

    cursor: pointer !important;
}

/* -------------------------------------------------------
   SMALL SCROLL BESIDE THE SOCIAL LINKS
   ------------------------------------------------------- */

html body .header-events-panel {
    position: absolute !important;
    top: 3px !important;
    left: 154px !important;
    z-index: 30 !important;

    width: 150px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    transform: none !important;
}

html body .header-events-scroll {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;

    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    color: #ffffff !important;
    text-decoration: none !important;

    transform: scale(1) !important;
    transform-origin: center !important;

    filter:
        drop-shadow(
            0 3px 4px rgba(73, 48, 18, 0.28)
        )
        !important;

    transition:
        transform 180ms ease,
        filter 180ms ease
        !important;
}

html body .header-events-scroll__image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    object-fit: contain !important;
    pointer-events: none !important;
}

html body .header-events-scroll__content {
    position: absolute !important;
    top: 17% !important;
    right: 14% !important;
    bottom: 15% !important;
    left: 14% !important;
    z-index: 2 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #ffffff !important;
    text-align: center !important;

    transform: none !important;
    pointer-events: none !important;
}

/*
Use the rescue's elegant Pinyon font instead of the
previous script font.
*/
html body .header-events-scroll__title,
html body .header-events-scroll__details,
html body .header-events-scroll__prompt {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family:
        "Pinyon Script",
        "Snell Roundhand",
        "Apple Chancery",
        cursive
        !important;

    font-style: normal !important;
    letter-spacing: 0.01em !important;

    text-shadow:
        0 0 2px rgba(50, 30, 8, 1),
        0 0 5px rgba(50, 30, 8, 0.96),
        0 0 9px rgba(33, 79, 151, 0.8)
        !important;
}

/*
Move Events and the announcement down 10 pixels.
The Click to view events line stays near the bottom.
*/
html body .header-events-scroll__title,
html body .header-events-scroll__details {
    position: relative !important;
    transform: translateY(10px) !important;
}

html body .header-events-scroll__title {
    display: block !important;
    margin: 0 0 4px !important;

    font-size: 1.5rem !important;
    font-weight: 700 !important;
    line-height: 0.92 !important;
    text-transform: none !important;
}

html body .header-events-scroll__details {
    display: block !important;

    font-size: 0.9rem !important;
    font-weight: 700 !important;
    line-height: 1.05 !important;
}

html body .header-events-scroll__prompt {
    display: block !important;
    margin-top: auto !important;

    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

html body .header-events-scroll:hover,
html body .header-events-scroll:focus-visible {
    color: #ffffff !important;

    transform: scale(1.045) !important;

    filter:
        brightness(1.08)
        drop-shadow(
            0 0 4px rgba(255, 255, 245, 1)
        )
        drop-shadow(
            0 0 11px rgba(255, 229, 122, 0.98)
        )
        drop-shadow(
            0 0 20px rgba(224, 173, 49, 0.9)
        )
        drop-shadow(
            0 0 30px rgba(33, 79, 151, 0.48)
        )
        !important;

    outline: none !important;
}

/* The close button is hidden while the scroll is small. */
html body .header-events-close {
    display: none !important;
}

/* -------------------------------------------------------
   LARGE CENTER POPUP
   ------------------------------------------------------- */

html body
.header-events-widget.is-expanded
.header-events-backdrop {
    display: block !important;
}

html body
.header-events-widget.is-expanded
.header-events-panel {
    position: fixed !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    z-index: 3002 !important;

    width: min(430px, 88vw) !important;
    max-width: 430px !important;

    transform:
        translate(-50%, -50%)
        !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll {
    width: 100% !important;

    transform: scale(1) !important;

    filter:
        brightness(1.04)
        drop-shadow(
            0 0 5px rgba(255, 255, 245, 1)
        )
        drop-shadow(
            0 0 15px rgba(255, 229, 122, 0.9)
        )
        drop-shadow(
            0 0 28px rgba(224, 173, 49, 0.72)
        )
        !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll:hover,
html body
.header-events-widget.is-expanded
.header-events-scroll:focus-visible {
    transform: scale(1.025) !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__content {
    top: 17% !important;
    right: 14% !important;
    bottom: 15% !important;
    left: 14% !important;

    gap: 12px !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__title {
    margin-bottom: 10px !important;
    font-size: clamp(3.3rem, 9vw, 4.6rem) !important;
    line-height: 0.9 !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__details {
    max-width: 88% !important;

    font-size: clamp(1.45rem, 4.2vw, 2rem) !important;
    line-height: 1.05 !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__prompt {
    font-size: clamp(1.05rem, 3vw, 1.35rem) !important;
}

/* Large white X in the upper-right portion of the scroll. */
html body
.header-events-widget.is-expanded
.header-events-close {
    position: absolute !important;
    top: 12% !important;
    right: 13% !important;
    z-index: 5 !important;

    display: grid !important;
    place-items: center !important;

    width: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 0 4px !important;

    border:
        1px solid rgba(255, 255, 255, 0.86)
        !important;
    border-radius: 50% !important;

    background:
        rgba(91, 57, 17, 0.78)
        !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family: Arial, sans-serif !important;
    font-size: 1.9rem !important;
    font-weight: 400 !important;
    line-height: 1 !important;

    box-shadow:
        0 0 4px rgba(255, 255, 255, 0.9),
        0 0 12px rgba(224, 173, 49, 0.7)
        !important;

    cursor: pointer !important;
}

html body
.header-events-widget.is-expanded
.header-events-close:hover,
html body
.header-events-widget.is-expanded
.header-events-close:focus-visible {
    background:
        rgba(33, 79, 151, 0.9)
        !important;

    box-shadow:
        0 0 6px rgba(255, 255, 255, 1),
        0 0 17px rgba(224, 173, 49, 0.98)
        !important;

    outline: none !important;
}

/* -------------------------------------------------------
   MOBILE
   ------------------------------------------------------- */

@media (max-width: 760px) {
    html body .header-events-panel {
        top: 4px !important;
        left: 116px !important;
        width: 108px !important;
    }

    html body .header-events-scroll__content {
        gap: 2px !important;
    }

    html body .header-events-scroll__title {
        font-size: 1rem !important;
    }

    html body .header-events-scroll__details {
        font-size: 0.61rem !important;
    }

    html body .header-events-scroll__prompt {
        font-size: 0.49rem !important;
    }

    html body
    .header-events-widget.is-expanded
    .header-events-panel {
        width: min(390px, 94vw) !important;
    }

    html body
    .header-events-widget.is-expanded
    .header-events-scroll__title {
        font-size: clamp(2.7rem, 14vw, 4rem) !important;
    }

    html body
    .header-events-widget.is-expanded
    .header-events-scroll__details {
        font-size: clamp(1.25rem, 6.8vw, 1.8rem) !important;
    }

    html body
    .header-events-widget.is-expanded
    .header-events-scroll__prompt {
        font-size: clamp(0.94rem, 4.8vw, 1.2rem) !important;
    }

    html body
    .header-events-widget.is-expanded
    .header-events-close {
        width: 34px !important;
        height: 34px !important;
        font-size: 1.6rem !important;
    }
}

/* END final events popup behavior */

/* START events popup layering fix */

/*
The expanded widget is moved directly under the body by
JavaScript, allowing it to appear above every homepage layer.
*/
html body.events-scroll-modal-open
> .header-events-widget.is-expanded {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;

    width: 100vw !important;
    height: 100vh !important;

    margin: 0 !important;
    padding: 0 !important;
}

/* Keep the dark outside-click area above the homepage. */
html body.events-scroll-modal-open
> .header-events-widget.is-expanded
.header-events-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483001 !important;

    display: block !important;
}

/* Keep the parchment and its close button above the backdrop. */
html body.events-scroll-modal-open
> .header-events-widget.is-expanded
.header-events-panel {
    position: fixed !important;
    z-index: 2147483002 !important;
}

/*
Force the homepage message beneath the popup only while
the Events announcement is expanded.
*/
html body.events-scroll-modal-open
.home-message,
html body.events-scroll-modal-open
.home-message__inner,
html body.events-scroll-modal-open
.home-message__title,
html body.events-scroll-modal-open
.home-message__sparkles {
    z-index: 1 !important;
}

/* Hide the entire Events widget on the Events page. */
html body .header-events-widget[hidden] {
    display: none !important;
}

/* END events popup layering fix */

/* START dynamic events page cards */

html body .events-page__section-title {
    margin: 20px 0 24px !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 1.8rem !important;
    text-align: center !important;
}

html body .events-page__list {
    display: grid !important;
    gap: 22px !important;
    margin: 0 !important;
}

html body .events-page__event {
    padding: clamp(22px, 4vw, 34px) !important;

    border: 1px solid rgba(184, 126, 15, 0.78) !important;
    border-radius: 20px !important;

    background: rgba(255, 253, 240, 0.9) !important;

    box-shadow:
        0 0 5px rgba(255, 248, 211, 0.95),
        0 0 15px rgba(224, 173, 49, 0.24)
        !important;

    color: #263c54 !important;
    text-align: left !important;
}

html body .events-page__event--past {
    opacity: 0.78 !important;
}

html body .events-page__event-date {
    margin: 0 0 8px !important;
    color: #916411 !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
}

html body .events-page__event-title {
    margin: 0 0 14px !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(1.55rem, 4vw, 2.15rem) !important;
    line-height: 1.15 !important;
}

html body .events-page__event-summary,
html body .events-page__event-detail,
html body .events-page__event-description {
    color: #263c54 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    line-height: 1.6 !important;
}

html body .events-page__event-link {
    display: inline-block !important;
    margin-top: 12px !important;
    padding: 9px 17px !important;

    border: 1px solid rgba(184, 126, 15, 0.88) !important;
    border-radius: 999px !important;

    background: #ebd9b2 !important;
    color: #214f97 !important;

    font-weight: 800 !important;
    text-decoration: none !important;
}

html body .events-page__empty {
    margin: 20px 0 36px !important;
    color: #263c54 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 1.08rem !important;
    text-align: center !important;
}

html body .events-page__past {
    margin-top: 50px !important;
}

/* END dynamic events page cards */

/* START events scroll countdown */

html body .header-events-scroll__countdown {
    display: block !important;
    width: 94% !important;
    margin: 7px auto 0 !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family:
        Georgia,
        "Times New Roman",
        serif
        !important;

    font-size: 0.69rem !important;
    font-weight: 800 !important;
    line-height: 1.18 !important;
    letter-spacing: 0.01em !important;
    text-align: center !important;

    text-shadow:
        0 0 2px rgba(50, 30, 8, 1),
        0 0 5px rgba(50, 30, 8, 0.96),
        0 0 9px rgba(33, 79, 151, 0.82)
        !important;

    pointer-events: none !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__countdown {
    width: 90% !important;
    margin-top: 14px !important;

    font-size:
        clamp(1rem, 3.2vw, 1.35rem)
        !important;

    line-height: 1.25 !important;
}

@media (max-width: 760px) {
    html body .header-events-scroll__countdown {
        margin-top: 4px !important;
        font-size: 0.46rem !important;
        line-height: 1.1 !important;
    }

    html body
    .header-events-widget.is-expanded
    .header-events-scroll__countdown {
        margin-top: 10px !important;

        font-size:
            clamp(0.9rem, 4.8vw, 1.2rem)
            !important;
    }
}

/* END events scroll countdown */

/* START complete event information display */

/* All information inside the scroll uses white text. */
html body .header-events-scroll__details {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 2px !important;

    width: 100% !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-align: center !important;
}

html body .header-events-scroll__event-title,
html body .header-events-scroll__event-date,
html body .header-events-scroll__event-end,
html body .header-events-scroll__event-location,
html body .header-events-scroll__event-address,
html body .header-events-scroll__event-summary,
html body .header-events-scroll__event-empty,
html body .header-events-scroll__countdown {
    display: block !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family:
        Georgia,
        "Times New Roman",
        serif
        !important;

    text-align: center !important;

    text-shadow:
        0 0 2px rgba(48, 28, 5, 1),
        0 0 5px rgba(48, 28, 5, 0.96),
        0 0 9px rgba(33, 79, 151, 0.85)
        !important;
}

html body .header-events-scroll__event-title {
    font-size: 0.78rem !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
}

html body .header-events-scroll__event-date,
html body .header-events-scroll__event-end,
html body .header-events-scroll__event-location,
html body .header-events-scroll__event-address {
    font-size: 0.55rem !important;
    font-weight: 800 !important;
    line-height: 1.08 !important;
}

html body .header-events-scroll__event-summary {
    display: none !important;
}

html body .header-events-scroll__countdown {
    width: 96% !important;
    margin: 5px auto 0 !important;

    font-size: 0.55rem !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

/* Show fuller information when the scroll is expanded. */
html body
.header-events-widget.is-expanded
.header-events-scroll__details {
    gap: 7px !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__event-title {
    font-size:
        clamp(1.55rem, 5vw, 2.2rem)
        !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__event-date,
html body
.header-events-widget.is-expanded
.header-events-scroll__event-end,
html body
.header-events-widget.is-expanded
.header-events-scroll__event-location,
html body
.header-events-widget.is-expanded
.header-events-scroll__event-address {
    font-size:
        clamp(0.92rem, 2.8vw, 1.15rem)
        !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__event-summary {
    display: block !important;
    max-width: 92% !important;

    font-size:
        clamp(0.88rem, 2.6vw, 1.08rem)
        !important;

    font-weight: 700 !important;
    line-height: 1.2 !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__countdown {
    margin-top: 10px !important;

    font-size:
        clamp(0.95rem, 3vw, 1.25rem)
        !important;
}

/* Complete Events page cards. */
html body .events-page__event-countdown {
    margin: 0 0 24px !important;
    padding: 12px 16px !important;

    border: 1px solid rgba(184, 126, 15, 0.7) !important;
    border-radius: 14px !important;

    background: rgba(235, 217, 178, 0.72) !important;
    color: #214f97 !important;

    font-size: 1rem !important;
    font-weight: 900 !important;
    line-height: 1.3 !important;
    text-align: center !important;

    box-shadow:
        0 0 5px rgba(255, 248, 211, 1),
        0 0 12px rgba(224, 173, 49, 0.32)
        !important;
}

html body .events-page__event-information {
    display: grid !important;
    gap: 10px !important;

    margin: 0 0 22px !important;
    padding: 18px !important;

    border-radius: 14px !important;
    background: rgba(235, 217, 178, 0.42) !important;
}

html body .events-page__event-information > div {
    display: grid !important;
    grid-template-columns: minmax(90px, 125px) 1fr !important;
    gap: 12px !important;
}

html body .events-page__event-information dt {
    color: #916411 !important;
    font-weight: 900 !important;
}

html body .events-page__event-information dd {
    margin: 0 !important;
    color: #263c54 !important;
}

html body .events-page__event-summary {
    margin: 0 0 18px !important;

    color: #214f97 !important;
    font-size: 1.08rem !important;
    font-weight: 800 !important;
    line-height: 1.55 !important;
}

html body .events-page__event-description {
    margin-top: 16px !important;
    color: #263c54 !important;
    line-height: 1.7 !important;
}

html body .events-page__event-description p {
    margin: 0 0 14px !important;
}

@media (max-width: 760px) {
    html body .events-page__event-information > div {
        grid-template-columns: 1fr !important;
        gap: 3px !important;
    }
}

/* END complete event information display */

/* START final events tabs and scroll data */

/* Ensure the selected event is visible inside the scroll. */
html body .header-events-scroll__details {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 3px !important;

    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html body .header-events-scroll__event-title,
html body .header-events-scroll__event-date,
html body .header-events-scroll__event-end,
html body .header-events-scroll__event-location,
html body .header-events-scroll__event-address,
html body .header-events-scroll__event-summary,
html body .header-events-scroll__event-empty,
html body .header-events-scroll__countdown {
    position: static !important;
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    visibility: visible !important;
    opacity: 1 !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family:
        Georgia,
        "Times New Roman",
        serif
        !important;

    text-align: center !important;

    transform: none !important;

    text-shadow:
        0 0 2px rgba(45, 24, 4, 1),
        0 0 5px rgba(45, 24, 4, 0.98),
        0 0 9px rgba(33, 79, 151, 0.9)
        !important;
}

html body .header-events-scroll__event-title {
    font-size: 0.78rem !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
}

html body .header-events-scroll__event-date,
html body .header-events-scroll__event-end,
html body .header-events-scroll__event-location {
    font-size: 0.53rem !important;
    font-weight: 800 !important;
    line-height: 1.08 !important;
}

html body .header-events-scroll__event-address,
html body .header-events-scroll__event-summary {
    display: none !important;
}

html body .header-events-scroll__countdown {
    margin-top: 4px !important;

    font-size: 0.53rem !important;
    font-weight: 900 !important;
    line-height: 1.08 !important;
}

/* Expanded scroll can show the complete information. */
html body
.header-events-widget.is-expanded
.header-events-scroll__details {
    gap: 7px !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__event-title {
    font-size:
        clamp(1.45rem, 4.8vw, 2.1rem)
        !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__event-date,
html body
.header-events-widget.is-expanded
.header-events-scroll__event-end,
html body
.header-events-widget.is-expanded
.header-events-scroll__event-location,
html body
.header-events-widget.is-expanded
.header-events-scroll__event-address {
    display: block !important;

    font-size:
        clamp(0.86rem, 2.7vw, 1.1rem)
        !important;

    line-height: 1.15 !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__event-summary {
    display: block !important;
    max-width: 92% !important;

    font-size:
        clamp(0.84rem, 2.6vw, 1.05rem)
        !important;

    font-weight: 700 !important;
    line-height: 1.2 !important;
}

html body
.header-events-widget.is-expanded
.header-events-scroll__countdown {
    margin-top: 9px !important;

    font-size:
        clamp(0.92rem, 3vw, 1.22rem)
        !important;

    line-height: 1.2 !important;
}

/* Upcoming and Previous tabs. */
html body .events-page__tabs {
    display: flex !important;
    justify-content: center !important;
    gap: 12px !important;

    margin: 0 0 34px !important;
}

html body .events-page__tab {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;

    padding: 11px 20px !important;

    border:
        1px solid rgba(184, 126, 15, 0.88)
        !important;
    border-radius: 999px !important;

    background: #ebd9b2 !important;
    color: #214f97 !important;

    font-size: 0.96rem !important;
    font-weight: 900 !important;

    box-shadow:
        0 0 4px rgba(255, 248, 211, 1),
        0 0 10px rgba(224, 173, 49, 0.4)
        !important;

    cursor: pointer !important;
}

html body .events-page__tab span {
    display: grid !important;
    place-items: center !important;

    min-width: 24px !important;
    height: 24px !important;
    padding: 0 6px !important;

    border-radius: 999px !important;

    background: rgba(33, 79, 151, 0.12) !important;
}

html body .events-page__tab.is-active {
    background: #214f97 !important;
    color: #ffffff !important;

    box-shadow:
        0 0 5px rgba(255, 255, 245, 1),
        0 0 14px rgba(224, 173, 49, 0.85)
        !important;
}

html body .events-page__tab.is-active span {
    background: rgba(255, 255, 255, 0.18) !important;
}

html body .events-page__tab-panel[hidden] {
    display: none !important;
}

html body .events-page__event-countdown {
    margin: 0 0 22px !important;
    padding: 12px 16px !important;

    border:
        1px solid rgba(184, 126, 15, 0.72)
        !important;
    border-radius: 14px !important;

    background:
        rgba(235, 217, 178, 0.74)
        !important;

    color: #214f97 !important;

    font-size: 1rem !important;
    font-weight: 900 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

@media (max-width: 620px) {
    html body .events-page__tabs {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    html body .events-page__tab {
        width: 100% !important;
    }
}

/* END final events tabs and scroll data */

/* START public event RSVP */

html body .events-page__introduction {
    max-width: 680px !important;
    margin: 0 auto 28px !important;
    color: #304762 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    text-align: center !important;
}

html body .events-page__event-header {
    margin-bottom: 15px !important;
}

html body .event-rsvp {
    margin-top: 26px !important;
    padding: clamp(20px, 4vw, 30px) !important;

    border: 1px solid rgba(184, 126, 15, 0.82) !important;
    border-radius: 18px !important;

    background:
        linear-gradient(
            145deg,
            rgba(255, 251, 230, 0.98),
            rgba(235, 217, 178, 0.72)
        )
        !important;

    box-shadow:
        0 0 5px rgba(255, 255, 245, 1),
        0 0 15px rgba(224, 173, 49, 0.3)
        !important;
}

html body .event-rsvp__title {
    margin: 0 0 14px !important;
    color: #214f97 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 1.5rem !important;
    text-align: center !important;
}

html body .event-rsvp__attendance,
html body .event-rsvp__deadline,
html body .event-rsvp__instructions,
html body .event-rsvp__account-required,
html body .event-rsvp__confirmed,
html body .event-rsvp__closed {
    color: #304762 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    line-height: 1.55 !important;
    text-align: center !important;
}

html body .event-rsvp__attendance {
    font-weight: 800 !important;
}

html body .event-rsvp__instructions {
    margin: 16px auto !important;
    padding: 13px 16px !important;
    max-width: 680px !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.62) !important;
}

html body .event-rsvp__account-actions {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin-top: 15px !important;
}

html body .event-rsvp__button,
html body .event-rsvp__signin,
html body .event-rsvp__cancel {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 44px !important;
    padding: 10px 20px !important;

    border: 1px solid #b87e0f !important;
    border-radius: 999px !important;

    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 0.96rem !important;
    font-weight: 800 !important;
    text-decoration: none !important;

    cursor: pointer !important;
}

html body .event-rsvp__button {
    background: #214f97 !important;
    color: #ffffff !important;
}

html body .event-rsvp__signin {
    background: #ebd9b2 !important;
    color: #214f97 !important;
}

html body .event-rsvp__cancel {
    background: #ffffff !important;
    color: #7b2f2f !important;
}

html body .event-rsvp__confirmed {
    padding: 16px !important;
    border-radius: 13px !important;
    background: rgba(224, 245, 228, 0.85) !important;
}

html body .event-rsvp__closed {
    font-weight: 800 !important;
}

html body .event-rsvp form {
    margin: 15px 0 0 !important;
    text-align: center !important;
}

/* END public event RSVP */

/* START RSVP result messages */

html body .events-page__messages {
    display: grid !important;
    gap: 10px !important;

    max-width: 760px !important;
    margin: 0 auto 26px !important;
}

html body .events-page__message {
    margin: 0 !important;
    padding: 14px 18px !important;

    border: 1px solid !important;
    border-radius: 14px !important;

    font-family:
        Georgia,
        "Times New Roman",
        serif
        !important;

    font-size: 1rem !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;
    text-align: center !important;

    box-shadow:
        0 3px 10px rgba(33, 54, 78, 0.12)
        !important;
}

html body .events-page__message--success {
    border-color: #4b8a5b !important;
    background: #e1f4e5 !important;
    color: #205d32 !important;
}

html body .events-page__message--error {
    border-color: #a24a4a !important;
    background: #fde7e7 !important;
    color: #7a2525 !important;
}

html body .events-page__message--warning {
    border-color: #a76c22 !important;
    background: #fff2d5 !important;
    color: #70440d !important;
}

html body .events-page__message--info {
    border-color: #5078ad !important;
    background: #e8f0fb !important;
    color: #214f97 !important;
}

html body .event-rsvp__button {
    position: relative !important;
    z-index: 2 !important;

    pointer-events: auto !important;
    touch-action: manipulation !important;
}

/* END RSVP result messages */
