.ex-shell {
    max-width:1280px;
    margin:auto;
    padding:36px 40px 90px;
    color:#183e34
}
.ex-shop-tabs {
    margin-bottom:44px
}
.ex-shop-tabs .active {
    white-space:nowrap
}
.ex-kicker {
    font-size:11px;
    font-weight:700;
    letter-spacing:2.5px;
    color:#927246;
    margin:0 0 24px
}
.ex-hero {
    padding:45px 0 48px;
    border-bottom:1px solid #d6dfd5;
    position:relative
}
.ex-hero h1 {
    font-size:clamp(38px,5vw,66px);
    line-height:1.35;
    font-weight:500;
    letter-spacing:-2px;
    margin:0
}
.ex-hero h1 em {
    font-style:normal;
    color:#a27d46
}
.ex-hero>div {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px
}
.ex-hero p:not(.ex-kicker) {
    color:#647362;
    line-height:1.9;
    margin:26px 0 0;
    font-size:15px
}
.ex-hero-mark {
    font-size:112px;
    line-height:1;
    color:#d9c99e;
    position:absolute;
    right:30px;
    top:65px
}
.ex-browse {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    margin:32px 0 22px
}
.ex-category-tabs {
    display:flex;
    flex-wrap:wrap;
    gap:8px
}
.ex-category-tabs a {
    font-size:13px;
    text-decoration:none;
    padding:10px 15px;
    border:1px solid #d5ded1;
    border-radius:30px;
    color:#42543e;
    background:white;
    white-space:nowrap
}
.ex-category-tabs a[aria-current=page] {
    background:#183e34;
    border-color:#183e34;
    color:white
}
.ex-search {
    display:flex;
    flex-shrink:0;
    gap:5px
}
.ex-search input {
    width:175px;
    min-width:0;
    padding:11px 12px;
    border:1px solid #d5ded1;
    background:white;
    border-radius:4px;
    font-size:13px
}
.ex-search button {
    padding:10px 14px;
    background:#183e34;
    color:white;
    border:0;
    border-radius:4px;
    cursor:pointer;
    white-space:nowrap
}
.ex-results {
    font-size:13px;
    color:#72816b;
    margin-bottom:24px
}
.ex-results strong {
    margin-left:6px;
    color:#183e34
}
.ex-gallery {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:42px 28px
}
.ex-card {
    display:block;
    text-decoration:none;
    color:inherit;
    min-width:0
}
.ex-card-photo {
    aspect-ratio:4/3;
    background:#edf0e8;
    border-radius:10px;
    overflow:hidden;
    position:relative
}
.ex-card-photo img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .3s
}
.ex-card:hover img {
    transform:scale(1.035)
}
.ex-card-photo span {
    position:absolute;
    bottom:14px;
    right:14px;
    padding:8px 12px;
    background:#183e34db;
    color:white;
    font-size:11px;
    border-radius:30px
}
.ex-card-copy {
    padding:20px 3px
}
.ex-card-copy p {
    font-size:11px;
    color:#997843;
    margin:0 0 10px
}
.ex-card-copy h2 {
    font-size:21px;
    line-height:1.5;
    margin:0 0 10px;
    font-weight:600;
    overflow-wrap:anywhere
}
.ex-card-summary {
    font-size:13px;
    line-height:1.8;
    color:#697565;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    margin-bottom:15px
}
.ex-card time,.ex-article-heading time {
    font-size:12px;
    color:#85907e
}
.ex-empty {
    padding:85px 20px;
    text-align:center;
    border-radius:12px;
    background:#f3f5ef;
    border:1px solid #e0e6d9
}
.ex-empty>span {
    color:#b79a62;
    font-size:35px
}
.ex-empty h2,.ex-empty h1 {
    font-size:22px;
    font-weight:500;
    line-height:1.6;
    margin:20px 0 12px
}
.ex-empty p {
    font-size:14px;
    color:#6a7964;
    line-height:1.8
}
.ex-pagination {
    display:flex;
    justify-content:center;
    gap:8px;
    margin-top:48px
}
.ex-pagination a {
    padding:10px 15px;
    border:1px solid #d7e0d2;
    color:#183e34;
    text-decoration:none;
    border-radius:5px
}
.ex-pagination [aria-current=page] {
    background:#183e34;
    color:white
}
.ex-article {
    max-width:900px;
    margin:0 auto
}
.ex-back {
    font-size:13px;
    text-decoration:none;
    color:#5e7158
}
.ex-article-heading {
    padding:55px 0 35px;
    border-bottom:1px solid #d6dfd5;
    margin-bottom:36px
}
.ex-article-heading h1 {
    font-size:clamp(27px,4vw,43px);
    line-height:1.45;
    font-weight:500;
    letter-spacing:-1px;
    margin:0 0 20px;
    overflow-wrap:anywhere
}
.ex-lead {
    font-size:17px;
    line-height:1.9;
    color:#66765d;
    margin:26px 0 0
}
.ex-body {
    font-size:16px;
    line-height:1.95;
    color:#3d4c38;
    overflow-wrap:anywhere
}
.ex-body img {
    max-width:100%;
    height:auto;
    border-radius:5px
}
.ex-body iframe,.ex-video iframe {
    width:100%;
    aspect-ratio:16/9;
    border:0;
    display:block
}
.ex-body h2,.ex-body h3 {
    color:#183e34;
    line-height:1.5;
    margin:35px 0 18px
}
.ex-body p {
    margin:0 0 20px
}
.ex-body blockquote {
    border-left:3px solid #bd9c5b;
    background:#f5f4ec;
    padding:20px 25px;
    margin:28px 0
}
.ex-body table {
    max-width:100%;
    border-collapse:collapse
}
.ex-body td,.ex-body th {
    border:1px solid #d6dfd5;
    padding:8px
}
.ex-body a {
    color:#8f6b37;
    text-underline-offset:4px
}
.ex-video {
    margin:30px 0;
    border-radius:9px;
    overflow:hidden;
    background:#142e25
}
.ex-image-stack {
    display:grid;
    gap:24px;
    margin:32px 0
}
.ex-image-stack img {
    width:100%;
    height:auto;
    display:block;
    border-radius:6px
}
.ex-image-stack a {
    display:block
}
.ex-blog {
    margin-top:44px;
    padding:28px;
    background:#f0f3e9;
    border:1px solid #dae2d0;
    border-radius:9px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px
}
.ex-blog span {
    font-size:10px;
    letter-spacing:2px;
    color:#987749
}
.ex-blog h2 {
    font-size:17px;
    font-weight:500;
    margin:10px 0 0;
    line-height:1.6
}
.ex-button {
    display:inline-block;
    text-decoration:none;
    padding:13px 18px;
    border:1px solid #183e34;
    border-radius:5px;
    background:#183e34;
    color:white;
    font-size:13px;
    white-space:nowrap
}
.ex-article-foot {
    border-top:1px solid #d6dfd5;
    margin-top:50px;
    padding-top:30px;
    text-align:center
}
.ex-sr-only {
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0,0,0,0)
}
.bs-filter>a[href="/experiences"] {
    border-color:#a5b59c
}

@media(max-width:1000px) {
    .ex-shell {
    padding:30px 25px 65px
}
.ex-browse {
    flex-direction:column;
    align-items:flex-start
}
.ex-gallery {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px 22px
}
.ex-hero-mark {
    right:10px
}
.ex-search {
    width:100%
}
.ex-search input {
    width:100%
}

}

@media(max-width:600px) {
    .ex-shell {
    padding:20px 18px 55px
}
.ex-shop-tabs {
    margin-bottom:18px;
    gap:7px
}
.ex-hero {
    padding:30px 0
}
.ex-hero h1 {
    font-size:38px;
    letter-spacing:-1px
}
.ex-kicker {
    font-size:9px;
    letter-spacing:1.8px;
    margin-bottom:20px
}
.ex-hero p:not(.ex-kicker) {
    font-size:13px
}
.ex-hero-mark {
    font-size:60px;
    right:0;
    top:40px
}
.ex-category-tabs {
    gap:7px
}
.ex-category-tabs a {
    font-size:12px;
    padding:9px 13px
}
.ex-gallery {
    grid-template-columns:1fr;
    gap:24px
}
.ex-card-copy h2 {
    font-size:20px
}
.ex-card-copy {
    padding:17px 2px 5px
}
.ex-article-heading {
    padding:35px 0 25px;
    margin-bottom:25px
}
.ex-lead {
    font-size:15px
}
.ex-body {
    font-size:15px
}
.ex-blog {
    flex-direction:column;
    align-items:flex-start;
    padding:22px
}
.ex-blog h2 {
    font-size:16px
}
.ex-empty {
    padding:60px 16px
}
.ex-empty h2 {
    font-size:19px
}

}


/* Keep action labels legible over the shared site link colors. */
body.biostar .ex-shell a.ex-button,
body.biostar .ex-shell a.ex-button:visited {
    color:#fff;
    background:#183e34;
    font-weight:600;
}
body.biostar .ex-shell a.ex-button:hover {
    color:#fff;
    background:#285b4b;
    border-color:#285b4b;
}
body.biostar .ex-shell a.ex-button:focus-visible {
    color:#fff;
    outline:3px solid #b79757;
    outline-offset:4px;
}
