/*
 * Art direction: a bright animal discovery world inspired by a full-width
 * school hero. Presentation only; routes, forms and CMS data remain shared.
 */
.world-animal-adventure {
    --animal-purple: #4c43b9;
    --animal-purple-deep: #2d2b78;
    --animal-blue: #2752a7;
    --animal-cyan: #2fb7c5;
    --animal-sun: #f6b93b;
    --animal-coral: #ef688a;
    --animal-lime: #8dce4a;
    --animal-cream: #fff8ed;
    --animal-surface: #fff;
    --animal-ink: #273457;
    --animal-muted: #5e6682;
    --animal-line: #dfe1f1;
    --animal-radius-sm: .9rem;
    --animal-radius-md: 1.6rem;
    --animal-radius-lg: 2.8rem;
    --animal-shadow: 0 1.4rem 3.8rem rgb(39 52 87 / 14%);
    --animal-shadow-soft: 0 .8rem 2.2rem rgb(39 52 87 / 10%);
    --animal-shell: 78rem;
    --public-section-space: clamp(2.5rem, 3.5vw, 3.25rem);
    color: var(--animal-ink);
    background: var(--animal-cream);
}

.world-animal-adventure :is(h1, h2, h3, h4, .world-brand__text strong) {
    color: var(--animal-ink);
    font-family: var(--school-font-family, "Trebuchet MS", Arial, sans-serif);
    font-weight: 850;
    letter-spacing: -.035em;
}

.world-animal-adventure :is(p, li, dd) { text-wrap: pretty; }
.world-animal-adventure img { color: transparent; }
.world-animal-adventure :is(section, article, div, figure) { min-width: 0; }
.world-animal-adventure :is(a, button, input, select, textarea):focus-visible {
    outline: .2rem solid #f4d04f;
    outline-offset: .22rem;
}

/* Shared shell: the menu floats over every package hero. */
.world-animal-adventure .world-ribbon { display: none; }
.world-animal-adventure .world-header {
    position: fixed;
    z-index: 1000;
    top: .85rem;
    right: 0;
    left: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.world-animal-adventure .world-header.is-scrolled {
    border: 0;
    background: transparent;
    box-shadow: none;
}

.world-animal-adventure .world-header__inner {
    min-height: 4.7rem;
    padding: .48rem .58rem .48rem 1rem;
    border: 1px solid rgb(255 255 255 / 25%);
    border-radius: 1.4rem;
    background: rgb(37 47 132 / 28%);
    box-shadow: 0 1rem 2.5rem rgb(23 22 80 / 18%);
    backdrop-filter: blur(1rem) saturate(135%);
    transition: background .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.world-animal-adventure .world-header.is-scrolled .world-header__inner {
    border-color: rgb(76 67 185 / 12%);
    background: rgb(255 255 255 / 96%);
    box-shadow: 0 .9rem 2.4rem rgb(39 52 87 / 14%);
}

.world-animal-adventure .world-brand__mark {
    width: 3.35rem;
    height: 3.35rem;
    border: 1px solid rgb(255 255 255 / 42%);
    border-radius: 1.05rem;
    background: rgb(255 255 255 / 92%);
    box-shadow: 0 .45rem 1rem rgb(25 25 85 / 16%);
}

.world-animal-adventure .world-brand__text :is(strong, small),
.world-animal-adventure .world-nav > a:not(.world-button) { color: #fff; }
.world-animal-adventure .world-brand__text strong { max-width: 18rem; }
.world-animal-adventure .world-brand__text small { opacity: .86; }
.world-animal-adventure .world-header.is-scrolled .world-brand__text strong,
.world-animal-adventure .world-header.is-scrolled .world-brand__text small,
.world-animal-adventure .world-header.is-scrolled .world-nav > a:not(.world-button) { color: var(--animal-ink); }

.world-animal-adventure .world-nav { gap: .25rem; }
.world-animal-adventure .world-nav > a:not(.world-button) {
    padding: .7rem .64rem;
    border-radius: 999px;
    font-size: .82rem;
    text-decoration: none;
}
.world-animal-adventure .world-nav > a:not(.world-button)::after { display: none; }
.world-animal-adventure .world-nav > a:not(.world-button):hover,
.world-animal-adventure .world-nav > a:not(.world-button).is-active {
    color: #27205f;
    background: #f8d66e;
}

.world-animal-adventure .world-button,
.world-animal-adventure .animal-button {
    position: relative;
    display: inline-flex;
    min-height: 3.15rem;
    align-items: center;
    justify-content: center;
    padding: .78rem 1.35rem;
    border: 2px solid var(--animal-purple-deep);
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(135deg, #5b50d2, var(--animal-purple));
    box-shadow: 0 .45rem 0 var(--animal-purple-deep), 0 .8rem 1.6rem rgb(45 43 120 / 18%);
    font-weight: 850;
    line-height: 1.12;
    text-align: center;
    text-decoration: none;
    transition: translate .18s ease, box-shadow .18s ease, filter .18s ease;
}

.world-animal-adventure .world-button:hover,
.world-animal-adventure .animal-button:hover {
    box-shadow: 0 .2rem 0 var(--animal-purple-deep), 0 .65rem 1.3rem rgb(45 43 120 / 20%);
    filter: saturate(1.08);
    translate: 0 .22rem;
}

.world-animal-adventure .world-button:active,
.world-animal-adventure .animal-button:active { translate: 0 .35rem; }
.world-animal-adventure .world-button:disabled,
.world-animal-adventure .animal-button:disabled { cursor: not-allowed; filter: grayscale(.35); opacity: .62; }
.world-animal-adventure .world-nav > .world-button {
    min-height: 2.8rem;
    border-color: #c98212;
    color: #34275e;
    background: linear-gradient(135deg, #ffd86c, var(--animal-sun));
    box-shadow: 0 .3rem 0 #b87612;
}

.world-animal-adventure .world-nav-toggle {
    border: 1px solid rgb(255 255 255 / 50%);
    background: #fff;
}
.world-animal-adventure .world-nav-toggle > span:not(.world-sr-only) { background: var(--animal-purple); }
.world-animal-adventure .world-flashes { top: 7rem; }

.world-animal-adventure .world-global-cta {
    color: #fff;
    background:
        radial-gradient(circle at 90% 10%, rgb(246 185 59 / 23%), transparent 16rem),
        radial-gradient(circle at 5% 95%, rgb(47 183 197 / 22%), transparent 20rem),
        linear-gradient(135deg, #243f93, #553ab5 60%, #71339a);
}
.world-animal-adventure .world-global-cta::before,
.world-animal-adventure .world-global-cta::after { opacity: .2; }
.world-animal-adventure .world-global-cta :is(h2, p, .world-eyebrow) { color: #fff; }
.world-animal-adventure .world-global-cta .world-button--ghost {
    border-color: rgb(255 255 255 / 72%);
    color: #fff;
    background: rgb(255 255 255 / 10%);
}

.world-animal-adventure .world-footer {
    color: #eef2ff;
    background:
        radial-gradient(circle at 84% 0, rgb(47 183 197 / 17%), transparent 24rem),
        linear-gradient(150deg, #1d2856, #2c226d 58%, #301c5d);
}
.world-animal-adventure .world-footer::before {
    position: absolute;
    inset: 0 0 auto;
    height: 2.6rem;
    background: radial-gradient(circle at 2rem -1rem, var(--animal-cream) 0 2.4rem, transparent 2.45rem) 0 0 / 4rem 2.6rem repeat-x;
    content: "";
}
.world-animal-adventure .world-footer::after { opacity: .16; }
.world-animal-adventure .world-footer :is(h3, a, li, p),
.world-animal-adventure .world-brand--footer .world-brand__text :is(strong, small) { color: #eef2ff; }
.world-animal-adventure .world-footer__bottom { border-color: rgb(255 255 255 / 16%); }
.world-animal-adventure .world-newsletter input { border-color: transparent; background: #fff; }
.world-animal-adventure .world-newsletter button { color: #332861; background: var(--animal-sun); }
.world-animal-adventure .world-floating-contact {
    border-color: #fff;
    color: #332861;
    background: linear-gradient(145deg, #ffe179, var(--animal-sun));
    box-shadow: 0 .35rem 0 #b87612, 0 1rem 2rem rgb(28 30 81 / 22%);
}

/* Theme primitives. */
.world-animal-adventure .animal-shell { width: min(calc(100% - 3rem), var(--animal-shell)); margin-inline: auto; }
.world-animal-adventure .animal-section { position: relative; }
.world-animal-adventure .animal-kicker {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    margin-bottom: .8rem;
    color: #3f3a9f;
    font-size: .74rem;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.world-animal-adventure .animal-kicker::before {
    width: 1.65rem;
    height: .22rem;
    border-radius: 999px;
    background: var(--animal-coral);
    content: "";
}
.world-animal-adventure .animal-kicker--light { color: #fff2bd; }
.world-animal-adventure .animal-kicker--light::before { background: var(--animal-sun); }
.world-animal-adventure .animal-heading { max-width: 50rem; margin: 0 auto var(--public-heading-gap); text-align: center; }
.world-animal-adventure .animal-heading h2 { margin-bottom: .7rem; }
.world-animal-adventure .animal-heading > p:not(.animal-kicker) { color: var(--animal-muted); }
.world-animal-adventure .animal-heading--split { display: flex; max-width: none; align-items: end; justify-content: space-between; gap: 2rem; text-align: left; }
.world-animal-adventure .animal-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }
.world-animal-adventure .animal-button--sun {
    border-color: #ae7110;
    color: #34275e;
    background: linear-gradient(135deg, #ffe07a, var(--animal-sun));
    box-shadow: 0 .45rem 0 #a9680c, 0 .9rem 1.6rem rgb(28 24 80 / 20%);
}
.world-animal-adventure .animal-button--outline {
    color: var(--animal-purple-deep);
    background: #fff;
    box-shadow: 0 .42rem 0 #c9c6e7;
}
.world-animal-adventure .animal-button--wide { width: 100%; }
.world-animal-adventure .animal-link { color: #3f3a9f; font-weight: 850; text-decoration: none; }
.world-animal-adventure .animal-link:hover { text-decoration: underline; }
.world-animal-adventure .animal-link--light { color: #fff; }

/* Home hero: full-width gradient, child on the right and a soft cloud edge. */
.world-animal-adventure #main-content#main-content > .animal-hero {
    position: relative;
    box-sizing: border-box;
    min-height: 46.5rem;
    padding: 8rem 0 4.5rem !important;
    color: #fff;
    background:
        radial-gradient(circle at 84% 23%, rgb(255 255 255 / 13%), transparent 18rem),
        radial-gradient(circle at 7% 90%, rgb(47 183 197 / 22%), transparent 24rem),
        linear-gradient(122deg, #2752a7, #4e43bd 54%, #77319e);
    isolation: isolate;
    overflow: hidden;
}
.world-animal-adventure #main-content .animal-hero h1 {
    color: #fff;
    font-size: clamp(3rem, 4.55vw, 4.55rem) !important;
    line-height: .98 !important;
}
.world-animal-adventure .animal-hero h1 em { color: #ffe179; font-style: normal; }
.world-animal-adventure .animal-hero__grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: clamp(2rem, 5vw, 4.5rem); }
.world-animal-adventure .animal-hero__copy { padding-bottom: 2rem; }
.world-animal-adventure .animal-hero__copy > p:not(.animal-kicker) { max-width: 43rem; color: #eef1ff; font-size: 1.08rem; }
.world-animal-adventure .animal-hero__notes { display: flex; flex-wrap: wrap; gap: .7rem; padding: 0; margin: 1.6rem 0 0; list-style: none; }
.world-animal-adventure .animal-hero__notes li { display: flex; align-items: center; gap: .45rem; padding: .48rem .7rem; border: 1px solid rgb(255 255 255 / 24%); border-radius: 999px; color: #f8f8ff; background: rgb(255 255 255 / 8%); font-size: .76rem; }
.world-animal-adventure .animal-hero__notes span { color: #ffe179; }
.world-animal-adventure .animal-hero__visual { position: relative; align-self: end; min-height: 34rem; margin: 0; }
.world-animal-adventure .animal-hero__visual > img { position: absolute; z-index: 2; right: 2%; bottom: -4.2rem; width: min(77%, 31rem); height: 42rem; border: .55rem solid rgb(255 255 255 / 82%); border-radius: 48% 48% 2rem 2rem; object-fit: cover; object-position: center 31%; box-shadow: 0 2.4rem 5rem rgb(23 15 75 / 34%); }
.world-animal-adventure .animal-hero__visual figcaption { position: absolute; z-index: 4; right: 0; bottom: .5rem; display: grid; padding: .8rem 1rem; border: 2px solid #33275f; border-radius: 1rem; color: #33275f; background: #fff8da; box-shadow: .35rem .42rem 0 var(--animal-sun); rotate: -2deg; }
.world-animal-adventure .animal-hero__visual figcaption span { color: #6b6680; font-size: .73rem; }
.world-animal-adventure .animal-orbit { position: absolute; z-index: 1; top: 6%; right: 8%; width: min(80%, 32rem); aspect-ratio: 1; border: 2.3rem solid var(--animal-cyan); border-right-color: var(--animal-sun); border-bottom-color: var(--animal-coral); border-radius: 50%; rotate: -18deg; opacity: .92; }
.world-animal-adventure .animal-hero__sparkles span { position: absolute; z-index: 1; color: rgb(255 255 255 / 65%); }
.world-animal-adventure .animal-hero__sparkles span:nth-child(1) { top: 27%; left: 48%; font-size: 2rem; }
.world-animal-adventure .animal-hero__sparkles span:nth-child(2) { top: 17%; right: 7%; }
.world-animal-adventure .animal-hero__sparkles span:nth-child(3) { right: 3%; bottom: 26%; font-size: 1.8rem; }
.world-animal-adventure .animal-hero__sparkles span:nth-child(4) { bottom: 20%; left: 43%; }
.world-animal-adventure .animal-clouds { position: absolute; z-index: 5; right: -3rem; bottom: -3.4rem; left: -3rem; height: 8rem; background: radial-gradient(circle at 4rem 4rem, #fff 0 4.2rem, transparent 4.3rem) 0 0 / 8rem 8rem repeat-x; pointer-events: none; }

/* Home content. */
.world-animal-adventure .animal-welcome { background: #fff; }
.world-animal-adventure .animal-welcome__grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(2.5rem, 7vw, 6rem); }
.world-animal-adventure .animal-welcome__gallery { position: relative; min-height: 38rem; }
.world-animal-adventure .animal-photo { position: absolute; margin: 0; overflow: hidden; border: .55rem solid #fff; border-radius: 2.4rem; background: #fff; box-shadow: var(--animal-shadow); }
.world-animal-adventure .animal-photo img { width: 100%; height: 100%; object-fit: cover; }
.world-animal-adventure .animal-photo--tall { top: 0; left: 0; width: 62%; height: 34rem; rotate: -2deg; }
.world-animal-adventure .animal-photo--tall img { object-position: center 35%; }
.world-animal-adventure .animal-photo--wide { right: 0; bottom: 0; width: 55%; height: 17rem; rotate: 2deg; }
.world-animal-adventure .animal-sticker { position: absolute; z-index: 3; right: 5%; top: 5%; display: grid; width: 7.2rem; aspect-ratio: 1; place-items: center; padding: 1rem; border-radius: 50%; color: #34275e; background: var(--animal-sun); box-shadow: .45rem .5rem 0 #b87813; font-size: .78rem; font-weight: 900; text-align: center; rotate: 8deg; }
.world-animal-adventure .animal-welcome__copy h2 { max-width: 13ch; }
.world-animal-adventure .animal-welcome__copy > p:not(.animal-kicker) { color: var(--animal-muted); }
.world-animal-adventure .animal-promise-list { display: grid; gap: .65rem; margin-block: 1.5rem 1.8rem; }
.world-animal-adventure .animal-promise-list article { display: grid; grid-template-columns: 3rem 1fr; gap: .8rem; padding: .85rem 1rem; border: 1px solid var(--animal-line); border-radius: 1rem; background: #fbfaff; }
.world-animal-adventure .animal-promise-list article > span { display: grid; width: 2.6rem; height: 2.6rem; place-items: center; border-radius: 50%; color: #fff; background: var(--animal-purple); font-size: .72rem; font-weight: 900; }
.world-animal-adventure .animal-promise-list h3 { margin: 0 0 .1rem; font-size: 1.05rem; }
.world-animal-adventure .animal-promise-list p { margin: 0; color: var(--animal-muted); font-size: .86rem; }

.world-animal-adventure .animal-habitats { background: linear-gradient(180deg, #eef7ff, #f5efff); }
.world-animal-adventure .animal-habitat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.4rem; }
.world-animal-adventure .animal-habitat { display: grid; grid-template-columns: .9fr 1.1fr; min-height: 22rem; overflow: hidden; border: 1px solid rgb(255 255 255 / 42%); border-radius: 2.4rem; color: #fff; box-shadow: var(--animal-shadow); }
.world-animal-adventure .animal-habitat:first-child { grid-row: span 2; grid-template-columns: 1fr; }
.world-animal-adventure .animal-habitat figure { min-height: 14rem; margin: 0; overflow: hidden; }
.world-animal-adventure .animal-habitat:first-child figure { min-height: 24rem; }
.world-animal-adventure .animal-habitat img { width: 100%; height: 100%; object-fit: cover; }
.world-animal-adventure .animal-habitat:first-child img { object-position: center 32%; }
.world-animal-adventure .animal-habitat > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(1.4rem, 3vw, 2.2rem); }
.world-animal-adventure .animal-habitat span { color: #fff4bc; font-size: .67rem; font-weight: 900; letter-spacing: .08em; }
.world-animal-adventure .animal-habitat :is(h3, p) { color: #fff; }
.world-animal-adventure .animal-habitat h3 { font-size: 1.7rem; }
.world-animal-adventure .animal-habitat--coral { background: linear-gradient(145deg, #da4f79, #7e3aa6); }
.world-animal-adventure .animal-habitat--sky { background: linear-gradient(145deg, #187cae, #3849b3); }
.world-animal-adventure .animal-habitat--violet { background: linear-gradient(145deg, #5f44bb, #3c2d85); }

.world-animal-adventure .animal-together {
    color: #fff;
    background:
        radial-gradient(circle at 87% 5%, rgb(246 185 59 / 17%), transparent 18rem),
        linear-gradient(135deg, #203e91, #513ab0 65%, #6a3296);
    overflow: hidden;
}
.world-animal-adventure .animal-together__grid { display: grid; grid-template-columns: .82fr 1.18fr; align-items: center; gap: clamp(2.5rem, 7vw, 6rem); }
.world-animal-adventure .animal-together__photo { position: relative; margin: 0; }
.world-animal-adventure .animal-together__photo img { width: 100%; max-height: 39rem; border: .55rem solid #fff; border-radius: 49% 49% 2rem 2rem; object-fit: cover; object-position: center 36%; box-shadow: 1rem 1.1rem 0 rgb(47 183 197 / 28%), var(--animal-shadow); }
.world-animal-adventure .animal-together__photo figcaption { position: absolute; right: -1rem; bottom: 1.5rem; padding: .65rem .9rem; border-radius: 999px; color: #3b2d72; background: var(--animal-sun); font-size: .75rem; font-weight: 900; rotate: -3deg; }
.world-animal-adventure .animal-together__copy :is(h2, p, dt, dd) { color: #fff; }
.world-animal-adventure .animal-together__copy > p:not(.animal-kicker) { color: #e7e8ff; }
.world-animal-adventure .animal-facts { display: grid; gap: .8rem; margin-top: 1.6rem; }
.world-animal-adventure .animal-facts div { display: grid; grid-template-columns: 7rem 1fr; padding: .9rem 1rem; border: 1px solid rgb(255 255 255 / 18%); border-radius: 1rem; background: rgb(255 255 255 / 8%); }
.world-animal-adventure .animal-facts dt { color: #ffe179; font-weight: 900; }
.world-animal-adventure .animal-facts dd { margin: 0; }

.world-animal-adventure .animal-journal { background: #fffaf2; }
.world-animal-adventure .animal-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.35rem; }
.world-animal-adventure .animal-news-card { overflow: hidden; border: 1px solid var(--animal-line); border-radius: 1.8rem; background: #fff; box-shadow: var(--animal-shadow-soft); transition: translate .2s ease, box-shadow .2s ease; }
.world-animal-adventure .animal-news-card:hover { box-shadow: var(--animal-shadow); translate: 0 -.35rem; }
.world-animal-adventure .animal-news-card__image { position: relative; display: block; aspect-ratio: 16 / 10; margin: .5rem; overflow: hidden; border-radius: 1.35rem; }
.world-animal-adventure .animal-news-card__image img { width: 100%; height: 100%; object-fit: cover; transition: scale .35s ease; }
.world-animal-adventure .animal-news-card:hover .animal-news-card__image img { scale: 1.04; }
.world-animal-adventure .animal-news-card__image > span { position: absolute; bottom: .65rem; left: .65rem; padding: .35rem .65rem; border-radius: 999px; color: #34275e; background: #ffe075; font-size: .68rem; font-weight: 900; }
.world-animal-adventure .animal-news-card > div { padding: 1rem 1.35rem 1.45rem; }
.world-animal-adventure .animal-news-card > div > p:first-child { display: flex; justify-content: space-between; gap: .8rem; color: var(--animal-muted); font-size: .72rem; }
.world-animal-adventure .animal-news-card > div > p:first-child span { color: #4b43ae; font-weight: 900; text-transform: uppercase; }
.world-animal-adventure .animal-news-card time { color: var(--animal-muted); font-size: .75rem; }
.world-animal-adventure .animal-news-card h3 { font-size: 1.35rem; }
.world-animal-adventure .animal-news-card h3 a { text-decoration: none; }
.world-animal-adventure .animal-news-card > div > p:not(:first-child) { color: var(--animal-muted); }
.world-animal-adventure .animal-empty { max-width: 39rem; padding: 2rem; margin-inline: auto; border: 2px dashed #8f8ac9; border-radius: 2rem; background: #fff; text-align: center; }
.world-animal-adventure .animal-empty img { width: min(100%, 16rem); margin-inline: auto; border-radius: 50%; }

.world-animal-adventure .animal-consult,
.world-animal-adventure .animal-enroll,
.world-animal-adventure .animal-recruit,
.world-animal-adventure .animal-general {
    color: #fff;
    background:
        radial-gradient(circle at 91% 7%, rgb(246 185 59 / 17%), transparent 18rem),
        radial-gradient(circle at 4% 94%, rgb(47 183 197 / 18%), transparent 22rem),
        linear-gradient(135deg, #243f93, #543aae 64%, #6f3298);
}
.world-animal-adventure .animal-consult__grid,
.world-animal-adventure .animal-form-layout { display: grid; grid-template-columns: .72fr 1.28fr; align-items: start; gap: clamp(2.2rem, 6vw, 5.5rem); }
.world-animal-adventure .animal-consult__copy :is(h2, p),
.world-animal-adventure .animal-form-copy :is(h2, p) { color: #fff; }
.world-animal-adventure .animal-consult__copy > p:not(.animal-kicker),
.world-animal-adventure .animal-form-copy > p:not(.animal-kicker) { color: #e8e9ff; }
.world-animal-adventure .animal-consult__copy > img { width: min(100%, 25rem); margin-top: 1rem; border: .45rem solid #fff; border-radius: 2rem; box-shadow: .75rem .8rem 0 rgb(47 183 197 / 30%); rotate: -2deg; }
.world-animal-adventure .animal-form-copy a { color: #ffe179; font-weight: 900; }

/* Forms. */
.world-animal-adventure .animal-form {
    display: grid;
    gap: 1rem;
    padding: clamp(1.25rem, 4vw, 2.35rem);
    border: 1px solid rgb(57 50 135 / 14%);
    border-radius: 2rem;
    color: var(--animal-ink);
    background: #fff;
    box-shadow: .75rem .85rem 0 rgb(246 185 59 / 88%), 0 2rem 4rem rgb(26 23 78 / 22%);
}
.world-animal-adventure .animal-form header { padding-bottom: .85rem; border-bottom: 2px dashed #d9d8eb; }
.world-animal-adventure .animal-form header span { color: #4b43ae; font-size: .72rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.world-animal-adventure .animal-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.world-animal-adventure .animal-form label { display: grid; gap: .38rem; }
.world-animal-adventure .animal-form label > span { font-size: .86rem; font-weight: 850; }
.world-animal-adventure .animal-form :is(input, select, textarea),
.world-animal-adventure .animal-news-tools :is(input, select) {
    width: 100%;
    min-height: 3.2rem;
    padding: .75rem .9rem;
    border: 2px solid #d8d9e8;
    border-radius: .9rem;
    color: var(--animal-ink);
    background: #fff;
    transition: border-color .18s ease, box-shadow .18s ease;
}
.world-animal-adventure .animal-form textarea { min-height: 7.5rem; resize: vertical; }
.world-animal-adventure .animal-form :is(input, select, textarea):hover,
.world-animal-adventure .animal-news-tools :is(input, select):hover { border-color: #aaa6d4; }
.world-animal-adventure .animal-form :is(input, select, textarea):focus,
.world-animal-adventure .animal-news-tools :is(input, select):focus { border-color: var(--animal-purple); box-shadow: 0 0 0 .25rem rgb(76 67 185 / 14%); outline: 0; }
.world-animal-adventure .animal-field--wide { grid-column: 1 / -1; }
.world-animal-adventure .animal-consent { grid-template-columns: auto 1fr !important; align-items: start; }
.world-animal-adventure .animal-consent input { width: 1.15rem; min-height: auto; margin-top: .25rem; accent-color: var(--animal-purple); }

/* Interior page grammar. */
.world-animal-adventure #main-content#main-content > .animal-page-hero,
.world-animal-adventure #main-content#main-content > .animal-article__hero {
    position: relative;
    box-sizing: border-box;
    min-height: 38rem;
    padding: 7.4rem 0 3.6rem !important;
    color: #fff;
    background:
        radial-gradient(circle at 84% 20%, rgb(255 255 255 / 14%), transparent 18rem),
        radial-gradient(circle at 6% 92%, rgb(47 183 197 / 23%), transparent 23rem),
        linear-gradient(125deg, #2752a7, #4f43bb 56%, #76319d);
    overflow: hidden;
}
.world-animal-adventure #main-content .animal-page-hero h1,
.world-animal-adventure #main-content .animal-article__hero h1 {
    color: #fff;
    font-size: clamp(2.75rem, 4.15vw, 4.1rem) !important;
    line-height: 1.02 !important;
}
.world-animal-adventure .animal-page-hero h1 em { color: #ffe179; font-style: normal; }
.world-animal-adventure .animal-page-hero__grid { display: grid; grid-template-columns: 1.12fr .88fr; align-items: center; gap: clamp(2.2rem, 5vw, 4.5rem); }
.world-animal-adventure .animal-page-hero__grid > div > p:not(.animal-kicker) { max-width: 44rem; color: #e9ebff; }
.world-animal-adventure .animal-page-hero figure { position: relative; margin: 0; }
.world-animal-adventure .animal-page-hero figure img { width: 100%; max-height: 22rem; border: .5rem solid rgb(255 255 255 / 88%); border-radius: 2.2rem; object-fit: cover; object-position: center 40%; box-shadow: .8rem .9rem 0 rgb(246 185 59 / 82%), 0 2rem 4rem rgb(22 16 76 / 30%); rotate: 1.5deg; }
.world-animal-adventure .animal-page-hero--admissions figure img,
.world-animal-adventure .animal-page-hero--recruitment figure img { max-height: 24rem; object-position: center 28%; }
.world-animal-adventure .animal-page-hero figure figcaption { position: absolute; right: -.5rem; bottom: 1rem; padding: .55rem .8rem; border-radius: 999px; color: #34275e; background: #ffe079; font-size: .73rem; font-weight: 900; }
.world-animal-adventure .animal-crumbs { display: flex; flex-wrap: wrap; gap: .55rem; margin-bottom: 1rem; color: #e5e7ff; font-size: .78rem; }
.world-animal-adventure .animal-crumbs a { color: #fff; font-weight: 850; }

.world-animal-adventure .animal-story { background: #fff; }
.world-animal-adventure .animal-story__grid,
.world-animal-adventure .animal-team__grid { display: grid; grid-template-columns: .82fr 1.18fr; align-items: center; gap: clamp(2.5rem, 7vw, 6rem); }
.world-animal-adventure .animal-story__photo,
.world-animal-adventure .animal-team figure { position: relative; margin: 0; }
.world-animal-adventure .animal-story__photo img,
.world-animal-adventure .animal-team figure img { width: 100%; max-height: 37rem; border: .5rem solid #fff; border-radius: 48% 48% 2rem 2rem; object-fit: cover; object-position: center 35%; box-shadow: .8rem .9rem 0 var(--animal-cyan), var(--animal-shadow); }
.world-animal-adventure .animal-story__photo > span { position: absolute; top: 2rem; right: -1rem; display: grid; width: 4rem; aspect-ratio: 1; place-items: center; border-radius: 50%; color: #3b2d72; background: var(--animal-sun); font-size: 1.6rem; box-shadow: .3rem .38rem 0 #b87612; }
.world-animal-adventure .animal-story blockquote { padding: 1rem 1.2rem; border-left: .35rem solid var(--animal-coral); border-radius: 0 1rem 1rem 0; color: #434b69; background: #fff0f4; }

.world-animal-adventure .animal-values,
.world-animal-adventure .animal-roles { background: linear-gradient(180deg, #eef7ff, #f5efff); }
.world-animal-adventure .animal-value-grid,
.world-animal-adventure .animal-role-grid,
.world-animal-adventure .animal-note-grid,
.world-animal-adventure .animal-contact-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.world-animal-adventure .animal-value-grid article,
.world-animal-adventure .animal-role-grid article,
.world-animal-adventure .animal-note-grid article,
.world-animal-adventure .animal-contact-grid article { padding: 1.5rem; border: 1px solid var(--animal-line); border-radius: 1.6rem; background: #fff; box-shadow: var(--animal-shadow-soft); }
.world-animal-adventure .animal-value-grid article:nth-child(2),
.world-animal-adventure .animal-role-grid article:nth-child(2),
.world-animal-adventure .animal-contact-grid article:nth-child(2) { background: #edfaff; }
.world-animal-adventure .animal-value-grid article:nth-child(3),
.world-animal-adventure .animal-role-grid article:nth-child(3),
.world-animal-adventure .animal-contact-grid article:nth-child(3) { background: #fff5d8; }
.world-animal-adventure .animal-value-grid article:nth-child(4),
.world-animal-adventure .animal-role-grid article:nth-child(4),
.world-animal-adventure .animal-contact-grid article:nth-child(4) { background: #fff0f4; }
.world-animal-adventure .animal-value-grid article > span,
.world-animal-adventure .animal-role-grid article > span,
.world-animal-adventure .animal-contact-grid article > span { display: grid; width: 3.2rem; height: 3.2rem; place-items: center; margin-bottom: 1rem; border-radius: 1rem; background: #eeedff; font-size: 1.5rem; }
.world-animal-adventure .animal-value-grid small,
.world-animal-adventure .animal-contact-grid small { color: #4b43ae; font-weight: 900; }
.world-animal-adventure .animal-value-grid p,
.world-animal-adventure .animal-role-grid p,
.world-animal-adventure .animal-note-grid p,
.world-animal-adventure .animal-contact-grid p { color: var(--animal-muted); }

.world-animal-adventure .animal-care,
.world-animal-adventure .animal-path {
    color: #fff;
    background: linear-gradient(135deg, #243f93, #543aae 64%, #6f3298);
}
.world-animal-adventure .animal-care__grid,
.world-animal-adventure .animal-path__grid { display: grid; grid-template-columns: .75fr 1.25fr; align-items: start; gap: clamp(2.5rem, 7vw, 6rem); }
.world-animal-adventure .animal-path__grid { grid-template-columns: 1fr 1.2fr; align-items: stretch; gap: clamp(2.5rem, 5vw, 4rem); }
.world-animal-adventure .animal-care__grid > div:first-child :is(h2, p),
.world-animal-adventure .animal-path__copy :is(h2, p) { color: #fff; }
.world-animal-adventure .animal-care__grid > div:first-child > p:not(.animal-kicker),
.world-animal-adventure .animal-path__copy > p:not(.animal-kicker) { color: #e6e8ff; }
.world-animal-adventure .animal-care__grid > div:first-child img,
.world-animal-adventure .animal-path__copy img { width: min(100%, 21rem); margin-top: 1rem; border: .4rem solid #fff; border-radius: 50%; box-shadow: .6rem .7rem 0 var(--animal-cyan); }
.world-animal-adventure .animal-path__copy { display: flex; min-width: 0; flex-direction: column; }
.world-animal-adventure .animal-path__copy img {
    width: 100%;
    height: clamp(13rem, 19vw, 16rem);
    margin-top: auto;
    border-radius: 2.2rem;
    object-fit: cover;
    object-position: center 38%;
}
.world-animal-adventure .animal-accordion { display: grid; gap: .7rem; }
.world-animal-adventure .animal-accordion article { overflow: hidden; border: 1px solid rgb(255 255 255 / 20%); border-radius: 1.1rem; background: rgb(255 255 255 / 10%); }
.world-animal-adventure .animal-accordion article.is-open { border-color: #ffe179; background: rgb(255 255 255 / 16%); }
.world-animal-adventure .animal-accordion button { display: flex; width: 100%; justify-content: space-between; gap: 1rem; padding: 1rem 1.2rem; border: 0; color: #fff; background: transparent; font-weight: 850; text-align: left; cursor: pointer; }
.world-animal-adventure .animal-accordion article > div { padding: 0 1.2rem 1rem; color: #e7e8ff; }

.world-animal-adventure .animal-admission-notes { background: #fff; }
.world-animal-adventure .animal-note-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.world-animal-adventure .animal-note-grid article { position: relative; padding-top: 3.8rem; }
.world-animal-adventure .animal-note-grid article > span { position: absolute; top: 1rem; right: 1rem; color: #4c43b9; font-size: 1.4rem; font-weight: 900; }
.world-animal-adventure .animal-note-grid article:nth-child(2) { background: #edfaff; }
.world-animal-adventure .animal-note-grid article:nth-child(3) { background: #fff0f4; }
.world-animal-adventure .animal-timeline { position: relative; display: grid; grid-template-rows: repeat(4, minmax(0, 1fr)); gap: 1rem; padding: 0 0 0 3.5rem; margin: 0; list-style: none; }
.world-animal-adventure .animal-timeline::before { position: absolute; top: 1.5rem; bottom: 1.5rem; left: 1.2rem; border-left: .18rem dashed #ffe179; content: ""; }
.world-animal-adventure .animal-timeline li { position: relative; display: grid; grid-template-columns: 3.2rem 1fr; align-items: center; gap: .9rem; padding: 1rem; border: 1px solid rgb(255 255 255 / 18%); border-radius: 1.2rem; background: rgb(255 255 255 / 10%); }
.world-animal-adventure .animal-timeline li::before { position: absolute; top: 50%; right: calc(100% + 2.1rem); width: .85rem; height: .85rem; border: .2rem solid #533da7; border-radius: 50%; background: #ffe179; content: ""; translate: 50% -50%; }
.world-animal-adventure .animal-timeline li > span { display: grid; width: 3rem; height: 3rem; place-items: center; border-radius: 50%; color: #34275e; background: #ffe179; font-weight: 900; }
.world-animal-adventure .animal-timeline :is(h3, p) { color: #fff; }
.world-animal-adventure .animal-timeline p { margin: 0; color: #e4e5ff; }

.world-animal-adventure .animal-team { background: #fff; }
.world-animal-adventure .animal-team__grid { grid-template-columns: 1.15fr .85fr; }
.world-animal-adventure .animal-check-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; padding: 0; margin-top: 1.4rem; list-style: none; }
.world-animal-adventure .animal-check-list li { padding: .8rem 1rem; border-left: .3rem solid var(--animal-coral); border-radius: 0 1rem 1rem 0; background: #fff0f4; }

.world-animal-adventure .animal-contact-info { background: #fff; }
.world-animal-adventure .animal-contact-grid a { color: #4038a0; font-weight: 850; overflow-wrap: anywhere; }
.world-animal-adventure .animal-contact-form { background: linear-gradient(180deg, #eef7ff, #f5efff); }
.world-animal-adventure .animal-contact-form__grid { display: grid; grid-template-columns: 1.25fr .75fr; align-items: start; gap: 2rem; }
.world-animal-adventure .animal-contact-form__aside { padding: 1.4rem; border-radius: 2rem; color: #fff; background: linear-gradient(145deg, #2859a8, #5a3fb1); box-shadow: var(--animal-shadow); }
.world-animal-adventure .animal-contact-form__aside :is(h2, li) { color: #fff; }
.world-animal-adventure .animal-contact-form__aside img { width: 100%; border-radius: 1.5rem; }
.world-animal-adventure .animal-contact-form__aside ul { padding-left: 1.2rem; }
.world-animal-adventure .animal-map { background: #eef7ff; }
.world-animal-adventure .animal-map header { max-width: 48rem; margin-bottom: 1.4rem; }
.world-animal-adventure .animal-map iframe { width: 100%; min-height: 28rem; border: .55rem solid #fff; border-radius: 2.2rem; box-shadow: .7rem .8rem 0 var(--animal-sun), var(--animal-shadow); }

/* News and article. */
.world-animal-adventure .animal-news-tools { padding-block: 1.6rem; background: #fff0bd; }
.world-animal-adventure .animal-news-tools form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(13rem, .4fr) auto auto; align-items: center; gap: .8rem; }
.world-animal-adventure .animal-featured { background: #fff; }
.world-animal-adventure .animal-featured__grid { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: clamp(2.5rem, 7vw, 6rem); }
.world-animal-adventure .animal-featured__grid time { color: var(--animal-muted); }
.world-animal-adventure .animal-featured__grid h2 a { text-decoration: none; }
.world-animal-adventure .animal-featured__image { display: block; overflow: hidden; border: .55rem solid #fff; border-radius: 2.3rem; box-shadow: .75rem .85rem 0 var(--animal-cyan), var(--animal-shadow); rotate: 1deg; }
.world-animal-adventure .animal-featured__image img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.world-animal-adventure .animal-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: .55rem; margin-top: 2.4rem; }
.world-animal-adventure .animal-pagination a { display: grid; min-width: 2.8rem; min-height: 2.8rem; place-items: center; border: 2px solid var(--animal-purple); border-radius: .85rem; color: var(--animal-purple-deep); font-weight: 900; text-decoration: none; }
.world-animal-adventure .animal-pagination a.is-current { color: #fff; background: var(--animal-purple); }

.world-animal-adventure .animal-article__heading { max-width: 59rem; }
.world-animal-adventure .animal-article__heading > p:not(.animal-kicker) { max-width: 52rem; color: #e8e9ff; }
.world-animal-adventure .animal-article__meta { display: flex; flex-wrap: wrap; gap: .7rem 1rem; color: #e7e8ff; font-size: .82rem; }
.world-animal-adventure .animal-article__meta > span:not(.content-view-count) { padding: .25rem .5rem; border: 1px solid rgb(255 255 255 / 20%); border-radius: 999px; }
.world-animal-adventure .animal-article__cover { position: relative; margin-top: -3rem; }
.world-animal-adventure .animal-article__cover img { width: 100%; max-height: 43rem; border: .55rem solid #fff; border-radius: 2.2rem; object-fit: cover; box-shadow: var(--animal-shadow); }
.world-animal-adventure .animal-article__cover figcaption { position: absolute; right: 1rem; bottom: 1rem; padding: .5rem .75rem; border-radius: 999px; color: #34275e; background: #ffe079; font-size: .72rem; font-weight: 900; }
.world-animal-adventure .animal-article__layout { display: grid; grid-template-columns: 3.3rem minmax(0, 1fr) minmax(15rem, .35fr); gap: clamp(1.5rem, 4vw, 3rem); padding-block: clamp(3rem, 7vw, 6rem); }
.world-animal-adventure .animal-share { position: sticky; top: 7rem; display: grid; align-content: start; gap: .6rem; height: max-content; }
.world-animal-adventure .animal-share :is(a, button) { display: grid; width: 2.8rem; height: 2.8rem; place-items: center; border: 2px solid var(--animal-purple); border-radius: .8rem; color: var(--animal-purple-deep); background: #fff; font-weight: 900; text-decoration: none; cursor: pointer; }
.world-animal-adventure .animal-article__aside { position: sticky; top: 7rem; height: max-content; padding: 1.2rem; border: 1px solid #d8d9e8; border-radius: 1.5rem; background: #fff4d1; box-shadow: var(--animal-shadow-soft); }
.world-animal-adventure .animal-article__aside img { width: 100%; border-radius: 1.2rem; }

.world-animal-adventure .animal-prose { width: 100%; max-width: 72ch; color: #404966; line-height: 1.82; }
.world-animal-adventure .animal-prose > * + * { margin-top: 1em; }
.world-animal-adventure .animal-prose h2 { margin-top: 1.7em; }
.world-animal-adventure .animal-prose :is(img, figure img) { width: 100%; border-radius: 1.4rem; }
.world-animal-adventure .animal-prose blockquote { padding: 1.1rem 1.3rem; border-left: .35rem solid var(--animal-coral); border-radius: 0 1rem 1rem 0; background: #fff0f4; }
.world-animal-adventure .animal-cms { background: #fff; }
.world-animal-adventure .animal-cms--compact { padding-block: 2.6rem !important; }
.world-animal-adventure .animal-policy { background: linear-gradient(180deg, #eef7ff, #f5efff); }
.world-animal-adventure .animal-policy__card { padding: clamp(1.4rem, 4vw, 3rem); border: 1px solid var(--animal-line); border-radius: 2rem; background: #fff; box-shadow: var(--animal-shadow); }

.world-animal-adventure .animal-not-found { position: relative; display: grid; min-height: 100vh; place-items: center; padding: 8rem 1.5rem 4rem; color: #fff; background: linear-gradient(135deg, #2752a7, #4f43bb 56%, #76319d); overflow: hidden; text-align: center; }
.world-animal-adventure .animal-not-found__card { position: relative; z-index: 2; }
.world-animal-adventure .animal-not-found__card > img { width: min(100%, 18rem); margin-inline: auto; border: .45rem solid #fff; border-radius: 50%; box-shadow: .65rem .75rem 0 var(--animal-sun); }
.world-animal-adventure .animal-not-found :is(h1, p) { color: #fff; }
.world-animal-adventure .animal-not-found .animal-actions { justify-content: center; }
.world-animal-adventure .animal-not-found__stars { position: absolute; top: 20%; right: 8%; color: rgb(255 255 255 / 45%); font-size: 2rem; }

@media (max-width: 72rem) {
    .world-animal-adventure .world-nav > a:not(.world-button) { padding-inline: .5rem; font-size: .77rem; }
    .world-animal-adventure .animal-value-grid,
    .world-animal-adventure .animal-role-grid,
    .world-animal-adventure .animal-contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .world-animal-adventure .animal-article__layout { grid-template-columns: 3.3rem minmax(0, 1fr); }
    .world-animal-adventure .animal-article__aside { display: none; }
}

@media (max-width: 68rem) {
    .world-animal-adventure .world-header__inner { background: rgb(37 47 132 / 48%); }
    .world-animal-adventure .world-nav {
        color: var(--animal-ink);
        border: 1px solid rgb(76 67 185 / 16%);
        border-radius: 1.4rem;
        background: #fff;
        box-shadow: var(--animal-shadow);
        backdrop-filter: none;
    }
    .world-animal-adventure .world-nav > a:not(.world-button),
    .world-animal-adventure .world-header:not(.is-scrolled) .world-nav > a:not(.world-button) { color: var(--animal-ink); }
    .world-animal-adventure .world-nav > a.is-active:not(.world-button) { color: #2f286f; background: #fff0bd; }
    .world-animal-adventure .animal-hero__grid,
    .world-animal-adventure .animal-page-hero__grid { grid-template-columns: .95fr 1.05fr; gap: 2rem; }
    .world-animal-adventure .animal-hero__visual > img { width: 86%; }
    .world-animal-adventure .animal-habitat-grid { grid-template-columns: 1fr; }
    .world-animal-adventure .animal-habitat:first-child { grid-row: auto; grid-template-columns: .9fr 1.1fr; }
    .world-animal-adventure .animal-habitat:first-child figure { min-height: 16rem; }
    .world-animal-adventure .animal-consult__grid,
    .world-animal-adventure .animal-form-layout,
    .world-animal-adventure .animal-care__grid,
    .world-animal-adventure .animal-path__grid { grid-template-columns: 1fr; }
    .world-animal-adventure .animal-consult__copy > img,
    .world-animal-adventure .animal-care__grid > div:first-child img,
    .world-animal-adventure .animal-path__copy img { display: none; }
    .world-animal-adventure .animal-contact-form__grid { grid-template-columns: 1fr; }
    .world-animal-adventure .animal-contact-form__aside { display: grid; grid-template-columns: minmax(12rem, .65fr) 1fr; align-items: center; gap: 1.4rem; }
    .world-animal-adventure .animal-contact-form__aside ul { grid-column: 2; }
}

@media (max-width: 52rem) {
    .world-animal-adventure #main-content#main-content > .animal-hero { min-height: auto; padding: 8rem 0 6rem !important; }
    .world-animal-adventure .animal-hero__grid,
    .world-animal-adventure .animal-page-hero__grid,
    .world-animal-adventure .animal-welcome__grid,
    .world-animal-adventure .animal-together__grid,
    .world-animal-adventure .animal-story__grid,
    .world-animal-adventure .animal-team__grid,
    .world-animal-adventure .animal-featured__grid { grid-template-columns: 1fr; }
    .world-animal-adventure .animal-hero__copy { padding-bottom: 0; }
    .world-animal-adventure .animal-hero__visual { min-height: 28rem; }
    .world-animal-adventure .animal-hero__visual > img { right: 12%; bottom: -3.8rem; width: 65%; height: 31rem; }
    .world-animal-adventure .animal-orbit { right: 17%; width: 67%; }
    .world-animal-adventure .animal-welcome__gallery { width: min(100%, 38rem); min-height: 34rem; margin-inline: auto; }
    .world-animal-adventure .animal-together__photo { width: min(100%, 34rem); margin-inline: auto; }
    .world-animal-adventure .animal-page-hero figure { width: min(100%, 38rem); margin-inline: auto; }
    .world-animal-adventure .animal-page-hero figure img { max-height: 23rem; }
    .world-animal-adventure .animal-story__photo,
    .world-animal-adventure .animal-team figure { width: min(100%, 31rem); margin-inline: auto; }
    .world-animal-adventure .animal-team figure { order: -1; }
    .world-animal-adventure .animal-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .world-animal-adventure .animal-news-tools form { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 42rem) {
    .world-animal-adventure { --public-section-space: 2.5rem; }
    .world-animal-adventure .animal-shell { width: min(calc(100% - 2rem), var(--animal-shell)); }
    .world-animal-adventure .world-header { top: .45rem; }
    .world-animal-adventure .world-header__inner { min-height: 4.25rem; padding: .38rem .45rem .38rem .6rem; border-radius: 1.05rem; }
    .world-animal-adventure .world-brand__mark { width: 2.95rem; height: 2.95rem; border-radius: .85rem; }
    .world-animal-adventure .world-brand__text strong { max-width: 54vw; font-size: 1rem; }
    .world-animal-adventure .animal-heading--split { align-items: flex-start; flex-direction: column; }
    .world-animal-adventure #main-content#main-content > .animal-hero { padding: 6.4rem 0 4.8rem !important; }
    .world-animal-adventure #main-content .animal-hero h1 { font-size: clamp(2.45rem, 11vw, 3.35rem) !important; }
    .world-animal-adventure .animal-hero__notes { display: grid; }
    .world-animal-adventure .animal-hero__visual { min-height: 23rem; }
    .world-animal-adventure .animal-hero__visual > img { right: 7%; width: 76%; height: 27rem; }
    .world-animal-adventure .animal-orbit { right: 11%; width: 76%; border-width: 1.5rem; }
    .world-animal-adventure .animal-hero__visual figcaption { right: 0; bottom: .5rem; }
    .world-animal-adventure .animal-clouds { bottom: -4.3rem; }
    .world-animal-adventure .animal-photo--tall { width: 70%; height: 30rem; }
    .world-animal-adventure .animal-photo--wide { width: 60%; height: 14rem; }
    .world-animal-adventure .animal-welcome__gallery { min-height: 31rem; }
    .world-animal-adventure .animal-habitat,
    .world-animal-adventure .animal-habitat:first-child { grid-template-columns: 1fr; }
    .world-animal-adventure .animal-habitat figure,
    .world-animal-adventure .animal-habitat:first-child figure { min-height: 14rem; }
    .world-animal-adventure .animal-together__photo img { max-height: 31rem; }
    .world-animal-adventure .animal-facts div { grid-template-columns: 1fr; gap: .2rem; }
    .world-animal-adventure .animal-news-grid,
    .world-animal-adventure .animal-value-grid,
    .world-animal-adventure .animal-role-grid,
    .world-animal-adventure .animal-note-grid,
    .world-animal-adventure .animal-contact-grid,
    .world-animal-adventure .animal-form__grid,
    .world-animal-adventure .animal-check-list,
    .world-animal-adventure .animal-news-tools form { grid-template-columns: 1fr; }
    .world-animal-adventure .animal-field--wide { grid-column: auto; }
    .world-animal-adventure .animal-form { padding: 1.15rem; border-radius: 1.45rem; box-shadow: .45rem .55rem 0 rgb(246 185 59 / 88%); }
    .world-animal-adventure #main-content#main-content > .animal-page-hero,
    .world-animal-adventure #main-content#main-content > .animal-article__hero { min-height: auto; padding: 6.4rem 0 3.2rem !important; }
    .world-animal-adventure #main-content .animal-page-hero h1,
    .world-animal-adventure #main-content .animal-article__hero h1 { font-size: clamp(2.25rem, 9.5vw, 3rem) !important; }
    .world-animal-adventure .animal-page-hero figure img { max-height: 19rem; border-width: .38rem; border-radius: 1.6rem; box-shadow: .45rem .55rem 0 rgb(246 185 59 / 82%); rotate: 0deg; }
    .world-animal-adventure .animal-timeline { padding-left: 2.4rem; }
    .world-animal-adventure .animal-timeline::before { left: .7rem; }
    .world-animal-adventure .animal-timeline li { grid-template-columns: 2.7rem 1fr; }
    .world-animal-adventure .animal-timeline li::before { right: calc(100% + 1.7rem); }
    .world-animal-adventure .animal-timeline li > span { width: 2.6rem; height: 2.6rem; }
    .world-animal-adventure .animal-contact-form__aside { display: block; }
    .world-animal-adventure .animal-map iframe { min-height: 22rem; border-width: .35rem; border-radius: 1.4rem; box-shadow: .45rem .55rem 0 var(--animal-sun); }
    .world-animal-adventure .animal-article__cover { margin-top: -1.7rem; }
    .world-animal-adventure .animal-article__layout { grid-template-columns: 1fr; }
    .world-animal-adventure .animal-share { position: static; display: flex; }
}

@media (prefers-reduced-motion: reduce) {
    .world-animal-adventure .animal-news-card,
    .world-animal-adventure .animal-news-card__image img,
    .world-animal-adventure .animal-button,
    .world-animal-adventure .world-button { transition: none; }
}

@media (forced-colors: active) {
    .world-animal-adventure :is(.world-header__inner, .animal-form, .animal-news-card, .animal-habitat, .animal-value-grid article, .animal-role-grid article, .animal-contact-grid article, .animal-page-hero figure img, .animal-article__cover img) {
        border: 1px solid CanvasText;
        box-shadow: none;
    }
    .world-animal-adventure :is(.animal-button, .world-button, .animal-link) { forced-color-adjust: auto; }
}

@media print {
    .world-animal-adventure .world-header { position: static; }
    .world-animal-adventure #main-content#main-content > .animal-page-hero,
    .world-animal-adventure #main-content#main-content > .animal-article__hero { min-height: auto; padding-block: 2rem !important; color: #000; background: #fff; }
    .world-animal-adventure .animal-page-hero figure { display: none; }
}
