/* The Earth Farer — Experience stories; extends the proven Trekking hero and shell. */
body.tef-experience-editorial-page,
body.tef-experience-editorial-page #page,
body.tef-experience-editorial-page .site-content { background: #fff !important; }
body.tef-experience-editorial-page .tef-experience-hero,
body.tef-experience-editorial-page .tef-experience-article { box-sizing: border-box; }
.tef-experience-hero .tef-experience-kicker-divider { padding: 0 6px; }
.tef-experience-hero .tef-experience-hero-intro,
.tef-experience-hero .tef-experience-hero-intro :is(p,div,span,a,strong,em,li) {
    font-family: Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
    font-size: 16.5px !important;
    line-height: 1.68 !important;
}
.tef-experience-hero .tef-experience-hero-intro { max-width: 880px; }
.tef-experience-hero .tef-experience-hero-intro * { color: inherit !important; }
.tef-experience-main { padding: 68px 0 82px; }
.tef-experience-story-section { margin: 0 0 66px; }
.tef-experience-story-section.tef-experience-is-split {
    display: grid;
    grid-template-columns: minmax(0, 55fr) minmax(0, 45fr);
    gap: 46px;
    align-items: start;
}
.tef-experience-story-section.tef-experience-layout-image-text.tef-experience-is-split {
    grid-template-columns: minmax(0, 45fr) minmax(0, 55fr);
}
.tef-experience-story-section.tef-experience-layout-image-text.tef-experience-is-split .tef-experience-story-image { grid-column: 1; grid-row: 1; }
.tef-experience-story-section.tef-experience-layout-image-text.tef-experience-is-split .tef-experience-story-copy { grid-column: 2; grid-row: 1; }
.tef-experience-story-copy h2,
.tef-experience-image-only-heading,
.tef-experience-adventure h2,
.tef-experience-contributor h2 {
    color: #0d2443; font-size: clamp(27px,3vw,34px); line-height: 1.16;
    letter-spacing: -.025em; font-weight: 750; margin: 0 0 18px;
}
.tef-experience-story-section.tef-experience-layout-text.tef-experience-is-single .tef-experience-story-copy { width: 100%; max-width: none; }
.tef-experience-story-section.tef-experience-layout-image.tef-experience-is-single .tef-experience-story-image { max-width: 1180px; }
.tef-experience-story-section.tef-experience-layout-image-text.tef-experience-is-single .tef-experience-story-copy,
.tef-experience-story-section.tef-experience-layout-text-image.tef-experience-is-single .tef-experience-story-copy { max-width: 940px; }
.tef-experience-rich-text,
.tef-experience-rich-text :is(p,span,div,li,a,b,strong,em,i) {
    font-family: Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
    font-size: 16.5px !important;
    line-height: 1.68 !important;
}
.tef-experience-rich-text { color: #364451; }
.tef-experience-rich-text > :first-child { margin-top: 0; }
.tef-experience-rich-text > :last-child { margin-bottom: 0; }
.tef-experience-rich-text p { margin: 0 0 13px; }
.tef-experience-rich-text :is(ul,ol) { margin: 0 0 15px; padding-left: 25px; }
.tef-experience-rich-text a { color: #087f9a; text-underline-offset: 3px; }
.tef-experience-story-image { margin: 0; width: 100%; min-width: 0; }
.tef-experience-story-image img { display: block; width: 100%; height: auto; object-fit: cover; border-radius: 12px; }
.tef-experience-is-split .tef-experience-story-image img { aspect-ratio: 1 / 1; }
.tef-experience-layout-image.tef-experience-is-single .tef-experience-story-image img { max-height: 670px; aspect-ratio: 16 / 9; }
.tef-experience-story-image figcaption {
    font-size: 13px; line-height: 1.5; color: #5f6f7c; margin: 9px 0 0;
}
/* Optional opening anecdote: only Text Only sections explicitly marked as Memory. */
.tef-experience-story-section.tef-experience-layout-text.tef-experience-memory {
    background: #eef7f8;
    border-left: 3px solid #14889a;
    border-radius: 12px;
    padding: 31px 37px;
}
.tef-experience-memory-heading {
    display: flex; align-items: center; gap: 11px;
    margin-bottom: 17px;
    color: #147d8f;
    font-family: Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    font-size: 12px; font-weight: 800; letter-spacing: .095em;
    line-height: 1.4; text-transform: uppercase;
}
.tef-experience-memory-icon { display: block; width: 21px; height: 21px; flex: 0 0 21px; }
.tef-experience-memory .tef-experience-story-copy h2 { margin: 0 0 17px; }
.tef-experience-memory .tef-experience-rich-text,
.tef-experience-memory .tef-experience-rich-text :is(p,span,div,li,a,b,strong,em,i) {
    font-size: 18px !important;
    line-height: 1.72 !important;
}
/* Contributor placed after the narrative and before related adventure. */
.tef-experience-contributor { border-top: 1px solid #e0e8eb; padding: 34px 0 28px; margin-top: 6px; }
.tef-experience-contributor-top { display: flex; align-items: flex-start; gap: 25px; }
.tef-experience-contributor-image { margin: 0; flex: 0 0 156px; width: 156px; }
.tef-experience-contributor-image img { width: 100%; aspect-ratio: 3/4; object-fit: cover; border-radius: 12px; }
.tef-experience-contributor-info { flex: 1; min-width: 0; }
.tef-experience-eyebrow { font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #14788a; margin: 0 0 10px; }
/* Keep contributor name and role in one editorial heading row on wide screens. */
.tef-experience-contributor-heading-line {
    display: flex; align-items: baseline; flex-wrap: wrap;
    column-gap: 14px; row-gap: 4px; margin: 0 0 16px;
}
.tef-experience-contributor .tef-experience-contributor-heading-line h2 { margin: 0; }
.tef-experience-contributor .tef-experience-contributor-heading-line .tef-experience-affiliation {
    margin: 0; font-size: 15.5px; font-weight: 650; color: #2e5363;
}
.tef-experience-contributor-name-divider { color: #9aabb4; font-weight: 400; margin-right: 14px; }
.tef-experience-bio { width: 100%; max-width: none; }
/* The two contributor actions share one row at the end of the currently visible
   biography. The disclosure remains a native, keyboard-accessible <details>.
   Its summary is visually pinned to the right of this common action row, while
   the website link sits on the left. Expanding adds text above BOTH actions. */
.tef-experience-contributor-actions {
    position: relative;
    margin-top: 12px;
    padding-bottom: 26px;
    min-height: 26px;
}
.tef-experience-bio-expansion { margin: 0; padding: 0; }
.tef-experience-bio-expansion > summary {
    position: absolute; right: 0; bottom: 0;
    display: block; width: max-content; max-width: 100%;
    list-style: none; cursor: pointer;
    color: #126d7f; font: 700 15px/26px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    text-decoration: underline; text-underline-offset: 3px; text-align: right;
}
.tef-experience-bio-expansion > summary::-webkit-details-marker { display: none; }
.tef-experience-bio-expansion > summary::marker { content: ""; }
.tef-experience-bio-expansion > summary:hover { color: #0e5160; }
.tef-experience-bio-expansion > summary:focus-visible { outline: 2px solid #126d7f; outline-offset: 5px; border-radius: 2px; }
.tef-experience-bio-expansion:not([open]) .tef-experience-bio-read-less,
.tef-experience-bio-expansion[open] .tef-experience-bio-read-more { display: none; }
.tef-experience-bio-remainder { margin: 0 0 15px; }
.tef-experience-contributor-actions .tef-experience-contributor-link {
    position: absolute; left: 0; bottom: 0;
    display: block; max-width: calc(100% - 110px);
    margin: 0; font-size: 14px; font-weight: 700; line-height: 26px;
    color: #126d7f; text-decoration: underline; text-underline-offset: 3px;
}
/* On very narrow screens or with long custom link text, give each control room
   instead of allowing them to overlap. Full-width view retains the shared row. */
@media (max-width: 370px) {
    .tef-experience-contributor-actions .tef-experience-contributor-link {
        max-width: calc(100% - 90px);
        overflow-wrap: anywhere;
    }
}
.tef-experience-credit-note { margin: 24px 0 0; padding: 15px 0 0; border-top: 1px solid #e7edef; color: #788590; font-size: 12.5px; line-height: 1.6; max-width: none; }
.tef-experience-adventure { display: flex; align-items: center; justify-content: space-between; gap: 25px; margin-top: 28px; padding: 25px 29px; border: 1px solid #dce8e9; border-radius: 12px; background: #f1f7f8; }
.tef-experience-adventure h2 { margin: 0; font-size: 25px; }
.tef-experience-adventure p { margin: 7px 0 0; color: #425666; font-size: 15px; }
.tef-experience-cta { display: inline-flex; align-items: center; white-space: nowrap; gap: 9px; padding: 12px 20px; border-radius: 8px; background: #124f47; color: white !important; text-decoration: none !important; font-size: 15px; font-weight: 700; }
.tef-experience-cta:hover,.tef-experience-cta:focus { background: #0c3832; color: white !important; }
@media (max-width: 960px) {
    .tef-experience-story-section.tef-experience-is-split,
    .tef-experience-story-section.tef-experience-layout-image-text.tef-experience-is-split { gap: 27px; }
}
@media (max-width: 740px) {
    .tef-experience-main { padding: 38px 0 54px; }
    .tef-experience-story-section { margin-bottom: 42px; }
    .tef-experience-story-section.tef-experience-is-split,
    .tef-experience-story-section.tef-experience-layout-image-text.tef-experience-is-split { display: flex; flex-direction: column; gap: 19px; }
    .tef-experience-story-section.tef-experience-layout-image-text.tef-experience-is-split { flex-direction: column; }
    .tef-experience-story-section.tef-experience-layout-image-text.tef-experience-is-split .tef-experience-story-image { order: 0; }
    .tef-experience-story-section.tef-experience-layout-image-text.tef-experience-is-split .tef-experience-story-copy { order: 1; }
    .tef-experience-story-section.tef-experience-layout-text-image.tef-experience-is-split .tef-experience-story-copy { order: 0; }
    .tef-experience-story-section.tef-experience-layout-text-image.tef-experience-is-split .tef-experience-story-image { order: 1; }
    .tef-experience-story-section.tef-experience-is-split .tef-experience-story-copy,
    .tef-experience-story-section.tef-experience-is-split .tef-experience-story-image { width: 100%; }
    .tef-experience-story-copy h2 { font-size: 28px; }
    .tef-experience-story-section.tef-experience-layout-text.tef-experience-memory { padding: 24px 23px; }
    .tef-experience-memory .tef-experience-rich-text,
    .tef-experience-memory .tef-experience-rich-text :is(p,span,div,li,a,b,strong,em,i) { font-size: 17px !important; }
    .tef-experience-contributor-top { gap: 15px; }
    .tef-experience-contributor-image { flex-basis: 116px; width: 116px; }
    .tef-experience-adventure { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 440px) {
    .tef-experience-contributor-top { flex-wrap: wrap; }
    .tef-experience-contributor-image { width: 105px; flex-basis: 105px; }
    .tef-experience-adventure { padding: 20px; }
}

/* Preserve the visible hyphen in “Twenty-Five” without letting the heading split inside the word. */
.tef-experience-hero h1 .tef-experience-title-nowrap { white-space: nowrap; }
