#wildlife.exp-encounters {
    --enc-gold: var(--section-accent, #ffca28);
    min-height: max(100svh, var(--section-height, 0px));
    padding-block: var(--section-pad, clamp(26px, 4svh, 65px));
    background: var(--section-bg, #06190d);
    text-align: center;
    overflow: hidden;
}
#wildlife.exp-encounters > .exp-backdrop {
    filter: blur(var(--scene-blur, 10px));
}
#wildlife.exp-encounters > .exp-backdrop::after {
    background: radial-gradient(ellipse at 48% 18%, rgb(35 70 18 / .18), var(--section-gradient, #041309ed) 85%),
        linear-gradient(rgb(6 26 12 / var(--overlay, .52)), #041708ed);
}
#wildlife.exp-encounters .exp-inner {width: min(92%, var(--content-max, 1366px)); padding: 0;}
.exp-encounters .exp-enc-leaf, .exp-encounters .exp-enc-icon {color: var(--enc-gold);}
.exp-encounters :is(.exp-enc-leaf,.exp-enc-icon) svg {width: 32px; height: 32px;}
#wildlife.exp-encounters .exp-eyebrow {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
    color: var(--enc-gold);
    letter-spacing: .32em;
    margin: 0 0 12px;
}
.exp-encounters .exp-eyebrow::before,.exp-encounters .exp-eyebrow::after {
    content: "";
    width: clamp(18px, 4vw, 70px);
    height: 1px;
    background: var(--enc-gold);
}
#wildlife.exp-encounters .exp-title {
    font-family: var(--title-font, Georgia, serif) !important;
    font-weight: var(--title-weight, 700);
    font-size: clamp(30px, 4vw, var(--title-size, 68px));
    text-transform: none;
    max-width: none;
    margin: 0 auto;
}
#wildlife.exp-encounters .exp-title em {color: var(--enc-gold); font-style: italic;}
#wildlife.exp-encounters .exp-description {margin: 8px auto 14px; font-size: clamp(14px, 1.35vw, 22px);}
.exp-enc-carousel {position: relative; padding-inline: 48px;}
#wildlife.exp-encounters .exp-cards {
    --enc-visible: var(--enc-columns, 4);
    gap: var(--enc-gap, 18px);
    padding: 16px 8px 18px;
    position: relative;
    scrollbar-width: none;
}
#wildlife.exp-encounters .exp-card {
    flex-basis: calc((100% - (var(--enc-visible) - 1) * var(--enc-gap, 18px)) / var(--enc-visible));
    min-height: clamp(270px, 48svh, 510px);
    border-radius: var(--enc-radius, 24px);
    border-color: var(--enc-border, #d7e8c654);
    text-align: left;
    cursor: grab;
    transition: transform 400ms, border-color 400ms, box-shadow 400ms;
}
#wildlife.exp-encounters .exp-card::after {
    background: linear-gradient(transparent 24%, #06190bd9 72%, #061809 100%);
}
#wildlife.exp-encounters .exp-card.is-active {
    scale: 1;
    transform: translateY(-5px) scale(1.035);
    border-color: var(--enc-gold);
    box-shadow: 0 0 17px #ffc72955;
}
.exp-enc-caption {position: relative; z-index: 2;}
#wildlife.exp-encounters .exp-card h3 {
    font: 700 clamp(18px, 1.9vw, 33px)/1.05 Georgia, serif;
    margin: 4px 0 10px;
}
.exp-enc-caption h3::after {content: ""; display: block; width: 44px; height: 2px; background: var(--enc-gold); margin-top: 9px;}
.exp-enc-location {display: flex; flex-wrap: wrap; align-items: center; gap: 4px; font-size: 13px;}
.exp-enc-location svg,.exp-encounters .exp-note svg {width: 17px; height: 17px; color: var(--enc-gold);}
#wildlife.exp-encounters .exp-carousel-controls {margin: 0;}
.exp-encounters :is([data-carousel-prev],[data-carousel-next]) {position: absolute; top: 44%; translate: 0 -50%;}
.exp-encounters [data-carousel-prev] {left: 0;}
.exp-encounters [data-carousel-next] {right: 0;}
.exp-encounters button:disabled {opacity: .35; cursor: default;}
.exp-encounters .exp-carousel-dots {flex-wrap: nowrap; overflow-x: auto; max-width: min(100%, 430px); justify-content: safe center;}
.exp-encounters .exp-carousel-dots button {flex: none;}
.exp-encounters .exp-note {display: flex; justify-content: center; align-items: center; gap: 8px; margin: 6px auto 0; font-style: italic;}
.exp-encounters [hidden] {display: none !important;}
.exp-encounters :focus-visible {outline: 2px solid var(--enc-gold); outline-offset: 2px;}
@media (hover:hover) {
    #wildlife.exp-encounters.exp-hover-enabled .exp-card:hover {transform: translateY(-8px); border-color: var(--enc-gold);}
    #wildlife.exp-encounters.exp-hover-enabled .exp-card:hover img {transform: scale(calc(var(--image-zoom, 1) * var(--enc-hover-zoom, 1.06)));}
    #wildlife.exp-encounters.exp-hover-enabled .exp-no-zoom img {transform: none;}
}
@media (max-width: 1050px) {#wildlife.exp-encounters .exp-cards {--enc-visible: min(3, var(--enc-columns, 4));}}
@media (max-width: 800px) {#wildlife.exp-encounters .exp-cards {--enc-visible: 2;}}
@media (max-width: 560px) {
    .exp-enc-carousel {padding-inline: 0;}
    #wildlife.exp-encounters .exp-card {flex-basis: 84%;}
    .exp-encounters :is([data-carousel-prev],[data-carousel-next]) {position: static; translate: none; flex: none;}
    #wildlife.exp-encounters .exp-carousel-controls {gap: 5px;}
}
@media (max-width: 800px) {#wildlife.exp-encounters > .exp-backdrop {filter: blur(min(var(--scene-blur, 10px), 8px));}}
