/* Reading and search improvements, preserving the established visual identity. */
.portal-search {margin:2rem 0 3rem;padding:clamp(1.1rem,3vw,2rem);border:1px solid #c5d2c8;border-top:3px solid #af9454;border-radius:18px;background:#fffdf7;scroll-margin-top:130px}
.portal-search h2 {font-size:clamp(1.6rem,3vw,2.3rem);margin:0 0 1.2rem}
.portal-search label {display:block;font-weight:600;margin-bottom:.5rem;color:#173e31}
.search-controls {display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.search-controls input {min-width:0;flex:1 1 260px;width:100%;padding:.85rem 1rem;border:1px solid #789386;border-radius:8px;background:#fff;color:#173e31;font:inherit}
.search-controls button {min-height:48px}
.search-clear {padding:.65rem .9rem;background:transparent;border:1px solid #789386;border-radius:8px;font:inherit;color:#173e31;cursor:pointer}
#search-help,.search-result-meta {font-size:.85rem;color:#4f6658}
#search-status {font-weight:600;color:#173e31}
#search-results {list-style:none;padding:0;margin:1.2rem 0}
#search-results li {padding:1.25rem 0;border-top:1px solid #ccd6cb}
#search-results li>a {font-size:1.25rem;font-weight:600;text-decoration:underline;text-underline-offset:4px;color:#173e31}
#search-results p {margin:.45rem 0;overflow-wrap:anywhere}
.status-explainer {margin:1rem 0 1.4rem;padding:.75rem 1rem;border-left:2px solid #af9454;background:#f0f3eb;font-size:.83rem;line-height:1.6;color:#334f40}
.status-explainer summary {cursor:pointer;font-weight:600}
.status-explainer dl {margin:.7rem 0 0}.status-explainer dt {font-weight:650;margin-top:.45rem}.status-explainer dd {margin:0}
.portal-search-link {display:inline-block;margin-right:1rem}
.source-context {margin:1rem 0 1.4rem;padding:1rem;border-left:3px solid #af9454;background:#f4f0df;color:#344b3c;line-height:1.65}
.source-context strong {display:block;margin-bottom:.35rem}
.source-context p {margin:.25rem 0}
.channel-table {min-width:0}.channel-table th,.channel-table td {overflow-wrap:anywhere;vertical-align:top}
.video-access {font-size:.84rem;line-height:1.6;margin-top:.7rem}.video-access a {text-decoration:underline;text-underline-offset:3px}
button:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible {outline:3px solid #827039;outline-offset:4px}
[hidden] {display:none!important}
@media(max-width:600px) {.portal-search{scroll-margin-top:95px}.search-controls input{flex-basis:100%}.table-scroll{max-width:100%;overflow-x:auto}.channel-table{min-width:540px}.status-explainer{font-size:.82rem}}
@media(max-width:600px) and (max-height:640px) {.price-button {padding:.55rem .75rem!important;bottom:10px!important}.price-button strong{font-size:.72rem!important}}
@media print {.portal-search,.portal-search-link{display:none}.source-context{break-inside:avoid}}

.caption-toggle {padding:.3rem 0;border:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:44px}

/* Long-form personal publications share the portal's reading identity. */
.reflection-page {max-width:850px;margin:0 auto;padding:36px 32px 100px}
.reflection-page .breadcrumb {margin:0 0 54px;padding:0;flex-wrap:wrap}
.reflection-header {border-bottom:1px solid #b5a273;padding-bottom:28px;margin-bottom:36px}
.reflection-header h1 {font-family:var(--serif);font-size:clamp(2.6rem,6vw,4.8rem);font-weight:400;line-height:1.1;letter-spacing:-.035em;margin:20px 0;color:#173e31}
.reflection-header .lead {font-size:1.2rem;line-height:1.65;color:#49634c}
.reflection-body {max-width:720px;margin:0 auto;font-size:1.125rem;line-height:1.9;color:#284334}
.reflection-body p {margin:0 0 1.05em;overflow-wrap:anywhere}
.reflection-body strong {color:#173e31;font-weight:650}
.reflection-end {margin-top:44px;padding-top:28px;border-top:1px solid #b5a273;display:flex;gap:22px;flex-wrap:wrap}
.publication-feature {padding:28px;margin:32px 0;background:#e6eadc;border:1px solid #bcc6b5;border-top:2px solid #a68b51}
.publication-feature h2 {font-family:var(--serif);font-size:2rem;margin:12px 0}.publication-feature h2 a {color:#173e31}.publication-feature p:last-child{margin-bottom:0}
@media(max-width:600px){.reflection-page{padding:26px 24px 105px}.reflection-page .breadcrumb{margin-bottom:36px}.reflection-body{font-size:1.05rem;line-height:1.85}.publication-feature{padding:22px}}
@media print{.reflection-page{max-width:none;padding:0}.reflection-body{max-width:none;font-size:11pt;line-height:1.6}.reflection-end{display:none}.reflection-header h1{font-size:32pt}}

/* The value of life: a reading invitation among the portal's foundations. */
.life-value-feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,72px);align-items:center;padding:clamp(30px,5vw,64px);margin:0 auto 48px;max-width:1240px;background:#173e31;color:#f9f6ec;border-top:3px solid #c1a368}
.life-value-feature .eyebrow{color:#e2ca91;font-size:.875rem}
.life-value-feature h2{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,4vw,3.5rem);line-height:1.15;letter-spacing:-.02em;color:inherit;margin:18px 0}
.life-value-feature blockquote{font-family:var(--serif);font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.4;margin:0 0 20px;padding:0;border:0;background:none;color:inherit}
.life-value-feature p{font-size:1rem;line-height:1.6;color:#f0efe6}
.life-value-feature .text-link{color:#f8e2ae;border-color:#c1a368;font-size:1rem}
.life-value-feature a:focus-visible{outline:2px solid #f8e2ae;outline-offset:6px}
.article .life-value-section{padding:clamp(20px,3vw,34px);border:1px solid #c5ccbc;border-top:3px solid #a58a4b;background:#f1f2e8;margin:32px 0 46px}
.article .life-value-section .section-heading{align-items:flex-start;gap:16px;flex-wrap:wrap}
.article .life-value-section blockquote{font-family:var(--serif);font-size:1.5rem;line-height:1.5;color:#173e31}
.author-observation{margin:48px 0 12px;padding:28px 0 0;border-top:1px solid #b5a273}
.author-observation h2{font-family:var(--serif);font-weight:400;font-size:1.8rem;line-height:1.25;margin:0 0 24px;color:#173e31}
@media(max-width:700px){.life-value-feature{grid-template-columns:1fr;gap:12px;margin:0 18px 32px;padding:28px 24px}.article .life-value-section{padding:24px 18px}.article .life-value-section .section-heading h2{font-size:1.8rem}.author-observation{margin-top:36px}}
@media print{.life-value-feature{background:white;color:#173e31;border:1px solid #aaa;break-inside:avoid}.life-value-feature p,.life-value-feature .eyebrow,.life-value-feature .text-link{color:#173e31}.author-observation{break-before:auto}}
/* Personal publications, presented in the author's own voice. */
.new-reflections{display:grid;grid-template-columns:1.3fr 1fr;gap:0;margin:55px auto;max-width:1240px;border:1px solid #b5c7cc;border-top:2px solid #b39552}.apocalipse-feature{background:#183f51;color:#f8f7ee;padding:45px}.apocalipse-feature .eyebrow{color:#e3c785}.apocalipse-feature h2{font:400 clamp(2.3rem,4.5vw,4rem)/1.1 var(--serif);margin:14px 0}.apocalipse-feature h2 a{color:#fff7e9;text-decoration:none}.apocalipse-feature p{font:1.05rem/1.7 var(--sans);max-width:39em}.apocalipse-feature .apocalipse-subtitle{font:1.5rem/1.4 var(--serif);color:#e5cf9b}.apocalipse-feature .button{background:#f7f2e5;color:#183f51;border-color:#b39552;margin-top:10px}.observation-feature{background:#e6eff2;padding:45px;color:#224653}.observation-feature h2{font:400 clamp(1.8rem,3vw,2.6rem)/1.2 var(--serif);margin:18px 0}.observation-feature p:not(.eyebrow){font:1.1rem/1.7 var(--serif)}.observation-feature .text-link{color:#234758}@media(max-width:700px){.new-reflections{grid-template-columns:1fr;margin:35px 20px}.apocalipse-feature,.observation-feature{padding:30px 24px}}
.entry-publication{display:block;max-width:410px;margin:24px 0 16px;padding:14px 18px;border-left:3px solid #b49755;background:#e6eff0;color:#183e4b;text-decoration:none}.entry-publication strong{display:block;font:400 1.6rem/1.2 var(--serif);margin-bottom:5px}.entry-publication span{font:1rem/1.5 var(--sans)}.entry-publication:hover{background:#d5e6eb}.entry-publication:focus-visible{outline:3px solid #a17b2e;outline-offset:4px}
/* Requested emphasis for Apocalipse: a distinct gold call to action. */
.entry-publication{background:#e5b34f;border:1px solid #92702a;border-left:5px solid #6f5119;color:#132f42;box-shadow:0 5px 15px #132f4220;padding:19px 22px}.entry-publication strong{font-size:1.85rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase}.entry-publication span{color:#21394a}.entry-publication:hover{background:#f1c975;color:#132f42}.apocalipse-feature .button{background:#e5b34f;color:#132f42;border:1px solid #f4d99d;box-shadow:0 3px 12px #06192335;font-weight:700;letter-spacing:.035em;min-height:52px;padding:15px 25px}.apocalipse-feature .button:hover{background:#f1c975;color:#132f42}.apocalipse-feature .button:focus-visible,.entry-publication:focus-visible{outline:3px solid #2f7897;outline-offset:5px}
