/* THE JUBILEE COMMONS — earthy editorial design, deliberately free of stock photography */
:root {
  --ink:#17312d;
  --ink-dark:#102522;
  --paper:#f6f1e7;
  --paper-2:#eee6d7;
  --white:#fffdf7;
  --copper:#bb5d3e;
  --copper-deep:#8f3d29;
  --gold:#d8ab65;
  --sage:#8c9f88;
  --text:#20342e;
  --muted:#64726c;
  --border:#d9d1c1;
  --font-serif:Georgia,"Iowan Old Style","Palatino Linotype",serif;
  --font-sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --max:1190px;
  color-scheme:light;
}
* { box-sizing:border-box }
html { scroll-behavior:smooth; scroll-padding-top:98px }
body { margin:0;background:var(--paper);color:var(--text);font:16px/1.65 var(--font-sans);-webkit-font-smoothing:antialiased }
button,input,textarea,select { font:inherit }
button { cursor:pointer }
a { color:inherit;text-decoration:none }
a:hover { text-underline-offset:5px }
:focus-visible { outline:3px solid var(--copper);outline-offset:4px }
::selection { background:#e6bd89;color:var(--ink-dark) }
.skip-link { position:absolute;z-index:100;left:1rem;top:-5rem;padding:.8rem 1rem;background:var(--gold);color:var(--ink-dark) }
.skip-link:focus { top:1rem }
.wrap { width:min(calc(100% - 3.25rem),var(--max));margin-inline:auto }
.narrow { width:min(calc(100% - 3.25rem),820px);margin-inline:auto }
.loading { min-height:100vh;display:grid;place-items:center;background:var(--ink);color:var(--gold);font-family:var(--font-serif);font-size:1.7rem }
.site-header { position:sticky;z-index:50;top:0;background:rgba(246,241,231,.96);border-bottom:1px solid rgba(23,49,45,.12);backdrop-filter:blur(16px) }
.masthead { min-height:81px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem }
.brand { display:flex;align-items:center;gap:.74rem;flex-shrink:0 }
.brand:hover .brand-icon { transform:rotate(18deg) }
.brand-icon { width:46px;height:46px;border-radius:14px;transition:transform .35s }
.brand-copy { display:flex;flex-direction:column;line-height:1.17 }
.brand-name { font:700 1.12rem/1.2 var(--font-serif);letter-spacing:-.024em;white-space:nowrap }
.brand-sub { text-transform:uppercase;font-size:.53rem;font-weight:800;letter-spacing:.18em;color:var(--copper);margin-top:5px }
.header-actions { display:flex;align-items:center;gap:1.25rem }
.nav-links { display:flex;align-items:center;gap:1.12rem;flex-wrap:wrap }
.nav-link { padding:.6rem .04rem;border-bottom:2px solid transparent;color:#38514a;font-size:.73rem;font-weight:700;white-space:nowrap }
.nav-link:hover,.nav-link[aria-current="page"] { color:var(--copper-deep);border-bottom-color:var(--copper) }
.lang-switch { display:flex;border:1px solid var(--border);border-radius:99px;padding:3px;gap:1px }
.lang-switch button { border:0;border-radius:99px;padding:.33rem .47rem;background:none;font-weight:800;color:var(--muted);font-size:.68rem }
.lang-switch button[aria-pressed="true"] { color:var(--paper);background:var(--ink) }
.menu-toggle { display:none;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;white-space:nowrap;border:1px solid var(--border);color:var(--ink);background:transparent;border-radius:9px;padding:0 }
.menu-bars { width:19px;display:flex;flex-direction:column;gap:4px }
.menu-bars span { display:block;width:19px;height:2px;border-radius:2px;background:currentColor }
.menu-toggle[aria-expanded="true"] { background:var(--paper-2) }
main { min-height:70vh }
.hero { overflow:hidden;position:relative;background:var(--ink-dark);color:#f7edda }
.hero:before { content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 83% 44%,rgba(190,112,67,.17),transparent 47%),repeating-linear-gradient(120deg,transparent 0 9px,rgba(255,255,255,.012) 9px 10px);pointer-events:none }
.hero-inner { min-height:630px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:1rem;position:relative }
.hero-main { padding:6rem 0 6.6rem;position:relative;z-index:2 }
.eyebrow,.section-kicker { text-transform:uppercase;font-size:.67rem;font-weight:850;letter-spacing:.22em }
.eyebrow { color:var(--gold);display:flex;gap:.7rem;align-items:center }
.eyebrow:before { content:"";height:1px;width:30px;background:var(--gold) }
h1,h2,h3,h4,p { margin-top:0 }
.hero-title { font:normal clamp(3.9rem,6.6vw,7.2rem)/.99 var(--font-serif);letter-spacing:-.065em;margin:1.7rem 0 }
.hero-title em { color:var(--gold);font-style:italic }
.hero-lead { font-size:1.01rem;color:#d2d8cd;max-width:560px;line-height:1.9 }
.hero-actions { display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem }
.button { display:inline-flex;justify-content:center;align-items:center;gap:.8rem;border-radius:4px;min-height:49px;padding:.8rem 1.35rem;border:1px solid transparent;font-weight:750;font-size:.8rem;letter-spacing:.012em;transition:transform .18s,background .18s,color .18s }
.button:hover { transform:translateY(-2px) }
.button-primary { background:var(--copper);color:white }
.button-primary:hover { background:#d57853 }
.button-outline { color:#f6eddb;border-color:#6b7e74;background:transparent }
.button-outline:hover { border-color:var(--gold);color:var(--gold) }
.button-ink { background:var(--ink);color:#fff9ed }
.button-ink:hover { background:#28493e }
.button-subtle { background:transparent;color:var(--ink);border-color:var(--border) }
.button-small { min-height:36px;padding:.45rem .75rem;font-size:.74rem }
.hero-note { max-width:450px;font-size:.74rem;margin-top:2.4rem;color:#a7b7aa;line-height:1.7 }
.hero-graphic { margin:0;width:100%;max-width:500px;justify-self:end;align-self:center;position:relative;isolation:isolate }
.hero-graphic:before { content:"";position:absolute;inset:4% 3%;background:rgba(225,166,91,.19);filter:blur(38px);border-radius:50%;z-index:-1 }
.hero-art-image { width:100%;height:auto;display:block;aspect-ratio:4/3;object-fit:cover;object-position:center;border:1px solid rgba(238,195,125,.35);border-radius:180px 180px 8px 8px;box-shadow:0 24px 75px rgba(0,0,0,.28) }
.hero-seam { height:20px;background:repeating-linear-gradient(90deg,var(--copper) 0 54px,var(--gold) 54px 72px,var(--ink) 72px 83px) }
.hero-rail { display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #d8d1c2;border-top:0;background:var(--paper-2) }
.hero-rail span { text-align:center;padding:1.04rem 1rem;font-size:.75rem;font-weight:740;color:#5b6256 }
.hero-rail span+span { border-left:1px solid var(--border) }
.section { padding:6.6rem 0 }
.section-tight { padding:4.5rem 0 }
.section-kicker { color:var(--copper-deep);margin-bottom:.9rem;display:block }
.section-heading { font:normal clamp(2.3rem,4.4vw,4.1rem)/1.12 var(--font-serif);letter-spacing:-.052em;margin-bottom:1.1rem }
.section-lead { font-size:1.03rem;color:var(--muted);line-height:1.85;max-width:670px }
.section-header { margin-bottom:2.8rem }
.grid-3 { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem }
.grid-2 { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem }
.path-card,.panel,.source-card,.figure-card,.claim-card { background:var(--white);border:1px solid var(--border);border-radius:3px }
.path-card { position:relative;display:flex;flex-direction:column;overflow:hidden;min-height:340px;padding:2rem;transition:transform .25s,box-shadow .25s }
.path-card:hover,.source-card:hover,.figure-card:hover { transform:translateY(-3px);box-shadow:0 18px 40px rgba(12,40,34,.075) }
.path-card:before { content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--copper) }
.path-card[data-tone="gold"]:before { background:var(--gold) }
.path-card[data-tone="sage"]:before { background:var(--sage) }
.card-top { display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:2rem }
.card-no { font:italic 2rem/1 var(--font-serif);color:var(--copper) }
.card-label { font-weight:760;color:var(--muted);text-transform:uppercase;font-size:.59rem;letter-spacing:.14em }
.path-card h3 { font:normal 1.75rem/1.17 var(--font-serif);letter-spacing:-.037em;margin-bottom:1rem }
.path-card p { color:var(--muted);font-size:.86rem;line-height:1.75 }
.card-footer { border-top:1px solid var(--border);margin-top:auto;padding-top:1.35rem;display:flex;justify-content:space-between;align-items:center;color:var(--copper-deep);font-weight:800;font-size:.78rem }
.arrow { font-size:1.45rem;font-family:var(--font-serif) }
.light-band { background:var(--paper-2);border-block:1px solid var(--border) }
.question-band { display:grid;grid-template-columns:1fr 1.2fr;gap:4.5rem;align-items:center }
.question-line { width:110px;height:110px;border:1px solid var(--copper);border-radius:50%;display:grid;place-items:center;font:italic 3.5rem var(--font-serif);color:var(--copper);margin-bottom:1.5rem }
.question-title { font:normal clamp(2.15rem,3.3vw,3.35rem)/1.19 var(--font-serif);letter-spacing:-.04em }
.panel { padding:2.5rem }
.panel p { color:var(--muted) }
.three-ways { counter-reset:way }
.way { padding:1.4rem 1.1rem;border-top:1px solid var(--border) }
.way:before { content:"0" counter(way);counter-increment:way;display:block;color:var(--copper);font-weight:900;font-size:.68rem;letter-spacing:.13em;margin-bottom:1.5rem }
.way h3 { font:normal 1.65rem var(--font-serif) }
.way p { color:var(--muted);font-size:.9rem }
.dark-section { background:var(--ink);color:#f5eddd }
.dark-section .section-kicker { color:var(--gold) }
.dark-section .section-lead { color:#bac9bd }
.quote-grid { display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center }
.quote-mark { font:italic 10rem/.6 var(--font-serif);color:var(--gold) }
.statement { font:italic normal clamp(2.1rem,3.7vw,3.6rem)/1.2 var(--font-serif);letter-spacing:-.025em }
.small-rule { height:2px;width:65px;background:var(--copper);margin:2rem 0 }
.feature-grid { display:grid;grid-template-columns:.9fr 1.1fr;gap:5rem;align-items:center }
.feature-art { margin:0;background:#d49c73;border-radius:180px 180px 5px 5px;overflow:hidden;box-shadow:0 14px 38px rgba(25,30,20,.12) }
.feature-art img { width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;display:block }
.page-hero { padding:5rem 0 4.2rem;background:var(--ink);color:#f5eede;position:relative;overflow:hidden }
.page-hero:after { content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(218,175,103,.21);border-radius:50%;right:-100px;top:-170px;box-shadow:0 0 0 50px rgba(218,175,103,.04),0 0 0 100px rgba(218,175,103,.025) }
.page-hero .section-kicker { color:var(--gold) }
.page-hero-grid { display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:3.5rem;position:relative;z-index:1 }
.page-hero-copy { min-width:0;position:relative;z-index:1 }
.page-hero-image { width:100%;height:auto;max-height:290px;aspect-ratio:4/3;object-fit:cover;border-radius:6px;border:1px solid rgba(236,204,160,.25);box-shadow:0 18px 45px rgba(0,0,0,.24);position:relative;z-index:1 }
.page-title { font:normal clamp(3rem,5.5vw,5.2rem)/1.06 var(--font-serif);letter-spacing:-.055em;max-width:1000px;margin-bottom:1.2rem }
.page-hero p { max-width:740px;color:#c6d2c7;line-height:1.9 }
.breadcrumb { display:flex;gap:.7rem;align-items:center;margin-bottom:1.7rem;font-size:.73rem;font-weight:700;color:#e8c89c }
.breadcrumb a:hover { text-decoration:underline }
.filters { display:flex;gap:1rem;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:2rem }
.searchbox { flex:1;min-width:250px;position:relative }
.searchbox:before { content:"⌕";position:absolute;font-size:1.8rem;line-height:1;left:.9rem;top:50%;transform:translateY(-60%);color:var(--copper) }
.searchbox input { width:100%;border:1px solid var(--border);background:var(--white);border-radius:4px;padding:.95rem 1rem .95rem 2.8rem;color:var(--ink);font-size:.88rem }
.pills { display:flex;align-items:center;flex-wrap:wrap;gap:.5rem }
.pill { border:1px solid var(--border);background:transparent;color:#5b685e;border-radius:99px;padding:.52rem .87rem;font-size:.74rem;font-weight:800 }
.pill[aria-pressed="true"],.pill:hover { color:white;background:var(--ink);border-color:var(--ink) }
.source-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem }
.source-card { display:flex;flex-direction:column;padding:1.75rem;transition:transform .25s,box-shadow .25s;min-height:280px }
.source-top { display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:1.5rem }
.source-kind { color:var(--copper-deep);font-size:.64rem;font-weight:850;text-transform:uppercase;letter-spacing:.11em }
.source-year { color:var(--muted);font-size:.72rem }
.source-card h3 { font:normal 1.5rem/1.23 var(--font-serif);letter-spacing:-.028em }
.source-card p { color:var(--muted);font-size:.84rem;line-height:1.7 }
.source-bottom { margin-top:auto;padding-top:1.1rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;font-weight:750;font-size:.76rem;color:var(--copper-deep) }
.source-bottom a:hover { text-decoration:underline }
.notice { background:#efe7d6;border-left:4px solid var(--gold);padding:1rem 1.25rem;font-size:.86rem;color:#504e42;margin:2rem 0 }
.notice.success { background:#e1eee4;border-color:#65846a;color:#25502e }
.notice.error { background:#fae6df;border-color:#b4513f;color:#773825 }
.figures-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem }
.figure-card { padding:2rem;display:grid;grid-template-columns:80px 1fr;gap:1.4rem;transition:transform .2s }
.figure-initial { width:76px;height:76px;border-radius:50%;background:#e0d1b7;color:var(--copper-deep);font:italic 1.8rem var(--font-serif);display:grid;place-items:center }
.figure-card:nth-child(3n+2) .figure-initial { background:#c9d6c7;color:var(--ink) }
.figure-card:nth-child(3n+3) .figure-initial { background:#e2b8a0;color:#6a3024 }
.figure-meta { display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.72rem;margin-bottom:.5rem }
.figure-card h3 { font:normal 1.7rem var(--font-serif);margin-bottom:.3rem }
.figure-theme { color:var(--copper-deep);text-transform:uppercase;font-weight:800;letter-spacing:.13em;font-size:.62rem;margin-bottom:1rem }
.figure-card p { font-size:.85rem;color:var(--muted);line-height:1.75 }
.figure-card .work { color:var(--ink);font-size:.77rem;margin:1rem 0 }
.figure-card a { font-size:.77rem;font-weight:800;text-decoration:underline;text-decoration-color:var(--copper);text-underline-offset:4px }
.claims { display:grid;gap:1.1rem }
.claim-card { padding:2.1rem;display:grid;grid-template-columns:190px 1fr;gap:2.3rem }
.status { display:inline-flex;font-size:.68rem;line-height:1.5;letter-spacing:.04em;font-weight:800;border-radius:2px;padding:.4rem .6rem;color:#5e4134;background:#f3dfd0 }
.status.documented { background:#e4ecdc;color:#355d3f }
.status.unverified { background:#e4e5df;color:#4b534e }
.claim-card h3 { font:normal 1.7rem/1.32 var(--font-serif);letter-spacing:-.028em;margin-bottom:1.1rem }
.claim-card .label { color:var(--copper-deep);text-transform:uppercase;font-weight:850;font-size:.63rem;letter-spacing:.13em;margin-bottom:.4rem }
.claim-card p { font-size:.9rem;color:#56665e;line-height:1.8 }
.claim-sources { display:flex;flex-wrap:wrap;gap:.5rem;padding-top:.9rem }
.claim-sources a { background:#f1e6d6;padding:.38rem .7rem;font-size:.71rem;border:1px solid var(--border);border-radius:3px }
.claim-sources a:hover { border-color:var(--copper);text-decoration:underline }
.steps { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;counter-reset:step;margin-top:2rem }
.step { padding:1.2rem;border-top:3px solid var(--copper);font-size:.82rem;line-height:1.75;color:var(--muted) }
.step:before { display:block;content:"0" counter(step);counter-increment:step;font:italic 1.8rem var(--font-serif);color:var(--copper);margin-bottom:1rem }
.reading-row { display:flex;gap:1.15rem;align-items:flex-start;padding:1.4rem 0;border-bottom:1px solid var(--border) }
.reading-row .number { color:var(--copper);font:italic 1.4rem var(--font-serif);min-width:2rem }
.reading-row h3 { font:normal 1.55rem var(--font-serif);margin-bottom:.3rem }
.reading-row p { font-size:.87rem;color:var(--muted);margin-bottom:.7rem }
.reading-row a { text-decoration:underline;color:var(--copper-deep);font-weight:800;font-size:.82rem }
.study-intro { display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center }
.study-question { border:1px solid var(--gold);padding:2rem;border-radius:3px;background:var(--paper-2) }
.study-question p { font:italic 1.65rem/1.45 var(--font-serif);color:var(--ink);margin:0 }
.study-question .label { font-size:.65rem;letter-spacing:.12em;font-weight:800;color:var(--copper-deep);margin-bottom:1rem }
.timeline { border-left:2px solid var(--copper);padding-left:2rem;max-width:840px }
.timeline-item { position:relative;padding-bottom:2rem }
.timeline-item:before { content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:var(--gold);border:3px solid var(--ink);left:-2.52rem;top:.3rem }
.timeline-item h3 { font:normal 1.4rem var(--font-serif);margin:0 0 .5rem }
.timeline-item p { color:var(--muted);font-size:.89rem;line-height:1.8 }
.covenant-grid { display:grid;grid-template-columns:1fr 1fr;gap:1.2rem }
.covenant-card { padding:1.9rem;background:var(--white);border-top:3px solid var(--copper) }
.covenant-card h3 { font:normal 1.6rem var(--font-serif) }
.covenant-card p { color:var(--muted);font-size:.89rem }
.forum-layout { display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1.7rem;align-items:start }
.forum-main,.forum-aside { min-width:0 }
.forum-aside .panel { padding:1.6rem }
.forum-aside h3 { font:normal 1.4rem var(--font-serif) }
.forum-aside li { color:var(--muted);font-size:.82rem;padding:.3rem 0 }
.forum-prompts { display:grid;gap:.8rem }
.forum-prompt { display:block;border:1px solid var(--border);border-radius:3px;padding:1.15rem;background:var(--white);font:normal 1.18rem/1.4 var(--font-serif) }
.forum-topic { border-bottom:1px solid var(--border);padding:1.3rem 0;display:block }
.forum-topic h3 { font:normal 1.42rem var(--font-serif);margin:.35rem 0 }
.forum-topic:hover h3 { text-decoration:underline;text-decoration-color:var(--copper) }
.forum-topic p { color:var(--muted);font-size:.83rem;white-space:pre-wrap }
.forum-toolbar { display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border) }
.form-card { background:var(--white);border:1px solid var(--border);padding:1.8rem;margin:1.2rem 0 }
.form-card h3 { font:normal 1.55rem var(--font-serif) }
.form-field { display:grid;gap:.38rem;margin-bottom:1rem }
.form-field label { font-size:.8rem;font-weight:750 }
.form-field input,.form-field textarea,.form-field select { width:100%;padding:.76rem .8rem;border:1px solid var(--border);border-radius:3px;background:var(--paper);color:var(--ink);font-size:.88rem }
.form-field textarea { resize:vertical;min-height:140px }
.form-hint { color:var(--muted);font-size:.73rem;margin:.6rem 0 1rem }
.form-status { font-weight:740;font-size:.81rem;margin-top:1rem;white-space:pre-wrap }
.turnstile { min-height:65px;margin:1rem 0 }
.forum-post { background:var(--white);border:1px solid var(--border);padding:1.5rem;margin:.8rem 0 }
.forum-post p { white-space:pre-wrap;overflow-wrap:anywhere }
.forum-post .meta,.topic-meta { font-size:.72rem;color:var(--muted);margin-bottom:1.1rem }
.forum-post .meta span,.topic-meta span { margin-right:.75rem }
.post-actions { display:flex;gap:.5rem;margin:.8rem 0 }
.moderation-row { padding:1.5rem;border:1px solid var(--border);background:var(--white);margin-bottom:.6rem }
.moderation-row p { white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted) }
.site-footer { background:#0e211e;color:#c8d3c7;padding:3.1rem 0 1.8rem }
.footer-main { display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;align-items:start;padding-bottom:3.2rem }
.footer-main h2 { font:normal 2.2rem var(--font-serif);letter-spacing:-.04em;color:#fbecd2 }
.footer-main p,.footer-bottom { font-size:.79rem;color:#92aca0 }
.footer-nav { display:flex;flex-wrap:wrap;column-gap:1.5rem;row-gap:.6rem;justify-content:end }
.footer-nav a { font-size:.8rem;color:#e8d8bd }
.footer-nav a:hover { text-decoration:underline }
.footer-bottom { border-top:1px solid #3b554a;padding-top:1.3rem;display:flex;justify-content:space-between;gap:1rem }
.micro { font-size:.76rem;color:var(--muted) }
.center { text-align:center }
.spacer-top { margin-top:2rem }
.mb0 { margin-bottom:0 }
.rule { width:100%;height:1px;background:var(--border);margin:2rem 0 }
@media(max-width:1060px) {
 .nav-links { gap:.65rem }
 .nav-link { font-size:.68rem }
 .brand-name { font-size:.95rem }
 .brand-icon { width:40px;height:40px }
 .header-actions { gap:.7rem }
 .hero-inner { min-height:565px }
 .hero-title { font-size:clamp(3.65rem,6.6vw,5.6rem) }
}
@media(max-width:1020px) {
 .masthead { min-height:74px }
 .menu-toggle { display:inline-flex }
 .header-actions { margin-left:auto }
 .nav-links { display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--border);padding:1rem 1.5rem;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100vh - 74px);overflow:auto }
 .nav-links.is-open { display:flex }
 .nav-link { font-size:.94rem;padding:.75rem;border-bottom:1px solid var(--border) }
 .hero-inner { grid-template-columns:1fr;min-height:0 }
 .hero-main { padding:5rem 0 2rem }
 .hero-title { font-size:clamp(3.4rem,9vw,5.7rem) }
 .hero-graphic { margin:0 auto 2rem;max-width:430px }
 .page-hero-grid { grid-template-columns:1fr;gap:1.6rem }
 .page-hero-image { max-height:290px }
 .grid-3,.source-grid { grid-template-columns:repeat(2,minmax(0,1fr)) }
 .quote-grid,.feature-grid { gap:2rem }
 .steps { grid-template-columns:repeat(3,minmax(0,1fr)) }
 .forum-layout { grid-template-columns:1fr }
 .forum-aside { order:2 }
}
@media(max-width:620px) {
 .wrap,.narrow { width:min(calc(100% - 2rem),var(--max)) }
 .brand-sub { font-size:.42rem;letter-spacing:.12em }
 .brand-name { font-size:.86rem;max-width:150px;line-height:1.1;white-space:normal }
 .brand-icon { width:35px;height:35px }
 .masthead { gap:.55rem }
 .header-actions { gap:.35rem }
 .lang-switch button { padding:.34rem .35rem;font-size:.64rem }
 .hero-main { padding:3.8rem 0 1.3rem }
 .hero-title { font-size:clamp(3.28rem,13.5vw,5rem) }
 .hero-lead { font-size:.93rem }
 .hero-graphic { margin:0 auto 1.6rem;max-width:400px }
 .hero-art-image { border-radius:130px 130px 6px 6px }
 .hero-rail span { font-size:.61rem;padding:.9rem .5rem }
 .hero-actions .button { width:100% }
 .section { padding:4rem 0 }
 .section-tight { padding:3rem 0 }
 .section-heading { font-size:2.4rem }
 .grid-3,.grid-2,.source-grid,.figures-grid,.question-band,.quote-grid,.feature-grid,.study-intro,.covenant-grid,.footer-main { grid-template-columns:1fr;gap:1rem }
 .path-card { min-height:290px }
 .page-hero { padding:3.4rem 0 3.1rem }
 .page-title { font-size:3rem }
 .quote-mark { font-size:5rem }
 .statement { font-size:2rem }
 .figure-card { grid-template-columns:65px 1fr;padding:1.2rem;gap:.8rem }
 .figure-initial { width:58px;height:58px;font-size:1.3rem }
 .claim-card { grid-template-columns:1fr;gap:1rem;padding:1.35rem }
 .steps { grid-template-columns:1fr 1fr }
 .footer-nav { justify-content:flex-start }
 .footer-bottom { flex-direction:column }
 .feature-art { min-height:0;border-radius:125px 125px 5px 5px }
 .page-hero-image { max-height:240px }
 .panel { padding:1.4rem }
 .form-card { padding:1rem }
}
@media(prefers-reduced-motion:reduce) { html {scroll-behavior:auto}*,*:before,*:after {transition:none!important;animation:none!important} }
.sr-only { position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important }

@media(max-width:390px) { .brand-name{max-width:140px;font-size:.78rem}.brand-sub{font-size:.37rem}.brand-icon{width:31px;height:31px}.masthead{gap:.2rem}.header-actions{gap:.25rem}.lang-switch button{padding:.3rem .31rem}.menu-toggle{width:39px;height:39px;flex-basis:39px} }
