:root{--paper:#f6f2e8;--ink:#243a30;--forest:#163c2f;--brass:#80652e;--muted:#62685d;--line:#d8d5c6;--white:#fffdf7;--soft:#e9ede1;--serif:"Yu Mincho","Hiragino Mincho ProN",serif;font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:.24em}a:hover{color:#786024}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #a26b1c;outline-offset:4px}button{border:0}p{margin:.65em 0 1.15em}h1,h2,h3{line-height:1.5}h1,h2{font-family:var(--serif);font-weight:600}h1{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:.04em;margin:.3em 0 .6em}h2{font-size:1.6rem;margin:.4em 0 .7em}h3{font-size:1.1rem;margin:.7em 0}small,.fine{font-size:.8rem;color:var(--muted)}[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:10px;z-index:10;padding:12px;background:var(--white)}.skip:focus{top:10px}.preview-banner{background:#ece2c9;border-bottom:1px solid #c8b47c;color:#594619;text-align:center;font-size:.76rem;padding:7px 16px;display:flex;justify-content:center;gap:18px;flex-wrap:wrap}.preview-banner strong{letter-spacing:.1em}.site-header{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:26px 38px;border-bottom:1px solid var(--line);gap:20px}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:1.3rem;line-height:1.4;white-space:nowrap}.brand small{display:block;font-family:system-ui;font-size:.59rem;letter-spacing:.16em;margin-top:7px}.brand-mark{font-size:2.3rem;color:var(--brass)}.site-header nav{display:flex;gap:26px}.site-header nav a{font-size:.85rem;text-decoration:none;padding:9px 0;border-bottom:2px solid transparent}.site-header nav a[aria-current]{border-color:var(--brass)}main{max-width:1124px;margin:auto;padding:0 30px 70px;min-height:65vh}.eyebrow{font-size:.71rem;letter-spacing:.17em;color:var(--brass);font-weight:650;line-height:1.7}.hero{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:40px;padding:62px 10px 45px}.hero h1{font-size:clamp(2.5rem,4.5vw,4rem);line-height:1.5;letter-spacing:.08em}.hero-copy{color:#536252;font-size:1rem;line-height:2.1}.button{background:var(--forest);color:var(--white);padding:13px 24px;display:inline-flex;align-items:center;gap:30px;text-decoration:none;border-radius:3px;font-size:.9rem;min-height:48px}.button:hover{background:#285440;color:white}.hero .button{margin:12px 0}.hero-art{text-align:center;color:var(--brass);max-width:360px;justify-self:center;width:100%}.hero-art>span{display:block;font-size:.65rem;letter-spacing:.2em}.tree-art{width:100%;fill:none;stroke:#8c7947;stroke-width:1.2}.tree-art .leaves{fill:#dfe5d6;stroke:#62765c;stroke-width:1.4}.tree-art circle{stroke:#c6b78a}.home-search{padding:25px 30px;background:var(--white);border:1px solid var(--line);border-radius:5px}form label{font-size:.82rem;display:block;font-weight:650;margin-bottom:8px}.search-field{display:flex;border:1px solid #9aab98;border-radius:4px;background:white;overflow:hidden}.search-field input{min-width:0;flex:1;width:100%;border:0;background:transparent;padding:13px 16px;color:var(--ink)}.search-field button{padding:10px 24px;background:var(--forest);color:white}.search-field input:focus-visible{outline-offset:-4px}.section-heading{margin-top:45px;margin-bottom:20px}.section-heading h2{margin-top:7px}.section-heading p:not(.eyebrow){font-size:.9rem;color:var(--muted)}.feature-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:22px}.feature-card,.map-card{text-decoration:none;border-radius:5px;padding:30px;display:block}.feature-card{background:var(--forest);color:var(--white);position:relative;overflow:hidden}.feature-card:hover{color:white;background:#204b3a}.feature-card .eyebrow{color:#d5c295}.feature-card h3{font-family:var(--serif);font-size:1.85rem;font-weight:500;line-height:1.7}.feature-card p{font-size:.86rem;color:#d0dbcd}.card-bottom{border-top:1px solid #67806b;display:flex;justify-content:space-between;gap:12px;font-size:.75rem;padding-top:22px;margin-top:30px;flex-wrap:wrap}.map-card{background:#e8e7db;border:1px solid #cecfbd}.map-card p{font-size:.83rem}.route-decoration{font-family:monospace;font-size:1.45rem;color:var(--brass);line-height:1.3;margin:20px 0}.issue-list{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;list-style:none;padding:0;margin:0}.issue-list li{border-bottom:1px solid var(--line)}.issue-list a{padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:12px;text-decoration:none;font-size:.9rem;min-height:60px}.number{font-family:monospace;color:var(--brass);font-size:.82rem;white-space:nowrap}.bookmark{margin-top:42px;display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--soft);border-left:3px solid var(--brass);padding:24px 28px}.bookmark h2{font-size:1.2rem}.bookmark p{font-size:.8rem;max-width:600px}.bookmark-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;flex-shrink:0}.quiet{background:transparent;border:1px solid #939e88;color:var(--ink);border-radius:3px;padding:9px 14px;min-height:44px;font-size:.8rem}.quiet[aria-pressed=true]{background:var(--forest);color:white}.editorial-note{padding:22px 25px;border:1px solid var(--line);margin-top:30px;background:#f0eee3}.editorial-note h2{font-size:1.2rem}.editorial-note p{font-size:.85rem}.page-intro{padding:35px 0 22px}.breadcrumb{font-size:.8rem;color:var(--muted)}.page-intro .eyebrow{margin-top:26px}.lead{color:#52604f;line-height:2}.route-warning,.state-note{font-size:.85rem;background:#ece8d8;border-left:3px solid #a68b4c;padding:14px 18px;margin:20px 0}.state-note h2{font-size:1.2rem}.article-layout{display:grid;grid-template-columns:252px minmax(0,1fr);gap:46px;margin-top:35px;align-items:start}.toc{padding:20px;background:#eeeee3;border-top:2px solid var(--brass)}.article-layout>.toc{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto}.toc h2{font-size:1.1rem}.toc ol{list-style:none;padding:0;margin:12px 0}.toc li{border-bottom:1px solid var(--line)}.toc a{display:block;padding:10px 0;font-size:.78rem;text-decoration:none;line-height:1.7}.toc .number{margin-right:6px}.step{scroll-margin-top:20px;padding-bottom:36px;margin-bottom:38px;border-bottom:1px solid #c5c7b5}.step:target{border-top:3px solid var(--brass);padding-top:20px}.step-head{display:flex;gap:18px;align-items:flex-start}.step-head h2{font-size:1.6rem;margin:0}.step-head .eyebrow{margin:0 0 8px;font-size:.72rem;letter-spacing:.05em}.step-number{font-family:var(--serif);font-size:1.7rem;border-bottom:2px solid var(--brass);color:var(--brass);line-height:1.6}.step-status{font-size:.7rem;color:#79632c;margin-top:10px}.prerequisite{display:grid;grid-template-columns:95px 1fr;font-size:.85rem;border-block:1px solid var(--line);padding:15px 0;margin:20px 0}.prerequisite dt{color:var(--brass);font-weight:650}.prerequisite dd{margin:0}.action-copy{font-size:.97rem;line-height:2.1}.success{background:#e8eddf;padding:14px 20px;margin:22px 0}.success h3{font-size:.84rem;margin:0;color:#44623d}.success p{font-size:.9rem;margin:6px 0}details{border-bottom:1px solid var(--line);padding:0}summary{padding:14px 4px;font-size:.85rem;min-height:48px}details p,details ul{font-size:.85rem;margin:8px 14px 20px}.sources{color:var(--muted)}.sources a{overflow-wrap:anywhere}.save-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:20px 0}.save-row span{font-size:.8rem}.step-nav{display:flex;justify-content:space-between;gap:16px;padding-top:15px;font-size:.82rem}.step-nav a{padding:10px 0}.quick-selector{background:#efeddf;padding:0 20px}.quick-selector .issue-list{margin:0 0 20px}.map-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:35px;align-items:start}.map-paper{background:var(--white);border:1px solid var(--line);padding:20px 12px;text-align:center}.progression{width:100%;height:auto;display:block}.route-line{stroke:#9a987d;stroke-width:2;fill:none}.revisit-line{stroke:var(--brass);stroke-width:2;stroke-dasharray:6;fill:none}.route-node{fill:#f1f2e9;stroke:#c8cebd}.revisit-node{fill:#e6e9d8;stroke:#9f8b54}.progression text{fill:var(--ink);font-family:system-ui;font-size:16px}.progression .svg-number{font-family:monospace;font-size:20px;fill:var(--brass)}.progression .svg-title{font-size:17px}.progression .svg-state{font-size:13px;fill:#68725f}.progression a:hover rect,.progression a:focus rect{fill:#d8e0ca;stroke:#526e49;stroke-width:3}.map-text{padding-left:22px}.map-text li{padding:9px 0;font-size:.88rem;border-bottom:1px solid var(--line)}.search-results{margin-bottom:38px}.search-results ol{padding:0;list-style:none}.search-results li{padding:20px;background:var(--white);border-bottom:1px solid var(--line)}.search-results li a{font-weight:650}.search-results li p{font-size:.85rem;margin:8px 0 0}.all-steps{margin-top:35px}.all-steps .toc ol{columns:2;column-gap:35px}.all-steps .toc li{break-inside:avoid}footer{max-width:1124px;margin:auto;padding:30px;border-top:1px solid var(--line);color:var(--muted)}footer p{font-size:.75rem;max-width:700px}footer .brand{font-size:1rem}::selection{background:#d7dfc5}
@media(max-width:800px){.site-header{padding:20px 24px}.site-header nav{gap:20px}.article-layout{grid-template-columns:1fr;gap:30px}.article-layout>.toc{position:static;max-height:none}.article-layout>.toc ol{columns:2;column-gap:26px}.toc li{break-inside:avoid}.map-layout{grid-template-columns:1fr 1fr;gap:20px}.feature-card,.map-card{padding:24px}.hero{gap:20px;padding:45px 0}.hero-art{max-width:260px}.bookmark{align-items:flex-start;flex-direction:column;gap:4px}.bookmark-actions{flex-direction:row;flex-wrap:wrap;align-items:center}.feature-card h3{font-size:1.55rem}}
@media(max-width:560px){.preview-banner{gap:2px 12px;font-size:.67rem}.site-header{padding:18px 20px 8px;display:block}.brand{font-size:1.17rem}.brand-mark{font-size:1.9rem}.site-header nav{margin-top:18px;justify-content:space-between;gap:18px}.site-header nav a{padding:8px 4px;font-size:.8rem}main{padding:0 20px 40px}.hero{grid-template-columns:1fr;gap:0;padding:34px 0 25px;position:relative}.hero>div:first-child{position:relative;z-index:1}.hero h1{font-size:2.5rem}.hero-copy{font-size:.9rem}.hero-art{position:absolute;width:135px;right:-4px;top:25px;opacity:.26;pointer-events:none}.hero-art>span{display:none}.hero .fine{font-size:.7rem}.home-search{padding:18px 16px}.search-field input{padding:12px 10px;font-size:1rem}.search-field button{padding:10px 15px;font-size:.85rem;white-space:nowrap}.section-heading{margin-top:34px}h2{font-size:1.35rem}.feature-grid{grid-template-columns:1fr;gap:16px}.feature-card h3{font-size:1.65rem}.map-card{position:relative;padding-right:80px}.route-decoration{position:absolute;right:18px;top:20px;font-size:1.1rem;opacity:.6}.map-card h3{font-size:1.05rem}.map-card p{font-size:.78rem}.issue-list{grid-template-columns:1fr}.issue-list a{font-size:.84rem;padding:15px 0}.bookmark{padding:20px}.bookmark-actions .button{padding:10px 14px;font-size:.82rem}.page-intro{padding-top:25px}.page-intro h1{font-size:1.95rem}.page-intro .lead{font-size:.9rem}.article-layout>.toc ol,.all-steps .toc ol{columns:1}.toc a{font-size:.85rem}.step-head{gap:13px}.step-head h2{font-size:1.35rem}.step-number{font-size:1.5rem}.prerequisite{grid-template-columns:1fr;gap:5px}.step-nav a{font-size:.8rem}.map-layout{grid-template-columns:1fr}.map-paper{padding:15px 5px}.map-layout>aside{min-width:0}.map-text{padding-left:18px}.quick-selector{padding-inline:14px}.editorial-note{padding:20px}footer{padding:25px 20px}.route-warning,.state-note{padding:12px 14px}.progression .svg-title{font-size:17px}.step{scroll-margin-top:12px}}
@media(prefers-reduced-motion:no-preference){a,button{transition:background-color .15s,color .15s}}
@media print{.site-header nav,.save-row,.bookmark,.search-field,footer{display:none}.article-layout{display:block}.article-layout>.toc{position:static}.preview-banner{border:2px solid black}.step{break-inside:avoid}body{background:white}}

/* Readable route cards replace scaled SVG labels on narrow screens. */
.compact-route{display:none}.route-steps{list-style:none;padding:0;margin:18px 0;text-align:left;display:grid;gap:12px}.route-steps li{position:relative;border:1px solid var(--line);border-radius:5px;background:var(--white)}.route-steps li:not(:last-child)::after{content:"";position:absolute;top:100%;left:24px;height:13px;border-left:2px solid #9a987d}.route-steps a{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px 12px;text-decoration:none;min-height:70px}.route-copy{min-width:0}.route-copy strong{display:block;font-size:1rem;line-height:1.65}.route-copy small{display:block;font-size:.875rem;line-height:1.7;margin-top:4px;color:#52604f}.route-steps .revisit-card{background:#e6e9d8;border-color:#9f8b54}.site-header nav a{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:900px){.map-layout{grid-template-columns:1fr}.map-paper .progression{display:none}.compact-route{display:block}.route-text-fallback{display:none}}
@media(max-width:560px){.preview-banner{font-size:.75rem}.page-intro h1{text-wrap:balance}}

/* Original landmark schematics: fixed facts, not geographic maps. */
.landmark-figure{margin:24px 0;padding:18px;border:1px solid var(--line);border-radius:8px;background:#f5f5ed}
.landmark-figure figcaption strong{display:block;font-size:1.05rem}
.landmark-figure figcaption span{display:block;font-size:.875rem;margin-top:6px;color:#52604f}
.landmark-figure svg{display:block;width:100%;max-width:360px;height:auto;margin:16px auto 4px}
.landmark-figure svg text{font-family:system-ui,sans-serif;font-size:18px;text-anchor:middle;fill:#263d2d}
.landmark-outline{fill:#eee7d3;stroke:#657359;stroke-width:2}
.landmark-eye{fill:#ead8aa;stroke:#88723d;stroke-width:2}
.landmark-web{fill:#fffdf6;stroke:#657359;stroke-width:2}
.landmark-water{fill:#dae9e5;stroke:#657359;stroke-width:2}
.landmark-arrow{fill:none;stroke:#657359;stroke-width:2}
.landmark-figure p,.landmark-figure a{font-size:.95rem;line-height:1.8;overflow-wrap:anywhere}
.landmark-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
@media(max-width:700px){.landmark-grid{grid-template-columns:1fr}.landmark-figure{padding:14px}}

/* Regional guide and source directory share the established paper/forest style. */
.journey-section{margin:42px 0}.journey-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.journey-card,.resource-card{display:block;min-width:0;padding:24px;background:var(--white);border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere}
.journey-card{text-decoration:none}.journey-card:hover{background:var(--soft)}.journey-card h3{font-family:var(--serif);font-size:1.3rem}
.link-row{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin:24px 0}
.adventure-path{list-style:none;counter-reset:journey;padding:0;display:grid;gap:10px}.adventure-path li{counter-increment:journey;background:var(--white);border:1px solid var(--line);padding:18px;display:grid;grid-template-columns:28px 1fr;column-gap:12px}.adventure-path li:before{content:counter(journey,decimal-leading-zero);color:var(--brass)}.adventure-path span{grid-column:2;font-size:.85rem;color:var(--muted)}.adventure-path a{font-weight:650}
.source-note{margin:16px 0;font-size:.85rem}.source-note small{display:block}.source-note ul{padding-left:22px}.resource-card .button{white-space:normal;text-align:left;max-width:100%;height:auto}.resource-card .source-note{font-size:.82rem}.recovery{margin:18px 0;padding:12px 16px;border-left:3px solid #9f8b54;background:#f2eddf}
.site-header{flex-wrap:wrap}.site-header nav{flex-wrap:wrap}.step-next a{display:inline-block;min-height:44px;padding-block:8px}
@media(max-width:700px){.journey-grid{grid-template-columns:1fr}.journey-card,.resource-card{padding:20px}.adventure-path li{padding:16px 12px}.site-header nav{gap:8px 16px;width:100%}}

/* Shared rows for all reference pages, including heart pieces. */
.reference-list{list-style:none;padding:0;margin:24px 0}
.reference-list>li{padding:20px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.reference-list>li>.sources{margin-bottom:16px}
.reference-list>li>a{display:inline-block;min-height:44px;padding-block:8px}

.breadcrumbs{margin:0 0 1.5rem;font-size:.875rem}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.4rem .7rem;list-style:none;padding:0;margin:0}.breadcrumbs li{min-width:0;overflow-wrap:anywhere}.breadcrumbs li+li::before{content:"›";margin-right:.7rem}.breadcrumbs [aria-current="page"]{color:var(--muted)}
