/* Only the Journal archive and individual articles. Homepage styles are unchanged. */
.jlvb-journal-page,
.jlvb-journal-page *,
.jlvb-journal-page *::before,
.jlvb-journal-page *::after { box-sizing: border-box; }

.jlvb-journal-page {
	--jlvb-home-espresso: #443a33;
	--jlvb-home-brown: #504238;
	--jlvb-home-ivory: #f4efe6;
	--jlvb-home-champagne: #c8b38b;
	min-height: 60vh;
	padding: clamp(105px, 10vw, 160px) 24px clamp(90px, 8vw, 140px);
	background: var(--jlvb-home-espresso);
	color: var(--jlvb-home-ivory);
	font-family: "Manrope", "Helvetica Neue", Arial, sans-serif;
}

.jlvb-journal-page__inner,
.jlvb-journal-single__article { width: min(1450px, 100%); margin: 0 auto; }
.jlvb-journal-page__header { max-width: 850px; margin-bottom: clamp(50px, 5vw, 76px); }
.jlvb-journal-page__kicker {
	margin: 0 0 22px;
	color: #d9c6a5;
	font: 600 11px/1.5 "Manrope", sans-serif;
	letter-spacing: .2em;
	text-transform: uppercase;
}
.jlvb-journal-page h1 {
	margin: 0;
	color: var(--jlvb-home-ivory);
	font: 500 clamp(48px, 7vw, 96px)/1.04 "Playfair Display", Georgia, serif;
	font-family: "Playfair Display", Georgia, serif !important;
	font-style: normal !important;
	font-weight: 500 !important;
	letter-spacing: -.035em !important;
	text-wrap: balance;
	overflow-wrap: anywhere;
}
.jlvb-journal-page__header > p:last-child {
	max-width: 700px;
	margin: 25px 0 0;
	color: rgba(244,239,230,.78);
	font: 400 16px/1.7 "Manrope", sans-serif;
}

.jlvb-journal-archive__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 55px clamp(24px, 2.2vw, 38px);
}
.jlvb-journal-archive .jlvb-journal-card { min-width: 0; }
.jlvb-journal-archive .jlvb-journal-card h2 {
	margin: 0;
	font: 500 clamp(27px, 2.05vw, 36px)/1.1 "Playfair Display", Georgia, serif;
	font-family: "Playfair Display", Georgia, serif !important;
	font-style: normal !important;
	font-weight: 500 !important;
	letter-spacing: -.025em;
	overflow-wrap: anywhere;
}
.jlvb-journal-archive .jlvb-journal-card h2 a { color: var(--jlvb-home-ivory); text-decoration: none; }
.jlvb-journal-archive .jlvb-journal-card h2 a:hover,
.jlvb-journal-page__back:hover { color: var(--jlvb-home-champagne); }
.jlvb-journal-archive .jlvb-journal-card > p { color: rgba(244,239,230,.72); }
.jlvb-journal-page a:focus-visible { outline: 2px solid var(--jlvb-home-champagne); outline-offset: 4px; }
.jlvb-journal-archive__empty { padding: 30px; border: 1px solid rgba(244,239,230,.25); border-radius: 18px; }

.jlvb-journal-page__pagination { margin-top: 75px; }
.jlvb-journal-page__pagination ul { display: flex; flex-wrap: wrap; gap: 10px; padding: 0; margin: 0; list-style: none; }
.jlvb-journal-page__pagination a,
.jlvb-journal-page__pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	min-height: 42px;
	padding: 8px 12px;
	border: 1px solid rgba(244,239,230,.35);
	border-radius: 10px;
	color: var(--jlvb-home-ivory);
	text-decoration: none;
}
.jlvb-journal-page__pagination .current,
.jlvb-journal-page__pagination a:hover { background: var(--jlvb-home-champagne); color: var(--jlvb-home-espresso); }

@media (max-width: 850px) {
 .jlvb-journal-archive__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .jlvb-journal-archive { padding-top: 115px; }
}
@media (max-width: 600px) {
 .jlvb-journal-archive { padding: 95px 20px 85px; }
 .jlvb-journal-archive__grid { grid-template-columns: minmax(0, 1fr); gap: 45px; }
 .jlvb-journal-page__header { margin-bottom: 42px; }
}

/* Single articles follow the light destination-page hero. */
.jlvb-journal-single { background: #faf6ee; color: #443a33; padding-top: clamp(170px, 13vw, 215px); }
.jlvb-journal-single__article { width: min(1540px, 100%); }
.jlvb-journal-breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: clamp(52px, 5vw, 76px); color: #746d66; font-size: 12px; }
.jlvb-journal-breadcrumbs a { color: inherit; text-decoration: none; }
.jlvb-journal-breadcrumbs a:hover { color: #77562e; }
.jlvb-journal-hero { padding-bottom: clamp(32px, 3vw, 48px); }
.jlvb-journal-hero__grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(310px, .65fr); align-items: center; gap: clamp(54px, 6.5vw, 110px); }
.jlvb-journal-hero__copy { min-width: 0; }
.jlvb-journal-single .jlvb-journal-page__kicker { color: #8a6b3d; margin-bottom: 22px; }
.jlvb-journal-single h1 { max-width: 950px; color: #443a33; font-size: clamp(52px, 5.4vw, 88px); line-height: 1.02; letter-spacing: -.035em !important; text-wrap: balance; overflow-wrap: break-word; }
.jlvb-journal-byline { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 24px 40px; max-width: 1180px; margin: clamp(40px, 4vw, 64px) auto 0; }
.jlvb-journal-single__meta { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 12px 26px; margin: 0; color: #746d66; font-size: 13px; line-height: 1.65; }
.jlvb-journal-single__meta > span { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.jlvb-journal-single__meta svg { flex: 0 0 auto; color: #8a6b3d; }
.jlvb-journal-author { display: flex; align-items: center; gap: 13px; min-width: 0; margin: 0; }
.jlvb-journal-single .jlvb-journal-author__portrait { display: block; position: relative; flex: 0 0 56px; width: 56px; height: 56px; overflow: hidden; border-radius: 50% !important; clip-path: circle(50%); background: #f0e8dc; }
.jlvb-journal-single .jlvb-journal-author__portrait img { display: block; width: 100% !important; height: 100% !important; min-width: 100%; max-width: 100% !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 50% !important; object-fit: cover !important; object-position: center; }
.jlvb-journal-author__info { display: grid; gap: 4px; min-width: 0; }
.jlvb-journal-author__info > span { color: #8a6b3d; font-size: 11px; line-height: 1.4; }
.jlvb-journal-author strong { color: #443a33; font-size: 13px; font-weight: 700; line-height: 1.4; overflow-wrap: anywhere; }
.jlvb-journal-single .jlvb-journal-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.jlvb-journal-hero__image { min-width: 0; margin: 0; width: 100%; aspect-ratio: 4/3; border-radius: 24px; overflow: hidden; background: #e9dfd1; }
.jlvb-journal-hero__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.jlvb-journal-hero__note { min-width: 0; max-width: 480px; padding: 26px 0 10px 34px; border-left: 1px solid rgba(138,107,61,.38); }
.jlvb-journal-hero__note .jlvb-journal-page__kicker { margin-bottom: 14px; }
.jlvb-journal-hero__note h2 { margin: 0; color: #443a33; font: 500 clamp(34px, 3vw, 51px)/1.06 "Playfair Display", Georgia, serif; overflow-wrap: break-word; }
.jlvb-journal-hero__description { margin: 18px 0 0; color: #746d66; font: 400 14px/1.72 "Manrope", sans-serif; overflow-wrap: break-word; }
.jlvb-journal-layout { width: min(1180px, 100%); margin: 0 auto; padding-top: clamp(40px, 4vw, 64px); border-top: 1px solid #d9d0c3; }
.jlvb-journal-single .jlvb-journal-toc { margin: 0 0 clamp(40px, 4vw, 56px); padding: 24px 28px; border: 1px solid #ded4c5; border-radius: 16px; background: #f4eee4; }
.jlvb-journal-toc summary { display: flex; align-items: center; justify-content: space-between; gap: 15px; min-height: 44px; padding: 0; cursor: pointer; color: #443a33; font: 600 22px/1.3 "Playfair Display", Georgia, serif; list-style: none; }
.jlvb-journal-toc summary::-webkit-details-marker { display: none; }
.jlvb-journal-toc summary svg { flex: 0 0 auto; transition: transform .2s ease; }
.jlvb-journal-toc[open] summary svg { transform: rotate(180deg); }
.jlvb-journal-toc nav { padding-top: 14px; }
.jlvb-journal-single .jlvb-journal-toc ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 28px; list-style: decimal; margin: 0; padding: 0 0 0 22px; }
.jlvb-journal-single .jlvb-journal-toc li { margin: 0; padding: 0 0 0 3px; color: #8a6b3d; font-size: 13px; }
.jlvb-journal-single .jlvb-journal-toc a { display: block; padding: 8px 0; color: #77562e; font: 400 14px/1.55 "Manrope", sans-serif; text-decoration: none; overflow-wrap: break-word; }
.jlvb-journal-single .jlvb-journal-toc a:hover { color: #443a33; text-decoration: underline; text-underline-offset: 3px; }
.jlvb-journal-single .jlvb-journal-toc a[aria-current] { font-weight: 700; }
.jlvb-journal-single__content { min-width: 0; max-width: 810px; margin: 0 auto; overflow-wrap: break-word; font: 400 17px/1.85 "Manrope", sans-serif; }
.jlvb-journal-single__content > *:first-child { margin-top: 0; }
.jlvb-journal-single__content p { margin: 0 0 1.55em; }
.jlvb-journal-single__content h2,
.jlvb-journal-single__content h3 { margin: 1.9em 0 .7em; color: #443a33; font-family: "Playfair Display", Georgia, serif !important; font-style: normal !important; font-weight: 500 !important; line-height: 1.2; scroll-margin-top: 155px; overflow-wrap: break-word; }
.admin-bar .jlvb-journal-single__content h2,
.admin-bar .jlvb-journal-single__content h3 { scroll-margin-top: 185px; }
.jlvb-journal-single__content h2 { font-size: clamp(31px, 3.2vw, 44px); }
.jlvb-journal-single__content h3 { font-size: clamp(26px, 2.5vw, 33px); }
.jlvb-journal-single__content a { color: #77562e; text-decoration: underline; text-underline-offset: 3px; }
.jlvb-journal-single__content img { display: block; max-width: 100%; height: auto; border-radius: 14px; }
.jlvb-journal-single__content figure { max-width: 100%; margin: 2.6em 0; }
.jlvb-journal-single__content .wp-block-image img { width: 100%; }
.jlvb-journal-single__content .wp-block-gallery figure { margin: 0; }
.jlvb-journal-single__content .wp-block-gallery img { height: 100%; object-fit: cover; }
.jlvb-journal-single__content .alignwide,
.jlvb-journal-single__content .alignfull { width: 100%; max-width: 100%; margin-left: 0; margin-right: 0; transform: none; }
.jlvb-journal-single__content figcaption,
.jlvb-journal-single__content .wp-caption-text { margin-top: 12px; color: #746d66; font: 400 12px/1.6 "Manrope", sans-serif; text-align: left; }
.jlvb-journal-single__content .wp-caption { max-width: 100%; margin: 2.6em 0; }
.jlvb-journal-single__content .wp-caption img { width: 100%; }
.jlvb-journal-single__content .gallery { display: flex; flex-wrap: wrap; gap: 16px; margin: 2.6em 0; }
.jlvb-journal-single__content .gallery-item { flex: 1 1 220px; margin: 0; }
.jlvb-journal-single__content .gallery img { border: 0; }
.jlvb-journal-single__content iframe,
.jlvb-journal-single__content video { max-width: 100%; }
.jlvb-journal-single__content pre { max-width: 100%; overflow-x: auto; }
.jlvb-journal-single__content table { display: block; max-width: 100%; overflow-x: auto; border: 0; border-collapse: collapse; box-shadow: none; font-size: 14px; line-height: 1.65; }
.jlvb-journal-single__content th,
.jlvb-journal-single__content td { padding: 14px 16px; border: 0; border-bottom: 1px solid #d9d0c3; text-align: left; vertical-align: top; }
.jlvb-journal-single__content th { background: #f2ece2; color: #443a33; }
.jlvb-journal-single__content blockquote { margin: 2em 0; padding: 8px 0 8px 26px; border-left: 2px solid #8a6b3d; font-family: "Playfair Display", Georgia, serif; font-size: 26px; line-height: 1.4; }
.jlvb-journal-single__content blockquote p:last-child { margin-bottom: 0; }
.jlvb-journal-single__content ul,
.jlvb-journal-single__content ol { margin: 0 0 1.55em; padding-left: 1.5em; }
.jlvb-journal-single__content li { margin: 0 0 .5em; }
.jlvb-journal-single__pages { margin: 35px 0; }
.jlvb-journal-single__end { max-width: 1180px; margin: 80px auto 0; padding-top: 24px; border-top: 1px solid #d9d0c3; }
.jlvb-journal-page__back { color: #77562e; font: 600 13px/1.5 "Manrope", sans-serif; text-decoration: none; }
.jlvb-journal-page__back:hover { color: #443a33; }
.jlvb-journal-single :is(a, summary):focus-visible { outline: 2px solid #8a6b3d; outline-offset: 4px; }
@media (max-width: 1100px) {
    .jlvb-journal-hero__grid { gap: 40px; grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); }
    .jlvb-journal-hero__note { padding-left: 25px; }
}
@media (max-width: 900px) {
    .jlvb-journal-single { padding-top: 155px; }
    .jlvb-journal-hero__grid { grid-template-columns: minmax(0, 1fr); gap: 36px; }
    .jlvb-journal-single h1 { max-width: 850px; font-size: clamp(46px, 7vw, 70px); }
    .jlvb-journal-hero__image { max-width: 680px; aspect-ratio: 16/10; }
    .jlvb-journal-hero__note { max-width: 680px; padding-top: 4px; padding-bottom: 4px; }

}
@media (max-width: 600px) {
    .jlvb-journal-single { padding: 135px 20px 85px; }
    .jlvb-journal-breadcrumbs { margin-bottom: 42px; font-size: 11px; gap: 10px; }
    .jlvb-journal-single h1 { font-size: clamp(40px, 10.5vw, 58px); line-height: 1.08; }
    .jlvb-journal-hero { padding-bottom: 42px; }
    .jlvb-journal-single .jlvb-journal-page__kicker { font-size: 10px; margin-bottom: 16px; }
    .jlvb-journal-byline { flex-direction: column; align-items: flex-start; gap: 20px; margin-top: 32px; }
    .jlvb-journal-single__meta { justify-content: flex-start; gap: 10px 20px; font-size: 12px; }
    .jlvb-journal-single .jlvb-journal-author__portrait { width: 48px; height: 48px; flex-basis: 48px; }
    .jlvb-journal-hero__image { border-radius: 16px; }
    .jlvb-journal-hero__note h2 { font-size: 34px; }
    .jlvb-journal-single .jlvb-journal-toc { padding: 18px 20px; border-radius: 12px; }
    .jlvb-journal-single .jlvb-journal-toc ol { grid-template-columns: minmax(0, 1fr); }
    .jlvb-journal-single__content { font-size: 16px; line-height: 1.8; }
    .jlvb-journal-single__content h2 { font-size: 32px; }
    .jlvb-journal-single__content h3 { font-size: 27px; }
    .jlvb-journal-single__content th,
    .jlvb-journal-single__content td { min-width: 130px; padding: 12px; }
    .jlvb-journal-single__content .wp-block-columns { flex-wrap: wrap !important; }
    .jlvb-journal-single__content .wp-block-column { flex-basis: 100% !important; }
}
@media (prefers-reduced-motion: reduce) { .jlvb-journal-toc summary svg { transition: none; } }

/* Optional native FAQ block, scoped to its own component. */
.jlvb-journal-faq {
    --jlvb-faq-ink: #443a33;
    --jlvb-faq-muted: #655b50;
    --jlvb-faq-line: #d9d0c3;
    --jlvb-faq-accent: #77562e;
    color: var(--jlvb-faq-ink);
    margin: 3rem 0;
    max-width: 100%;
}
.jlvb-journal-faq .jlvb-journal-faq__title { margin: 0 0 1.3rem; }
.jlvb-journal-faq .jlvb-journal-faq__items { border-top: 1px solid var(--jlvb-faq-line); }
.jlvb-journal-faq .jlvb-journal-faq__item { margin: 0; padding: 0; border: 0; border-bottom: 1px solid var(--jlvb-faq-line); background: transparent; }
.jlvb-journal-faq .jlvb-journal-faq__question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 60px;
    padding: 21px 0;
    color: var(--jlvb-faq-ink);
    font: 600 17px/1.55 "Manrope", "Helvetica Neue", Arial, sans-serif;
    cursor: pointer;
    list-style: none;
    overflow-wrap: anywhere;
}
.jlvb-journal-faq .jlvb-journal-faq__question::-webkit-details-marker { display: none; }
.jlvb-journal-faq .jlvb-journal-faq__question::marker { content: ""; }
.jlvb-journal-faq .jlvb-journal-faq__question::after { content: none; }
.jlvb-journal-faq .jlvb-journal-faq__question:hover { color: var(--jlvb-faq-accent); }
.jlvb-journal-faq .jlvb-journal-faq__question:focus-visible { outline: 2px solid var(--jlvb-faq-accent); outline-offset: 4px; border-radius: 2px; }
.jlvb-journal-faq .jlvb-journal-faq__icon { flex: 0 0 20px; color: var(--jlvb-faq-accent); }
.jlvb-journal-faq .jlvb-journal-faq__item[open] .jlvb-journal-faq__plus { display: none; }
.jlvb-journal-faq .jlvb-journal-faq__answer { max-width: 72ch; padding: 0 42px 23px 0; color: var(--jlvb-faq-muted); font: 400 16px/1.8 "Manrope", "Helvetica Neue", Arial, sans-serif; overflow-wrap: anywhere; }
.jlvb-journal-faq .jlvb-journal-faq__answer p { margin: 0 0 1em; }
.jlvb-journal-faq .jlvb-journal-faq__answer p:last-child { margin-bottom: 0; }
@media (max-width: 600px) {
    .jlvb-journal-faq .jlvb-journal-faq__question { gap: 16px; padding: 18px 0; font-size: 16px; }
    .jlvb-journal-faq .jlvb-journal-faq__answer { padding-right: 0; font-size: 15px; }
}

/* Editorial links: native text, visible and crawlable without JavaScript. */
.jlvb-editorial-links { margin-block: 36px; }
.jlvb-editorial-links ul { list-style: none; padding: 0; margin: 16px 0 0; }
.jlvb-editorial-links li { padding: 14px 0; border-bottom: 1px solid rgba(45,63,80,.15); }
.jlvb-editorial-links a { color: inherit; text-decoration: underline; text-underline-offset: 4px; }
.jlvb-editorial-links a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.jlvb-editorial-links__location { display: block; font-size: .9em; margin-top: 6px; }
